:root {
  --fs-day-bg: #edf3f6;
  --fs-day-bg-soft: #e2edf2;
  --fs-day-panel: #ffffff;
  --fs-day-panel-tint: #eaf3f6;
  --fs-day-ink: #051923;
  --fs-day-copy: #294451;
  --fs-day-muted: #526d7a;
  --fs-day-line: rgba(5, 35, 49, .19);
  --fs-day-lime-text: #c6ff00;
  --fs-day-cyan-text: #007f94;
  --fs-day-shadow: 0 18px 48px rgba(8, 39, 54, .13);
}

html[data-fs-theme="dark"] { color-scheme: dark; }
html[data-fs-theme="light"] {
  color-scheme: light;
  --bg: var(--fs-day-bg);
  --bg2: var(--fs-day-bg-soft);
  --panel: var(--fs-day-panel);
  --panel2: #dcecf3;
  --ink: var(--fs-day-ink);
  --text: var(--fs-day-ink);
  --mut: var(--fs-day-muted);
  --mut2: var(--fs-day-copy);
  --line: var(--fs-day-line);
}

body,
.nav,
.top,
.card,
.note,
.step,
.stat,
.faq details,
.post-card,
#fs-site-footer {
  transition: background-color .32s ease, border-color .32s ease, color .32s ease, box-shadow .32s ease;
}

.fs-theme-toggle {
  position: fixed;
  z-index: 8900;
  top: 86px;
  right: max(14px, env(safe-area-inset-right));
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 6px 12px 6px 7px;
  border: 1px solid rgba(255,255,255,.18);
  border-radius: 999px;
  background: rgba(7,16,24,.78);
  color: #eef3f7;
  box-shadow: 0 10px 32px rgba(0,0,0,.22);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  font: 700 11px/1 "Space Mono", ui-monospace, monospace;
  letter-spacing: .08em;
  text-transform: uppercase;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}

.fs-theme-toggle__icon {
  display: grid;
  place-items: center;
  width: 27px;
  height: 27px;
  border-radius: 50%;
  background: #c6ff00;
  color: #101704;
  font: 900 17px/1 system-ui, sans-serif;
  box-shadow: 0 0 18px rgba(198,255,0,.30);
}

.fs-theme-toggle:hover { transform: translateY(-1px); }
.fs-theme-toggle:focus-visible { outline: 3px solid rgba(0,229,255,.55); outline-offset: 3px; }

html[data-fs-theme="light"] .fs-theme-toggle {
  border-color: rgba(5,35,49,.24);
  background: rgba(255,255,255,.94);
  color: var(--fs-day-ink);
  box-shadow: var(--fs-day-shadow), 0 0 0 2px rgba(198,255,0,.48);
}

html[data-fs-theme="light"] .fs-theme-toggle__icon {
  background: #082432;
  color: #d9fbff;
  box-shadow: none;
}

html[data-fs-theme="light"] body {
  background-color: var(--fs-day-bg) !important;
  color: var(--fs-day-ink) !important;
  background-image:
    radial-gradient(circle at 12% 2%, rgba(0,181,217,.14), transparent 31%),
    radial-gradient(circle at 88% 28%, rgba(198,255,0,.10), transparent 28%),
    linear-gradient(rgba(8,43,60,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(8,43,60,.035) 1px, transparent 1px) !important;
}

html[data-fs-theme="light"] .nav,
html[data-fs-theme="light"] .nav.solid,
html[data-fs-theme="light"] .top {
  background: rgba(250,253,254,.95) !important;
  border-color: rgba(112,147,0,.34) !important;
  box-shadow: 0 8px 32px rgba(20,52,68,.09), inset 0 -2px 0 rgba(198,255,0,.62);
}

html[data-fs-theme="light"] :is(.brand, .nav-phone, h1, h2, h3, .section-title) {
  color: var(--fs-day-ink);
}

html[data-fs-theme="light"] :is(.nav-links a, .back, .lead, article p, li, .step p, .stat span, .foot, .foot-links a, .post-copy p, .post-text) {
  color: var(--fs-day-copy);
}

html[data-fs-theme="light"] :is(.card, .note, .stat, .step, .faq details, .toc, .post-card) {
  background: rgba(255,255,255,.94) !important;
  border-color: var(--fs-day-line) !important;
  box-shadow: var(--fs-day-shadow), inset 0 3px 0 rgba(198,255,0,.82);
}

html[data-fs-theme="light"] :is(.card, .stat, .step, .faq details, .post-card):hover {
  border-color: rgba(103,136,0,.48) !important;
  box-shadow: 0 22px 55px rgba(8,39,54,.16), inset 0 3px 0 #c6ff00;
}

html[data-fs-theme="light"] :is(.eyebrow, .kicker, .hero-kicker, .model-kicker, .partner-label, .step-num, .step .n, .card .num) {
  color: var(--fs-day-lime-text) !important;
}

html[data-fs-theme="light"] [style*="color: rgb(198, 255, 0)"],
html[data-fs-theme="light"] [style*="color:#c6ff00"] {
  color: var(--fs-day-lime-text) !important;
}

html[data-fs-theme="light"] [style*="color: rgb(0, 229, 255)"],
html[data-fs-theme="light"] [style*="color:#00e5ff"] {
  color: var(--fs-day-cyan-text) !important;
}

html[data-fs-theme="light"] :is(.btn.alt, .js-prices, .back) {
  border-color: rgba(5,35,49,.30) !important;
  color: var(--fs-day-ink) !important;
  background: rgba(255,255,255,.72) !important;
}

html[data-fs-theme="light"] :is(.compare, .compare th, .compare td, article section, footer) {
  border-color: var(--fs-day-line) !important;
}

html[data-fs-theme="light"] .compare th { background: rgba(198,255,0,.22); color: var(--fs-day-ink); }
html[data-fs-theme="light"] .compare td { color: var(--fs-day-copy); background: rgba(255,255,255,.72); }
html[data-fs-theme="light"] .faq summary,
html[data-fs-theme="light"] .note strong,
html[data-fs-theme="light"] .stat b { color: var(--fs-day-ink); }

html[data-fs-theme="light"] :is(.intro, .steps, section.block, .below, .post-zone) {
  background: var(--fs-day-bg-soft) !important;
}

html[data-fs-theme="light"] .model,
html[data-fs-theme="light"] .cta-band {
  color: var(--fs-day-ink);
  background:
    radial-gradient(circle at 100% 0, rgba(198,255,0,.22), transparent 45%),
    var(--fs-day-panel) !important;
  box-shadow: var(--fs-day-shadow);
}

html[data-fs-theme="light"] .model :is(p, small),
html[data-fs-theme="light"] .cta-band p { color: var(--fs-day-copy); }
html[data-fs-theme="light"] .spec { background: rgba(8,43,60,.045); border-color: var(--fs-day-line); }
html[data-fs-theme="light"] .spec strong { color: var(--fs-day-ink); }

/* Главная страница собрана из инлайновых блоков. Светлая тема меняет её
   интерфейсные слои, сохраняя фото, видео и рекламные плашки контрастными. */
html[data-fs-theme="light"] #dc-root > .sc-host > div[style*="Space Grotesk"] {
  background: var(--fs-day-bg) !important;
  color: var(--fs-day-ink);
}

html[data-fs-theme="light"] #dc-root > .sc-host > div[style*="Space Grotesk"] > nav[style*="position: fixed"] {
  background: linear-gradient(180deg, rgba(247,251,253,.96), rgba(247,251,253,.80)) !important;
  border-color: rgba(112,147,0,.34) !important;
  box-shadow: 0 10px 34px rgba(13,49,66,.10), inset 0 -2px 0 rgba(198,255,0,.64);
}

/* Компактный фирменный знак в шапке: крупный FS, лаймовая линия и ENERGY
   на общей центральной оси. Исходный круглый знак остаётся рядом. */
#dc-root > .sc-host > div[style*="Space Grotesk"] > nav[style*="position: fixed"] > span:first-child {
  gap: 5px !important;
}

#dc-root > .sc-host > div[style*="Space Grotesk"] > nav[style*="position: fixed"] > span:first-child > img {
  width: 50px !important;
  height: 50px !important;
}

#dc-root > .sc-host > div[style*="Space Grotesk"] > nav[style*="position: fixed"] > span:first-child > span:last-child {
  width: 58px;
  display: inline-grid !important;
  grid-template-rows: 25px 3px 9px;
  justify-items: center;
  align-items: center;
  row-gap: 0;
  font-size: 0 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  transform: skewX(-7deg);
}

#dc-root > .sc-host > div[style*="Space Grotesk"] > nav[style*="position: fixed"] > span:first-child > span:last-child::before {
  content: "FS";
  font: italic 900 32px/.78 'Archivo', sans-serif;
  letter-spacing: -.075em;
  color: inherit;
}

#dc-root > .sc-host > div[style*="Space Grotesk"] > nav[style*="position: fixed"] > span:first-child > span:last-child > span {
  width: 38px;
  height: 3px;
  border-radius: 999px;
  background: #c6ff00;
  color: transparent !important;
  font-size: 0 !important;
}

#dc-root > .sc-host > div[style*="Space Grotesk"] > nav[style*="position: fixed"] > span:first-child > span:last-child::after {
  content: "ENERGY";
  font: italic 900 10px/.9 'Archivo', sans-serif;
  letter-spacing: .06em;
  color: inherit;
}

@media (max-width: 720px) {
  #dc-root > .sc-host > div[style*="Space Grotesk"] > nav[style*="position: fixed"] > span:first-child > img {
    width: 44px !important;
    height: 44px !important;
  }

  #dc-root > .sc-host > div[style*="Space Grotesk"] > nav[style*="position: fixed"] > span:first-child > span:last-child {
    width: 52px;
    grid-template-rows: 22px 3px 8px;
    row-gap: 0;
  }

  #dc-root > .sc-host > div[style*="Space Grotesk"] > nav[style*="position: fixed"] > span:first-child > span:last-child::before {
    font-size: 28px;
  }

  #dc-root > .sc-host > div[style*="Space Grotesk"] > nav[style*="position: fixed"] > span:first-child > span:last-child::after {
    font-size: 9px;
  }
}

html[data-fs-theme="light"] #dc-root > .sc-host > div[style*="Space Grotesk"] > nav span[style*="color: rgb(255, 255, 255)"],
html[data-fs-theme="light"] #dc-root > .sc-host > div[style*="Space Grotesk"] > nav a[style*="color: rgb(255, 255, 255)"],
html[data-fs-theme="light"] #dc-root > .sc-host > div[style*="Space Grotesk"] > nav div[style*="color: rgba(255, 255, 255"] {
  color: var(--fs-day-ink) !important;
}

html[data-fs-theme="light"] #dc-root > .sc-host > div[style*="Space Grotesk"] > :is(header,section) h1,
html[data-fs-theme="light"] #dc-root > .sc-host > div[style*="Space Grotesk"] > :is(header,section) h2 {
  color: var(--fs-day-ink) !important;
  text-shadow: none !important;
}

html[data-fs-theme="light"] #dc-root > .sc-host > div[style*="Space Grotesk"] > :is(header,section) p[style*="color: rgb(138, 153, 171)"],
html[data-fs-theme="light"] #dc-root > .sc-host > div[style*="Space Grotesk"] > :is(header,section) p[style*="color: rgb(195, 210, 224)"],
html[data-fs-theme="light"] #dc-root > .sc-host > div[style*="Space Grotesk"] > :is(header,section) p[style*="color: rgb(159, 176, 195)"] {
  color: var(--fs-day-copy) !important;
}

/* Карточки-«услуги»/FAQ на гид-страницах используют свой тёмный инлайн-фон
   (не входит ни в один из классов выше) — светлим и их. */
html[data-fs-theme="light"] [style*="background: rgb(14, 19, 28)"] {
  background: var(--fs-day-panel) !important;
  border-color: var(--fs-day-line) !important;
}

html[data-fs-theme="light"] #dc-root > .sc-host > div[style*="Space Grotesk"] > header > div:first-child [style*="color: rgb(255, 255, 255)"],
html[data-fs-theme="light"] #dc-root > .sc-host > div[style*="Space Grotesk"] > header > div:first-child :is(.js-offer-price, .js-offer-note) {
  color: var(--fs-day-copy) !important;
  text-shadow: none !important;
}

html[data-fs-theme="light"] #dc-root > .sc-host > div[style*="Space Grotesk"] > header > div:first-child .js-prices {
  color: var(--fs-day-ink) !important;
  border-color: var(--fs-day-line) !important;
  background: rgba(255,255,255,.66) !important;
}

html[data-fs-theme="light"] #dc-root > .sc-host > div[style*="Space Grotesk"] > section > div[style*="background: rgba(255, 255, 255"] {
  background: rgba(255,255,255,.94) !important;
  border-color: var(--fs-day-line) !important;
  box-shadow: var(--fs-day-shadow), inset 0 3px 0 rgba(198,255,0,.78);
}

/* В светлом режиме контентные блоки главной остаются светлыми. Медиа внутри
   карточек не осветляются: меняются только фон и типографика интерфейса. */
html[data-fs-theme="light"] #community {
  background: var(--fs-day-bg-soft) !important;
  color: var(--fs-day-ink) !important;
}

html[data-fs-theme="light"] :is(.fs-sales-trust, .fs-how, .fs-faq, [data-dc-tpl="85"]) {
  background: var(--fs-day-bg-soft) !important;
  border-color: var(--fs-day-line) !important;
  color: var(--fs-day-ink) !important;
}

html[data-fs-theme="light"] .fs-sales-trust-item {
  min-height: 48px;
  padding: 9px 12px;
  border: 1px solid rgba(5,35,49,.28);
  border-radius: 12px;
  background: var(--fs-day-panel);
  color: var(--fs-day-ink) !important;
  box-shadow: 0 8px 22px rgba(8,39,54,.08);
}

html[data-fs-theme="light"] :is(.fs-how-card, .fs-faq details) {
  background: var(--fs-day-panel) !important;
  border-color: var(--fs-day-line) !important;
  box-shadow: var(--fs-day-shadow), inset 0 2px 0 rgba(198,255,0,.72) !important;
}

html[data-fs-theme="light"] :is(.fs-sales-title, .fs-how-card h3, .fs-faq summary) {
  color: var(--fs-day-ink) !important;
  text-shadow: none !important;
}

html[data-fs-theme="light"] :is(.fs-how-card p, .fs-how-cta small, .fs-faq details p) {
  color: var(--fs-day-copy) !important;
}

html[data-fs-theme="light"] .fs-how-ico {
  background: rgba(198,255,0,.15) !important;
  border-color: rgba(0,0,0,.62) !important;
}

html[data-fs-theme="light"] .fs-how-num {
  color: rgba(77,102,0,.18) !important;
}

html[data-fs-theme="light"] #stihii .fs-reveal > div[style*="cursor"] {
  background: var(--fs-day-panel) !important;
  border-color: var(--fs-day-line) !important;
  box-shadow: var(--fs-day-shadow), inset 0 3px 0 rgba(198,255,0,.82) !important;
}

html[data-fs-theme="light"] #stihii .fs-reveal > div[style*="cursor"] > div:first-child {
  background: linear-gradient(145deg, #fff, #e7f0f4) !important;
}

html[data-fs-theme="light"] #stihii .fs-reveal > div[style*="cursor"] [style*="color: rgb(255, 255, 255)"],
html[data-fs-theme="light"] #stihii .fs-reveal > div[style*="cursor"] [style*="color:#fff"] {
  color: var(--fs-day-ink) !important;
}

html[data-fs-theme="light"] #stihii .fs-reveal > div[style*="cursor"] :is(
  [style*="color: rgb(138, 153, 171)"],
  [style*="color: rgb(169, 182, 198)"],
  [style*="color: rgb(107, 122, 140)"]
) {
  color: var(--fs-day-copy) !important;
}

html[data-fs-theme="light"] #stihii .fs-reveal > div[style*="cursor"] [style*="color: rgb(255, 90, 31)"] {
  color: #a83208 !important;
}

html[data-fs-theme="light"] #stihii .fs-reveal > div[style*="cursor"] [style*="border-bottom"] {
  border-color: var(--fs-day-line) !important;
}

html[data-fs-theme="light"] #dc-root > .sc-host > div[style*="Space Grotesk"] > section > :is(.fs-reveal[data-dc-tpl="477"], .fs-reveal[style*="linear-gradient(150deg"]) {
  background: linear-gradient(145deg, #fff, #e5f1f5) !important;
  border-color: var(--fs-day-line) !important;
  box-shadow: var(--fs-day-shadow), inset 0 3px 0 rgba(198,255,0,.82) !important;
}

html[data-fs-theme="light"] #dc-root > .sc-host > div[style*="Space Grotesk"] > section > :is(.fs-reveal[data-dc-tpl="477"], .fs-reveal[style*="linear-gradient(150deg"]) :is(h2,p) {
  color: var(--fs-day-ink) !important;
  text-shadow: none !important;
}

html[data-fs-theme="light"] #dc-root > .sc-host > div[style*="Space Grotesk"] > section > :is(.fs-reveal[data-dc-tpl="477"], .fs-reveal[style*="linear-gradient(150deg"]) a {
  background: rgba(255,255,255,.78) !important;
  border-color: var(--fs-day-line) !important;
  color: var(--fs-day-ink) !important;
}

html[data-fs-theme="light"] #community > div > .fs-reveal > p {
  color: var(--fs-day-copy) !important;
}

html[data-fs-theme="light"] #community [data-dc-tpl="157"] {
  background: linear-gradient(180deg, var(--fs-day-bg-soft), var(--fs-day-bg), var(--fs-day-bg-soft)) !important;
}

html[data-fs-theme="light"] #community :is(
  [data-dc-tpl="166"], [data-dc-tpl="175"],
  [data-dc-tpl="183"], [data-dc-tpl="190"]
) {
  border: 1px solid rgba(0,0,0,.78) !important;
  box-shadow: 0 12px 30px rgba(5,20,29,.18) !important;
}

html[data-fs-theme="light"] #community :is(
  [data-dc-tpl="166"], [data-dc-tpl="175"],
  [data-dc-tpl="183"], [data-dc-tpl="190"]
) :is(h3,p) {
  color: #fff !important;
  text-shadow: 0 1px 3px #000, 0 0 9px rgba(0,0,0,.92) !important;
}

html[data-fs-theme="light"] #community :is(
  [data-dc-tpl="166"], [data-dc-tpl="175"],
  [data-dc-tpl="183"], [data-dc-tpl="190"]
) span {
  background: rgba(0,0,0,.62) !important;
  border-color: #000 !important;
  color: #fff !important;
  text-shadow: 0 1px 2px #000 !important;
}

html[data-fs-theme="light"] #social > .fs-reveal > a {
  background: var(--fs-day-panel) !important;
  border-color: var(--fs-day-line) !important;
  color: var(--fs-day-ink) !important;
  box-shadow: 0 8px 24px rgba(8,39,54,.10);
}

html[data-fs-theme="light"] #fs-reviews {
  background: var(--fs-day-bg-soft) !important;
  border-color: var(--fs-day-line) !important;
}

html[data-fs-theme="light"] :is(.fsrv-h, .fsrv-rat-num, .fsrv-nm) {
  color: var(--fs-day-ink) !important;
}

html[data-fs-theme="light"] :is(.fsrv-c, .fsrv-rating) {
  background: var(--fs-day-panel) !important;
  border-color: var(--fs-day-line) !important;
  box-shadow: var(--fs-day-shadow), inset 0 2px 0 rgba(198,255,0,.72) !important;
}

html[data-fs-theme="light"] :is(.fsrv-txt, .fsrv-rat-cnt, .fsrv-sv) {
  color: var(--fs-day-copy) !important;
}

html[data-fs-theme="light"] .fsrv-more a {
  color: var(--fs-day-ink) !important;
  border-color: rgba(5,35,49,.32) !important;
  background: var(--fs-day-panel) !important;
}

html[data-fs-theme="light"] .fs-sales-trust-item span {
  color: var(--fs-day-lime-text) !important;
  border: 1px solid rgba(0,0,0,.72);
}

html[data-fs-theme="light"] #fs-bk-cls {
  color: var(--fs-day-ink) !important;
  border-color: var(--fs-day-line) !important;
}

/* Тонкая чёрная кромка отделяет фирменный лайм от белого фона, не меняя
   геометрию кнопок и карточек. */
html[data-fs-theme="light"] :is(
  .btn:not(.alt), .nav .cta, .nav .book, .hero-offer-btn,
  .fsbk-btn, .fsf-book, .js-book,
  [style*="background:#c6ff00"],
  [style*="background: rgb(198, 255, 0)"]
) {
  outline: 1px solid rgba(0,0,0,.82) !important;
  outline-offset: -1px;
}

html[data-fs-theme="light"] :is(.eyebrow, .kicker, .hero-kicker, .model-kicker, .partner-label, .step-num, .step .n, .card .num),
html[data-fs-theme="light"] :is(.fs-sales-label, .fsrv-lbl, .fsrv-stars, .fsrv-rat-stars),
html[data-fs-theme="light"] [style*="color:#c6ff00"],
html[data-fs-theme="light"] [style*="color: rgb(198, 255, 0)"] {
  -webkit-text-stroke: .45px rgba(0,0,0,.88);
  paint-order: stroke fill;
}

/* Статья о мотосёрфе и другие длинные страницы используют лайм внутри
   заголовков без классов. Сохраняем фирменный оттенок и отделяем его
   от светлого фона тонкой нейтрально-чёрной кромкой. */
html[data-fs-theme="light"] :is(.hero h1, article h2, .cta-band h2) > span,
html[data-fs-theme="light"] .toc a {
  color: var(--fs-day-lime-text) !important;
  -webkit-text-stroke: .35px #000;
  text-shadow:
    -.35px 0 #000, .35px 0 #000,
    0 -.35px #000, 0 .35px #000 !important;
  paint-order: stroke fill;
}

html[data-fs-theme="light"] .toc {
  background: var(--fs-day-panel) !important;
  border-color: rgba(5,35,49,.28) !important;
  box-shadow: var(--fs-day-shadow), inset 0 2px 0 #c6ff00 !important;
}

html[data-fs-theme="light"] .toc a + a {
  border-left-color: var(--fs-day-line) !important;
}

html[data-fs-theme="light"] article :is(.card, .note, .spec) {
  border-color: rgba(5,35,49,.24) !important;
}

html[data-fs-theme="light"] article table {
  box-shadow: 0 12px 34px rgba(8,39,54,.09);
}

html[data-fs-theme="light"] :is(.fs-sales-label, .fsrv-lbl, .fsrv-stars, .fsrv-rat-stars) {
  color: var(--fs-day-lime-text) !important;
}

/* Текст поверх медиа и тёмных промо-блоков остаётся белым. */
html[data-fs-theme="light"] :is(.hero-img, .hero-media, .sticky, .arena, .fsmq-card, #fs-hero-vid, #fs-hero-offer, .hero-tag) :is(h1,h2,h3,strong,p,span),
html[data-fs-theme="light"] [style*="background-image:url"] :is(h1,h2,h3,p,span) {
  color: #fff;
}

html[data-fs-theme="light"] :is(.hero-tag, #fs-hero-offer) {
  background: rgba(4,14,22,.82) !important;
  border-color: rgba(255,255,255,.18) !important;
}

html[data-fs-theme="light"] .hero-grid :is(h1, .lead, .prize, .timebox, .status) {
  color: #fff;
}

html[data-fs-theme="light"] .hero-tag :is(small, .hero-offer-note),
html[data-fs-theme="light"] #fs-hero-offer :is(small, .hero-offer-note) { color: #c6ff00; }

html[data-fs-theme="light"] :is(.hero-img, .hero-media, .sticky, .arena, .fsmq-card, #fs-hero-vid, #fs-hero-offer, .hero-tag) [style*="color: rgb(198, 255, 0)"],
html[data-fs-theme="light"] :is(.hero-img, .hero-media, .sticky, .arena, .fsmq-card, #fs-hero-vid, #fs-hero-offer, .hero-tag) [style*="color:#c6ff00"] {
  color: #c6ff00 !important;
}

/* Лоадеры не должны мигать противоположной темой. */
html[data-fs-theme="light"] :is(#__bundler_thumbnail, #fs-site-veil, #loader) {
  background-color: var(--fs-day-bg) !important;
}
html[data-fs-theme="light"] :is(#__bundler_thumbnail, #loader) :is(.fsl-logo, .lo-brand) { color: var(--fs-day-ink); }

/* Общий футер создаётся JavaScript-ом. */
html[data-fs-theme="light"] #fs-site-footer {
  background: #e6f0f5 !important;
  color: var(--fs-day-ink) !important;
  border-color: var(--fs-day-line) !important;
}
html[data-fs-theme="light"] #fs-site-footer :is(a, p, span) { color: var(--fs-day-copy); }
html[data-fs-theme="light"] #fs-site-footer .fsf-brand { color: var(--fs-day-ink); }

/* Модальные окна бронирования. */
html[data-fs-theme="light"] :is(#fs-bk-box, .fsbk-box, .fs-booking-modal__panel) {
  --fsbk-bg: #fff;
  background: #fff !important;
  color: var(--fs-day-ink) !important;
  border-color: var(--fs-day-line) !important;
  box-shadow: 0 28px 90px rgba(9,32,45,.22) !important;
}
html[data-fs-theme="light"] :is(#fs-bk-box, .fsbk-box, .fs-booking-modal__panel) :is(h2,h3,label,p,span,strong) {
  color: var(--fs-day-ink);
}

html[data-fs-theme="light"] #fs-bk-box :is(.fsbk-h, .fsbk-cal-mn, .fsbk-svc-name) {
  color: var(--fs-day-ink) !important;
}

html[data-fs-theme="light"] #fs-bk-box .fsbk-mono {
  color: #c6ff00 !important;
  -webkit-text-stroke: .35px #000;
  text-shadow: -.35px 0 #000, .35px 0 #000, 0 -.35px #000, 0 .35px #000 !important;
}

html[data-fs-theme="light"] #fs-bk-box :is(.fsbk-back, .fsbk-cal-hint, .fsbk-loader, .fsbk-svc-tag) {
  color: var(--fs-day-copy) !important;
}

html[data-fs-theme="light"] #fs-bk-box .fsbk-cal-nbtn {
  background: var(--fs-day-panel-tint) !important;
  border-color: rgba(5,35,49,.32) !important;
  color: var(--fs-day-ink) !important;
}

html[data-fs-theme="light"] #fs-bk-box .fsbk-cal-nbtn:hover:not(:disabled) {
  background: #d9e8ed !important;
  border-color: rgba(5,35,49,.58) !important;
  color: #000 !important;
}

html[data-fs-theme="light"] #fs-bk-box .fsbk-cal-dow {
  color: var(--fs-day-muted) !important;
  font-weight: 700;
}

html[data-fs-theme="light"] #fs-bk-box .fsbk-cal-d.off {
  color: #99a7ae !important;
}

html[data-fs-theme="light"] #fs-bk-box .fsbk-cal-d.avail {
  color: var(--fs-day-ink) !important;
  background: #fff !important;
  border-color: rgba(5,35,49,.34) !important;
  box-shadow: 0 3px 10px rgba(8,39,54,.07);
}

html[data-fs-theme="light"] #fs-bk-box .fsbk-cal-d.avail:hover {
  color: #000 !important;
  background: #f4fadf !important;
  border-color: #000 !important;
}

html[data-fs-theme="light"] #fs-bk-box .fsbk-cal-d.sel {
  color: #111704 !important;
  background: #c6ff00 !important;
  border-color: #000 !important;
  outline: 1px solid #000;
  outline-offset: -2px;
}

html[data-fs-theme="light"] #fs-bk-box .fsbk-time {
  background: #fff !important;
  border-color: rgba(5,35,49,.38) !important;
  color: var(--fs-day-ink) !important;
  box-shadow: 0 5px 14px rgba(8,39,54,.07);
}

html[data-fs-theme="light"] #fs-bk-box .fsbk-time:hover {
  background: #f4fadf !important;
  border-color: #000 !important;
  color: #000 !important;
}

html[data-fs-theme="light"] #fs-bk-box .fsbk-time.sel {
  background: #c6ff00 !important;
  border-color: #000 !important;
  color: #111704 !important;
  outline: 1px solid #000;
  outline-offset: -2px;
}

html[data-fs-theme="light"] #fs-bk-box :is(.fsbk-svc, .fsbk-sum) {
  background: #fff !important;
  border-color: rgba(5,35,49,.28) !important;
  color: var(--fs-day-ink) !important;
}

html[data-fs-theme="light"] #fs-bk-box .fsbk-svc:hover {
  background: #f5f9e8 !important;
  border-color: #000 !important;
}

html[data-fs-theme="light"] #fs-bk-box .fsbk-inp {
  background: #fff !important;
  border-color: rgba(5,35,49,.34) !important;
  color: var(--fs-day-ink) !important;
}

html[data-fs-theme="light"] #fs-bk-box .fsbk-inp::placeholder {
  color: #667d88 !important;
}

html[data-fs-theme="light"] #fs-bk-box .fsbk-inp:focus {
  border-color: #000 !important;
  box-shadow: 0 0 0 3px rgba(198,255,0,.32);
}

html[data-fs-theme="light"] #fs-bk-box .fsbk-chk-box {
  background: #fff;
  border-color: rgba(5,35,49,.44);
}

html[data-fs-theme="light"] #fs-bk-box :is(.fsbk-chk-txt, .fsbk-chk-txt a) {
  color: var(--fs-day-copy) !important;
}

/* Маркеры нумерованных списков (гайды по мотосёрфу и т.д.) — в тёмной теме
   лаймовые «4.», «5.» видно на тёмном фоне, в светлой они тонут. */
html[data-fs-theme="light"] ol li::marker {
  color: #7a9c00;
}

/* ── Гид-страницы (motosurf.html, jetsurf.html и подобные): у них свой набор
   .js-* блоков собственного шаблона, которого нет на главной — светлые
   правила выше их не касались, поэтому секции оставались тёмными, а
   h1/h2/h3 внутри уже темнели общим правилом (см. выше) и сливались с
   тёмным фоном. Делаем светлыми и сами блоки. ─────────────────────────── */
html[data-fs-theme="light"] .js-section {
  background: var(--fs-day-bg) !important;
}

html[data-fs-theme="light"] :is(.js-tariff, .js-tariff-featured) {
  background: var(--fs-day-panel) !important;
  border-color: var(--fs-day-line) !important;
  box-shadow: var(--fs-day-shadow);
}

html[data-fs-theme="light"] .js-tariff-featured {
  background:
    radial-gradient(100% 110% at 50% 0%, rgba(198,255,0,.18), transparent 58%),
    var(--fs-day-panel) !important;
}

html[data-fs-theme="light"] .js-quiz {
  background: linear-gradient(145deg, #fff, #e5f1f5) !important;
  border-color: var(--fs-day-line) !important;
}

html[data-fs-theme="light"] .js-answer {
  background: var(--fs-day-panel) !important;
  border-color: var(--fs-day-line) !important;
  color: var(--fs-day-ink) !important;
}

html[data-fs-theme="light"] :is(.js-kicker, .js-step span) {
  color: var(--fs-day-lime-text) !important;
}

html[data-fs-theme="light"] .js-tariff-price {
  color: var(--fs-day-lime-text) !important;
}

html[data-fs-theme="light"] :is(
  .js-lead, .js-tariff p, .js-tariff-meta, .js-tariff-list li,
  .js-step p, .js-result p, .sc-interp
) {
  color: var(--fs-day-copy) !important;
}

/* JetSurf: собственные секции страницы также становятся полноценными
   дневными поверхностями; тёмными остаются только фото и видеогалерея. */
html[data-fs-theme="light"] .js-trust {
  gap: 10px;
  padding: 12px clamp(16px,4vw,48px);
  background: var(--fs-day-bg-soft) !important;
  border-color: var(--fs-day-line) !important;
}

html[data-fs-theme="light"] .js-trust > div {
  background: var(--fs-day-panel) !important;
  border: 1px solid var(--fs-day-line);
  border-radius: 12px;
  color: var(--fs-day-copy) !important;
  box-shadow: 0 7px 20px rgba(8,39,54,.07);
}

html[data-fs-theme="light"] .js-trust b {
  color: var(--fs-day-lime-text) !important;
  -webkit-text-stroke: .35px #000;
  text-shadow: -.35px 0 #000, .35px 0 #000, 0 -.35px #000, 0 .35px #000;
}

html[data-fs-theme="light"] #why .fs-reveal[style*="grid"] > div {
  background: var(--fs-day-panel) !important;
  border-color: var(--fs-day-line) !important;
  box-shadow: var(--fs-day-shadow), inset 0 2px 0 rgba(198,255,0,.74);
}

html[data-fs-theme="light"] #why .fs-reveal[style*="grid"] > div :is(h3,p) {
  color: var(--fs-day-ink) !important;
}

html[data-fs-theme="light"] #why > div:first-child {
  background: linear-gradient(180deg, var(--fs-day-bg-soft), var(--fs-day-bg), var(--fs-day-bg-soft)) !important;
}

html[data-fs-theme="light"] #services .fs-reveal[style*="grid"] > div[style*="min-height"] {
  background: var(--fs-day-panel) !important;
  border-color: var(--fs-day-line) !important;
  box-shadow: 0 10px 28px rgba(8,39,54,.09), inset 0 2px 0 rgba(198,255,0,.68);
}

html[data-fs-theme="light"] #services .fs-reveal[style*="grid"] > div[style*="min-height"] :is(h3,p,.sc-interp) {
  color: var(--fs-day-ink) !important;
}

html[data-fs-theme="light"] #team .fs-reveal[style*="grid-template-columns"] {
  background: var(--fs-day-panel) !important;
  border-color: var(--fs-day-line) !important;
  box-shadow: var(--fs-day-shadow);
}

html[data-fs-theme="light"] #team .fs-reveal[style*="grid-template-columns"] > div:last-child > div:first-child {
  color: var(--fs-day-lime-text) !important;
  -webkit-text-stroke: .35px #000;
  text-shadow: -.35px 0 #000, .35px 0 #000, 0 -.35px #000, 0 .35px #000;
}

html[data-fs-theme="light"] #team .fs-reveal[style*="grid-template-columns"] > div:last-child > div:nth-child(2) {
  color: var(--fs-day-ink) !important;
}

html[data-fs-theme="light"] #team .fs-reveal[style*="grid-template-columns"] p {
  color: var(--fs-day-copy) !important;
}

html[data-fs-theme="light"] #faq > div:first-child {
  background: linear-gradient(180deg, var(--fs-day-bg), var(--fs-day-bg-soft) 55%, var(--fs-day-bg)) !important;
}

html[data-fs-theme="light"] #faq .fs-reveal[style*="flex-direction"] > div[style*="cursor"] {
  background: var(--fs-day-panel) !important;
  border-color: var(--fs-day-line) !important;
  box-shadow: 0 8px 24px rgba(8,39,54,.08);
}

html[data-fs-theme="light"] #faq .fs-reveal[style*="flex-direction"] > div[style*="cursor"] :is(span,p,.sc-interp) {
  color: var(--fs-day-ink) !important;
}

html[data-fs-theme="light"] :is(.js-step h3, .js-quiz h3, .js-result h3) {
  color: var(--fs-day-ink) !important;
}

html[data-fs-theme="light"] #contact span[style*="text-align: center"] {
  color: var(--fs-day-copy) !important;
}

html[data-fs-theme="light"] #fs-site-footer .fsf-spot strong {
  color: var(--fs-day-ink) !important;
}

/* Финальный контрастный слой главной: имеет приоритет над инлайновыми
   цветами, которые добавляет DC-шаблон после загрузки страницы. */
html[data-fs-theme="light"] #dc-root #community :is(
  [data-dc-tpl="166"], [data-dc-tpl="175"],
  [data-dc-tpl="183"], [data-dc-tpl="190"]
) :is(h3,p) {
  color: #fff !important;
  text-shadow: 0 1px 3px #000, 0 0 9px #000 !important;
}

html[data-fs-theme="light"] #dc-root #community :is(
  [data-dc-tpl="166"], [data-dc-tpl="175"],
  [data-dc-tpl="183"], [data-dc-tpl="190"]
) span {
  color: #fff !important;
  background: rgba(0,0,0,.68) !important;
  border-color: #000 !important;
  text-shadow: 0 1px 2px #000 !important;
}

html[data-fs-theme="light"] :is(.fs-sales-label, .fsrv-lbl, .fsrv-stars, .fsrv-rat-stars),
html[data-fs-theme="light"] [style*="color:#c6ff00"],
html[data-fs-theme="light"] [style*="color: rgb(198, 255, 0)"] {
  text-shadow:
    -.35px 0 #000, .35px 0 #000,
    0 -.35px #000, 0 .35px #000 !important;
}

@media (max-width: 760px) {
  .fs-theme-toggle {
    top: 70px;
    right: max(10px, env(safe-area-inset-right));
    min-height: 36px;
    padding: 5px 9px 5px 5px;
    font-size: 9px;
  }
  .fs-theme-toggle__icon { width: 25px; height: 25px; font-size: 15px; }
}

@media (prefers-reduced-motion: reduce) {
  body, .nav, .top, .card, .note, .step, .stat, .faq details, .post-card, #fs-site-footer { transition: none; }
  .fs-theme-toggle:hover { transform: none; }
}
