/* Pricing Table Cards Module - Print & Advanced Features Only */

/* Print styles */
@media print {
  .p-table {
    display: block !important;
  }

  .p-card {
    break-inside: avoid;
    page-break-inside: avoid;
    border: 1px solid #ddd !important;
    margin-bottom: 1rem;
  }

  .p-btn::after {
    content: " (" attr(href) ")";
    font-size: 0.75em;
    opacity: 0.7;
  }

  .p-feature.is-out .p-feature__label::before {
    content: "[Not included] ";
  }
}

/* Container query support - progressive enhancement */
@supports (container-type: inline-size) {
  .p-table {
    container-type: inline-size;
  }

  @container (max-width: 640px) {
    .p-table {
      grid-template-columns: 1fr !important;
    }
  }

  @container (min-width: 641px) and (max-width: 1024px) {
    .p-table {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }
}

/* Loading skeleton variant - optional */
.p-table--skeleton .p-card__name,
.p-table--skeleton .p-card__price,
.p-table--skeleton .p-feature__label {
  background: linear-gradient(90deg,
    rgba(0, 0, 0, 0.05) 25%,
    rgba(0, 0, 0, 0.1) 50%,
    rgba(0, 0, 0, 0.05) 75%
  );
  background-size: 200% 100%;
  animation: skeleton 1.5s ease-in-out infinite;
  color: transparent !important;
}

@keyframes skeleton {
  to { background-position: -200% 0; }
}

/* RTL support */
[dir="rtl"] .p-table {
  direction: rtl;
}

[dir="rtl"] .p-feature {
  grid-template-columns: 1fr auto;
}