/* Plan Cost Comparison Block Styles */

.plan-cost-comparison {
  margin: 1.5rem 0;
}

/* Scroll wrapper — width:100% ensures overflow-x:auto activates on mobile */
.plan-cost-comparison-table-wrapper {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.plan-cost-comparison-table {
  text-align: right;
}

.plan-cost-comparison-tier {
  text-align: left;
}

.plan-cost-comparison-plan-label {
  text-align: right;
}

/* Population sub-label row: lighter weight/size below plan name header */
.plan-cost-comparison-population-label {
  font-size: 0.8em;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
  opacity: 0.8;
  padding-top: 0.1em;
  padding-bottom: 0.4em;
  text-align: right;
}

/* Cost cells: prevent wrapping */
.plan-cost-comparison-cost {
  white-space: nowrap;
}

.plan-cost-comparison-description {
  font-size: 0.875rem;
  color: var(--text-color);
  line-height: 1.5;
  margin-top: 0.5em;
}

/* Tablet: trim default theme padding slightly */
@media (max-width: 768px) {
  .plan-cost-comparison {
    margin: 1rem 0;
  }

  .plan-cost-comparison-table th,
  .plan-cost-comparison-table td {
    padding: 0.4em 0.5em;
  }
}

/* Mobile: compact enough for a 2-plan × 2-population table without scrolling */
@media (max-width: 480px) {
  .plan-cost-comparison {
    margin: 0.75rem 0;
  }

  .plan-cost-comparison-table th,
  .plan-cost-comparison-table td {
    padding: 0.25em 0.3em;
    font-size: 0.8em;
  }
}

@media print {
  .plan-cost-comparison-table-wrapper {
    overflow-x: visible;
  }
}
