:root[data-theme="dark"] { color-scheme: dark; }
:root[data-theme="light"] { color-scheme: light; }

.theme-icon {
  padding: 0;
  background: rgba(7, 13, 23, .18);
  cursor: pointer;
  transition: color .2s ease, border-color .2s ease, background .2s ease, transform .2s ease;
}

.theme-icon:hover { border-color: var(--hero-purple-light); color: #fff; transform: rotate(18deg); }
.theme-icon:focus-visible { outline: 2px solid var(--hero-purple-light); outline-offset: 3px; }

:root[data-theme="light"] body {
  background: #f3f0ea;
  color: #2b2730;
}

:root[data-theme="light"] body::before {
  background:
    radial-gradient(ellipse at 76% 6%, rgba(174, 151, 201, .2) 0%, transparent 35%),
    radial-gradient(ellipse at 15% 44%, rgba(211, 194, 225, .22) 0%, transparent 34%),
    linear-gradient(180deg, #f6f3ed 0%, #eee9e2 48%, #f5f1eb 100%);
}

:root[data-theme="light"] .section::before { opacity: .13; }

:root[data-theme="light"] .site-header.scrolled {
  background: rgba(248, 245, 239, .92);
  box-shadow: 0 1px 0 rgba(63, 47, 74, .12);
  color: #322b39;
}

:root[data-theme="light"] .site-header.scrolled .main-nav { color: #5f5665; }
:root[data-theme="light"] .site-header.scrolled .main-nav a:hover { color: #7137a4; }
:root[data-theme="light"] .site-header.scrolled .header-login { color: #463c4d; }
:root[data-theme="light"] .site-header.scrolled .theme-icon { background: rgba(118, 69, 154, .06); color: #6b377f; }
:root[data-theme="light"] .site-header.scrolled .menu-toggle { border-color: rgba(75, 55, 86, .25); }
:root[data-theme="light"] .site-header.scrolled .menu-toggle span { background: #3f3546; }

:root[data-theme="light"] .result-section,
:root[data-theme="light"] .why-section,
:root[data-theme="light"] .uniqueness,
:root[data-theme="light"] .program,
:root[data-theme="light"] .process,
:root[data-theme="light"] .tariffs,
:root[data-theme="light"] .expert,
:root[data-theme="light"] .faq,
:root[data-theme="light"] .tariff-details {
  background: transparent;
  color: #2b2730;
}

:root[data-theme="light"] .result-section .section-intro h2,
:root[data-theme="light"] .why-section .section-intro h2,
:root[data-theme="light"] .uniqueness .section-intro h2,
:root[data-theme="light"] .program .section-intro h2,
:root[data-theme="light"] .process .section-intro h2,
:root[data-theme="light"] .tariffs .section-intro h2,
:root[data-theme="light"] .expert .section-intro h2,
:root[data-theme="light"] .faq .section-intro h2,
:root[data-theme="light"] .tariff-details .section-intro h2 {
  color: #29232f;
}

:root[data-theme="light"] .section-intro p,
:root[data-theme="light"] .section-intro .lead,
:root[data-theme="light"] .result-card p,
:root[data-theme="light"] .feature-grid p,
:root[data-theme="light"] .method-timeline p,
:root[data-theme="light"] .process-list p,
:root[data-theme="light"] .faq-list p,
:root[data-theme="light"] .tariff-details p {
  color: #6f6674;
}

:root[data-theme="light"] .result-card,
:root[data-theme="light"] .method-timeline > div,
:root[data-theme="light"] .lesson-grid p,
:root[data-theme="light"] .detail-columns > div {
  border-color: rgba(117, 79, 143, .2);
  background: rgba(255, 255, 255, .72);
  box-shadow: 0 16px 38px rgba(58, 45, 67, .06);
}

:root[data-theme="light"] .result-card p { border-left-color: rgba(111, 77, 134, .18); }
:root[data-theme="light"] .statement { border-color: rgba(111, 77, 134, .24); }
:root[data-theme="light"] .statement strong,
:root[data-theme="light"] .method-timeline h3,
:root[data-theme="light"] .feature-grid b,
:root[data-theme="light"] .faq-list summary { color: #302936; }

:root[data-theme="light"] .feature-grid > div,
:root[data-theme="light"] .process-list p,
:root[data-theme="light"] .faq-list details { border-color: rgba(93, 74, 105, .18); }

:root[data-theme="light"] .program-part,
:root[data-theme="light"] .program .program-principle {
  border-color: rgba(128, 78, 163, .42);
  background: rgba(255, 255, 255, .68);
  box-shadow: 0 20px 46px rgba(57, 39, 68, .07);
}

:root[data-theme="light"] .program-part-info { border-color: rgba(128, 78, 163, .28); }
:root[data-theme="light"] .program-part-info > span,
:root[data-theme="light"] .program-part-info p,
:root[data-theme="light"] .program-row p,
:root[data-theme="light"] .program .program-lead { color: #756a79; }
:root[data-theme="light"] .program-part-info h3,
:root[data-theme="light"] .program-row b { color: #312936; }
:root[data-theme="light"] .program-row { border-color: rgba(76, 57, 86, .13); }
:root[data-theme="light"] .program .program-principle { color: #6b5c72; }

:root[data-theme="light"] .tariffs .tariff:not(.featured) {
  border-color: rgba(105, 83, 119, .3);
  background:
    radial-gradient(circle at 50% -12%, rgba(151, 121, 171, .14), transparent 43%),
    linear-gradient(155deg, rgba(255, 255, 255, .94), rgba(242, 236, 244, .96));
  box-shadow: 0 22px 50px rgba(69, 49, 80, .09);
}

:root[data-theme="light"] .tariffs .tariff:not(.featured) h3,
:root[data-theme="light"] .tariffs .tariff:not(.featured) .price { color: #302737; }
:root[data-theme="light"] .tariffs .tariff:not(.featured) > p,
:root[data-theme="light"] .tariffs .tariff:not(.featured) li { color: #655b6a; }
:root[data-theme="light"] .tariffs .tariff:not(.featured) h4::before,
:root[data-theme="light"] .tariffs .tariff:not(.featured) h4::after { background: linear-gradient(90deg, transparent, rgba(76, 55, 88, .18)); }
:root[data-theme="light"] .tariffs .tariff:not(.featured) li::before { background: #795493; }
:root[data-theme="light"] .offer-note { color: #746879; }

:root[data-theme="light"] .expert-photo,
:root[data-theme="light"] .image-frame { border-color: rgba(112, 79, 132, .28); }

:root[data-theme="light"] .main-nav.is-open {
  border-color: rgba(93, 64, 111, .18);
  background: rgba(248, 245, 239, .98);
  color: #3a303f;
}

@media (prefers-reduced-motion: reduce) {
  .theme-icon { transition: none; }
}
