/* ASTRO DESIGN SYSTEM — extracted from welcome.html */
/* Welcome tokens: bg #0E0B2A, radial gold glow, btn linear-gradient(135deg,#D4AF55,#F4D03F), fonts Playfair Display + Montserrat, accent #D4AF55 */

/* --- Reset body/html to welcome palette --- */
html, body {
  background-color: #0E0B2A !important;
  background-image: radial-gradient(circle at 50% 30%, rgba(212,175,85,0.08) 0%, rgba(14,11,42,1) 70%) !important;
  background-attachment: fixed !important;
  color: #e1e3e4 !important;
}

/* --- Typography reset to Playfair Display + Montserrat --- */
h1, h2, h3, h4, h5, h6,
[class*='font-headline'], [class*='font-display'], [class*='font-brand'] {
  font-family: 'Playfair Display', serif !important;
}
body, p, span, div, button, input, select, label,
[class*='font-body'], [class*='font-label'] {
  font-family: 'Montserrat', 'Be Vietnam Pro', sans-serif !important;
}

/* --- Button / CTA override to gold gradient --- */
button[class*='btn'], button[onclick], .btn-gold-gradient,
button[class*='cta'], button[class*='gold'], button[class*='pill'],
button[data-funnel-next], #next-btn, #unlock-btn, #continue-btn,
a[class*='btn'] {
  background: linear-gradient(135deg, #D4AF55 0%, #F4D03F 100%) !important;
  color: #0E0B2A !important;
  box-shadow: 0 0 20px rgba(212,175,85,0.4) !important;
  border: none !important;
  cursor: pointer !important;
  pointer-events: auto !important;
}
button[data-funnel-next]:disabled, button[data-funnel-next].f-btn-disabled {
  background: linear-gradient(135deg, #D4AF55 0%, #F4D03F 100%) !important;
  opacity: 0.4 !important;
}

/* --- Surface containers keep astro dark navy --- */
[class*='surface-container'], [class*='glass-card'], [class*='glass-panel'] {
  background-color: rgba(22, 18, 61, 0.6) !important;
  border-color: rgba(212,175,85,0.3) !important;
}

/* --- Accent color #D4AF55 for primary text --- */
[class*='text-primary'], .text-primary {
  color: #D4AF55 !important;
}

/* --- Progress bars keep gold gradient --- */
[data-funnel-progress], [class*='progress-fill'], [id*='score-bar'] {
  background: linear-gradient(90deg, #D4AF55, #F4D03F) !important;
}

/* --- Selected option highlight --- */
[data-option][data-selected='true'], [class*='selected'], .selected {
  border-color: #D4AF55 !important;
  background: rgba(212,175,85,0.08) !important;
}

/* --- Input fields dark navy --- */
input[type=email], input[type=text], select, textarea {
  background: #1A1230 !important;
  color: #F0EAF9 !important;
  border-color: #2D2450 !important;
}
input::placeholder, textarea::placeholder {
  color: #6B5D80 !important;
}

/* --- Sticky bottom CTA gradient from navy --- */
[class*='fixed bottom'] {
  background: linear-gradient(to top, #0E0B2A 70%, transparent) !important;
}

/* --- Bottom backgrounds for sticky overlays --- */
.sticky-cta-bg, ._sticky_cta {
  background: linear-gradient(to top, #0E0B2A 60%, transparent) !important;
}

/* LIGATURE FIX: prevent body/span font-family override from breaking Material Symbols icons */
span.material-symbols-outlined,
.material-symbols-outlined {
  font-family: 'Material Symbols Outlined' !important;
  font-weight: normal !important;
  font-style: normal !important;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal !important;
  text-transform: none !important;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}
