:root {
  color-scheme: dark;
}

html[data-theme='dark'] {
  color-scheme: dark;
}

html[data-theme='light'] {
  color-scheme: light;
}

body,
nav,
section,
main,
footer,
.problem-card,
.rank-card,
.feature-card,
.pricing-card,
.contact-card,
.contact-container,
.legal-container,
.card,
.btn-primary,
.btn-secondary,
.nav-cta,
.waitlist-form input,
.theme-toggle {
  transition:
    background-color 0.28s ease,
    color 0.28s ease,
    border-color 0.28s ease,
    box-shadow 0.28s ease,
    opacity 0.28s ease,
    transform 0.18s ease;
}

.theme-toggle {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  border: 1px solid rgba(245, 237, 214, 0.18);
  background: rgba(245, 237, 214, 0.06);
  color: var(--parchment);
  border-radius: 999px;
  padding: 0.46rem 0.78rem;
  font: 600 0.8rem/1 'Inter', sans-serif;
  cursor: pointer;
  backdrop-filter: blur(10px);
}

.theme-toggle:hover {
  border-color: rgba(212, 162, 76, 0.45);
  color: var(--gold);
  transform: translateY(-1px);
}

.theme-toggle:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 2px;
}

.theme-toggle__icon {
  font-size: 0.95rem;
  line-height: 1;
}

.theme-toggle__label {
  letter-spacing: 0.02em;
}

html[data-theme='light'] body {
  background:
    radial-gradient(circle at top center, rgba(201, 168, 76, 0.14), transparent 35%),
    linear-gradient(180deg, #fbf5e5 0%, #f5edd6 48%, #efe2c8 100%);
  color: #1b4332;
}

html[data-theme='light'] nav {
  background: rgba(245, 237, 214, 0.92);
  border-bottom: 1px solid rgba(27, 67, 50, 0.12);
  box-shadow: 0 10px 32px rgba(27, 67, 50, 0.08);
}

html[data-theme='light'] .nav-logo-text,
html[data-theme='light'] .footer-logo-text {
  color: #1b4332;
}

html[data-theme='light'] .nav-link {
  color: #2d6a4f;
}

html[data-theme='light'] .nav-link:hover,
html[data-theme='light'] .footer-links a:hover {
  color: #a07830;
}

html[data-theme='light'] .nav-cta,
html[data-theme='light'] .btn-primary,
html[data-theme='light'] .pricing-cta.filled,
html[data-theme='light'] .saveBtn {
  background: #1b4332;
  color: #f5edd6;
}

html[data-theme='light'] .nav-cta:hover,
html[data-theme='light'] .btn-primary:hover,
html[data-theme='light'] .pricing-cta.filled:hover,
html[data-theme='light'] .saveBtn:hover {
  background: #2d6a4f;
}

html[data-theme='light'] .btn-secondary,
html[data-theme='light'] .pricing-cta.outline {
  color: #1b4332;
  border-color: rgba(27, 67, 50, 0.22);
}

html[data-theme='light'] .btn-secondary:hover,
html[data-theme='light'] .pricing-cta.outline:hover {
  color: #a07830;
  border-color: rgba(160, 120, 48, 0.45);
}

html[data-theme='light'] .theme-toggle {
  background: rgba(27, 67, 50, 0.05);
  color: #1b4332;
  border-color: rgba(27, 67, 50, 0.14);
}

html[data-theme='light'] .hero::before {
  background:
    radial-gradient(ellipse 86% 56% at 50% 0%, rgba(201, 168, 76, 0.18) 0%, transparent 62%),
    radial-gradient(ellipse 42% 34% at 8% 90%, rgba(64, 145, 108, 0.16) 0%, transparent 62%),
    radial-gradient(ellipse 36% 28% at 92% 16%, rgba(45, 106, 79, 0.12) 0%, transparent 58%);
}

html[data-theme='light'] .hero h1,
html[data-theme='light'] .section-title,
html[data-theme='light'] .legal-title,
html[data-theme='light'] .contact-title,
html[data-theme='light'] .heading,
html[data-theme='light'] .step-title,
html[data-theme='light'] .feature-title,
html[data-theme='light'] .rank-name,
html[data-theme='light'] .pricing-price,
html[data-theme='light'] .problem-label,
html[data-theme='light'] .txCategory,
html[data-theme='light'] .legal-content h2,
html[data-theme='light'] .legal-content h3 {
  color: #1b4332;
}

html[data-theme='light'] .hero h1 em,
html[data-theme='light'] .section-label,
html[data-theme='light'] .pricing-plan,
html[data-theme='light'] .feature-tag,
html[data-theme='light'] .contact-value,
html[data-theme='light'] .legal-content a,
html[data-theme='light'] .footer-links a,
html[data-theme='light'] .hero-scripture span {
  color: #a07830;
}

html[data-theme='light'] .hero-sub,
html[data-theme='light'] .section-desc,
html[data-theme='light'] .problem-desc,
html[data-theme='light'] .rank-goal,
html[data-theme='light'] .feature-desc,
html[data-theme='light'] .step-desc,
html[data-theme='light'] .pricing-features li,
html[data-theme='light'] .contact-desc,
html[data-theme='light'] .legal-content p,
html[data-theme='light'] .legal-content li,
html[data-theme='light'] .subtext,
html[data-theme='light'] .waitlist-note,
html[data-theme='light'] .footer-tagline {
  color: #355f4d;
}

html[data-theme='light'] .hero-trust,
html[data-theme='light'] .pricing-period,
html[data-theme='light'] .legal-date,
html[data-theme='light'] .footer-copy,
html[data-theme='light'] .hero-scripture,
html[data-theme='light'] .contact-label,
html[data-theme='light'] .fallback-label {
  color: #7f684a;
}

html[data-theme='light'] .problem-section,
html[data-theme='light'] .features-section,
html[data-theme='light'] .how-section {
  background: rgba(255, 255, 255, 0.36);
}

html[data-theme='light'] .ranks-section,
html[data-theme='light'] .pricing-section {
  background: rgba(237, 224, 192, 0.46);
}

html[data-theme='light'] .waitlist-section {
  background:
    linear-gradient(160deg, rgba(237, 224, 192, 0.88) 0%, rgba(245, 237, 214, 0.96) 100%);
  border-top-color: rgba(27, 67, 50, 0.12);
}

html[data-theme='light'] .problem-card,
html[data-theme='light'] .rank-card,
html[data-theme='light'] .feature-card,
html[data-theme='light'] .pricing-card.free-card,
html[data-theme='light'] .contact-card,
html[data-theme='light'] .legal-container,
html[data-theme='light'] .contact-container,
html[data-theme='light'] .card,
html[data-theme='light'] .txCard,
html[data-theme='light'] .summaryCard,
html[data-theme='light'] .subBanner {
  background: rgba(255, 252, 246, 0.82);
  border-color: rgba(27, 67, 50, 0.1);
  box-shadow: 0 14px 40px rgba(27, 67, 50, 0.08);
}

html[data-theme='light'] .feature-card.highlight,
html[data-theme='light'] .pricing-card.premium-card {
  background: linear-gradient(145deg, rgba(201, 168, 76, 0.14) 0%, rgba(255, 252, 246, 0.92) 70%);
  border-color: rgba(201, 168, 76, 0.32);
}

html[data-theme='light'] .hero-logo-mark,
html[data-theme='light'] .logo-mark,
html[data-theme='light'] .spinner-logo {
  box-shadow: 0 14px 36px rgba(27, 67, 50, 0.12), 0 0 0 1px rgba(27, 67, 50, 0.08);
}

html[data-theme='light'] .spinner-svg circle {
  stroke-opacity: 0.7;
}

html[data-theme='light'] .pill,
html[data-theme='light'] .rank-badge.premium {
  background: rgba(201, 168, 76, 0.14);
  border-color: rgba(201, 168, 76, 0.24);
  color: #a07830;
}

html[data-theme='light'] .rank-badge.free {
  background: rgba(45, 106, 79, 0.1);
  color: #2d6a4f;
}

html[data-theme='light'] .path-name,
html[data-theme='light'] .quickActionText,
html[data-theme='light'] .txDate,
html[data-theme='light'] .notiBody,
html[data-theme='light'] .historyDate,
html[data-theme='light'] .historyNote,
html[data-theme='light'] .txNote {
  color: #577562;
}

html[data-theme='light'] .path-icon {
  background: rgba(27, 67, 50, 0.04);
}

html[data-theme='light'] .path-arrow,
html[data-theme='light'] .divider-diamond,
html[data-theme='light'] .problem-stat,
html[data-theme='light'] .summaryAmount,
html[data-theme='light'] .pricing-popular,
html[data-theme='light'] .pricing-features li::before {
  color: #c9a84c;
}

html[data-theme='light'] .divider-line,
html[data-theme='light'] .legal-content h2,
html[data-theme='light'] .fallback-section {
  border-color: rgba(27, 67, 50, 0.1);
}

html[data-theme='light'] .legal-content h2 {
  border-bottom-color: rgba(27, 67, 50, 0.08);
}

html[data-theme='light'] .waitlist-form input {
  background: rgba(255, 255, 255, 0.86);
  color: #1b4332;
  border-color: rgba(27, 67, 50, 0.14);
}

html[data-theme='light'] .waitlist-form input::placeholder {
  color: #9e8b7a;
}

html[data-theme='light'] .waitlist-form input:focus {
  border-color: rgba(160, 120, 48, 0.52);
  box-shadow: 0 0 0 3px rgba(201, 168, 76, 0.12);
}

html[data-theme='light'] footer {
  background: #1b4332;
}

html[data-theme='light'] .footer-tagline,
html[data-theme='light'] .footer-copy {
  color: rgba(245, 237, 214, 0.72);
}

html[data-theme='light'] .footer-links a {
  color: #f5edd6;
}

html[data-theme='light'] .footer-logo-text {
  color: #f5edd6;
}

html[data-theme='light'] .footer-logo-wrap:hover .footer-logo-text {
  color: #e8c96a;
}

html[data-theme='light'] .contact-card:hover,
html[data-theme='light'] .feature-card:hover,
html[data-theme='light'] .rank-card:hover,
html[data-theme='light'] .problem-card:hover {
  border-color: rgba(160, 120, 48, 0.28);
}

html[data-theme='light'] .contact-icon,
html[data-theme='light'] .feature-icon,
html[data-theme='light'] .rank-icon {
  filter: saturate(0.95);
}

@media (max-width: 640px) {
  .theme-toggle__label {
    display: none;
  }

  .theme-toggle {
    padding-inline: 0.68rem;
  }
}
