/* ==========================================================================
   Maternal Support Co. - Doula Medicaid Checker Design System
   Clinical-warm editorial research styling for perinatal Medicaid policies
   ========================================================================== */

/* Header Solid Opacity & Surface Protection */
header.glass-nav,
header#site-header {
  background-color: #FDFBF7 !important;
  background: #FDFBF7 !important;
  border-bottom: 1px solid rgba(235, 227, 216, 0.85) !important;
}

/* Button Background Protection — prevent header rule cascade */
.btn-terracotta,
button.btn-terracotta,
a.btn-terracotta,
.btn-unlock-report,
#btn-unlock-report {
  background: linear-gradient(135deg, #C47353 0%, #B86545 100%) !important;
  background-color: #C47353 !important;
  color: #FFFFFF !important;
}
.btn-terracotta:hover,
button.btn-terracotta:hover,
a.btn-terracotta:hover,
.btn-unlock-report:hover,
#btn-unlock-report:hover {
  background: linear-gradient(135deg, #B86545 0%, #A25335 100%) !important;
  background-color: #B86545 !important;
  color: #FFFFFF !important;
}

/* Button Text Selection Protection: Prevents body selection classes from causing button text to blend into button backgrounds */
.btn-terracotta::selection,
.btn-terracotta *::selection,
button.btn-terracotta::selection,
button.btn-terracotta *::selection,
a.btn-terracotta::selection,
a.btn-terracotta *::selection,
.btn-unlock-report::selection,
.btn-unlock-report *::selection,
#btn-unlock-report::selection,
#btn-unlock-report *::selection,
#btn-check-medicaid::selection,
#btn-check-medicaid *::selection,
button::selection,
button *::selection {
  background: #2D2825 !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

.btn-terracotta::-moz-selection,
.btn-terracotta *::-moz-selection,
button.btn-terracotta::-moz-selection,
button.btn-terracotta *::-moz-selection,
a.btn-terracotta::-moz-selection,
a.btn-terracotta *::-moz-selection,
#btn-unlock-report::-moz-selection,
#btn-unlock-report *::-moz-selection,
#btn-check-medicaid::-moz-selection,
#btn-check-medicaid *::-moz-selection,
button::-moz-selection,
button *::-moz-selection {
  background: #2D2825 !important;
  color: #FFFFFF !important;
}

/* Status Indicator Badges */
.badge-coverage-active {
  background-color: #EBF5EE;
  color: #1E6B38;
  border: 1px solid #B8DEC3;
}

.badge-coverage-pending {
  background-color: #FEF7E6;
  color: #9A6200;
  border: 1px solid #F8D98C;
}

.badge-coverage-study {
  background-color: #F5EEF9;
  color: #6E2D8F;
  border: 1px solid #DDBFE7;
}

.badge-coverage-none {
  background-color: #F5F2ED;
  color: #6E665E;
  border: 1px solid #DDD6CB;
}

/* Custom Select Dropdowns */
.medicaid-select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235C544F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1rem center;
  background-size: 1rem;
  padding-right: 2.75rem;
}

.medicaid-select:focus {
  outline: none;
  border-color: #C47353;
  box-shadow: 0 0 0 3px rgba(196, 115, 83, 0.15);
}

/* Research Data Cards - Luxury UI Component Architecture */
.medicaid-card {
  background: #FFFFFF;
  border: 1px solid #EDE6DD;
  border-radius: 1.25rem; /* rounded-2xl */
  box-shadow: 0 4px 20px -2px rgba(42, 36, 33, 0.05);
  transition: all 0.24s cubic-bezier(0.16, 1, 0.3, 1);
  position: relative;
}

.medicaid-faq-card {
  background: #FFFFFF;
  border: 1.5px solid #EFEAE3;
  border-radius: 1.25rem;
  box-shadow: 0 4px 16px -2px rgba(42, 36, 33, 0.04);
  transition: border-color 0.22s ease, box-shadow 0.22s ease, background-color 0.22s ease;
}

.medicaid-faq-card:hover {
  border-color: #D6C7B8;
  box-shadow: 0 10px 28px -4px rgba(196, 115, 83, 0.08);
}

.medicaid-faq-card.is-active {
  border-color: #E2A68E;
  background: linear-gradient(180deg, #FFFFFF 0%, #FDFBF9 100%);
  box-shadow: 0 12px 32px -4px rgba(196, 115, 83, 0.1);
}

.medicaid-faq-card.is-active .faq-chevron-bubble {
  background-color: #C47353 !important;
  color: #FFFFFF !important;
  transform: rotate(180deg);
}

.medicaid-faq-card.is-active .faq-question-text {
  color: #C47353 !important;
}

.faq-chevron-bubble {
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}

.medicaid-card-elevated {
  background-color: #FFFFFF;
  border: 1px solid #E0D7CC;
  border-radius: 1.25rem;
  box-shadow: 0 10px 25px -5px rgba(42, 36, 33, 0.06), 0 8px 10px -6px rgba(42, 36, 33, 0.03);
}

/* Feature Checkmarks */
.medicaid-check-icon {
  width: 1.125rem;
  height: 1.125rem;
  border-radius: 9999px;
  background-color: #EBF1ED;
  color: #4A5D4E;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

/* Accordion Smooth Disclosure */
.accordion-content {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.25s ease-out;
}

.accordion-content.is-open {
  grid-template-rows: 1fr;
}

.accordion-inner {
  overflow: hidden;
}

/* Result Reveal Animation */
.result-reveal-enter {
  opacity: 0;
  transform: translateY(12px);
  animation: resultFadeIn 0.35s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@keyframes resultFadeIn {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Official Source Verification Shield */
.source-shield {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  padding: 0.25rem 0.625rem;
  border-radius: 9999px;
  font-size: 0.6875rem;
  font-weight: 600;
  letter-spacing: 0.025em;
  background: #FAF6F0;
  color: #4A5D4E;
  border: 1px solid #D5E2D8;
}

/* Print/Report Simulation Container */
.report-paper {
  background: #FFFFFF;
  border: 1px solid #E5DFD7;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
}

/* Accessibility Focus Ring */
.medicaid-interactive-focus:focus-visible {
  outline: 2px solid #C47353;
  outline-offset: 2px;
}

/* Print Architecture for $9 Medicaid Report */
@media print {
  @page {
    size: portrait;
    margin: 12mm 15mm;
  }

  body {
    background: #FFFFFF !important;
    color: #1A1A1A !important;
    font-size: 10pt !important;
    line-height: 1.4 !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  /* Hide interactive, non-print UI */
  .no-print,
  #site-header,
  header:not(.print-header),
  #announcement-bar,
  #cart-panel,
  #cart-backdrop,
  footer,
  .print-hide,
  button:not(.print-keep),
  .btn-print-hide {
    display: none !important;
  }

  /* Clean full-width container */
  .medicaid-dossier-document {
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  /* Prevent awkward section splits across page breaks */
  section,
  .print-break-inside-avoid,
  .medicaid-card {
    break-inside: avoid !important;
    page-break-inside: avoid !important;
    margin-bottom: 1.5rem !important;
  }

  table {
    width: 100% !important;
    border-collapse: collapse !important;
  }

  th, td {
    padding: 6px 8px !important;
    font-size: 9pt !important;
    border-color: #D1D5DB !important;
  }

  a {
    text-decoration: none !important;
    color: #1A1A1A !important;
  }
}


/* Mobile Overflow & Text Protection */
.medicaid-card {
  box-sizing: border-box !important;
  max-width: 100% !important;
  overflow: hidden !important;
}
.medicaid-card button {
  box-sizing: border-box !important;
  max-width: 100% !important;
}
.medicaid-card button span.font-serif {
  display: block !important;
  white-space: normal !important;
  word-break: break-word !important;
  overflow-wrap: break-word !important;
}
.btn-unlock-report, #btn-unlock-report {
  max-width: 100% !important;
  box-sizing: border-box !important;
  white-space: normal !important;
  word-break: break-word !important;
}
