/* N9NE UI — единая типографика, кнопки и «стеклянный» интерфейс.
   Палитра не меняется: только цвета из indigo.css (--bg, --ink, --muted, --line, --sand, --cyan, --wine)
   и их прозрачные варианты. Подключается последним на всех страницах. */
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Unbounded:wght@400;500;600&display=swap');

:root{
  --font-display:'Unbounded','Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --font-text:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --tech:var(--font-text);--body:var(--font-text);

  /* Модульная шкала 1.25 */
  --fs-xs:12px;--fs-sm:14px;--fs-md:16px;--fs-lg:18px;--fs-xl:clamp(20px,1.6vw,24px);
  --fs-h3:clamp(22px,2.2vw,30px);--fs-h2:clamp(30px,3.8vw,52px);--fs-h1:clamp(38px,5.6vw,80px);
  --lh-tight:1.08;--lh-text:1.6;--track-caps:.12em;

  /* Цвета — только существующая палитра */
  --accent:#b9b6fa;--accent-2:#a6a0ef;--accent-strong:#7770cc;--accent-deep:#5149a1;
  --grad-primary:linear-gradient(135deg,#7770cc,#5149a1);--grad-primary-hover:linear-gradient(135deg,#8c85df,#625ab3);

  /* Стекло */
  --glass-bg:linear-gradient(150deg,rgba(255,255,255,.085),rgba(255,255,255,.025) 46%,rgba(185,182,250,.04));
  --glass-solid:rgba(16,14,28,.92);
  --glass-strong:linear-gradient(150deg,rgba(39,31,66,.78),rgba(13,12,21,.82));
  --glass-border:rgba(255,255,255,.12);
  --glass-highlight:inset 0 1px 0 rgba(255,255,255,.09),inset 0 0 0 1px rgba(255,255,255,.02);
  --glass-shadow:0 24px 60px -18px rgba(4,3,12,.7);

  --r-sm:10px;--r-md:14px;--r-lg:22px;--r-xl:28px;
  --ease:cubic-bezier(.2,.7,.2,1);
  --control-h:46px;
}
@media(max-width:700px){:root{--control-h:48px}}

/* ---------- База и атмосфера ---------- */
html{-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{font-family:var(--font-text)!important;font-size:var(--fs-md);line-height:var(--lh-text);isolation:isolate;overflow-x:hidden}
body::before{content:'';position:fixed;inset:-20vmax;z-index:-1;pointer-events:none;
  background:
    radial-gradient(38vmax 30vmax at 82% 8%,rgba(119,112,204,.20),transparent 70%),
    radial-gradient(34vmax 28vmax at 6% 62%,rgba(50,37,106,.42),transparent 70%),
    radial-gradient(30vmax 24vmax at 70% 92%,rgba(166,160,239,.09),transparent 70%);}

::selection{background:rgba(185,182,250,.32);color:#fff}

/* ---------- Общий каркас: шапка, меню, корзина (для всех страниц) ---------- */
.nav{display:flex;align-items:center;justify-content:space-between;gap:1rem}
.nav-start,.nav-actions{display:flex;align-items:center;gap:10px}
.menu-trigger{display:grid;place-items:center;color:var(--ink);cursor:pointer}
.menu-icon{display:grid;gap:4px;width:16px}.menu-icon i{display:block;height:1.5px;border-radius:2px;background:currentColor}
body.is-locked{overflow:hidden}
.drawer-layer{position:fixed;inset:0;z-index:60;opacity:0;transition:opacity .26s var(--ease)}
.drawer-layer[hidden]{display:none!important}.drawer-layer.is-open{opacity:1}
.side-drawer{position:absolute;top:0;bottom:0;display:flex;flex-direction:column;transition:transform .34s var(--ease)}
.side-drawer.left{left:0;transform:translateX(-102%)}.side-drawer.right{right:0;transform:translateX(102%)}
.drawer-layer.is-open .side-drawer{transform:translateX(0)}
.drawer-head{display:flex;align-items:center;justify-content:space-between}
.drawer-brand{font:500 18px var(--font-display);letter-spacing:-.02em}.drawer-brand span{color:var(--muted)}
.drawer-close{color:#fff;cursor:pointer}
.drawer-nav{display:grid}.drawer-nav a,.drawer-nav button{display:flex;align-items:center;justify-content:space-between;width:100%;text-align:left;cursor:pointer}
.drawer-foot{margin-top:auto}
.cart-body{flex:1;overflow:auto;padding:8px 4px}
.cart-empty{min-height:16rem;display:grid;place-items:center;text-align:center;color:var(--muted)}.cart-empty b{display:block;color:var(--ink);font:500 18px var(--font-display);margin-bottom:8px}.cart-empty span{display:block;max-width:18rem;margin:auto;font-size:14px;line-height:1.6}
.cart-list{display:grid;gap:10px}
.cart-item{display:grid;grid-template-columns:1fr auto;gap:10px;padding:16px;border-radius:var(--r-md)}
.cart-item h4{margin:0;font:600 15px var(--font-text)}.cart-item p{margin:4px 0 0;color:var(--muted)}
.cart-item-controls{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between}
.qty-control{display:flex;align-items:center;border:1px solid var(--glass-border);border-radius:12px;overflow:hidden}
.qty-control button{width:38px;height:36px;border:0;background:rgba(255,255,255,.05);color:#fff;cursor:pointer;font-size:18px;transition:background .2s}.qty-control button:hover{background:rgba(255,255,255,.12)}
.qty-control span{min-width:32px;text-align:center;font-weight:600}
.cart-remove{border:0;background:transparent;color:#c3a3b8;cursor:pointer}
.cart-summary{padding:16px 8px 8px;border-top:1px solid var(--line)}
.cart-total{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:14px;font-weight:600}.cart-total b{font:500 20px var(--font-display)}
.cart-checkout{width:100%}

/* ---------- Типографика ---------- */
h1,h2,h3,.collection-feature h2,.teaser-heading h2,.section-top h2,.catalog-head h1,.product-copy h1,.checkout-header h1,.studio-head h1,.auth-dialog h2,.admin-top h2,.piggy-head h1{
  font-family:var(--font-display)!important;font-weight:500!important;letter-spacing:-.035em!important;line-height:var(--lh-tight)!important;text-wrap:balance}

.collection-feature h2,.teaser-heading h2,.section-top h2{font-size:var(--fs-h2)!important}
.catalog-head h1,.checkout-header h1,.studio-head h1,.piggy-head h1{font-size:var(--fs-h1)!important}
.product-copy h1{font-size:clamp(32px,3.6vw,52px)!important}
.auth-dialog h2{font-size:clamp(28px,3vw,36px)!important}
.checkout-panel h2{font-family:var(--font-display)!important;font-weight:500!important;letter-spacing:-.02em!important}

p,.product-story,.checkout-note{text-wrap:pretty}
.product-story{font-size:var(--fs-md)!important;line-height:1.75!important}
.edition-label,.auth-kicker,.admin-eyebrow,.piggy-kicker{
  font:600 var(--fs-xs)/1.4 var(--font-text)!important;letter-spacing:var(--track-caps)!important;text-transform:uppercase;color:var(--accent)!important}
.footer{font:500 var(--fs-xs)/1.8 var(--font-text)!important;letter-spacing:.02em!important}
/* Ничего мельче 12px */
.garment-badge,.drawer-foot,.currency-note,.auth-note,.auth-method-label,.auth-status,.cart-item p,.cart-remove,.admin-table td small,.catalog-count,.product-detail-note,.checkout-item span,.bank-option small{font-size:max(12px,.75rem)!important}
.nav-links{font:500 15px/1 var(--font-text)!important;letter-spacing:0!important;gap:6px!important}
.nav-links a{position:relative;padding:10px 14px;border-radius:999px;color:#c4c2d3;transition:color .2s var(--ease),background .2s var(--ease)}
.nav-links a:hover{color:#fff;background:rgba(255,255,255,.06)}
.nav-links a.is-active,.nav-links a[aria-current=page]{color:#fff;background:rgba(185,182,250,.12);box-shadow:inset 0 0 0 1px rgba(185,182,250,.22)}

/* ---------- Кнопки: см. «система «Сдержанный»» в конце файла ---------- */
.cart-count{min-width:22px;height:22px;display:inline-grid;place-items:center;padding:0 5px;border-radius:999px;font-size:12px!important;font-weight:700;background:var(--grad-primary)!important;color:#f5f5fa;box-shadow:0 0 0 2px rgba(8,8,13,.6)}
.currency-select{min-height:42px!important;border-radius:var(--r-md)!important;border:1px solid var(--glass-border)!important;background:rgba(255,255,255,.06)!important;color:var(--ink)!important;font:600 14px var(--font-text)!important;padding:0 10px!important;}
.currency-select option{background:#14121f;color:var(--ink)}
.size-help,.text-link{color:var(--accent)!important;text-decoration:underline;text-decoration-color:rgba(185,182,250,.4);text-underline-offset:4px;transition:text-decoration-color .2s}
.size-help:hover,.text-link:hover{text-decoration-color:var(--accent)}
a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent)!important;outline-offset:3px!important}

/* ---------- Поля ввода ---------- */
.auth-input,.checkout-panel input:not([type=radio]):not([type=checkbox]),.size-form input:not([type=range]),.ui-input,.admin-field input,.admin-field select,.admin-field textarea{
  min-height:var(--control-h);border-radius:var(--r-md)!important;border:1px solid rgba(255,255,255,.14)!important;background:rgba(8,7,16,.5)!important;color:var(--ink)!important;
  font:500 16px var(--font-text)!important;transition:border-color .2s var(--ease),box-shadow .2s var(--ease),background .2s}
.auth-input:focus,.checkout-panel input:focus,.size-form input:not([type=range]):focus,.ui-input:focus,.admin-field input:focus{outline:none!important;border-color:rgba(185,182,250,.7)!important;box-shadow:0 0 0 4px rgba(185,182,250,.14)!important;background:rgba(8,7,16,.7)!important}
input[type=range].ui-range{-webkit-appearance:none;appearance:none;width:100%;height:28px;background:transparent;cursor:pointer;--p:50%}
input[type=range].ui-range::-webkit-slider-runnable-track{height:6px;border-radius:99px;background:linear-gradient(90deg,#7770cc var(--p),rgba(255,255,255,.1) var(--p))}
input[type=range].ui-range::-moz-range-track{height:6px;border-radius:99px;background:rgba(255,255,255,.1)}
input[type=range].ui-range::-moz-range-progress{height:6px;border-radius:99px;background:#7770cc}
input[type=range].ui-range::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;margin-top:-8px;border-radius:50%;background:#f5f5fa;border:0;box-shadow:0 0 0 5px rgba(185,182,250,.25),0 4px 14px rgba(0,0,0,.5);transition:box-shadow .2s}
input[type=range].ui-range::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:#f5f5fa;border:0;box-shadow:0 0 0 5px rgba(185,182,250,.25),0 4px 14px rgba(0,0,0,.5)}
input[type=range].ui-range:hover::-webkit-slider-thumb,input[type=range].ui-range:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 8px rgba(185,182,250,.3),0 4px 14px rgba(0,0,0,.5)}

/* ---------- Стекло ---------- */
.nav,.home-page>.nav{background:linear-gradient(180deg,rgba(12,11,22,.62),rgba(12,11,22,.42))!important;border-bottom:1px solid rgba(255,255,255,.08)!important;box-shadow:0 1px 0 rgba(185,182,250,.05),0 20px 40px -30px rgba(0,0,0,.8)}
.nav.is-scrolled{background:linear-gradient(180deg,rgba(12,11,22,.99),rgba(12,11,22,.97))!important}
.glass,.checkout-panel,.side-drawer,.auth-dialog,.admin-shell,.fit-shell,.control-block,.teaser-player,.cart-item,.piggy-card,.loyalty-card{
  background:var(--glass-bg),var(--glass-solid)!important;border:1px solid var(--glass-border)!important;
  box-shadow:var(--glass-highlight),var(--glass-shadow)!important}
.side-drawer,.auth-dialog,.admin-shell{background:var(--glass-bg),rgba(18,15,32,.97)!important}
.checkout-panel{border-radius:var(--r-lg)!important}
.drawer-layer,.auth-layer,.admin-layer{background:rgba(5,4,12,.72)!important;}
.drawer-nav a,.drawer-nav button{font-family:var(--font-display)!important;font-weight:400!important;font-size:20px!important;letter-spacing:-.02em!important;transition:background .2s var(--ease),padding .25s var(--ease)!important}
.drawer-nav a:hover,.drawer-nav button:hover{padding-left:24px!important}
.product-stage{box-shadow:0 30px 70px -30px rgba(4,3,12,.9),0 0 0 1px rgba(255,255,255,.06)!important}
.garment-badge{background:rgba(255,255,255,.92)!important;}
.garment-card{transition:transform .5s var(--ease)}
.garment-card:hover{transform:translateY(-4px)}

.product-specs>div{transition:background .2s}
.teaser-play{background:rgba(34,27,57,.86)!important;box-shadow:var(--glass-highlight),0 18px 50px rgba(0,0,0,.45)!important;font:600 15px var(--font-text)!important}
.payment-qr{box-shadow:0 0 0 1px rgba(255,255,255,.2),0 20px 50px -20px rgba(185,182,250,.6)}

/* Свечение у активных элементов */

/* ---------- Появление при прокрутке ---------- */
.js-reveal [data-reveal]{opacity:0;transform:translateY(26px);transition:opacity .8s var(--ease),transform .9s var(--ease);transition-delay:var(--reveal-delay,0s)}
.js-reveal [data-reveal].is-in{opacity:1;transform:none}
.portrait-art{will-change:transform}

/* ---------- Доступность и запасные варианты ---------- */
@media(prefers-reduced-transparency:reduce){
  .glass,.checkout-panel,.side-drawer,.auth-dialog,.admin-shell,.fit-shell,.control-block,.cart-item,.piggy-card,.nav,.home-page>.nav,.teaser-play,.btn,.bag,.account-trigger{background:#14121f!important;}
  body::after{display:none}
}
@media(prefers-reduced-motion:reduce){
  body::before{animation:none}
  .js-reveal [data-reveal]{opacity:1;transform:none;transition:none}
  .cart-count,.filter.is-active,.size-choice.is-active{animation:none}
}
@media(max-width:700px){
  body::before{animation:none}
  body::after{display:none}
  .nav-links{display:none!important}
  .btn,.ui-btn{padding:0 18px!important}
  .drawer-nav a,.drawer-nav button{font-size:18px!important}
}

/* Кнопка «Копить» на странице товара */
.product-save{display:flex!important;width:100%;margin-top:10px}
input[type=radio],input[type=checkbox]{accent-color:#7770cc}
.catalog-count{text-transform:none!important;letter-spacing:0!important;color:var(--muted)!important}
/* Переключатель способа входа — как сегментный контрол студии */
.auth-tabs{display:grid!important;grid-template-columns:1fr 1fr;gap:6px!important;padding:4px!important;border-radius:var(--r-md)!important;background:rgba(8,7,16,.45)!important;border:1px solid rgba(255,255,255,.08)!important}
.auth-tab{min-height:42px!important;border:0!important;border-radius:11px!important;background:transparent!important;color:#a9a7bb!important;font:600 15px var(--font-text)!important;letter-spacing:0!important;text-transform:none!important;box-shadow:none!important;transition:background .25s var(--ease),color .2s!important}
.auth-tab:hover{color:#fff!important}
.auth-tab.is-active{background:var(--grad-primary)!important;color:#fff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 8px 22px -10px rgba(119,112,204,.9)!important}
.auth-submit,.auth-secondary{text-transform:none!important;width:100%}

/* ---------- Главная: первый экран — 3D-катана (assets/katana/katana.js) ---------- */
.home-page>.nav{position:fixed!important;left:0;right:0;top:0}
.home-page .nav:not(.is-scrolled){background:transparent!important;border-color:transparent!important;box-shadow:none!important;}
.katana-hero{position:relative;height:100svh;min-height:560px;overflow:hidden;isolation:isolate;background:#08080d;background-image:radial-gradient(ellipse 70% 42% at 50% 34%,rgba(81,73,161,.32),transparent 70%),radial-gradient(ellipse 50% 30% at 50% 100%,rgba(50,37,106,.45),transparent 75%)}
.katana-hero canvas{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;transition:opacity .2s linear;will-change:transform}
.katana-hero.is-still{background-image:url(assets/katana/katana-still.webp),radial-gradient(ellipse 70% 42% at 50% 34%,rgba(81,73,161,.32),transparent 70%),radial-gradient(ellipse 50% 30% at 50% 100%,rgba(50,37,106,.45),transparent 75%);background-repeat:no-repeat;background-position:50% 9svh,center,center;background-size:auto 54svh,auto,auto}
.katana-hero.is-still canvas{display:none}
.katana-sound{position:absolute;right:clamp(16px,3vw,32px);bottom:clamp(18px,4svh,36px);z-index:3;display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 14px;font:600 14px/1 inherit}
.katana-sound[hidden]{display:none}.katana-sound .ks-on{display:none}.katana-sound.is-on .ks-on{display:block}.katana-sound.is-on .ks-off{display:none}
@media (prefers-reduced-motion:reduce){.katana-sound{display:none!important}}
.katana-copy{position:absolute;left:0;right:0;top:68%;z-index:2;display:grid;justify-items:center;gap:18px;padding:0 20px;text-align:center;pointer-events:none;will-change:transform,opacity}
.katana-copy h1{margin:0;font-size:clamp(30px,4.4vw,64px)!important;opacity:0;transform:translateY(14px);animation:n9-rise 1.1s 4.3s var(--ease) forwards}
.katana-copy h1 span{color:var(--accent)}
.katana-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;pointer-events:auto;opacity:0;animation:n9-rise 1s 4.6s var(--ease) forwards}

/* Сцена запущена: текст ждёт, пока клинок выйдет из ножен (класс is-drawn ставит katana.js). */
.katana-hero.is-live:not(.is-drawn) :is(.katana-copy h1,.katana-actions,.katana-hint){animation:none}
.katana-hero.is-live.is-drawn .katana-copy h1{animation-delay:0s}
.katana-hero.is-live.is-drawn .katana-actions{animation-delay:.3s}

/* Девятка с катаной — по центру на любом экране (emblemFor в hero-src/katana-timeline.js), текст под ней. */
@media(min-aspect-ratio:11/10){.katana-copy h1{font-size:clamp(34px,3.6vw,60px)!important}}
@media(max-width:700px){.katana-actions .ui-btn{flex:1 1 100%}}
@media(prefers-reduced-motion:reduce){.katana-copy h1,.katana-actions{animation:none!important;opacity:1;transform:none}}

/* ---------- Главная: история бренда ---------- */
[data-tilt]{transform-style:preserve-3d;will-change:transform;transition:transform .5s var(--ease)!important}
[data-tilt]::before{content:'';position:absolute;inset:-12%;z-index:-1;border-radius:inherit;background:radial-gradient(closest-side,var(--glow,rgba(185,182,250,.35)),transparent 72%);opacity:.75;transition:opacity .4s var(--ease);pointer-events:none}
[data-tilt]:hover::before{opacity:1}

.story-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,6vw,96px);align-items:center;max-width:1320px;margin:0 auto;padding:clamp(64px,9vw,128px) 5vw}
.story-copy{max-width:34rem}
.story-copy h2{margin:0 0 18px;font-size:var(--fs-h2)!important}
.story-copy p{margin:0 0 28px;color:#c4c1d8;font-size:var(--fs-lg);line-height:1.65}
.story-visual{display:block;position:relative}
.story-studio-visual{aspect-ratio:600/760;max-height:620px;justify-self:center;border-radius:var(--r-xl);overflow:hidden;background:radial-gradient(ellipse 70% 60% at 50% 38%,rgba(119,112,204,.26),transparent 70%),radial-gradient(ellipse at 50% 100%,#1c1840 0%,#0d0c17 62%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 40px 90px -40px rgba(0,0,0,.9)}
.story-studio-visual picture{display:block;width:100%;height:100%}.story-studio-visual img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s var(--ease)}
.story-studio-visual:hover img{transform:scale(1.03)}
.story-piggy-card{display:grid;place-items:center;gap:16px;padding:clamp(28px,4vw,48px);border-radius:var(--r-xl);justify-self:center;width:min(100%,380px);aspect-ratio:1;position:relative}
.story-ring{width:min(70%,220px);height:auto;transform:rotate(-90deg)}
.story-ring-bar{transition:stroke-dashoffset 1.6s var(--ease);filter:drop-shadow(0 0 10px rgba(185,182,250,.5))}
.story-ring-label{position:absolute;inset:0;display:grid;place-content:center;text-align:center;gap:6px}
.story-ring-label b{font:500 clamp(34px,4vw,46px)/1 var(--font-display);letter-spacing:-.04em}
.story-ring-label span{color:var(--muted);font-size:var(--fs-sm)}
.site-footer{display:grid!important;justify-content:stretch!important;gap:clamp(24px,4vw,48px);padding:clamp(48px,7vw,96px) 5vw 32px!important}
.site-footer-links{display:flex;flex-wrap:wrap;gap:8px 28px;font:500 var(--fs-md) var(--font-text)}
.site-footer-links a{color:#d8d6e6;transition:color .2s}.site-footer-links a:hover{color:var(--accent)}
.site-footer-mark{width:100%;height:auto;opacity:.92}
.site-footer-meta{display:flex;justify-content:space-between;gap:16px;color:var(--muted);font-size:var(--fs-xs)}
@media(max-width:860px){.story-split{grid-template-columns:1fr}.story-piggy .story-copy{order:-1}.story-studio-visual{max-height:520px;width:100%}}
@media(prefers-reduced-motion:reduce){[data-tilt]{transition:none!important}.story-ring-bar{transition:none}}

/* ---------- Переходы между страницами ---------- */
@view-transition { navigation: auto; }
::view-transition-old(root){animation:n9-vt-out .22s var(--ease) both}
::view-transition-new(root){animation:n9-vt-in .32s var(--ease) both}

/* ---------- Блик на карточках товара ---------- */
.garment-card{position:relative}
.garment-card::after{content:'';position:absolute;inset:0;border-radius:24px;pointer-events:none;opacity:0;transition:opacity .35s var(--ease);background:radial-gradient(420px circle at var(--mx,50%) var(--my,30%),rgba(255,255,255,.09),transparent 45%)}
.garment-card:hover::after{opacity:1}

/* ---------- Курсор (только мышь) ---------- */

@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}

[data-magnetic]{transition:transform .22s var(--ease),background .22s var(--ease),border-color .22s var(--ease),box-shadow .22s var(--ease),translate .3s var(--ease)!important}

/* ---------- Каталог-лукбук ---------- */
.lookbook-head{position:relative;isolation:isolate;display:block!important;padding-bottom:8px!important;border:0!important;overflow:visible}
.lookbook-ghost{position:absolute;z-index:-1;right:-4vw;top:-6vw;font:500 clamp(140px,30vw,460px)/.8 var(--font-display);letter-spacing:-.05em;color:rgba(185,182,250,.045);pointer-events:none;user-select:none}

.lookbook-title{margin:0!important}
.lookbook-title span{display:inline-block;opacity:0;transform:translateY(.35em);animation:n9-rise .7s var(--ease) forwards;animation-delay:calc(var(--i) * 45ms + .1s)}
.lookbook-lead{margin:18px 0 6px;max-width:34rem;color:#c4c1d8;font-size:var(--fs-lg);line-height:1.6}
.lookbook-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin:28px 0 32px}
.segmented{position:relative;display:inline-flex;gap:2px;padding:4px;border-radius:16px;background:var(--glass-bg),var(--glass-solid);border:1px solid var(--glass-border);box-shadow:var(--glass-highlight)}
.segmented-thumb{position:absolute;left:0;top:4px;bottom:4px;width:0;border-radius:12px;background:var(--grad-primary);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 8px 22px -10px rgba(119,112,204,.9);transition:transform .38s var(--ease),width .38s var(--ease)}
.segmented-item{position:relative;z-index:1;min-height:44px;padding:0 18px;border:0;border-radius:12px;background:transparent;color:#b9b7c9;cursor:pointer;font:600 15px var(--font-text);white-space:nowrap;transition:color .2s}
.segmented-item:hover{color:#fff}.segmented-item.is-active{color:#fff}
.lookbook-sort{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:var(--fs-sm)}
.lookbook-sort select{min-height:44px;padding:0 14px;cursor:pointer}
.lookbook-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:32px 28px!important;align-items:start}
.lookbook-grid[hidden]{display:none!important}
.lookbook-card.is-feature{grid-column:span 2}

.quick-btn{position:relative;z-index:3;display:block;margin:-64px auto 20px;min-height:42px;padding:0 18px;border-radius:999px;border:1px solid rgba(255,255,255,.5);background:rgba(16,14,28,.62);color:#fff;font:600 14px var(--font-text);cursor:pointer;opacity:0;transform:translateY(8px);transition:opacity .25s var(--ease),transform .25s var(--ease),background .2s}
.lookbook-card:hover .quick-btn,.lookbook-card:focus-within .quick-btn{opacity:1;transform:none}
.quick-btn:hover{background:rgba(119,112,204,.75)}
@media(hover:none){.quick-btn{opacity:1;transform:none}}
.size-dots{display:flex;flex-wrap:wrap;gap:6px;margin:0 2px 16px;padding:0;list-style:none}
.size-dot{min-width:32px;height:28px;display:grid;place-items:center;padding:0 6px;border-radius:999px;border:1px solid rgba(255,255,255,.14);color:#cfcde0;font:600 12px var(--font-text)}
.garment-actions{display:flex;align-items:center;gap:10px}
.icon-btn{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:var(--r-md);color:#e9e7f6}
.lookbook-empty{display:grid;justify-items:center;gap:12px;padding:clamp(32px,5vw,64px);border-radius:var(--r-xl);text-align:center}
.lookbook-empty[hidden]{display:none}
.lookbook-empty h2{margin:0;font-size:var(--fs-h3)!important}.lookbook-empty p{margin:0 0 8px;max-width:30rem;color:#c4c1d8;line-height:1.6}
.lookbook-banners{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:clamp(48px,7vw,96px)}
.lookbook-banner{display:grid;gap:8px;padding:clamp(24px,3vw,36px);border-radius:var(--r-xl);transition:transform .3s var(--ease),border-color .3s}
.lookbook-banner:hover{border-color:rgba(185,182,250,.4)!important}
.lookbook-banner b{font:500 clamp(20px,2vw,26px)/1.2 var(--font-display);letter-spacing:-.02em}
.lookbook-banner span{color:#c4c1d8;line-height:1.55}
@media(max-width:1000px){.lookbook-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:700px){.lookbook-grid{grid-template-columns:1fr!important}.lookbook-card.is-feature{grid-column:auto}.lookbook-controls{flex-direction:column;align-items:stretch}.segmented{display:flex;overflow-x:auto;scrollbar-width:none}.segmented::-webkit-scrollbar{display:none}.lookbook-sort{justify-content:space-between}.lookbook-banners{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.lookbook-ghost{animation:none}.lookbook-title span{animation:none;opacity:1;transform:none}.segmented-thumb{transition:none}}

/* ---------- Быстрый просмотр ---------- */
.quick-view{width:min(960px,calc(100vw - 32px));max-height:calc(100svh - 48px);padding:0;border-radius:var(--r-xl);color:var(--ink);overflow:auto}
.quick-view[open]{display:grid;grid-template-columns:1.05fr 1fr;animation:n9-qv-in .34s var(--ease)}
.quick-view::backdrop{background:rgba(5,4,12,.78);}

.quick-close{position:absolute;right:14px;top:14px;z-index:2;width:40px;height:40px;border-radius:50%;border:1px solid var(--glass-border);background:rgba(16,14,28,.6);color:#fff;font-size:24px;cursor:pointer}
.quick-gallery{position:relative;display:grid;place-items:center;min-height:420px;padding:28px 28px 76px;background:radial-gradient(closest-side,var(--glow),transparent 75%),#f8f8f8}
.quick-photo{width:100%;max-height:440px;object-fit:contain}
.quick-views{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);display:flex;gap:8px}
.quick-info{display:grid;align-content:start;gap:14px;padding:clamp(24px,3vw,40px)}
.quick-info h2{margin:0;font-size:var(--fs-h3)!important}.quick-info .detail-price{margin:0;font-size:22px}
.quick-text{margin:0;color:#c4c1d8;line-height:1.65}
.quick-buy{width:100%}
.quick-links{display:flex;flex-wrap:wrap;gap:16px}
.product-stage{box-shadow:0 40px 90px -40px var(--glow,rgba(0,0,0,.6)),0 0 0 1px rgba(255,255,255,.06)!important}
@media(max-width:760px){.quick-view[open]{grid-template-columns:1fr;margin:auto 0 0;width:100vw;max-width:100vw;border-radius:var(--r-xl) var(--r-xl) 0 0}.quick-gallery{min-height:300px}}
@media(prefers-reduced-motion:reduce){.quick-view[open]{animation:none}}

/* ---------- Узкие экраны: ничего не вылезает за край ---------- */
.lookbook-controls,.segmented,.lookbook-sort{min-width:0;max-width:100%}
@media(max-width:700px){.lookbook-sort select{flex:1;min-width:0}}
@media(max-width:400px){.nav,.home-page>.nav{padding:0 10px!important}.nav .logo img{width:92px!important;height:22px!important}.nav-actions{gap:6px!important}.currency-select{max-width:72px!important;padding:0 6px!important}.nav .bag{padding:0 10px!important}}

/* ---------- Плеер трека на странице товара ---------- */
.track-player{--tp-lift:0px;position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:55;display:flex;align-items:center;gap:10px;max-width:min(380px,calc(100vw - 32px));padding:8px;border-radius:999px;background:var(--glass-bg),rgba(16,14,28,.7);border:1px solid var(--glass-border);box-shadow:var(--glass-highlight),0 18px 44px -18px rgba(0,0,0,.85);transform:translateY(calc(-1 * var(--tp-lift)));transition:transform .3s var(--ease),max-width .35s var(--ease),padding .3s var(--ease)}
.tp-play{position:relative;flex:none;display:inline-flex;align-items:center;gap:8px;min-width:46px;height:46px;padding:0 13px;border:0;border-radius:999px;background:var(--grad-primary);color:#fff;cursor:pointer;font:600 14px var(--font-text);box-shadow:inset 0 1px 0 rgba(255,255,255,.2)}
.tp-icon{display:grid;place-items:center}
.tp-eq{display:none;align-items:flex-end;gap:2px;height:14px}
.tp-eq i{width:3px;height:100%;border-radius:2px;background:currentColor;transform-origin:bottom;animation:n9-eq 1s ease-in-out infinite}
.tp-eq i:nth-child(2){animation-delay:-.4s}.tp-eq i:nth-child(3){animation-delay:-.7s}.tp-eq i:nth-child(4){animation-delay:-.2s}

.track-player[data-state="playing"] .tp-eq{display:inline-flex}
.tp-cta{display:none;white-space:nowrap}
.track-player[data-state="blocked"] .tp-cta{display:inline}
.track-player[data-state="blocked"] .tp-play::after{content:'';position:absolute;inset:-4px;border-radius:inherit;border:2px solid rgba(185,182,250,.7);animation:n9-ping 1.6s ease-out infinite}

.tp-meta{display:grid;min-width:0;flex:1;line-height:1.25}
.tp-label{color:var(--muted);font-size:12px}
.tp-title{overflow:hidden;white-space:nowrap;font:600 14px var(--font-text)}
.tp-title span{display:inline-block}
.tp-title.is-long span{padding-right:2em;animation:n9-tp-marquee 9s linear infinite}

.tp-volume{position:relative;display:flex;align-items:center}
.tp-mute,.tp-collapse{flex:none;display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:rgba(255,255,255,.06);color:#e9e7f6;cursor:pointer;transition:background .2s}
.tp-mute:hover,.tp-collapse:hover{background:rgba(255,255,255,.14)}
.tp-volume .ui-range{position:absolute;right:50%;bottom:calc(100% + 18px);width:132px;transform:translateX(50%) rotate(0);padding:10px 12px;border-radius:14px;background:rgba(16,14,28,.92);box-shadow:0 12px 30px -10px rgba(0,0,0,.8);opacity:0;pointer-events:none;transition:opacity .2s}
.tp-volume:hover .ui-range,.tp-volume:focus-within .ui-range,.track-player.show-volume .ui-range{opacity:1;pointer-events:auto}
.tp-collapse span{display:block;width:12px;height:2px;border-radius:2px;background:currentColor}
.track-player.is-collapsed{padding:4px;gap:0}
/* компьютер: плеер закрывал кнопки товара — сворачивается до круглой кнопки, при наведении раскрывается */
.track-player.is-docked:not(:hover):not(:focus-within){padding:4px;gap:0}
.track-player.is-docked:not(:hover):not(:focus-within) :is(.tp-meta,.tp-volume,.tp-collapse,.tp-cta){display:none}
.track-player.is-collapsed .tp-meta,.track-player.is-collapsed .tp-volume{display:none}
.track-player.is-collapsed .tp-collapse{position:absolute;top:-10px;left:-10px;width:26px;height:26px;background:rgba(16,14,28,.92);border:1px solid var(--glass-border)}
.track-player.is-collapsed .tp-collapse span{width:9px;box-shadow:0 0 0 0 currentColor}
.track-player.is-collapsed .tp-collapse span::after{content:'';display:block;width:2px;height:9px;margin:-3.5px auto 0;border-radius:2px;background:currentColor}
@media(prefers-reduced-motion:reduce){.tp-eq i,.tp-title.is-long span,.track-player[data-state="blocked"] .tp-play::after{animation:none}.track-player{transition:none}}

/* ---------- Карточка товара «Shirt Parallax» (parallax-card.js, шаблоны в collection.js) ---------- */
/* Образец — 21st.dev ruixen.ui/shirt-parallax-card. Размеры вещи — в cqw: доля ширины самой карточки. */
.pc-card{position:relative;container-type:inline-size;transform:none!important}
.pc-card::after{display:none}
.pc-tilt{position:relative;margin-top:13cqw;transform:perspective(1000px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transform-style:preserve-3d}
.pc-body{position:relative;z-index:1;display:grid;gap:14px;padding:22px;border-radius:24px;overflow:hidden;background:linear-gradient(160deg,rgba(245,245,250,.075),rgba(245,245,250,.02) 55%),rgba(13,12,24,.74);border:1px solid rgba(245,245,250,.1);box-shadow:0 34px 70px -34px var(--glow,rgba(4,3,12,.9)),inset 0 1px 0 rgba(245,245,250,.08);transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
.pc-body::after{content:'';position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .35s var(--ease);background:radial-gradient(360px circle at var(--mx,70%) var(--my,20%),rgba(185,182,250,.14),transparent 60%)}
.pc-card.is-active .pc-body::after{opacity:1}
.pc-card.is-active .pc-body,.pc-card:focus-within .pc-body{transform:scale(.97);box-shadow:0 22px 46px -22px rgba(4,3,12,.95),0 0 0 1px rgba(185,182,250,.16),inset 0 1px 0 rgba(245,245,250,.1)}
.pc-head{position:relative;z-index:1;display:grid;gap:6px;align-content:start;max-width:50%;min-height:calc(31cqw - 22px)}
.pc-head .garment-badge{position:static;justify-self:start;margin:0 0 4px}
.pc-head h2{margin:0;font-family:var(--font-display)!important;font-size:clamp(20px,1.7vw,24px)!important;font-weight:500!important;line-height:1.2!important;letter-spacing:-.02em!important}
.pc-head .garment-category{margin:0}
.pc-link{color:inherit;text-decoration:none}
.pc-link:hover{color:#fff}
.pc-card .garment-material{position:relative;z-index:1;margin:0;color:var(--muted);font-size:14px;line-height:1.5}
.pc-meta{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.pc-meta .size-dots{margin:0}
.pc-card .garment-actions{position:relative;z-index:1;flex-wrap:wrap;align-items:center}
.pc-card .garment-actions>*{margin:0!important}
.pc-card .quick-btn{display:inline-flex;align-items:center;margin:0;opacity:1;transform:none}
/* узкая карточка (главная, телефон): кнопки компактнее, чтобы помещались в одну строку */
@container (max-width:430px){.pc-card .garment-actions{gap:8px}.pc-card .garment-actions .btn,.pc-card .quick-btn{min-height:40px!important;padding:0 13px!important;font-size:13px!important}.pc-head{max-width:54%}}
/* вещь: за правым верхним краем, «впереди» панели (translateZ), покачивается; при наведении растёт */
.pc-shirt{position:absolute;z-index:2;top:-15cqw;right:-5cqw;width:56cqw;height:auto;pointer-events:none;transform:translateZ(46px);filter:drop-shadow(0 22px 26px rgba(4,3,12,.6));transition:scale .5s var(--ease),filter .5s var(--ease)}
.pc-card.is-active .pc-shirt,.pc-card:focus-within .pc-shirt{scale:1.12;filter:drop-shadow(0 34px 34px rgba(4,3,12,.78))}
.pc-shirt.is-photo{top:-11cqw;right:-3cqw;width:42cqw;aspect-ratio:1;object-fit:cover;border-radius:18px;box-shadow:0 0 0 1px rgba(245,245,250,.12)}
.pc-card.is-placeholder .pc-shirt.is-photo{object-fit:contain;padding:8cqw;background:radial-gradient(circle,rgba(119,112,204,.32),rgba(20,18,31,.96) 70%)}

/* телефон и планшет: наведения нет — вещь «всплывает», когда карточка появляется на экране */
@media(hover:none){.pc-card.is-in:not(.is-instant) .pc-shirt{animation:pc-in .7s var(--ease) both}}
/* широкая первая карточка каталога (на две колонки): вещь меньше, чтобы не наезжать на соседнюю */
.lookbook-card.is-feature .pc-shirt{width:36cqw;top:-10cqw;right:4cqw}
.lookbook-card.is-feature .pc-head{min-height:calc(21cqw - 22px)}
@media(max-width:700px){.pc-shirt{right:-2cqw}.pc-shirt.is-photo{right:-1cqw}.pc-head{max-width:48%}}
/* сетка каталога: место сверху под «выходящие» вещи */
.lookbook-grid{row-gap:clamp(28px,3.5vw,52px)!important}
/* главная, «Коллекция»: две карточки рядом */
.hero-garments.pc-row{height:auto!important;max-width:780px;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start;margin:auto}
@media(max-width:700px){.hero-garments.pc-row{grid-template-columns:1fr;max-width:460px}}
@media(prefers-reduced-motion:reduce){.pc-shirt{animation:none!important;translate:none!important}.pc-card .pc-shirt{opacity:1!important}.pc-body,.pc-shirt{transition:none}}

/* ---------- Вход по коду из письма (auth-code.js) ---------- */
.auth-code-sent{margin:0;color:var(--ink);font-size:15px;line-height:1.5;overflow-wrap:anywhere}
.auth-code-input{font:700 26px/1 var(--font-text)!important;letter-spacing:.32em!important;text-align:center;font-variant-numeric:tabular-nums}
.auth-code-input::placeholder{letter-spacing:.32em;color:rgba(150,150,172,.4)}
.auth-code-actions{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:14px}
.auth-code-actions .link-btn:disabled{color:var(--muted)!important;text-decoration:none;cursor:default}

/* ---------- Кабинет CEO: «Заработок» и «Аналитика» (ceo-panel.js) ---------- */
.ceo-head{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:6px 0 18px}
.ceo-head h3{margin:0;font:600 22px var(--font-display);letter-spacing:-.01em}
.ceo-body{display:grid;gap:18px;transition:opacity .2s var(--ease)}
.ceo-body.is-loading{opacity:.55}
.ceo-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.ceo-tile{display:grid;gap:6px;align-content:start;padding:16px;border-radius:14px;background:rgba(245,245,250,.04);box-shadow:inset 0 0 0 1px rgba(245,245,250,.09)}
.ceo-tile span{color:var(--muted);font-size:13px}
.ceo-tile b{font:600 clamp(20px,2vw,28px)/1.1 var(--font-display);letter-spacing:-.01em;color:var(--ink);font-variant-numeric:tabular-nums}
.ceo-change{font-size:12px;color:var(--muted)}
.ceo-change.is-up{color:#b9b6fa}
.ceo-total{margin:0;color:var(--muted);font-size:14px}
.ceo-total b{color:var(--ink)}
.ceo-chart{margin:0;padding:16px 16px 10px;border-radius:14px;background:rgba(245,245,250,.03);box-shadow:inset 0 0 0 1px rgba(245,245,250,.08)}
.ceo-chart svg{display:block;width:100%;height:150px;overflow:visible}
.ceo-chart rect{fill:#5149a1;transition:fill .2s var(--ease)}
.ceo-chart rect.is-best{fill:#b9b6fa}
.ceo-chart rect:hover{fill:#7770cc}
.ceo-chart figcaption{display:flex;justify-content:space-between;gap:10px;margin-top:8px;color:var(--muted);font-size:12px}
.ceo-table td,.ceo-table th{white-space:nowrap}
.ceo-sizes{display:flex;gap:10px;font-variant-numeric:tabular-nums}
.ceo-sizes .is-zero{color:rgba(150,150,172,.55)}
.ceo-tag{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:999px;font:600 11px var(--font-text);font-style:normal;vertical-align:1px}
.ceo-tag.is-hit{color:#08080d;background:#b9b6fa}
.ceo-tag.is-slow{color:var(--muted);box-shadow:inset 0 0 0 1px rgba(150,150,172,.45)}
.ceo-bot{padding:18px 20px;border-radius:14px;background:rgba(50,37,106,.35);box-shadow:inset 0 0 0 1px rgba(119,112,204,.45)}
.ceo-bot h4{margin:0 0 10px;font:600 15px var(--font-text);color:#b9b6fa}
.ceo-bot ul{margin:0;padding-left:18px;display:grid;gap:8px;line-height:1.5;color:var(--ink)}
.ceo-sub{margin:4px 0 0;font:600 15px var(--font-text);color:var(--ink)}
.ceo-split{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.ceo-share{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:10px}
.ceo-share li{display:grid;grid-template-columns:minmax(90px,150px) 1fr 44px;gap:10px;align-items:center;font-size:14px}
.ceo-share i{display:block;height:8px;border-radius:999px;background:linear-gradient(90deg,#7770cc var(--w),rgba(245,245,250,.06) var(--w))}
.ceo-share b{text-align:right;font-variant-numeric:tabular-nums}
.admin-empty.is-error{color:#b9b6fa}
.role-select{min-height:36px;padding:0 10px;border:0;border-radius:10px;background:rgba(245,245,250,.06);color:var(--ink);box-shadow:inset 0 0 0 1px rgba(245,245,250,.14);font:600 14px var(--font-text);cursor:pointer}
.role-select option{background:#14121f;color:#f5f5fa}
.role-select:focus-visible{outline:2px solid #b9b6fa;outline-offset:2px}
@media(max-width:900px){.ceo-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.ceo-split{grid-template-columns:1fr}}
@media(max-width:520px){.ceo-tiles{grid-template-columns:1fr 1fr;gap:8px}.ceo-tile{padding:12px}.ceo-chart svg{height:110px}}

/* ---------- Кнопки: система «Сдержанный» (выбор владельца, вариант C) ----------
   Пять ролей на весь сайт: главная, второстепенная, значок, переключатель, выбор (+ текстовая ссылка).
   Ровная заливка из палитры, тонкая внутренняя обводка, без градиентов и свечения под кнопкой.
   Нажатие — лёгкое «вдавливание» на 1 px. Фокус с клавиатуры — видимая лавандовая рамка. */
:root{--lav:#b9b6fa;--btn-h:48px;--btn-r:12px;--btn-fill:#7770cc;--btn-fill-hover:#5149a1;--btn-soft:rgba(245,245,250,.06);--btn-soft-hover:rgba(245,245,250,.1);
  --btn-line:inset 0 0 0 1px rgba(245,245,250,.14);--btn-line-hover:inset 0 0 0 1px rgba(245,245,250,.26);--btn-top:inset 0 1px 0 rgba(245,245,250,.2);
  --btn-on:#32256a;--btn-on-line:inset 0 0 0 1px rgba(119,112,204,.7);--grad-primary:#7770cc;--grad-primary-hover:#5149a1}

/* второстепенная: «Подробнее», «Быстрый просмотр», «Отмена», «Корзина» в шапке */
.btn,.ui-btn,.bag,.account-trigger,.auth-secondary,.admin-cancel,.admin-back,.admin-mini,.quick-btn,.filter{
  display:inline-flex!important;align-items:center;justify-content:center;gap:10px;min-height:var(--btn-h)!important;padding:0 20px!important;
  border:0!important;border-radius:var(--btn-r)!important;background:var(--btn-soft)!important;color:var(--ink)!important;
  font:600 15px/1.2 var(--font-text)!important;letter-spacing:0!important;text-transform:none!important;text-decoration:none;cursor:pointer;
  box-shadow:var(--btn-line)!important;transform:none;
  transition:background .2s var(--ease),box-shadow .2s var(--ease),color .2s var(--ease),transform .1s!important}
.btn:hover,.ui-btn:hover,.bag:hover,.account-trigger:hover,.auth-secondary:hover,.admin-cancel:hover,.admin-back:hover,.admin-mini:hover,.quick-btn:hover,.filter:hover{
  background:var(--btn-soft-hover)!important;box-shadow:var(--btn-line-hover)!important;transform:none!important}
.bag,.account-trigger{min-height:42px!important;padding:0 16px!important;font-size:14px!important}
.quick-btn{margin:0;opacity:1}
.admin-mini{min-height:36px!important;padding:0 12px!important;font-size:13px!important}
.admin-mini.danger{color:var(--lav)!important;box-shadow:inset 0 0 0 1px rgba(185,182,250,.45)!important}

/* главная: «Добавить в корзину», «Подобрать размер», «Войти», «Оформить», «Оплатить», «Сохранить» */
.btn.primary,.ui-btn.is-primary,.primary,.size-submit,.auth-submit,.admin-save,.cart-checkout,.checkout-pay,.quick-buy,.product-buy{
  display:inline-flex!important;align-items:center;justify-content:center;gap:10px;min-height:var(--btn-h)!important;padding:0 22px!important;
  border:0!important;border-radius:var(--btn-r)!important;background:var(--btn-fill)!important;color:var(--ink)!important;
  font:700 15px/1.2 var(--font-text)!important;letter-spacing:0!important;text-transform:none!important;cursor:pointer;
  box-shadow:var(--btn-top)!important;transform:none;
  transition:background .2s var(--ease),transform .1s!important}
.btn.primary:hover,.ui-btn.is-primary:hover,.primary:hover,.size-submit:hover,.auth-submit:hover,.admin-save:hover,.cart-checkout:hover,.checkout-pay:hover,.quick-buy:hover,.product-buy:hover{
  background:var(--btn-fill-hover)!important;box-shadow:var(--btn-top)!important;transform:none!important}

/* значок: меню, закрыть, копилка */
.icon-btn,.menu-trigger,.drawer-close,.auth-close,.admin-close,.quick-close{
  display:inline-grid!important;place-items:center;width:44px!important;height:44px!important;min-height:0!important;padding:0!important;
  border:0!important;border-radius:var(--btn-r)!important;background:var(--btn-soft)!important;color:var(--ink)!important;cursor:pointer;
  box-shadow:var(--btn-line)!important;transition:background .2s var(--ease),box-shadow .2s var(--ease),transform .1s!important}
.icon-btn:hover,.menu-trigger:hover,.drawer-close:hover,.auth-close:hover,.admin-close:hover,.quick-close:hover{background:var(--btn-soft-hover)!important;box-shadow:var(--btn-line-hover)!important}
/* те же значки с особой формой: «360°» в студии, кнопки плеера, музыка, кнопка видео-тизера */
.rotation-toggle{border:0!important;border-radius:var(--btn-r)!important;background:var(--btn-soft)!important;color:var(--ink)!important;box-shadow:var(--btn-line)!important}
/* звук удара катаны на первом экране */
.katana-sound{border:0!important;border-radius:var(--btn-r)!important;background:var(--btn-soft)!important;color:var(--ink)!important;box-shadow:var(--btn-line)!important;cursor:pointer}
.katana-sound:hover{background:var(--btn-soft-hover)!important;box-shadow:var(--btn-line-hover)!important}
.tp-mute,.tp-collapse{border:0!important;background:var(--btn-soft)!important;color:var(--ink)!important;box-shadow:var(--btn-line)!important}
.tp-play{background:var(--btn-fill)!important;box-shadow:var(--btn-top)!important}
.tp-play:hover{background:var(--btn-fill-hover)!important}
.teaser-play{border:0!important;background:rgba(13,12,24,.72)!important;color:var(--ink)!important;box-shadow:var(--btn-line)!important}

/* текстовая: «Помочь подобрать размер», «Удалить» в корзине */
.link-btn,.size-help,.text-link,.cart-remove{border:0!important;background:none!important;box-shadow:none!important;padding:0!important;color:var(--lav)!important;
  text-decoration:underline;text-decoration-color:rgba(185,182,250,.45);text-underline-offset:4px;cursor:pointer;transition:text-decoration-color .2s}
.link-btn:hover,.size-help:hover,.text-link:hover,.cart-remove:hover{text-decoration-color:var(--lav)}

/* переключатель: модель и вещь в студии, фильтры каталога, вкладки входа, «Спереди/Сзади» */
.segmented,.garment-toggle,.profile-toggle,.auth-tabs,.gallery-tabs,.ceo-periods{display:flex!important;gap:4px!important;padding:4px!important;border:0!important;border-radius:13px!important;
  background:rgba(245,245,250,.05)!important;box-shadow:inset 0 0 0 1px rgba(245,245,250,.1)!important}
.segmented-item,.garment-option,.profile-option,.auth-tab,.view-tab,.admin-nav button{
  min-height:42px!important;padding:0 16px!important;border:0!important;border-radius:9px!important;background:transparent!important;color:var(--muted)!important;
  font:600 15px/1.2 var(--font-text)!important;letter-spacing:0!important;text-transform:none!important;box-shadow:none!important;transform:none!important;animation:none!important;cursor:pointer;
  transition:background .2s var(--ease),color .2s var(--ease),box-shadow .2s var(--ease)!important}
.garment-toggle>*,.profile-toggle>*,.auth-tabs>*{flex:1}
.gallery-tabs{width:fit-content}
.garment-toggle>*{flex:1 1 auto;white-space:nowrap}
@media(max-width:480px){.garment-option,.profile-option,.auth-tab{padding:0 10px!important;font-size:14px!important}}
.segmented-item:hover,.garment-option:hover,.profile-option:hover,.auth-tab:hover,.view-tab:hover,.admin-nav button:hover{color:var(--ink)!important}
.garment-option.is-active,.profile-option.is-active,.auth-tab.is-active,.view-tab.is-active,.admin-nav button.is-active,
.garment-option[aria-pressed="true"],.profile-option[aria-pressed="true"]{background:var(--btn-on)!important;color:var(--ink)!important;box-shadow:var(--btn-on-line)!important}
/* в каталоге выбранный фильтр подсвечивает «бегунок» под кнопками */
.segmented .segmented-item.is-active{background:transparent!important;color:var(--ink)!important}
.segmented-thumb{top:4px!important;bottom:4px!important;border-radius:9px!important;background:var(--btn-on)!important;box-shadow:var(--btn-on-line)!important}

/* выбор: размеры, ячейки размерной сетки, суммы копилки, способ оплаты */
.size-choice,.scale-item,.chip,.bank-option{border:0!important;border-radius:10px!important;background:transparent!important;color:#d6d4e6!important;cursor:pointer;
  box-shadow:inset 0 0 0 1px rgba(245,245,250,.16)!important;transform:none!important;animation:none!important;transition:box-shadow .2s var(--ease),color .2s var(--ease),background .2s var(--ease)!important}
.size-choice{min-width:52px!important;min-height:44px!important;padding:0 14px!important;font:700 15px var(--font-text)!important}
.size-choice:hover,.scale-item:hover,.chip:hover,.bank-option:hover{box-shadow:inset 0 0 0 1px rgba(245,245,250,.32)!important;color:var(--ink)!important}
.size-choice.is-active,.scale-item.is-selected,.chip.is-active,.bank-option.is-active,
.size-choice[aria-pressed="true"],.chip[aria-pressed="true"],.bank-option[aria-checked="true"]{color:var(--lav)!important;background:rgba(185,182,250,.08)!important;box-shadow:inset 0 0 0 1.5px var(--lav)!important}
.scale-item.is-selected b,.scale-item.is-selected small{color:var(--lav)!important}

/* общее: нажатие, фокус с клавиатуры, недоступность */
:is(.btn,.ui-btn,.bag,.account-trigger,.primary,.size-submit,.auth-submit,.admin-save,.cart-checkout,.checkout-pay,.quick-buy,.product-buy,.quick-btn,.auth-secondary,.admin-cancel,.icon-btn,.menu-trigger,.size-choice,.chip):active{transform:translateY(1px)!important}
:is(.btn,.ui-btn,.bag,.account-trigger,.primary,.size-submit,.auth-submit,.auth-secondary,.admin-save,.admin-cancel,.admin-back,.admin-mini,.cart-checkout,.checkout-pay,.quick-buy,.product-buy,.quick-btn,.icon-btn,.menu-trigger,.drawer-close,.auth-close,.admin-close,.quick-close,.rotation-toggle,.segmented-item,.garment-option,.profile-option,.auth-tab,.view-tab,.size-choice,.scale-item,.chip,.bank-option,.link-btn,.cart-remove,.tp-play,.tp-mute,.tp-collapse):focus-visible{outline:2px solid var(--lav)!important;outline-offset:3px}
:is(.btn,.ui-btn,.primary,.size-submit,.auth-submit,.admin-save,.cart-checkout,.checkout-pay,.quick-buy,.product-buy):disabled{opacity:.45!important;cursor:not-allowed!important;transform:none!important}
@media(prefers-reduced-motion:reduce){:is(.btn,.ui-btn,.primary,.icon-btn,.size-choice,.segmented-item,.garment-option,.profile-option){transition:none!important}}
/* ---------- конец системы кнопок ---------- */

@keyframes n9-rise{to{opacity:1;transform:none}}
@keyframes n9-vt-out{to{opacity:0;transform:translateY(-6px)}}
@keyframes n9-vt-in{from{opacity:0;transform:translateY(8px)}}
@keyframes n9-qv-in{from{opacity:0;transform:translate(var(--from-x,0),var(--from-y,0)) scale(.6)}}
@keyframes n9-eq{0%,100%{transform:scaleY(.25)}50%{transform:scaleY(1)}}
@keyframes n9-ping{from{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.35)}}
@keyframes n9-tp-marquee{0%,15%{transform:translateX(0)}100%{transform:translateX(-100%)}}
@keyframes pc-in{from{opacity:0;scale:.9;translate:0 18px}to{opacity:1;scale:1;translate:0 0}}

/* ---------- Кабинет CEO: заставка, лента, дропы, промокоды, отчёт (ceo-power.js) ---------- */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
[data-ceo-only][hidden]{display:none!important}
.ceo-note{margin:0;font-size:14px;color:var(--muted)}
.ceo-note.is-error,.checkout-note.is-error{color:#f5f5fa;font-weight:600}
.ceo-report-bar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin:0 0 18px}
.ceo-report-bar .admin-field{margin:0;min-width:200px}
.ceo-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;align-items:end;margin:0 0 12px}
.ceo-form .admin-field{margin:0}
.ceo-input-row{display:flex;gap:8px}
.ceo-input-row input{flex:1;min-width:0;text-transform:uppercase;letter-spacing:.06em}
.ceo-tiles-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ceo-tile.is-live b{color:var(--accent)}
.ceo-tag.is-wait{color:#f5f5fa;background:#32256a}
.ceo-code{letter-spacing:.06em}
.ceo-cell-sub{display:block;margin-top:2px;font-size:12px;color:var(--muted)}
.ceo-feed{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
.ceo-feed li{display:flex;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:12px;background:rgba(245,245,250,.04);box-shadow:inset 0 0 0 1px rgba(245,245,250,.08)}
.ceo-feed li>div{display:grid;gap:3px;min-width:0}
.ceo-feed li>div:last-child{text-align:right;flex:none}
.ceo-feed b{font-weight:600;overflow-wrap:anywhere}
.ceo-feed span,.ceo-feed time{font-size:13px;color:var(--muted)}
.ceo-feed strong{font-variant-numeric:tabular-nums}
@media (max-width:700px){.ceo-tiles-3{grid-template-columns:1fr 1fr}.ceo-report-bar .admin-field{min-width:0;flex:1}}

/* Заставка CEO: один раз за вход, одно появление по очереди, без вечных анимаций */
.ceo-welcome{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:24px;background:radial-gradient(70vmax 50vmax at 50% 30%,rgba(50,37,106,.55),transparent 70%),#08080d;color:var(--ink)}
.ceo-welcome[hidden]{display:none}
.ceo-welcome-inner{width:min(640px,100%);display:grid;gap:22px;text-align:left}
.ceo-welcome-greet{margin:0;font:600 clamp(28px,5vw,48px)/1.05 var(--font-display);letter-spacing:-.02em}
.ceo-welcome-money{margin:0;display:grid;gap:8px}
.ceo-welcome-money b{font:700 clamp(44px,9vw,96px)/1 var(--font-display);letter-spacing:-.03em;color:var(--accent);font-variant-numeric:tabular-nums}
.ceo-welcome-money span{font-size:16px;color:var(--muted)}
.ceo-welcome-lines{list-style:none;margin:0;padding:18px 20px;display:grid;gap:10px;border-radius:16px;background:rgba(50,37,106,.35);box-shadow:inset 0 0 0 1px rgba(119,112,204,.45);font-size:15px;line-height:1.45}
.ceo-welcome-lines:empty{display:none}
.ceo-welcome-lines li{padding-left:18px;position:relative}
.ceo-welcome-lines li::before{content:'';position:absolute;left:0;top:.6em;width:6px;height:6px;border-radius:50%;background:#7770cc}
.ceo-welcome .ui-btn{justify-self:start}
.ceo-welcome.is-in .ceo-welcome-inner>*{animation:n9-rise .7s var(--ease) both}
.ceo-welcome.is-in .ceo-welcome-inner>:nth-child(2){animation-delay:.12s}
.ceo-welcome.is-in .ceo-welcome-inner>:nth-child(3){animation-delay:.24s}
.ceo-welcome.is-in .ceo-welcome-inner>:nth-child(4){animation-delay:.36s}
@media (prefers-reduced-motion:reduce){.ceo-welcome.is-in .ceo-welcome-inner>*{animation:none}}

/* Дроп по таймеру (drops.js): отсчёт на главной, отметки на карточках, кнопка «Откроется…» */
.drop-countdown{padding:clamp(28px,5vw,56px) clamp(16px,5vw,72px)}
.drop-countdown[hidden]{display:none}
.drop-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.2fr) auto auto;gap:clamp(18px,3vw,40px);align-items:center;padding:clamp(20px,3vw,32px);border-radius:24px;background:linear-gradient(135deg,rgba(119,112,204,.18),rgba(50,37,106,.3));box-shadow:inset 0 0 0 1px rgba(185,182,250,.28)}
.drop-copy h2{margin:0 0 8px;font:600 clamp(22px,3vw,34px)/1.1 var(--font-display);letter-spacing:-.02em}
.drop-copy p{margin:0;color:var(--muted);font-size:15px;line-height:1.5}
.drop-clock{display:flex;gap:10px}
.drop-clock span{display:grid;justify-items:center;gap:4px;min-width:64px;padding:12px 8px;border-radius:14px;background:rgba(8,8,13,.55);box-shadow:inset 0 0 0 1px rgba(245,245,250,.1)}
.drop-clock b{font:700 clamp(26px,3.4vw,40px)/1 var(--font-display);font-variant-numeric:tabular-nums;color:var(--ink)}
.drop-clock small{font-size:12px;color:var(--muted)}
@media (max-width:860px){.drop-inner{grid-template-columns:1fr}.drop-clock span{min-width:0;flex:1}.drop-inner .ui-btn{justify-self:start}}
.pc-card.is-drop .garment-badge{background:#32256a!important;color:#f5f5fa!important}
.product-buy.is-drop,.product-buy:disabled{opacity:.75;cursor:not-allowed}

/* Промокод при оформлении */
.promo-row{display:flex;gap:10px}
.promo-row input{flex:1;min-width:0;text-transform:uppercase;letter-spacing:.06em}

/* Отчёт за месяц: на экране скрыт, печатается только он (окно печати → «Сохранить как PDF») */
.ceo-report[hidden]{display:none}
@media print{
  @page{size:A4;margin:14mm}
  html,body.is-printing-report{background:#fff!important;color:#08080d!important}
  body.is-printing-report::before,body.is-printing-report::after{display:none!important}
  body.is-printing-report>*:not(#ceo-report){display:none!important}
  body.is-printing-report #ceo-report{display:block!important;position:static;color:#08080d;font:400 11pt/1.45 var(--font-text)}
  #ceo-report *{color:inherit;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .rp-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;padding-bottom:10px;margin-bottom:16px;border-bottom:2px solid #32256a}
  .rp-brand{font:700 20pt/1 var(--font-display);letter-spacing:-.02em;color:#32256a!important}
  .rp-head h1{margin:0;font:600 16pt/1.1 var(--font-display);text-align:right}
  .rp-head p{margin:4px 0 0;font-size:9pt;color:#32256a!important;text-align:right}
  .rp-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}
  .rp-kpi{display:grid;gap:2px;padding:10px 12px;border:1px solid #b9b6fa;border-radius:8px;break-inside:avoid}
  .rp-kpi span{font-size:9pt;color:#32256a!important}
  .rp-kpi b{font:700 15pt/1.15 var(--font-display)}
  .rp-kpi small{font-size:8.5pt;color:#32256a!important}
  .rp-block{margin:0 0 14px;break-inside:avoid}
  .rp-block h2{margin:0 0 6px;font:600 11.5pt/1.2 var(--font-display);color:#32256a!important}
  .rp-block ul{margin:0;padding-left:16px}
  .rp-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
  .rp-chart{display:block;width:100%;height:42mm}
  .rp-chart rect{fill:#a6a0ef}.rp-chart rect.is-best{fill:#32256a}
  .rp-axis{display:flex;justify-content:space-between;font-size:8pt;color:#32256a!important}
  .rp-note{margin:6px 0 0;font-size:9.5pt}
  #ceo-report table{width:100%;border-collapse:collapse;font-size:9.5pt}
  #ceo-report th{text-align:left;font-weight:600;color:#32256a!important;border-bottom:1px solid #b9b6fa;padding:4px 6px}
  #ceo-report td{padding:4px 6px;border-bottom:1px solid #f5f5fa}
  .rp-foot{margin-top:18px;padding-top:8px;border-top:1px solid #b9b6fa;font-size:8.5pt;color:#32256a!important}
}
#promo-form .admin-field:first-child{grid-column:1/-1;max-width:460px}
.pc-card.is-drop .garment-badge{white-space:nowrap}
