/* PozitiFF — переключатель темы (виден в обеих темах) + ручной слой светлой темы.
   Всё, что меняет вид сайта, — только под html[data-theme="light"]; тёмная тема не затрагивается. */

/* ---------- Киберпанк-тумблер ---------- */
.theme-switch{all:unset;box-sizing:border-box;position:relative;flex:0 0 auto;display:inline-flex;align-items:center;cursor:pointer;-webkit-tap-highlight-color:transparent;border-radius:999px}
.theme-switch:focus-visible{outline:2px solid #35e8ff;outline-offset:4px}
.ts-track{position:relative;display:block;width:64px;height:32px;border-radius:999px;overflow:hidden;
  background:linear-gradient(180deg,rgba(10,12,24,.9),rgba(5,5,10,.85));
  border:1px solid rgba(53,232,255,.45);
  box-shadow:inset 0 0 12px rgba(53,232,255,.18),0 0 14px -4px rgba(53,232,255,.55);
  transition:background .5s,border-color .5s,box-shadow .5s}
.ts-track::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:repeating-linear-gradient(90deg,rgba(53,232,255,.14) 0 1px,transparent 1px 8px),repeating-linear-gradient(0deg,rgba(53,232,255,.08) 0 1px,transparent 1px 8px);
  -webkit-mask:linear-gradient(90deg,transparent,#000 30%,#000 70%,transparent);mask:linear-gradient(90deg,transparent,#000 30%,#000 70%,transparent);opacity:.7}
.ts-track::after{content:"";position:absolute;top:0;bottom:0;width:40%;left:-45%;pointer-events:none;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent)}
.theme-anim .ts-track::after{animation:ts-sweep .7s cubic-bezier(.4,0,.2,1)}
@keyframes ts-sweep{to{left:110%}}
.ts-ic{position:absolute;top:50%;width:14px;height:14px;margin-top:-7px;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:opacity .4s,transform .5s}
.ts-moon{right:9px;stroke:#35e8ff;filter:drop-shadow(0 0 4px rgba(53,232,255,.8));opacity:.55}
.ts-sun{left:9px;stroke:#ffb547;opacity:0;transform:rotate(-90deg) scale(.6)}
.ts-knob{position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#eaffff,#35e8ff 45%,#0e7f95 100%);
  box-shadow:0 0 10px rgba(53,232,255,.9),0 0 22px rgba(53,232,255,.45),inset 0 -2px 4px rgba(0,0,0,.35);
  transition:transform .55s cubic-bezier(.68,-.35,.27,1.35),background .5s,box-shadow .5s}
.ts-knob::after{content:"";position:absolute;inset:6px;border-radius:50%;border:1px solid rgba(5,5,10,.55);border-right-color:transparent;transform:rotate(-30deg);transition:transform .6s}
.theme-switch:hover .ts-track{border-color:rgba(201,244,90,.7);box-shadow:inset 0 0 14px rgba(53,232,255,.25),0 0 20px -4px rgba(201,244,90,.6)}
.theme-switch[aria-checked=true] .ts-knob{transform:translateX(32px)}
.theme-switch[aria-checked=true] .ts-knob::after{transform:rotate(330deg)}
.theme-switch[aria-checked=true] .ts-moon{opacity:0;transform:rotate(90deg) scale(.6)}
.theme-switch[aria-checked=true] .ts-sun{opacity:1;transform:none}
@media(max-width:760px){.ts-track{width:56px;height:30px}.ts-knob{width:22px;height:22px}.theme-switch[aria-checked=true] .ts-knob{transform:translateX(26px)}.ts-moon{right:7px}.ts-sun{left:7px}}
@media(prefers-reduced-motion:reduce){.ts-knob,.ts-ic,.ts-track{transition:none!important}.theme-anim .ts-track::after{animation:none}}
@media print{.theme-switch{display:none}}

/* ---------- Светлая тема: тумблер ---------- */
html[data-theme="light"] .ts-track{background:linear-gradient(180deg,#ffffff,#eceaf8);border-color:rgba(176,26,120,.45);box-shadow:inset 0 1px 3px rgba(60,40,140,.18),0 0 14px -6px rgba(214,40,140,.6)}
html[data-theme="light"] .ts-track::before{background:repeating-linear-gradient(90deg,rgba(120,60,200,.12) 0 1px,transparent 1px 8px),repeating-linear-gradient(0deg,rgba(120,60,200,.07) 0 1px,transparent 1px 8px)}
html[data-theme="light"] .ts-track::after{background:linear-gradient(100deg,transparent,rgba(214,40,140,.25),transparent)}
html[data-theme="light"] .ts-knob{background:radial-gradient(circle at 35% 30%,#fff7da,#ffb547 45%,#e0477e 100%);box-shadow:0 0 10px rgba(255,140,80,.75),0 0 20px rgba(224,71,126,.35),inset 0 -2px 4px rgba(120,30,60,.3)}
html[data-theme="light"] .ts-knob::after{border-color:rgba(255,255,255,.8);border-right-color:transparent}
html[data-theme="light"] .ts-sun{stroke:#b3541e;filter:none}
html[data-theme="light"] .theme-switch:hover .ts-track{border-color:rgba(0,107,132,.6)}
html[data-theme="light"] .theme-switch:focus-visible{outline-color:#006b84}

/* ---------- Светлая тема: основа ---------- */
html[data-theme="light"]{color-scheme:light;
  --ink:#f1f0fa;--ink2:#f8f7fd;--line:rgba(38,30,100,.14);--txt:#14132a;--mut:#4a4d68;
  --lime:#3a5f00;--cyan:#006b84;--coral:#b8154a;--amber:#8a5200;--glass:rgba(255,255,255,.64);
  --n-ink:#f1f0fa;--n-txt:#14132a;--n-mut:#4a4d68;--n-line:rgba(38,30,100,.14);--n-lime:#4b7200;--n-cyan:#006b84;--n-coral:#b8154a;--n-glass:rgba(255,255,255,.64)}
html[data-theme="light"] body{background-color:#f1f0fa}
html[data-theme="light"] #bg.bg-fallback{background:radial-gradient(circle at 20% 10%,#e3f7fb,transparent 45%),radial-gradient(circle at 85% 20%,#f3e6f6,transparent 45%),linear-gradient(180deg,#f4f3fc,#eceaf7)!important}
html[data-theme="light"] .noise{opacity:.5;background:repeating-linear-gradient(0deg,rgba(40,30,110,.018) 0 1px,transparent 1px 3px);mix-blend-mode:multiply}
html[data-theme="light"] .cursor-glow{background:radial-gradient(circle,rgba(0,170,200,.07),transparent 60%)}
html[data-theme="light"] .glass{box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 24px 60px -36px rgba(60,48,140,.35)}
html[data-theme="light"] .glitch::before,html[data-theme="light"] .glitch-hover:hover::before,
html[data-theme="light"] .glitch::after,html[data-theme="light"] .glitch-hover:hover::after{mix-blend-mode:multiply}
html[data-theme="light"] ::selection{background:#c9f45a;color:#000}
/* кнопки с неоновым фоном: яркий лайм + тёмный текст (контраст > 12) */
html[data-theme="light"] .btn-primary{background:#c9f45a;color:#0a0a0a;border-color:rgba(75,114,0,.35);box-shadow:0 10px 30px -12px rgba(75,114,0,.55)}
html[data-theme="light"] .btn-primary:hover{box-shadow:0 0 0 5px rgba(201,244,90,.35),0 14px 36px -12px rgba(75,114,0,.6)}
html[data-theme="light"] .brand-mark{color:#05050a!important;box-shadow:0 0 14px rgba(0,107,132,.25)!important}
/* котики: контур темнее, чтобы не терялись на светлом */
html[data-theme="light"] .cat svg{filter:drop-shadow(0 0 1px rgba(20,19,42,.55)) drop-shadow(0 2px 4px rgba(60,48,140,.25))}
html[data-theme="light"] .cat-toggle{background:rgba(255,255,255,.85);color:#14132a;border-color:rgba(38,30,100,.18)}
/* плавная смена темы (только в момент переключения) */
html.theme-anim body,html.theme-anim body *:not(.ts-knob):not(.ts-ic):not(.cat):not(.cat *){transition:background-color .45s ease,color .45s ease,border-color .45s ease,box-shadow .45s ease!important}
@media(max-width:680px){.shop-nav .brand+.theme-switch+div{display:none}}
.shop-nav .theme-switch{margin-left:14px}
/* hero: контурный акцент — на светлом даём тёмный контур и лёгкую лаймовую заливку */
html[data-theme="light"] .hero-accent{color:rgba(201,244,90,.55);-webkit-text-stroke:1.5px #3f6200;text-shadow:0 0 30px rgba(140,200,40,.25)}
html[data-theme="light"] .lab-meta{background:rgba(252,251,255,.88)}
html[data-theme="light"] .cart-checkout:disabled,html[data-theme="light"] .product-copy button:disabled,html[data-theme="light"] .checkout-submit:disabled{color:#2d4600!important;background:rgba(201,244,90,.28)!important;border-color:rgba(63,98,0,.5)!important;opacity:1}

/* ===== Светлая тема v2: «живой цвет» (палитра A: лайм/циан/маджента/оранж) ===== */
html[data-theme="light"]{--lc1:#a6ff00;--lc2:#00e1ff;--lc3:#ff1fd2;--lc4:#ff8a00;--lc5:#8b3dff;
 --g1:rgba(150,255,0,.7);--g2:rgba(0,215,255,.68);--g3:rgba(255,30,210,.6);--g4:rgba(255,140,0,.62);--g5:rgba(139,61,255,.6);
 --ink1:#3a6600;--ink2:#006a8e;--ink3:#b0009a;--ink4:#a63c00;
 --hgrad:linear-gradient(100deg,#6a00f4 0%,#b4009e 40%,#d1004f 65%,#0070a8 100%)}
html[data-theme="light"] body{background-color:#fbf7f3}
html[data-theme="light"] #bg.bg-fallback{background:radial-gradient(40% 35% at 15% 20%,var(--g1),transparent),radial-gradient(40% 35% at 85% 25%,var(--g2),transparent),radial-gradient(45% 40% at 45% 85%,var(--g3),transparent),radial-gradient(30% 30% at 80% 80%,var(--g4),transparent),#fbf7f3!important}
html[data-theme="light"] .cursor-glow{background:radial-gradient(circle,var(--g3),transparent 60%);opacity:.18}
/* стеклянные карточки: цветной контур + цветная тень, по кругу 4 цвета */
html[data-theme="light"] :is(.glass,.info-service-grid>article,.info-price-groups>section,.policy>article,.product-card,.shop-cart,.info-social-panel,.info-map-panel,.info-telegram){
 --cg:var(--g2);--cg2:var(--g3);border-color:color-mix(in srgb,var(--cg) 70%,transparent)!important;
 box-shadow:inset 0 1px 0 rgba(255,255,255,.95),0 0 0 1px color-mix(in srgb,var(--cg2) 25%,transparent),0 22px 50px -26px var(--cg),0 10px 40px -28px var(--cg2)!important;
 -webkit-backdrop-filter:blur(18px) saturate(1.4);backdrop-filter:blur(18px) saturate(1.4)}
html[data-theme="light"] :is(.glass,.info-service-grid>article,.info-price-groups>section,.product-card):nth-of-type(4n+1){--cg:var(--g1);--cg2:var(--g2)}
html[data-theme="light"] :is(.glass,.info-service-grid>article,.info-price-groups>section,.product-card):nth-of-type(4n+2){--cg:var(--g2);--cg2:var(--g3)}
html[data-theme="light"] :is(.glass,.info-service-grid>article,.info-price-groups>section,.product-card):nth-of-type(4n+3){--cg:var(--g3);--cg2:var(--g4)}
html[data-theme="light"] :is(.glass,.info-service-grid>article,.info-price-groups>section,.product-card):nth-of-type(4n){--cg:var(--g4);--cg2:var(--g1)}
html[data-theme="light"] :is(.card.glass,.info-service-grid>article,.product-card,li.glass):hover{box-shadow:inset 0 1px 0 #fff,0 0 0 1px var(--cg),0 0 28px -6px var(--cg),0 28px 60px -24px var(--cg2)!important}
html[data-theme="light"] :is(.site-header,.shop-nav){box-shadow:0 0 0 1px color-mix(in srgb,var(--g3) 35%,transparent),0 14px 40px -24px var(--g2)!important}
/* цветные градиентные заголовки (тёмные тона — контраст ≥4.5) */
html[data-theme="light"] :is(.info-hero h1,.policy h1,.section-title,.info-telegram h2,.tg h2,.future h2){background:var(--hgrad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:#5b1fb8}
/* кнопки — яркий градиент */
html[data-theme="light"] :is(.btn-primary,.info-telegram a.button,.cart-checkout:not(:disabled),.product-copy button:not(:disabled)){background:linear-gradient(110deg,var(--lc1),color-mix(in srgb,var(--lc1) 40%,var(--lc2)) 55%,var(--lc2))!important;color:#0a0a14!important;border-color:transparent!important;box-shadow:0 10px 28px -10px var(--g2),0 6px 20px -12px var(--g1)!important}
html[data-theme="light"] :is(.btn-primary,.info-telegram a.button):hover{box-shadow:0 0 0 4px color-mix(in srgb,var(--lc2) 30%,transparent),0 0 30px -4px var(--g3),0 14px 34px -10px var(--g2)!important}
html[data-theme="light"] .btn-ghost,html[data-theme="light"] .button-quiet{border-color:color-mix(in srgb,var(--lc3) 45%,transparent)!important;box-shadow:0 0 18px -10px var(--g3)}
/* чипы / бейджи */
html[data-theme="light"] :is(.pill,.shop-hero span,.c-label,.lab-tabs button,.site-nav a.active,.info-page .site-nav a.active){background:linear-gradient(100deg,color-mix(in srgb,var(--lc2) 22%,#fff),color-mix(in srgb,var(--lc3) 20%,#fff))!important;border-color:color-mix(in srgb,var(--lc3) 40%,transparent)!important;color:#1d1640!important}
html[data-theme="light"] .pill-c{background:linear-gradient(100deg,color-mix(in srgb,var(--lc1) 35%,#fff),color-mix(in srgb,var(--lc4) 25%,#fff))!important}
/* эйбровы карточек — цикл цветов */
html[data-theme="light"] .info-service-grid>article:nth-child(4n+1) :is(span,small):first-child{color:var(--ink1)!important}
html[data-theme="light"] .info-service-grid>article:nth-child(4n+2) :is(span,small):first-child{color:var(--ink2)!important}
html[data-theme="light"] .info-service-grid>article:nth-child(4n+3) :is(span,small):first-child{color:var(--ink3)!important}
html[data-theme="light"] .info-service-grid>article:nth-child(4n) :is(span,small):first-child{color:var(--ink4)!important}
html[data-theme="light"] .brand-mark{box-shadow:0 0 16px var(--g2),0 0 26px -6px var(--g3)!important}
html[data-theme="light"] .chips li{color:#2a2c48;background:rgba(255,255,255,.72);border-color:color-mix(in srgb,var(--lc2) 45%,transparent)}

/* ===== v3: насыщеннее, котики-неон, светлая карта ===== */
html[data-theme="light"] :is(.glass,.info-service-grid>article,.info-price-groups>section,.policy>article,.product-card,.shop-cart,.info-social-panel,.info-map-panel,.info-telegram){border-width:1.5px!important;
 box-shadow:inset 0 1px 0 #fff,0 0 0 1px color-mix(in srgb,var(--cg2) 45%,transparent),0 0 22px -8px var(--cg),0 24px 54px -22px var(--cg),0 12px 44px -24px var(--cg2)!important}
html[data-theme="light"] :is(.glass,.info-service-grid>article,.info-price-groups>section,.product-card):nth-of-type(4n+3){--cg:var(--g3);--cg2:var(--g5)}
html[data-theme="light"] :is(.btn-primary,.info-telegram a.button,.cart-checkout:not(:disabled),.product-copy button:not(:disabled)){background:linear-gradient(110deg,var(--lc1),#5cf5a0 45%,var(--lc2))!important;box-shadow:0 0 18px -4px var(--g2),0 10px 30px -10px var(--g1),inset 0 1px 0 rgba(255,255,255,.7)!important}
html[data-theme="light"] .btn-ghost,html[data-theme="light"] .button-quiet{border-color:color-mix(in srgb,var(--lc3) 65%,transparent)!important;box-shadow:0 0 16px -6px var(--g3)!important}
html[data-theme="light"] :is(.pill,.shop-hero span,.c-label,.lab-tabs button,.site-nav a.active,.info-page .site-nav a.active){background:linear-gradient(100deg,color-mix(in srgb,var(--lc2) 32%,#fff),color-mix(in srgb,var(--lc3) 28%,#fff))!important;border-color:color-mix(in srgb,var(--lc3) 60%,transparent)!important;box-shadow:0 0 12px -5px var(--g3)}
html[data-theme="light"] .hero-accent{color:rgba(166,255,0,.75);-webkit-text-stroke:1.5px #2f5800;text-shadow:0 0 26px rgba(150,255,0,.55),0 0 2px rgba(0,225,255,.4)}
html[data-theme="light"] :is(.site-header,.shop-nav){box-shadow:0 0 0 1px color-mix(in srgb,var(--lc3) 40%,transparent),0 0 24px -10px var(--g3),0 14px 40px -22px var(--g2)!important}
/* котики: неоновые тела, тёмный контур, цветное свечение (поведение не трогаем) */
html[data-theme="light"] .cat svg>g{fill:var(--kb);stroke:#1a1038}
html[data-theme="light"] .cat svg{filter:drop-shadow(0 0 6px var(--kg)) drop-shadow(0 0 14px var(--kg))!important}
html[data-theme="light"] .cat:nth-of-type(4n+1){--kb:#ff2bd6;--kg:rgba(255,43,214,.75)}
html[data-theme="light"] .cat:nth-of-type(4n+2){--kb:#00e1ff;--kg:rgba(0,225,255,.75)}
html[data-theme="light"] .cat:nth-of-type(4n+3){--kb:#a6ff00;--kg:rgba(140,230,0,.8)}
html[data-theme="light"] .cat:nth-of-type(4n){--kb:#ff9a1f;--kg:rgba(255,140,0,.75)}
html[data-theme="light"] .cat .bubble{background:linear-gradient(100deg,#a6ff00,#00e1ff);color:#0a0a14;box-shadow:0 0 14px rgba(0,225,255,.55)}
html[data-theme="light"] .cat .zzz{fill:#b0009a}
html[data-theme="light"] .cat-toggle{background:linear-gradient(100deg,color-mix(in srgb,#ff1fd2 22%,#fff),color-mix(in srgb,#00e1ff 25%,#fff))!important;color:#1a1038!important;border-color:rgba(255,31,210,.55)!important;box-shadow:0 0 18px -4px rgba(255,31,210,.55),0 0 26px -10px rgba(0,225,255,.6)!important}
/* карта Яндекса: в светлой теме без инверсии — светлая, чуть насыщеннее */
html[data-theme="light"] :is(.yandex-map iframe,.info-map-frame iframe,.ya-map iframe){filter:saturate(1.2) contrast(1.02)!important}
html[data-theme="light"] :is(.yandex-map,.ya-map,.info-map-frame){background:#eef6ff!important}
html[data-theme="light"] [class*="toolbar"] span{color:#25233f!important}
html[data-theme="light"] :is(.lab-meta em,.hero-lab em){color:#335400!important}
