/* ==========================================================================
   v55 — «надувные стикеры на чёрном стекле»: структура Slush в цветах eroot.
   Грузится после v54.css; тот же приём специфичности :root:not(#v).

   • Тёмная тема — почти чёрная (#050506), светлая — чисто белая; хром без
     оттенков: акцент — белый в тёмной теме и чёрный в светлой. Цвет остаётся
     только у товаров (знаки из точек, графики, слабый оттенок их карточек).
   • Жидкое стекло — статичное, как капля Canvas UI Bubble в покое: кант из
     бликов, тёмная толща по нижнему краю, призменная кайма по ребру
     (::before, неподвижная), преломление фона у кромки (glass.js, только в
     кадре и только с мышью). Без размытия-«мыла», без движущейся турбулентности.
   • Структура Slush: бегущая строка сверху, пилюли навигации, кнопка «+»,
     огромный сжатый дисплейный шрифт, стикеры вокруг заголовков, карточка
     загрузки (бот + QR), полосы секций.
   • Шрифты Fontshare: + Montserrat 800/900 (кириллица — стеклянный и
     дисплейный заголовки), Cabinet Grotesk 800, Tanker, Oswald 600,
     JetBrains Mono 500, Sora 600 — латиница, цифры, метки.
   ========================================================================== */

/* 0. Гарнитуры Fontshare -------------------------------------------------- */
@font-face{font-family:"Montserrat";src:url("../assets/fonts/montserrat-800.woff2") format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"Montserrat";src:url("../assets/fonts/montserrat-900.woff2") format("woff2");font-weight:900;font-display:swap}
@font-face{font-family:"Cabinet Grotesk";src:url("../assets/fonts/cabinet-grotesk-800.woff2") format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"Tanker";src:url("../assets/fonts/tanker-400.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Oswald";src:url("../assets/fonts/oswald-600.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url("../assets/fonts/jetbrains-mono-500.woff2") format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Sora";src:url("../assets/fonts/sora-600.woff2") format("woff2");font-weight:600;font-display:swap}

/* 1. Токены: чёрная и белая темы без оттенков ----------------------------- */
:root:not(#v){
  --bg:#050506;--bg-2:#08080a;--surface:#0d0d0f;--surface-2:#141417;
  --band:#0a0a0c;
  --text:#f5f5f7;--text-dim:#a1a1a8;--text-mute:#6e6e76;
  --line:rgba(255,255,255,.1);--line-soft:rgba(255,255,255,.06);--line-strong:rgba(255,255,255,.2);

  /* акцент — белый: покупка, ссылки, фокус, выбранное */
  --accent:#ffffff;--accent-hard:#ffffff;
  --accent-fill:rgba(255,255,255,.1);--accent-fill-hover:rgba(255,255,255,.16);
  --accent-edge:rgba(255,255,255,.5);--accent-soft:rgba(255,255,255,.06);
  --lav:#ffffff;
  --lg-tint:#ffffff;
  --dg-from:rgba(255,255,255,.16);--dg-to:rgba(255,255,255,.1);
  --dot:200, 200, 208;--dot-accent:255, 255, 255;
  --menu-dots:rgba(255,255,255,.06);
  --grain:rgba(255,255,255,.05);

  --f-glass:"Montserrat","Manrope",system-ui,sans-serif;
  --f-display2:"Montserrat","Manrope",system-ui,sans-serif;
  --f-latin:"Cabinet Grotesk","Manrope",system-ui,sans-serif;
  --f-heavy:"Tanker","Cabinet Grotesk",system-ui,sans-serif;
  --f-cond:"Oswald","Montserrat","Manrope",system-ui,sans-serif;
  --f-code:"JetBrains Mono","Azeret Mono",ui-monospace,Menlo,monospace;
  --f-chip:"Sora","Manrope",system-ui,sans-serif;

  /* статичное жидкое стекло (капля в покое) */
  --lq-fill:rgba(255,255,255,.035);
  --lq-fill-hover:rgba(255,255,255,.06);
  --lq-rim:inset 0 0 0 1px rgba(255,255,255,.08),
           inset 1.5px 1.5px 1px -1px rgba(255,255,255,.75),
           inset -1.5px -1.5px 1px -1px rgba(255,255,255,.2),
           inset 0 -16px 24px -18px rgba(0,0,0,.85),
           inset 0 14px 22px -18px rgba(255,255,255,.16);
  --lq-haze:inset 0 0 0 0 transparent;
  --lq-drop:0 1px 1px rgba(0,0,0,.6),0 14px 34px -16px rgba(0,0,0,.9);
  /* призменная кайма по ребру: синий и серый (colorA/colorB капли), чуть тёплого */
  --lq-iris:conic-gradient(from 200deg,
      rgba(74,116,184,0) 0deg,rgba(74,116,184,.62) 34deg,rgba(255,255,255,.5) 70deg,rgba(105,105,106,.18) 110deg,
      rgba(105,105,106,0) 160deg,rgba(255,196,150,.22) 215deg,rgba(255,255,255,.3) 250deg,rgba(74,116,184,.42) 300deg,rgba(74,116,184,0) 360deg);
}
:root[data-theme="light"]:not(#v){
  --bg:#ffffff;--bg-2:#ffffff;--surface:#ffffff;--surface-2:#ffffff;
  --band:#ffffff;
  --text:#050506;--text-dim:#55555c;--text-mute:#86868d;
  --line:rgba(0,0,0,.1);--line-soft:rgba(0,0,0,.06);--line-strong:rgba(0,0,0,.2);
  --accent:#000000;--accent-hard:#000000;
  --accent-fill:rgba(0,0,0,.06);--accent-fill-hover:rgba(0,0,0,.1);
  --accent-edge:rgba(0,0,0,.42);--accent-soft:rgba(0,0,0,.04);
  --lav:#000000;
  --lg-tint:#000000;
  --dg-from:rgba(0,0,0,.14);--dg-to:rgba(0,0,0,.09);
  --dot:40, 40, 46;--dot-accent:0, 0, 0;
  --menu-dots:rgba(0,0,0,.05);
  --grain:rgba(0,0,0,.045);
  --lq-fill:rgba(255,255,255,.55);
  --lq-fill-hover:rgba(255,255,255,.75);
  --lq-rim:inset 0 0 0 1px rgba(0,0,0,.08),
           inset 1.5px 1.5px 1px -1px rgba(255,255,255,1),
           inset -1.5px -1.5px 1px -1px rgba(0,0,0,.14),
           inset 0 -16px 24px -18px rgba(0,0,0,.16),
           inset 0 14px 22px -18px rgba(255,255,255,1);
  --lq-drop:0 1px 2px rgba(0,0,0,.06),0 14px 32px -16px rgba(0,0,0,.24);
  --lq-iris:conic-gradient(from 200deg,
      rgba(74,116,184,0) 0deg,rgba(74,116,184,.5) 34deg,rgba(0,0,0,.18) 70deg,rgba(105,105,106,.2) 110deg,
      rgba(105,105,106,0) 160deg,rgba(230,150,100,.22) 215deg,rgba(0,0,0,.12) 250deg,rgba(74,116,184,.36) 300deg,rgba(74,116,184,0) 360deg);
}
:root:not(#v) body,:root:not(#v) .sheet{background-color:var(--bg)}
/* мелкая сетка точек под всей страницей: стеклу есть что гнуть у кромки */
:root:not(#v) .sheet{background-image:radial-gradient(circle at 1px 1px,var(--grain) 1px,transparent 1.6px);background-size:22px 22px}

/* 2. Стекло: неподвижная призменная кайма на всём ------------------------ */
:root:not(#v) .btn,:root:not(#v) .pseg,:root:not(#v) .plan__card,:root:not(#v) .quick,:root:not(#v) .trust__item,
:root:not(#v) .donut,:root:not(#v) .hdr-btn,:root:not(#v) .account-btn,:root:not(#v) .menu-btn,:root:not(#v) .cart-btn,
:root:not(#v) .botcard,:root:not(#v) .sticker,:root:not(#v) .menu__product,:root:not(#v) .hdr-nav__link,
:root:not(#v) .ghr__eyebrow,:root:not(#v) .sticker__chip,:root:not(#v) .hwf__up,:root:not(#v) .pagelinks a{position:relative}
:root:not(#v) .btn::before,:root:not(#v) .pseg::before,:root:not(#v) .plan__card::before,:root:not(#v) .quick::before,
:root:not(#v) .trust__item::before,:root:not(#v) .donut::before,:root:not(#v) .hdr-btn::before,:root:not(#v) .account-btn::before,
:root:not(#v) .menu-btn::before,:root:not(#v) .cart-btn::before,:root:not(#v) .botcard::before,:root:not(#v) .sticker::before,
:root:not(#v) .menu__product::before,:root:not(#v) .hdr-nav__link::before,:root:not(#v) .ghr__eyebrow::before,
:root:not(#v) .sticker__chip::before,:root:not(#v) .hwf__up::before,:root:not(#v) .pagelinks a::before,
:root:not(#v) .card::before,:root:not(#v) .tile::before,:root:not(#v) .chart::before,:root:not(#v) .notice::before,
:root:not(#v) .summary::before,:root:not(#v) .custom-amount::before,:root:not(#v) .form-block::before,
:root:not(#v) .showcase-banner::before,:root:not(#v) .psplus-perks::before,:root:not(#v) .faq__item::before,
:root:not(#v) .faq-cta::before,:root:not(#v) .modal::before,:root:not(#v) .pay-card::before,:root:not(#v) .cart-item::before,
:root:not(#v) .empty::before,:root:not(#v) .seg::before,:root:not(#v) .pick-seg::before{
  content:"";position:absolute;inset:0;z-index:3;pointer-events:none;border-radius:inherit;padding:1px;
  background:var(--lq-iris);opacity:1;animation:none;display:block;
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;
  mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude}
/* материал: прозрачная заливка, кант-блики, тугая тень */
:root:not(#v) .hdr-nav__link,:root:not(#v) .ghr__eyebrow,:root:not(#v) .sticker,:root:not(#v) .sticker__chip,
:root:not(#v) .botcard,:root:not(#v) .menu__product,:root:not(#v) .lens-card{
  border:0;background:var(--lq-fill);box-shadow:var(--lq-drop),var(--lq-rim)}
:root:not(#v) .card,:root:not(#v) .tile,:root:not(#v) .chart,:root:not(#v) .faq__item,:root:not(#v) .notice,
:root:not(#v) .summary,:root:not(#v) .cart-item,:root:not(#v) .pay-card,:root:not(#v) .custom-amount,:root:not(#v) .form-block,
:root:not(#v) .showcase-banner,:root:not(#v) .product-projection__item,:root:not(#v) .plan__card,:root:not(#v) .quick,
:root:not(#v) .trust__item,:root:not(#v) .donut,:root:not(#v) .empty,:root:not(#v) .faq-cta,:root:not(#v) .psplus-perks{
  border-color:transparent;background:var(--lq-fill);
  box-shadow:var(--lq-drop),var(--lq-rim),inset 0 0 18px 0 color-mix(in srgb,var(--lg-tint) 5%,transparent)}
/* товарные карточки: оттенок их цвета — слабый, только внутри */
:root:not(#v) .card--stars,:root:not(#v) .card--premium,:root:not(#v) .card--giftcard,:root:not(#v) .card--tier-ess,
:root:not(#v) .card--tier-ext,:root:not(#v) .card--tier-dlx,:root:not(#v) .plan--ess .plan__card,:root:not(#v) .plan--ext .plan__card,
:root:not(#v) .plan--dlx .plan__card,:root:not(#v) .pricing--premium .plan__card{
  box-shadow:var(--lq-drop),var(--lq-rim),inset 0 0 22px 0 color-mix(in srgb,var(--lg-tint) 9%,transparent)}
/* преломление у кромки — у элементов в кадре (glass.js ставит glass--live) */
:root:not(#v) .glass--refract.glass--live{
  -webkit-backdrop-filter:var(--glass-filter) saturate(150%);backdrop-filter:var(--glass-filter) saturate(150%)}
:root:not(#v) .btn.glass--refract.glass--live,:root:not(#v) .pseg.glass--refract.glass--live{
  -webkit-backdrop-filter:var(--glass-filter) blur(2px) saturate(160%);backdrop-filter:var(--glass-filter) blur(2px) saturate(160%)}
:root:not(#v) .header:not(.is-scrolled) .header__bar.glass--refract{-webkit-backdrop-filter:none;backdrop-filter:none}
:root:not(#v) .header.is-scrolled .header__bar.glass--refract.glass--live{
  -webkit-backdrop-filter:var(--glass-filter) blur(10px) saturate(160%);backdrop-filter:var(--glass-filter) blur(10px) saturate(160%)}
:root:not(#v) .header.is-scrolled .header__bar{background:color-mix(in srgb,var(--bg) 62%,transparent);box-shadow:var(--lq-drop),var(--lq-rim)}

/* кнопки: стекло; покупка — молочное стекло (белое в тёмной, чёрное в светлой) */
:root:not(#v) .btn{background:var(--lq-fill);box-shadow:var(--lq-drop),var(--lq-rim)}
:root:not(#v) .btn:hover{background:var(--lq-fill-hover)}
:root:not(#v) .btn--primary,:root:not(#v) .card__foot .btn,:root:not(#v) .pick-add,:root:not(#v) .custom-amount__foot .btn{
  color:var(--text);background:rgba(255,255,255,.12);box-shadow:var(--lq-drop),var(--lq-rim)}
:root:not(#v) .btn--primary:hover,:root:not(#v) .card__foot .btn:hover,:root:not(#v) .pick-add:hover{background:rgba(255,255,255,.18)}
:root:not(#v) .btn--light{color:#050506;background:rgba(255,255,255,.9);
  box-shadow:var(--lq-drop),inset 0 0 0 1px rgba(255,255,255,.6),inset 1.5px 1.5px 1px -1px #fff,inset 0 -12px 18px -14px rgba(0,0,0,.35)}
:root:not(#v) .btn--light:hover{background:#fff;color:#050506}
:root[data-theme="light"]:not(#v) .btn--primary,:root[data-theme="light"]:not(#v) .card__foot .btn,
:root[data-theme="light"]:not(#v) .pick-add{background:rgba(0,0,0,.05)}
:root[data-theme="light"]:not(#v) .btn--primary:hover{background:rgba(0,0,0,.09)}
:root[data-theme="light"]:not(#v) .btn--light{color:#fff;background:rgba(5,5,6,.88);
  box-shadow:var(--lq-drop),inset 0 0 0 1px rgba(0,0,0,.6),inset 1.5px 1.5px 1px -1px rgba(255,255,255,.4),inset 0 -12px 18px -14px rgba(0,0,0,.6)}
:root[data-theme="light"]:not(#v) .btn--light:hover{background:#000;color:#fff}
:root:not(#v) .pseg__thumb{background:rgba(255,255,255,.14);box-shadow:var(--lq-rim)}
:root[data-theme="light"]:not(#v) .pseg__thumb{background:rgba(255,255,255,.95);box-shadow:var(--lq-rim),0 2px 8px -4px rgba(0,0,0,.25)}
:root:not(#v) .plan--best .plan__card{
  box-shadow:var(--lq-drop),var(--lq-rim),inset 0 0 0 1.5px color-mix(in srgb,var(--tone,var(--text)) 70%,transparent),
             inset 0 0 22px 0 color-mix(in srgb,var(--lg-tint) 9%,transparent)}
:root:not(#v) .plan__badge{background:color-mix(in srgb,var(--bg) 60%,transparent);box-shadow:var(--lq-rim)}
:root:not(#v) .plan__badge .i{color:var(--text)}
:root:not(#v) .plan--best .plan__per{color:var(--text)}

/* витрина: контейнер — прозрачная обёртка, стекло — сами плитки */
:root:not(#v) .product-projection{background:none;box-shadow:none;border-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}
:root:not(#v) .product-projection::before{display:none}

/* 3. Бегущая строка над шапкой (Slush): инверсная полоса ----------------- */
:root:not(#v) .topline{position:relative;z-index:61;background:var(--text);color:var(--bg);overflow:hidden}
:root:not(#v) .topline .marquee{border:0;background:none;padding:0;margin:0;min-height:0;-webkit-mask:none;mask:none}
:root:not(#v) .topline .marquee__track{animation-duration:46s}
:root:not(#v) .topline .marquee a,:root:not(#v) .topline .marquee span{min-height:34px;padding:0 18px;color:var(--bg);
  font:600 12.5px/1 var(--f-cond);letter-spacing:.07em;text-transform:uppercase;text-decoration:none;opacity:1}
:root:not(#v) .topline .marquee b{font-weight:600;color:inherit}
:root:not(#v) .topline .marquee a::after{content:"·";margin-left:18px;opacity:.5}
:root:not(#v) .topline .marquee a:hover{opacity:.7}

/* 4. Шапка: пилюли навигации, кнопка «+» ---------------------------------- */
:root:not(#v) .hdr-nav{display:none;align-items:center;gap:6px;margin:0 auto}
@media (min-width:1180px){:root:not(#v) .hdr-nav{display:flex}}
:root:not(#v) .hdr-nav__link{display:inline-flex;align-items:center;height:40px;padding:0 16px;border-radius:999px;
  color:var(--text);font:600 13.5px/1 var(--f-sans);letter-spacing:.01em;text-decoration:none;white-space:nowrap;transition:background-color .25s var(--e-out)}
:root:not(#v) .hdr-nav__link:hover{background:var(--lq-fill-hover)}
:root:not(#v) .hdr-nav__link.is-active{background:var(--text);color:var(--bg);box-shadow:none}
:root:not(#v) .hdr-nav__link.is-active::before{display:none}
:root:not(#v) .menu-btn{width:44px;min-width:44px;padding:0;justify-content:center;border-radius:50%}
:root:not(#v) .menu-btn__label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
:root:not(#v) .menu-btn__lines{position:relative;width:16px;height:16px;display:block}
:root:not(#v) .menu-btn__lines i{position:absolute;left:0;top:50%;width:16px;height:1.75px;margin-top:-.875px;border-radius:2px;
  background:currentColor;transition:transform .6s var(--spr-pop,var(--e-out))}
:root:not(#v) .menu-btn__lines i:first-child{transform:rotate(0)}
:root:not(#v) .menu-btn__lines i:last-child{transform:rotate(90deg)}
:root:not(#v) .menu-btn.is-open .menu-btn__lines i:first-child{transform:rotate(45deg)}
:root:not(#v) .menu-btn.is-open .menu-btn__lines i:last-child{transform:rotate(135deg)}

/* 5. Герой: заголовок из толстого стекла --------------------------------- */
:root:not(#v) .ghr{position:relative;isolation:isolate;overflow:hidden;min-height:max(640px,100svh);
  margin-top:calc(-1 * var(--header-h));display:flex;align-items:center;touch-action:pan-y}
:root:not(#v) .ghr__canvas{position:absolute;inset:0;z-index:0;display:block;width:100%;height:100%;opacity:0;
  transition:opacity .7s cubic-bezier(.23,1,.32,1)}
:root:not(#v) .ghr[data-glass="true"] .ghr__canvas{opacity:1}
:root:not(#v) .ghr__content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:22px;
  padding-top:calc(var(--header-h) + 56px);padding-bottom:72px;text-align:center}
:root:not(#v) .ghr__eyebrow{display:inline-flex;align-items:center;height:32px;padding:0 16px;border-radius:999px;
  font:600 12.5px/1 var(--f-cond);letter-spacing:.08em;text-transform:uppercase;color:var(--text)}
:root:not(#v) .ghr__title{margin:0;max-width:12ch;font:900 clamp(60px,12.4vw,212px)/.84 var(--f-glass);letter-spacing:-.035em;
  color:var(--text);text-wrap:balance;transition:color .9s cubic-bezier(.23,1,.32,1)}
:root:not(#v) .ghr__line{display:inline-block;white-space:nowrap}
/* текст прячется только когда стекло нарисовано (glasshero.js → data-glass) */
:root:not(#v) .ghr[data-glass="true"] .ghr__title{color:transparent}
:root:not(#v) .ghr__title ::selection{background:rgba(255,255,255,.28)}
:root:not(#v) .ghr__desc{margin:0;max-width:40rem;font:400 clamp(16px,1.5vw,19px)/1.55 var(--f-sans);color:var(--text-dim)}
:root:not(#v) .ghr__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:4px}
:root:not(#v) .ghr__facts{justify-content:center;margin:0}
:root:not(#v) .ghr .btn--ghost{background:rgba(255,255,255,.06)}
:root[data-theme="light"]:not(#v) .ghr .btn--ghost{background:rgba(255,255,255,.6)}

/* стикеры товаров вокруг заголовка: стекло, лёгкий поворот, знак из точек */
:root:not(#v) .ghr__stickers{position:absolute;inset:0;z-index:1;pointer-events:none}
:root:not(#v) .sticker{position:absolute;display:block;width:clamp(86px,9vw,136px);aspect-ratio:1;border-radius:30px;
  pointer-events:auto;rotate:var(--rot,0deg);transition:scale .7s var(--spr-pop,var(--e-out))}
:root:not(#v) .sticker:hover{scale:1.06}
:root:not(#v) .sticker .sticker__glyph{position:absolute;inset:14%;width:auto;height:auto;opacity:1}
:root:not(#v) .sticker__chip{position:absolute;left:50%;bottom:-14px;translate:-50% 0;display:inline-flex;align-items:center;
  height:28px;padding:0 12px;border-radius:999px;font:800 13px/1 var(--f-latin);letter-spacing:.01em;color:var(--text);white-space:nowrap;
  background:color-mix(in srgb,var(--bg) 55%,transparent)}
:root:not(#v) .sticker--1{left:7%;top:24%;--rot:-9deg}
:root:not(#v) .sticker--2{right:8%;top:20%;--rot:8deg}
:root:not(#v) .sticker--3{left:11%;bottom:14%;--rot:7deg}
:root:not(#v) .sticker--4{right:10%;bottom:17%;--rot:-7deg}
@media (max-width:1100px){
  :root:not(#v) .sticker--1{left:3%;top:15%}
  :root:not(#v) .sticker--2{right:3%;top:13%}
  :root:not(#v) .sticker--3{left:4%;bottom:6%}
  :root:not(#v) .sticker--4{right:4%;bottom:7%}
}
@media (max-width:640px){
  :root:not(#v) .ghr__content{padding-top:calc(var(--header-h) + 92px);padding-bottom:120px;gap:18px}
  :root:not(#v) .ghr__title{font-size:clamp(52px,16vw,80px)}
  :root:not(#v) .sticker{width:68px;border-radius:22px}
  :root:not(#v) .sticker__chip{height:22px;padding:0 9px;font-size:11px;bottom:-11px}
  :root:not(#v) .sticker--1{left:4%;top:calc(var(--header-h) + 8px)}
  :root:not(#v) .sticker--2{right:4%;top:calc(var(--header-h) + 18px)}
  :root:not(#v) .sticker--3{left:5%;bottom:22px}
  :root:not(#v) .sticker--4{right:5%;bottom:28px}
  :root:not(#v) .ghr__actions{width:100%}
  :root:not(#v) .ghr__actions .btn{flex:1 1 100%}
}

/* 6. Полосы секций и дисплейный шрифт (Slush) ----------------------------- */
:root:not(#v) .band{position:relative}
:root:not(#v) .band--quick,:root:not(#v) .band--display{background-color:var(--band)}
:root:not(#v) .display{margin:0;font:800 clamp(52px,8.4vw,136px)/.86 var(--f-display2);letter-spacing:-.04em;color:var(--text);text-wrap:balance}
:root:not(#v) .display-xl{margin:0 auto;max-width:13ch;font:900 clamp(56px,11.5vw,210px)/.82 var(--f-display2);letter-spacing:-.045em;
  text-align:center;color:var(--text);text-wrap:balance}
:root:not(#v) .quickband{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,440px);gap:clamp(32px,6vw,96px);align-items:center}
:root:not(#v) .quickband__text .lede{margin-top:var(--s-5);max-width:34ch}
@media (max-width:900px){:root:not(#v) .quickband{grid-template-columns:1fr}:root:not(#v) .quickband .quick{max-width:520px}}
:root:not(#v) .band--display{padding:clamp(96px,14vw,200px) 0;overflow:hidden}
:root:not(#v) .band__inner{position:relative}
:root:not(#v) .band__tag{margin:var(--s-6) auto 0;max-width:36ch;text-align:center;font:500 clamp(17px,1.6vw,22px)/1.45 var(--f-sans);color:var(--text-dim)}
:root:not(#v) .sticker--float{position:absolute;width:clamp(76px,8vw,120px)}
:root:not(#v) .sticker--a{left:2%;top:-6%;--rot:-12deg}
:root:not(#v) .sticker--b{right:3%;bottom:-4%;--rot:10deg}
@media (max-width:640px){:root:not(#v) .sticker--a{top:-14%}:root:not(#v) .sticker--b{bottom:-12%}}

/* 7. Карточка бота с QR (карточка загрузки Slush) -------------------------- */
:root:not(#v) .botcard{display:grid;grid-template-columns:auto 1fr;gap:clamp(24px,4vw,56px);align-items:center;
  padding:clamp(20px,3vw,32px);border-radius:32px}
:root:not(#v) .botcard__qr{display:block;width:clamp(148px,16vw,208px);aspect-ratio:1;padding:14px;border-radius:22px;
  background:#fff;color:#000;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08),0 10px 30px -14px rgba(0,0,0,.6)}
:root:not(#v) .botcard__qr svg{display:block;width:100%;height:100%}
:root:not(#v) .botcard__body{display:grid;gap:14px;justify-items:start}
:root:not(#v) .botcard__label{font:500 13px/1 var(--f-code);letter-spacing:0;color:var(--text-dim)}
:root:not(#v) .botcard__title{margin:0;font:800 clamp(30px,4vw,56px)/.95 var(--f-display2);letter-spacing:-.035em;color:var(--text)}
:root:not(#v) .botcard__sub{margin:0;max-width:44ch;color:var(--text-dim)}
@media (max-width:640px){:root:not(#v) .botcard{grid-template-columns:1fr}:root:not(#v) .botcard__qr{width:140px}}

/* 8. Меню: товары плитками из стекла --------------------------------------- */
:root:not(#v) .menu__products{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}
:root:not(#v) .menu__product{display:grid;align-content:end;gap:4px;min-height:132px;padding:14px 14px 12px;border-radius:22px;
  color:var(--text);text-decoration:none;overflow:hidden}
:root:not(#v) .menu__product b{font:700 15px/1.15 var(--f-sans);letter-spacing:-.01em}
:root:not(#v) .menu__from{font:500 12px/1 var(--f-code);color:var(--text-dim)}
:root:not(#v) .menu__glyph{position:absolute;top:10px;left:10px;width:58px;height:58px;inset:auto;margin:0}
:root:not(#v) .menu__product .menu__glyph{position:absolute;top:10px;right:10px;left:auto}
:root:not(#v) .menu__product.is-active{box-shadow:var(--lq-drop),var(--lq-rim),inset 0 0 0 1.5px color-mix(in srgb,var(--tone,var(--text)) 60%,transparent)}

/* 9. Капля (Canvas UI Bubble): линза с дисперсией, радужный ободок, блик --- */
:root:not(#v) .bubble-layer{position:fixed;inset:0;z-index:95;pointer-events:none;opacity:0;contain:layout style}
:root:not(#v) .bubble__drop{position:absolute;left:0;top:0;display:block;border-radius:50%;will-change:transform;
  background:rgba(255,255,255,.02);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,calc(.24 * var(--bub-rim,.5) * 2)),
             inset 0 0 22px 3px rgba(6,14,32,.62),inset -10px -16px 26px rgba(0,0,0,.4),inset 10px 12px 20px rgba(255,255,255,.08),
             0 10px 26px -10px rgba(0,0,0,.55)}
:root:not(#v) .bubble__drop.lens--refract{
  -webkit-backdrop-filter:var(--lens-filter) saturate(150%) brightness(1.06) contrast(1.05);
  backdrop-filter:var(--lens-filter) saturate(150%) brightness(1.06) contrast(1.05)}
:root:not(#v) .bubble-layer--frost .bubble__drop{-webkit-backdrop-filter:blur(1.5px) saturate(140%);backdrop-filter:blur(1.5px) saturate(140%)}
/* iridescence: радужный ободок из colorA/colorB, с тёплой дисперсией напротив */
:root:not(#v) .bubble__drop::before{content:"";position:absolute;inset:0;width:auto;height:auto;border-radius:50%;padding:4px;
  opacity:var(--bub-int,.9);transform:none;
  background:conic-gradient(from 200deg,var(--bub-a) 0deg,var(--bub-b) 60deg,rgba(255,255,255,.08) 110deg,var(--bub-a) 170deg,
             rgba(120,170,255,.95) 210deg,rgba(255,170,120,.55) 250deg,var(--bub-b) 300deg,var(--bub-a) 360deg);
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;
  mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;filter:blur(.8px)}
/* shine: блик-полумесяц сверху слева и слабый отблеск снизу справа */
:root:not(#v) .bubble__drop::after,:root:not(#v) .bubble__drop--head::after{content:"";position:absolute;inset:0;left:0;top:0;width:auto;height:auto;
  border-radius:50%;transform:none;
  background:radial-gradient(ellipse 34% 22% at 32% 22%,rgba(255,255,255,calc(var(--bub-shine,.25) * 3.2)) 0,rgba(255,255,255,0) 100%),
             radial-gradient(ellipse 22% 14% at 72% 82%,rgba(255,255,255,calc(var(--bub-shine,.25) * .9)) 0,rgba(255,255,255,0) 100%)}
:root:not(#v) .bubble__drop:not(.bubble__drop--head){
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.26),inset 0 0 12px 2px rgba(6,14,32,.55),inset -5px -7px 14px rgba(0,0,0,.36),0 4px 12px -6px rgba(0,0,0,.45)}
:root[data-theme="light"]:not(#v) .bubble__drop{background:rgba(255,255,255,.04);
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.16),inset 0 0 22px 3px rgba(20,40,80,.22),inset -10px -14px 26px rgba(0,0,0,.12),
             inset 8px 10px 18px rgba(255,255,255,.6),0 12px 26px -10px rgba(0,0,0,.32)}

/* 10. Курсор-линза (LiquidGlassCursor) ------------------------------------- */
:root:not(#v) .lens-layer{position:fixed;inset:0;z-index:94;pointer-events:none}
:root:not(#v) .lens__glass{position:absolute;left:0;top:0;display:block;border-radius:999px;overflow:hidden;will-change:transform,width,height;
  transform:scale(0);background:rgba(255,255,255,.01);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.25),inset 2px 4px 10px rgba(255,255,255,.18),inset -3px -5px 14px rgba(0,0,0,.35)}
:root:not(#v) .lens__glass.lens--refract{
  -webkit-backdrop-filter:var(--lens-filter) saturate(140%) brightness(1.04);backdrop-filter:var(--lens-filter) saturate(140%) brightness(1.04)}
:root:not(#v) .lens__shine{position:absolute;inset:0;border-radius:inherit;
  background:radial-gradient(ellipse 45% 30% at 32% 24%,rgba(255,255,255,.35),transparent 70%)}
:root:not(#v) .lens__shadow{position:absolute;left:0;top:0;display:block;border-radius:999px;transform:scale(0);
  background:rgba(0,0,0,.45);filter:blur(18px);opacity:.55}
:root[data-theme="light"]:not(#v) .lens__glass{box-shadow:inset 0 0 0 1px rgba(0,0,0,.14),inset 2px 4px 10px rgba(255,255,255,.7),inset -3px -5px 14px rgba(0,0,0,.14)}
:root[data-theme="light"]:not(#v) .lens__shadow{opacity:.28}
:root:not(#v) [data-lens].lens-on,:root:not(#v) [data-lens].lens-on *{cursor:none}

/* 11. Motion Primitives: пятно света и бегущий кант ----------------------- */
:root:not(#v) .fx-spot-on,:root:not(#v) .card,:root:not(#v) .tile,:root:not(#v) .plan__card,:root:not(#v) .trust__item,
:root:not(#v) .botcard,:root:not(#v) .menu__product,:root:not(#v) .donut,:root:not(#v) .quick{isolation:isolate}
:root:not(#v) .fx-spotwrap{position:absolute;inset:0;z-index:-1;border-radius:inherit;overflow:hidden;pointer-events:none}
:root:not(#v) .fx-spot{position:absolute;left:0;top:0;width:200px;height:200px;border-radius:50%;opacity:0;
  background:radial-gradient(circle at center,rgba(250,250,250,.2),rgba(244,244,245,.1) 40%,transparent 80%);
  filter:blur(24px);transition:opacity .2s linear;will-change:transform}
:root:not(#v) .fx-spot-on > .fx-spotwrap .fx-spot{opacity:1}
:root[data-theme="light"]:not(#v) .fx-spot{background:radial-gradient(circle at center,rgba(0,0,0,.09),rgba(0,0,0,.04) 40%,transparent 80%)}
:root:not(#v) .fx-trail{position:absolute;inset:0;z-index:4;border-radius:inherit;border:1.5px solid transparent;pointer-events:none;
  -webkit-mask-image:linear-gradient(transparent,transparent),linear-gradient(#000,#000);-webkit-mask-clip:padding-box,border-box;
  -webkit-mask-composite:source-in;mask-image:linear-gradient(transparent,transparent),linear-gradient(#000,#000);
  mask-clip:padding-box,border-box;mask-composite:intersect}
:root:not(#v) .fx-trail i{position:absolute;display:block;width:110px;aspect-ratio:1;offset-path:rect(0 auto auto 0 round var(--trail-r,28px));
  offset-anchor:50% 50%;background:radial-gradient(closest-side,rgba(255,255,255,1),rgba(255,255,255,.5) 45%,transparent);
  animation:fx-trail 5s linear infinite;animation-play-state:paused}
:root:not(#v) .fx-trail--on i{animation-play-state:running}
:root[data-theme="light"]:not(#v) .fx-trail i{background:radial-gradient(closest-side,rgba(0,0,0,.85),rgba(0,0,0,.35) 45%,transparent)}
@keyframes fx-trail{from{offset-distance:0%}to{offset-distance:100%}}

/* 12. Шрифты ролей v55 ---------------------------------------------------- */
:root:not(#v) .product-projection__item small{font-family:var(--f-heavy);font-weight:400;letter-spacing:.04em}
:root:not(#v) .status{font-family:var(--f-chip)}
:root:not(#v) .pay-card__code,:root:not(#v) .pay-addr__code,:root:not(#v) .order-id{font-family:var(--f-code)}
:root:not(#v) .faq-cta__mark--text{font-family:var(--f-heavy);font-weight:400;color:var(--text)}

/* 13. Без движения и без прозрачности ------------------------------------- */
@media (prefers-reduced-motion:reduce){
  :root:not(#v) .fx-trail,:root:not(#v) .fx-spotwrap{display:none}
  :root:not(#v) .sticker{transition:none}
}
@media (prefers-reduced-transparency:reduce){
  :root:not(#v) .btn,:root:not(#v) .card,:root:not(#v) .tile,:root:not(#v) .plan__card,:root:not(#v) .quick,
  :root:not(#v) .sticker,:root:not(#v) .botcard,:root:not(#v) .menu__product{background:var(--surface-2);-webkit-backdrop-filter:none;backdrop-filter:none}
}
