/* Shared visual language: frontend/src/index.css and BorderGlow.tsx. */
@font-face{font-family:'Inter Variable';font-style:normal;font-weight:100 900;font-display:swap;src:url('/fonts/inter-cyrillic-wght-normal.woff2') format('woff2');unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:'Inter Variable';font-style:normal;font-weight:100 900;font-display:swap;src:url('/fonts/inter-latin-wght-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{
  color-scheme:dark;
  --bg:#07070e;--card:#100f17;--card2:#15131f;--surface:#181620;
  --border:#2a2733;--border-strong:#3c3650;--text:#f3f1f7;--text2:#aaa5b4;--text3:#817b8d;
  --accent:#9c71f5;--accent2:#7c3aed;--accent-soft:#8b5cf61a;--accent-border:#8b5cf65c;
  --topbar:#090810e8;--sidebar:#0c0b13ee;--panel-shadow:0 18px 50px -36px #000;
  --brand-blue:#4f7fff;--brand-cyan:#22d3ee;
}
@media(prefers-color-scheme:light){
  :root{
    color-scheme:light;
    --bg:#f7f5fb;--card:#ffffff;--card2:#f3f0f8;--surface:#f7f5fa;
    --border:#ddd7e8;--border-strong:#c8bddb;--text:#211d29;--text2:#625b70;--text3:#81798f;
    --accent:#6d28d9;--accent2:#6d28d9;--accent-soft:#7c3aed12;--accent-border:#7c3aed55;
    --topbar:#faf9fce8;--sidebar:#eeeaf5f2;--panel-shadow:0 18px 48px -34px #63537955;
    --brand-cyan:#087a8c;
  }
}
html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{
  font-family:'Inter Variable',Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;
  font-feature-settings:'liga' 1,'calt' 1,'cv05' 1,'cv08' 1,'cv11' 1;letter-spacing:.011em;
  background-image:radial-gradient(60rem 60rem at 80% -10%,#8b5cf61a,transparent 60%),radial-gradient(50rem 50rem at 0% 10%,#4f7fff14,transparent 55%);
  background-attachment:fixed;padding-bottom:calc(112px + env(safe-area-inset-bottom));
}
button,input,select,textarea{font-family:inherit}
select{color-scheme:inherit}option{background:var(--card2);color:var(--text)}
.topbar{height:64px;padding:8px 20px;gap:12px;background:var(--topbar);backdrop-filter:blur(18px);border-color:var(--border)}
.topbar h1{font-size:17px;letter-spacing:-.025em;line-height:1.25}
.viewer-brand-link{display:flex;flex:0 0 auto;align-items:center;justify-content:center;border-radius:9px}
.viewer-brand-link picture{display:block;line-height:0}.viewer-brand-link img{display:block;width:184px;height:auto}
.viewer-brand-link:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.me{font-size:12px}.me.linked .dot{box-shadow:0 0 12px #22c55e50}
.logout{min-height:36px;border-radius:10px;background:var(--surface)}
.wrap{max-width:1120px;padding:24px;margin:0 auto}
:is(.card,.guide-hero,.guide-section,.avatar-panel,.login-card,.connection-card){
  border:1.5px solid var(--border);background:var(--card);border-radius:16px;box-shadow:0 2px 10px -4px color-mix(in srgb,var(--text) 25%,transparent);
  transition:border-color .18s,box-shadow .18s;
}
@media(hover:hover){:is(.card,.guide-section,.avatar-panel,.login-card,.connection-card):hover{border-color:var(--accent-border);box-shadow:0 0 0 1px var(--accent-soft),0 8px 32px -18px color-mix(in srgb,var(--accent) 45%,transparent)}}
:is(.guide-section,.avatar-panel){padding:20px}
:is(.guide-section h2,.card h2){letter-spacing:-.025em}
.guide-section>p{color:var(--text2);font-size:14px;line-height:1.65;margin:10px 0}
.guide-hero{position:relative;overflow:hidden;min-height:260px;padding:32px;background:radial-gradient(ellipse at 90% 25%,#8b5cf620,transparent 65%),var(--card)}
.guide-hero:has(.viewer-robot)>:not(.viewer-robot){position:relative;z-index:1;max-width:65%}
.command-intro{min-height:0}
.guide-hero h2{font-size:32px;line-height:1.1;letter-spacing:-.04em}
.guide-hero .guide-kicker{color:var(--brand-cyan);font-size:10px;line-height:1.6;letter-spacing:.12em}
.viewer-robot{position:absolute;right:0;top:0;width:35%;height:100%;object-fit:cover;object-position:50% 30%;mask-image:linear-gradient(to right,transparent,black 20%);pointer-events:none}
.guide-facts{gap:14px}.guide-facts article,.command-card{background:color-mix(in srgb,var(--surface) 55%,transparent);border-color:var(--border);padding:16px}
.guide-actions button{background:var(--surface);border-color:var(--border);padding:16px;transition:border-color .18s,background .18s}
.guide-actions button:hover{background:var(--accent-soft);border-color:var(--accent-border)}
.login-shell{min-height:calc(100svh - 114px)}
.login-card{padding:28px;max-width:460px;margin:auto}
.login-mark{width:170px;height:170px;margin:0 auto 14px;background:transparent}
.login-mark img{width:100%;height:100%;object-fit:cover;object-position:50% 22%;border-radius:18px;mask-image:radial-gradient(ellipse at center,black 50%,transparent 75%)}
.login-card h2{font-size:25px;letter-spacing:-.03em}
.login-card p{font-size:14px;line-height:1.65}
:is(.btn-primary,.login-button,.avatar-save){background:linear-gradient(180deg,#ad82fb,#7c3aed);color:#fff;border:1px solid #a78bfa55;box-shadow:0 8px 28px -16px #8b5cf6b3;min-height:44px}
:is(.btn-primary,.login-button,.avatar-save):hover{filter:brightness(1.08)}
:is(.btn-ghost,.btn,.avatar-option){border-radius:12px}
.avatar-option{background:var(--surface)}.avatar-option[aria-pressed="true"]{box-shadow:inset 0 0 0 1px var(--accent-border)}
.avatar-preview-column{background:var(--bg)}
.avatar-workspace{--avatar-sticky-top:76px}
.store-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px}
.store-item{padding:18px;cursor:default}.store-item .note{text-align:left;font-size:12px;line-height:1.55}
.nav-heading{display:none}
.app-nav{background:var(--topbar);padding:8px 12px calc(8px + env(safe-area-inset-bottom))}
.nav-actions{max-width:760px;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}
.nav-button{min-height:38px;padding:6px 4px;font-size:11px;line-height:1.3;overflow-wrap:normal}
.nav-button[aria-current="page"]{background:var(--accent-soft);border-color:var(--accent-border);box-shadow:inset 0 0 0 1px var(--accent-soft)}
.toast{bottom:calc(108px + env(safe-area-inset-bottom));border:1px solid var(--border-strong);background:var(--card);box-shadow:0 8px 28px color-mix(in srgb,var(--text) 35%,transparent)}

.wrap.channels-wrap{max-width:1480px}
.channels-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:20px}
.channels-eyebrow{margin:0 0 5px;color:var(--brand-cyan);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.channels-page-head h2{margin:0;font-size:clamp(30px,2.5vw,42px);line-height:1.08;letter-spacing:-.045em}
.channels-lead{max-width:690px;margin:10px 0 0;color:var(--text2);font-size:15px;line-height:1.5}
.btn.channels-activity{width:max-content;max-width:100%;min-height:44px;margin:0;padding:9px 15px;border:1px solid var(--border-strong);background:var(--surface);font-size:14px}
.channels-context{display:flex;min-height:48px;align-items:center;gap:8px;margin:0 0 18px;padding:10px 14px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--card) 86%,transparent);color:var(--text2);font-size:13px;line-height:1.5}
.channels-context>span{display:grid;width:28px;height:28px;flex:0 0 auto;place-items:center;margin-right:4px;border-radius:50%;background:var(--accent-soft);color:var(--accent);font-weight:850}
.channels-context b{color:var(--text)}
.channels-update-status{min-height:0;margin:0;color:var(--text2);font-size:13px;font-weight:650;text-align:center}
.channels-update-status:not(:empty){margin:-4px 0 14px;padding:8px 12px;border:1px solid color-mix(in srgb,var(--green) 38%,var(--border));border-radius:12px;background:color-mix(in srgb,var(--green) 7%,var(--card));color:var(--text)}
.channels-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.channel-card{min-width:0;margin:0;padding:18px;border-radius:18px;cursor:default;background:linear-gradient(145deg,color-mix(in srgb,var(--card) 96%,var(--accent) 4%),var(--card));box-shadow:var(--panel-shadow)}
.channel-card:active{background:linear-gradient(145deg,color-mix(in srgb,var(--card) 96%,var(--accent) 4%),var(--card))}
.channel-head{display:flex;min-width:0;align-items:center;gap:13px;margin-bottom:14px}
.channel-head [data-avatar]{border:1px solid var(--accent-border);border-radius:14px!important;background:linear-gradient(145deg,var(--accent-soft),var(--surface))!important;color:var(--accent);font-weight:850}
.channel-name{min-width:0}.channel-name h3{margin:0;overflow-wrap:anywhere;font-size:21px;line-height:1.2;letter-spacing:-.025em}.channel-name p{margin:4px 0 0;overflow-wrap:anywhere;color:var(--text2);font-size:12px}
.channel-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.channel-metric{display:flex;min-width:0;min-height:80px;flex-direction:column;justify-content:space-between;padding:11px;border:1px solid var(--border);border-radius:13px;background:var(--surface)}
.channel-metric-primary{grid-column:span 1;min-height:80px;border-color:var(--accent-border);background:linear-gradient(145deg,var(--accent-soft),var(--surface))}
.channel-metric-label{color:var(--text2);font-size:12px;font-weight:650}
.channel-metric-value{display:block;margin-top:7px;overflow-wrap:anywhere;font-size:clamp(18px,1.5vw,23px);line-height:1.08;letter-spacing:-.03em}
.channel-metric-primary .channel-metric-value{font-size:clamp(20px,1.7vw,25px)}
.channel-metric-unit{margin-top:4px;color:var(--text3);font-size:11px}.channel-metric-primary .channel-metric-unit{color:var(--text2)}
.channel-streak-help{margin:12px 0 0;border-top:1px solid var(--border)}
.channel-streak-help summary{display:flex;min-height:44px;align-items:center;gap:8px;list-style:none;color:var(--text2);font-size:12px;font-weight:650;cursor:pointer}
.channel-streak-help summary::-webkit-details-marker{display:none}.channel-streak-help summary::before{content:'i';display:grid;width:22px;height:22px;flex:0 0 auto;place-items:center;border:1px solid var(--border-strong);border-radius:50%;color:var(--accent);font-size:11px;font-weight:850}
.channel-streak-help p{margin:0 0 13px 30px;color:var(--text2);font-size:12px;line-height:1.55}
.channel-empty-progress{margin:0 0 13px;color:var(--text2);font-size:12px;line-height:1.55}
.channel-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-top:14px;border-top:1px solid var(--border)}
.channel-actions .btn{min-width:0;min-height:44px;margin:0;padding:9px 8px;border:1px solid var(--border-strong);background:var(--surface);font-size:13px}
.channels-grid-single{grid-template-columns:1fr}
.channels-grid-single .channel-card{display:grid;grid-template-columns:minmax(220px,.34fr) minmax(0,1fr);column-gap:24px}
.channels-grid-single .channel-head{grid-row:1/4;align-self:start}.channels-grid-single .channel-metrics{grid-column:2;grid-template-columns:repeat(6,minmax(0,1fr))}.channels-grid-single .channel-metric-primary{grid-column:span 1}.channels-grid-single :is(.channel-streak-help,.channel-empty-progress,.channel-actions){grid-column:2}
.channels-state{display:grid;min-height:390px;place-items:center;padding:36px;border:1px solid var(--border);border-radius:18px;background:var(--card);text-align:center}
.channels-state>div{max-width:510px}.channels-state img{width:150px;height:150px;object-fit:cover;object-position:50% 22%;border-radius:28px;mask-image:radial-gradient(ellipse at center,#000 52%,transparent 76%)}
.channels-state h3{margin:14px 0 8px;font-size:25px;letter-spacing:-.03em}.channels-state p{margin:0 auto 18px;color:var(--text2);line-height:1.55}
.channels-state-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.channels-state-actions .btn{width:auto;min-height:44px;margin:0;padding:10px 16px;border:1px solid var(--border-strong)}
.channels-loader{display:grid;gap:18px}.channels-loader>p{margin:0;color:var(--text2);text-align:center}.channel-skeleton{height:360px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(100deg,var(--card) 20%,var(--card2) 38%,var(--card) 56%);background-size:280% 100%;animation:channels-shimmer 1.5s linear infinite}
@keyframes channels-shimmer{to{background-position:-280% 0}}
:is(.channel-streak-help summary,.channel-actions .btn,.channels-state-actions .btn,.channels-activity):focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(min-width:1100px){
  body{padding-left:224px;padding-bottom:24px}
  .topbar{position:sticky;padding-inline:28px}
  .app-nav{inset:0 auto 0 0;width:224px;height:100svh;padding:22px 14px;background:var(--sidebar);border-top:0;border-right:1px solid var(--border);overflow-y:auto}
  .nav-heading{display:flex;flex-direction:column;align-items:center;gap:14px;padding:0 8px 22px;margin-bottom:12px;border-bottom:1px solid var(--border);font-size:11px;color:var(--text2);text-transform:uppercase;letter-spacing:.1em}
  .nav-heading picture{display:block;width:184px;line-height:0}.nav-heading img{display:block;width:100%;height:auto}
  .nav-actions{display:flex;flex-direction:column;gap:5px}
  .nav-button{text-align:left;padding:12px 14px;min-height:44px;font-size:13px;font-weight:600}
  .toast{bottom:24px;left:calc(50% + 112px)}
  body:not(.viewer-login) .topbar .viewer-brand-link{display:none}
  body.viewer-login{padding-left:0}.viewer-login .wrap{max-width:520px}
  .avatar-settings-column :is(button,select,summary,input){scroll-margin-bottom:24px}
}
@media(max-width:1440px){
  .channel-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.channel-metric-primary{grid-column:span 1}
  .channels-grid-single .channel-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1099px){
  .channels-grid-single .channel-card{display:block}.channels-grid-single .channel-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .channels-grid-single :is(.channel-streak-help,.channel-empty-progress,.channel-actions){grid-column:auto}
}
@media(max-width:767px){.channels-grid{grid-template-columns:1fr}.channels-page-head{align-items:flex-start}.channels-lead{max-width:520px}.channel-card{padding:18px}}
@media(max-width:600px){
  .topbar{padding-inline:12px;gap:8px}.viewer-brand-link img{width:96px}
  .topbar h1{font-size:15px}.me{max-width:90px;font-size:10px}.logout{padding-inline:7px;font-size:11px}
  .wrap{padding:16px 12px}.guide-hero{padding:22px 18px;min-height:260px}
  .guide-hero h2{font-size:25px}.guide-hero:has(.viewer-robot)>:not(.viewer-robot){max-width:72%}.viewer-robot{width:38%;opacity:.82}
  .guide-hero>p:not(.guide-kicker):not(.guide-account-status){font-size:13px;line-height:1.65}
  :is(.guide-section,.avatar-panel){padding:14px}.avatar-preview-column>.avatar-panel{padding:8px}
  .nav-button{font-size:10px;overflow-wrap:anywhere}.nav-actions{grid-template-columns:repeat(5,minmax(0,1fr))}
  .login-card{padding:24px 18px}.login-mark{width:145px;height:145px}.login-card h2{font-size:23px}
  .channels-page-head{display:grid;gap:16px;margin-bottom:18px}.channels-page-head h2{font-size:31px}.channels-lead{font-size:14px}.channels-context{align-items:flex-start;margin-bottom:14px;padding:11px 12px}
  .channel-card{padding:15px;border-radius:16px}.channel-head{align-items:flex-start;margin-bottom:14px}.channel-name h3{font-size:19px}.channel-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .channel-metric,.channel-metric-primary{min-height:76px;padding:10px}.channel-metric-primary .channel-metric-value,.channel-metric-value{font-size:19px}
  .channel-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.channel-actions .btn{padding-inline:5px;font-size:11px}.channel-actions .btn:last-child{grid-column:auto}
  .channels-state{min-height:420px;padding:26px 18px}.channel-skeleton{height:470px}
}
@media(max-width:370px){body{padding-bottom:calc(112px + env(safe-area-inset-bottom))}.topbar h1{font-size:13px}.viewer-brand-link img{width:36px}.me{max-width:70px}.nav-button{font-size:9px}}
@media(max-width:600px){.nav-button[data-short-label]{font-size:0}.nav-button[data-short-label]::after{content:attr(data-short-label);font-size:10px}}
@media(max-height:550px){.login-mark{width:100px;height:100px}.login-shell{min-height:0}.guide-hero{min-height:220px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.channel-skeleton{animation:none;background:var(--card2)}*,*::before,*::after{transition:none!important}}

/* Витрина и встроенная примерка используют общие токены кабинета. */
.wrap:has(.store-page){max-width:1540px;overflow:hidden}.store-page{min-width:0}.store-heading{margin:0 0 18px}.store-heading>p{margin:0 0 5px;color:var(--brand-cyan);font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.store-heading h2{margin:0;font-size:clamp(27px,3vw,40px);line-height:1.08;letter-spacing:-.035em}.store-heading>span{display:block;max-width:720px;margin-top:8px;color:var(--text2);font-size:14px;line-height:1.5}.store-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,350px);gap:22px;align-items:start}.store-catalog{min-width:0}.store-bundle{display:flex;width:100%;min-height:72px;align-items:center;justify-content:space-between;gap:16px;margin:0 0 12px;padding:12px 16px;border:1px solid var(--accent-border);border-radius:16px;background:radial-gradient(circle at 5% 10%,var(--accent-soft),transparent 42%),var(--card);color:var(--text);font:inherit;text-align:left;cursor:pointer}.store-bundle span{display:grid;min-width:0}.store-bundle small{color:var(--brand-cyan);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.store-bundle b{margin:2px 0;font-size:18px}.store-bundle em{overflow:hidden;color:var(--text2);font-size:12px;font-style:normal;text-overflow:ellipsis;white-space:nowrap}.store-bundle strong{flex:0 0 auto;min-height:44px;padding:13px 15px;border-radius:12px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;font-size:13px}.store-filters{min-width:0;padding:2px 0 10px}.store-filter-row{display:flex;min-width:0;gap:8px;margin-top:8px;overflow-x:auto;overscroll-behavior-inline:contain;padding:3px;scrollbar-width:none}.store-filter-row::-webkit-scrollbar{display:none}.store-chip{min-height:44px;flex:0 0 auto;padding:0 13px;border:1px solid var(--border);border-radius:13px;background:var(--card);color:var(--text2);font:750 13px/1 inherit;cursor:pointer}.store-chip span{margin-left:5px;color:var(--text3);font-size:11px}.store-chip[aria-pressed="true"]{border-color:var(--accent);background:var(--accent-soft);color:var(--text)}.store-results{margin:0 3px 10px;color:var(--text2);font-size:13px}.store-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.store-product{position:relative;min-width:0;overflow:hidden;margin:0;border:1px solid var(--border);border-radius:16px;background:var(--card);cursor:default;transition:border-color .18s,box-shadow .18s,transform .18s}.store-product:hover,.store-product:focus-within,.store-product.is-selected{border-color:var(--accent-border);box-shadow:0 12px 30px -22px color-mix(in srgb,var(--accent) 65%,transparent)}@media(hover:hover){.store-product:hover{transform:translateY(-2px)}}.store-product.is-selected::after{content:'Выбрано';position:absolute;z-index:4;right:9px;top:9px;padding:4px 7px;border-radius:8px;background:var(--accent);color:#fff;font-size:9px;font-weight:850;letter-spacing:.04em}.store-media-button{display:block;width:100%;padding:0;border:0;background:none;color:inherit;cursor:pointer}.store-product-media{position:relative;display:block;aspect-ratio:1;overflow:hidden;background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--accent) 28%,var(--card)),var(--surface) 68%)}.store-product-media>img{position:absolute;z-index:2;inset:0;display:block;width:100%;height:100%;object-fit:contain}.store-product-media .store-product-motion{z-index:3}.store-media-fallback{position:absolute;z-index:1;inset:0;display:grid;place-content:center;gap:5px;padding:14px;color:var(--text2);font-size:12px;font-weight:750;text-align:center}.store-media-fallback b{color:var(--accent);font-size:34px;line-height:1}.store-media-fallback small{color:var(--text3);font-size:10px;font-weight:600}.store-product-media.media-ready .store-media-fallback{display:none}.store-product-media.has-motion::after{content:'Наведите — движение';position:absolute;z-index:4;left:8px;right:8px;bottom:8px;padding:5px;border-radius:8px;background:#090711c9;color:#fff;font-size:9px;text-align:center;opacity:0;transition:opacity .15s}.store-product:hover .has-motion::after,.store-product-media.motion-playing::after{opacity:1}.store-product-body{padding:11px}.store-product-top{display:flex;min-height:19px;align-items:center;justify-content:space-between;gap:6px}.store-product-top span{color:var(--brand-cyan);font-size:9px;font-weight:850;letter-spacing:.07em;text-transform:uppercase}.store-product-top b{padding:3px 6px;border-radius:99px;background:var(--surface);color:var(--text2);font-size:9px}.store-product h2{min-height:44px;margin:6px 0 4px;overflow-wrap:anywhere;font-size:16px;line-height:1.25}.store-product-price{min-height:37px;margin:0 0 8px;font-size:12px;font-weight:800;line-height:1.35}.store-product-price small{display:block;color:var(--text2);font-size:10px;font-weight:650}.store-product-command{min-height:28px;margin:-3px 0 7px;color:var(--text2);font-size:10px}.store-product-actions{display:grid;gap:6px}.store-product-actions .btn{min-height:44px;margin:0;padding:8px;font-size:11px}.store-empty,.store-state{min-height:300px;padding:34px;border:1px solid var(--border);border-radius:18px;background:var(--card);text-align:center}.store-empty h3,.store-state h2{margin:0 0 8px}.store-empty p,.store-state p{max-width:520px;margin:0 auto 18px;color:var(--text2);line-height:1.55}.store-empty .btn,.store-state .btn{width:auto;min-width:180px;margin-inline:auto}.store-loading{padding:18px 0;color:var(--text2);text-align:center}.store-skeletons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px}.store-skeletons i{height:330px;border-radius:16px;background:linear-gradient(100deg,var(--card) 20%,var(--card2) 38%,var(--card) 56%);background-size:250% 100%;animation:channels-shimmer 1.4s linear infinite}.store-preview{position:sticky;top:80px;overflow:hidden;border:1px solid var(--border);border-radius:20px;background:var(--card);box-shadow:var(--panel-shadow)}.store-preview-stage{position:relative;aspect-ratio:1/1.03;overflow:hidden;background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--accent) 32%,var(--card)),var(--bg) 75%)}.store-preview-stage>span{position:absolute;z-index:5;left:12px;top:12px;padding:6px 9px;border-radius:9px;background:#090711c9;color:#fff;font-size:10px;font-weight:800}.store-preview-live{position:absolute;inset:0;min-height:0;border-radius:0;background:transparent}.store-preview-live::after{bottom:23px}.store-preview-copy{padding:16px}.store-preview-copy small{color:var(--brand-cyan);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.store-preview-copy h3{margin:4px 0 7px;font-size:23px;overflow-wrap:anywhere}.store-preview-copy p{margin:0;color:var(--text2);font-size:12px;line-height:1.5}.store-preview-close,.store-preview-backdrop{display:none}.store-clear-name{max-width:300px}.store-chip:focus-visible,.store-bundle:focus-visible,.store-media-button:focus-visible,.store-preview-close:focus-visible{outline:3px solid var(--accent);outline-offset:3px}

.store-context{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.35fr);gap:12px;margin-bottom:14px;padding:14px;border:1px solid var(--border);border-radius:16px;background:var(--card)}.store-channel{display:grid;gap:7px;color:var(--text2);font-size:11px;font-weight:750}.store-channel select,.store-search input{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--border-strong);border-radius:11px;background:var(--surface);color:var(--text);font:inherit}.store-balance{display:flex;min-width:0;flex-direction:column;justify-content:center;padding:8px 13px;border-left:1px solid var(--border)}.store-balance span{overflow:hidden;color:var(--text2);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.store-balance strong{margin-top:4px;font-size:20px}.store-search{display:grid;gap:6px;color:var(--text2);font-size:11px;font-weight:750}.store-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.store-product{display:flex;flex-direction:column}.store-product-body{display:flex;flex:1;flex-direction:column}.store-product h2{display:-webkit-box;height:44px;min-height:44px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.store-product-actions{margin-top:auto}.store-more{width:min(100%,320px);min-height:44px;margin:16px auto 0}.store-more[hidden]{display:none}.store-channel select:focus-visible,.store-search input:focus-visible,.store-more:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.store-preview-name{position:absolute;inset:18%;display:grid;width:auto;max-width:none;place-items:center;background:radial-gradient(circle at 50% 35%,color-mix(in srgb,var(--accent) 30%,var(--card)),var(--bg));text-align:center}.store-preview-name span{max-width:100%;overflow-wrap:anywhere}
.store-fitting{display:grid;gap:10px;padding:0 16px 16px;border-top:1px solid var(--border)}.store-fitting-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px}.store-fitting-head h4{margin:0;font-size:14px}.store-fitting-head strong{color:var(--accent);font-size:12px}.store-fitting-list{display:grid;gap:7px;max-height:220px;overflow:auto}.store-fitting-empty{margin:0;padding:12px;border:1px dashed var(--border);border-radius:11px;color:var(--text2);font-size:11px;line-height:1.45}.store-fitting-item{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:8px;padding:9px;border:1px solid var(--border);border-radius:11px;background:var(--surface)}.store-fitting-item>div:first-child{display:grid;min-width:0;gap:2px}.store-fitting-item b{overflow:hidden;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.store-fitting-item span{color:var(--text2);font-size:10px}.store-fitting-item>div:last-child{display:flex;flex:0 0 auto;gap:4px}.store-fitting-item button{min-width:44px;min-height:36px;padding:6px 8px;border:1px solid var(--border-strong);border-radius:9px;background:var(--card2);color:var(--text);font:700 10px/1 inherit;cursor:pointer}.store-fitting-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.store-fitting :is(.btn){min-height:42px;margin:0;padding:8px;font-size:11px}.store-fitting-status{min-height:32px;margin:0;color:var(--text2);font-size:10px;line-height:1.45}.store-fitting-appearance{border-top:1px solid var(--border)}.store-fitting-appearance summary{min-height:44px;padding:13px 0;font-size:11px;font-weight:750;cursor:pointer}.store-fitting-appearance #store-fitting-controls{display:grid;gap:8px}.store-fitting-appearance .avatar-panel{padding:9px;border-radius:11px;background:var(--surface)}.store-fitting-appearance .avatar-section-title{font-size:12px}.store-fitting-appearance .avatar-section-note{font-size:10px}.store-fitting-appearance .avatar-option{min-height:38px;font-size:10px}.store-fitting :is(button,summary):focus-visible{outline:3px solid var(--accent);outline-offset:2px}
@media(max-width:1099px){.wrap:has(.store-page){max-width:100%;padding:10px 10px 112px}.store-heading{margin-bottom:7px}.store-heading h2{font-size:24px}.store-heading>span{display:none}.store-layout{display:block}.store-bundle{min-height:58px;margin-bottom:2px;padding:7px 9px;border-radius:14px}.store-bundle em{display:none}.store-bundle b{font-size:14px}.store-bundle small{font-size:8px}.store-bundle strong{padding:13px 10px;font-size:10px}.store-filters{padding-bottom:4px}.store-filter-row{margin-top:2px}.store-results{margin-bottom:7px}.store-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.store-product{border-radius:14px}.store-product-body{padding:9px}.store-product h2{min-height:36px;font-size:14px}.store-product-price{min-height:43px;font-size:11px}.store-product-actions .btn{font-size:10px}.store-product-media.has-motion::after{content:'Нажмите — движение'}.store-preview{position:fixed;z-index:55;left:8px;right:8px;bottom:0;top:auto;max-height:calc(100svh - 58px);overflow:auto;border-radius:24px 24px 0 0;visibility:hidden;transform:translateY(calc(100% + 24px));transition:transform .2s,visibility 0s linear .2s}.store-preview.is-open{visibility:visible;transform:none;transition-delay:0s}.store-preview-stage{aspect-ratio:1.25/1}.store-preview-close{position:absolute;z-index:60;right:10px;top:10px;display:grid;width:44px;height:44px;place-items:center;border:1px solid #ffffff45;border-radius:12px;background:#090711d9;color:#fff;font-size:22px;cursor:pointer}.store-preview-backdrop{position:fixed;z-index:54;inset:0;display:block;border:0;background:#05030ab8;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s,visibility 0s linear .2s}.store-preview-backdrop.is-open{opacity:1;visibility:visible;pointer-events:auto;transition-delay:0s}body.store-preview-open{overflow:hidden}.store-skeletons{grid-template-columns:repeat(2,minmax(0,1fr))}.store-skeletons i{height:270px}}
@media(max-width:420px){.store-product-top{align-items:flex-start}.store-product-top b{max-width:66px;text-align:center}.store-product h2{font-size:13px}.store-product-actions .btn{padding-inline:5px}.store-preview-copy h3{font-size:20px}.store-fitting{padding-inline:12px}.store-fitting-item{align-items:flex-start;flex-direction:column}.store-fitting-item>div:last-child{width:100%}.store-fitting-item button{flex:1}.store-fitting-actions{grid-template-columns:1fr}}
@media(max-width:600px){.store-context{grid-template-columns:1fr;gap:8px;margin-bottom:8px;padding:10px}.store-balance{min-height:54px;padding:8px 4px;border-top:1px solid var(--border);border-left:0}.store-balance strong{font-size:18px}.store-search span{font-size:10px}}
@media(prefers-reduced-motion:reduce){.store-skeletons i{animation:none;background:var(--card2)}.store-product-media.has-motion::after{content:'Движение по нажатию'}}

/* Главная зрителя использует те же значения BorderGlow, что основной React-сайт. */
html,body{overflow-x:clip}
.for-streamers-link{display:inline-flex;min-height:36px;flex:0 0 auto;align-items:center;justify-content:center;padding:7px 12px;border:1px solid var(--accent-border);border-radius:10px;background:var(--accent-soft);color:var(--text);font-size:12px;font-weight:750;white-space:nowrap}.for-streamers-link:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,var(--card))}.for-streamers-link:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.viewer-header-login{display:inline-flex;min-height:36px;flex:0 0 auto;align-items:center;justify-content:center;padding:8px 13px;border:1px solid #a78bfa55;border-radius:10px;background:linear-gradient(180deg,#ad82fb,#7c3aed);box-shadow:0 8px 28px -16px #8b5cf6b3;color:#fff;font-size:12px;font-weight:800;white-space:nowrap}.viewer-header-login:hover{filter:brightness(1.08)}.viewer-header-login-short{display:none}.viewer-public .for-streamers-link,.viewer-login .for-streamers-link{margin-left:auto}
body.viewer-public{padding-bottom:32px}body.viewer-public .wrap{max-width:1180px}
.viewer-home{display:grid;gap:72px;min-width:0;padding-bottom:18px}.viewer-home-status{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px;border:1px solid color-mix(in srgb,var(--amber) 45%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--amber) 8%,var(--card));font-size:13px;line-height:1.5}.viewer-home-status button{min-height:40px;flex:0 0 auto;padding:8px 13px;border:1px solid var(--border-strong);border-radius:10px;background:var(--surface);color:var(--text);font:700 12px/1 inherit;cursor:pointer}
.viewer-home-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.03fr) minmax(360px,.97fr);min-height:590px;overflow:hidden;border:1px solid var(--border);border-radius:24px;background:linear-gradient(to right,var(--bg) 0%,color-mix(in srgb,var(--bg) 92%,transparent) 37%,transparent 67%),radial-gradient(circle at 82% 42%,#8b5cf629,transparent 50%),var(--card);box-shadow:var(--panel-shadow)}.viewer-home-copy{position:relative;z-index:3;align-self:center;padding:clamp(34px,5vw,70px)}.viewer-eyebrow{margin:0 0 12px;color:var(--brand-cyan);font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.viewer-home h1{max-width:680px;margin:0;font-size:clamp(42px,5.6vw,72px);line-height:1.03;letter-spacing:-.055em;text-wrap:balance}.viewer-home-lead{max-width:650px;margin:24px 0 0;color:var(--text2);font-size:clamp(16px,1.6vw,19px);line-height:1.65}.viewer-home-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:32px}.viewer-primary-action,.viewer-secondary-action{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:12px 18px;border-radius:12px;font:750 14px/1.2 inherit;cursor:pointer}.viewer-primary-action{border:1px solid #a78bfa55;background:linear-gradient(180deg,#ad82fb,#7c3aed);box-shadow:0 8px 28px -16px #8b5cf6b3;color:#fff}.viewer-secondary-action{border:1px solid var(--border-strong);background:color-mix(in srgb,var(--card) 82%,transparent);color:var(--text)}.viewer-primary-action:hover,.viewer-secondary-action:hover{filter:brightness(1.08)}:is(.viewer-primary-action,.viewer-secondary-action,.viewer-home-status button):focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.viewer-robot-stage{position:relative;z-index:1;min-width:0;min-height:590px;overflow:hidden;isolation:isolate}.viewer-robot-poster,.viewer-robot-canvas{position:absolute;display:block}.viewer-robot-poster{z-index:1;inset:0;width:100%;height:100%;object-fit:contain;object-position:center bottom;mask-image:linear-gradient(to right,transparent 0,#000 20%);transition:opacity .7s ease}.viewer-robot-canvas{z-index:2;inset:0;width:100%!important;height:100%!important;background:transparent;opacity:0;pointer-events:none;transition:opacity .7s ease}.viewer-robot-stage.is-live .viewer-robot-canvas{opacity:1}.viewer-robot-stage.is-live .viewer-robot-poster{opacity:0}.viewer-robot-status{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.viewer-home-section>h2{max-width:780px;margin:0 0 28px;font-size:clamp(30px,4vw,48px);line-height:1.08;letter-spacing:-.045em;text-wrap:balance}.viewer-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.viewer-feature:last-child{grid-column:2}.viewer-feature .border-glow-inner{padding:25px}.viewer-feature h3{margin:0;font-size:19px;line-height:1.25;letter-spacing:-.025em}.viewer-feature p{margin:12px 0 0;color:var(--text2);font-size:14px;line-height:1.65}
.viewer-how{scroll-margin-top:86px}.viewer-how ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:0;padding:0;list-style:none}.viewer-how li{display:flex;min-width:0;gap:13px;padding:20px;border:1px solid var(--border);border-radius:16px;background:var(--card);color:var(--text2);font-size:14px;line-height:1.55}.viewer-how li>span{display:grid;width:32px;height:32px;flex:0 0 auto;place-items:center;border:1px solid var(--accent-border);border-radius:50%;background:var(--accent-soft);color:var(--accent);font-weight:850}.viewer-how li b{color:var(--text)}
.viewer-faq-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}.viewer-faq-group .border-glow-inner{padding:22px}.viewer-faq-group h3{margin:0 0 8px;font-size:20px;letter-spacing:-.025em}.viewer-faq-item{border-top:1px solid var(--border)}.viewer-faq-item:first-child{border-top:0}.viewer-faq-item summary{display:flex;min-height:54px;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;color:var(--text);font-size:14px;font-weight:720;line-height:1.4;list-style:none;cursor:pointer}.viewer-faq-item summary::-webkit-details-marker{display:none}.viewer-faq-plus{position:relative;width:20px;height:20px;flex:0 0 auto;border:1px solid var(--border-strong);border-radius:50%}.viewer-faq-plus::before,.viewer-faq-plus::after{content:'';position:absolute;left:5px;right:5px;top:9px;height:1.5px;background:var(--accent)}.viewer-faq-plus::after{transform:rotate(90deg);transition:transform .18s ease}.viewer-faq-item[open] .viewer-faq-plus::after{transform:rotate(0)}.viewer-faq-item p{margin:0;padding:0 34px 16px 0;color:var(--text2);font-size:13px;line-height:1.65}.viewer-faq-item code{padding:2px 5px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font:650 .92em ui-monospace,SFMono-Regular,Consolas,monospace}.viewer-faq-item summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px;border-radius:7px}
.viewer-streamer-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;border:1px solid var(--accent-border);border-radius:18px;background:radial-gradient(circle at 8% 20%,var(--accent-soft),transparent 46%),var(--card)}.viewer-streamer-row p{margin:0;color:var(--text2);font-size:14px;line-height:1.55}.viewer-streamer-row b{color:var(--text)}.viewer-streamer-row a{min-height:44px;flex:0 0 auto;padding:12px 16px;border:1px solid var(--accent-border);border-radius:12px;background:var(--accent-soft);color:var(--text);font-size:13px;font-weight:750}.viewer-streamer-row a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.viewer-dashboard .border-glow-inner{padding:24px}.viewer-dashboard-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.viewer-dashboard-heading h2{margin:0;font-size:clamp(27px,3vw,38px);letter-spacing:-.04em}.viewer-dashboard-heading p{margin:7px 0 0;color:var(--text2);font-size:14px}.viewer-dashboard-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:20px}.viewer-dashboard-actions button{min-height:76px;padding:13px;border:1px solid var(--border);border-radius:13px;background:var(--surface);color:var(--text);font:inherit;text-align:left;cursor:pointer}.viewer-dashboard-actions b,.viewer-dashboard-actions span{display:block}.viewer-dashboard-actions b{font-size:13px}.viewer-dashboard-actions span{margin-top:5px;color:var(--text2);font-size:11px;line-height:1.35}.viewer-dashboard-actions button:hover{border-color:var(--accent-border);background:var(--accent-soft)}.viewer-dashboard-actions button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.viewer-home-authenticated{gap:28px}.viewer-auth-greeting{margin:-6px 0 -14px;color:var(--text2);font-size:14px}.viewer-auth-hero{position:relative;display:grid;min-height:350px;grid-template-columns:minmax(0,1.12fr) minmax(300px,.88fr);overflow:visible;isolation:isolate;border:1px solid var(--border);border-radius:20px;box-shadow:var(--panel-shadow)}.viewer-auth-hero::before{content:'';position:absolute;z-index:-1;inset:0;overflow:hidden;border-radius:inherit;background:linear-gradient(to right,var(--card),color-mix(in srgb,var(--card) 88%,transparent) 58%,transparent),radial-gradient(circle at 80% 45%,var(--accent-soft),transparent 52%),var(--card)}.viewer-auth-next{position:relative;z-index:3;align-self:center;padding:clamp(26px,4vw,48px)}.viewer-auth-next h2{max-width:650px;margin:0;font-size:clamp(30px,3.8vw,48px);line-height:1.06;letter-spacing:-.045em;text-wrap:balance}.viewer-auth-next>p:not(.viewer-eyebrow){max-width:660px;margin:16px 0 0;color:var(--text2);font-size:15px;line-height:1.6}.viewer-auth-next .viewer-home-actions{margin-top:24px}.viewer-auth-hero .viewer-robot-stage{min-height:350px;overflow:visible}.viewer-auth-hero .viewer-robot-poster{mask-image:linear-gradient(to right,transparent 0,#000 18%)}
.viewer-home-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.viewer-home-stat{display:flex;min-width:0;min-height:122px;flex-direction:column;padding:17px;border:1px solid var(--border);border-radius:16px;background:var(--card)}.viewer-home-stat span{color:var(--text2);font-size:12px;font-weight:700}.viewer-home-stat strong{margin-top:auto;padding-top:12px;overflow-wrap:anywhere;font-size:clamp(24px,2.4vw,34px);line-height:1;letter-spacing:-.035em}.viewer-home-stat small{margin-top:7px;color:var(--text3);font-size:10px;line-height:1.35}.viewer-home-block{min-width:0}.viewer-home-block .section-head{margin-top:0}.viewer-home-block .section-head>button{display:inline-flex;min-height:44px;align-items:center;padding:0;border:0;background:none;color:var(--brand-cyan);font:800 13px/1.2 inherit;cursor:pointer}.viewer-home-channels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.viewer-home-channel{min-width:0;padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--card)}.viewer-home-channel header{display:flex;min-width:0;align-items:center;gap:11px}.viewer-home-channel header>span{display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border:1px solid var(--accent-border);border-radius:12px;background:var(--accent-soft);color:var(--accent);font-weight:850}.viewer-home-channel header div{min-width:0}.viewer-home-channel h3{margin:0;overflow:hidden;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.viewer-home-channel header p{margin:3px 0 0;overflow:hidden;color:var(--text3);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.viewer-home-channel dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:14px 0 0}.viewer-home-channel dl div{padding:10px;border-radius:11px;background:var(--surface)}.viewer-home-channel dt{color:var(--text2);font-size:10px}.viewer-home-channel dd{margin:5px 0 0;font-size:19px;font-weight:850}.viewer-home-important,.viewer-home-contest{display:flex;min-width:0;align-items:center;gap:16px;padding:17px;border:1px solid var(--border);border-radius:16px;background:var(--card)}.viewer-home-important>div,.viewer-home-contest>div{min-width:0;flex:1}.viewer-home-important strong,.viewer-home-contest h3{margin:0;font-size:16px}.viewer-home-important p,.viewer-home-contest p{margin:5px 0 0;color:var(--text2);font-size:12px;line-height:1.5}.viewer-home-contests{display:grid;gap:10px}.viewer-home-contest>span{display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border-radius:12px;background:var(--accent-soft);color:var(--accent);font-weight:900}.viewer-home-empty{padding:22px;border:1px dashed var(--border-strong);border-radius:16px;background:var(--surface);text-align:center}.viewer-home-empty p{margin:6px 0 0;color:var(--text2);font-size:13px}.viewer-home-footer{flex-wrap:wrap}.viewer-home-footer button{min-height:44px;padding:11px 15px;border:1px solid var(--border-strong);border-radius:12px;background:var(--surface);color:var(--text);font:800 13px/1.2 inherit;cursor:pointer}.viewer-help{display:grid;gap:56px;min-width:0;padding-bottom:18px}
.border-glow-card{--edge-proximity:0;--cursor-angle:45deg;--edge-sensitivity:30;--color-sensitivity:calc(var(--edge-sensitivity) + 20);--border-radius:16px;--glow-padding:50px;--cone-spread:12;--fill-opacity:.5;--card-bg:var(--card);--glow-color:hsl(265deg 90% 70%/100%);--glow-color-60:hsl(265deg 90% 70%/81%);--glow-color-50:hsl(265deg 90% 70%/67.5%);--glow-color-40:hsl(265deg 90% 70%/54%);--glow-color-30:hsl(265deg 90% 70%/40.5%);--glow-color-20:hsl(265deg 90% 70%/27%);--glow-color-10:hsl(265deg 90% 70%/13.5%);--gradient-one:radial-gradient(at 80% 55%,#c084fc 0,transparent 50%);--gradient-two:radial-gradient(at 69% 34%,#f472b6 0,transparent 50%);--gradient-three:radial-gradient(at 8% 6%,#38bdf8 0,transparent 50%);--gradient-four:radial-gradient(at 41% 38%,#c084fc 0,transparent 50%);--gradient-five:radial-gradient(at 86% 85%,#f472b6 0,transparent 50%);--gradient-six:radial-gradient(at 82% 18%,#38bdf8 0,transparent 50%);--gradient-seven:radial-gradient(at 51% 4%,#f472b6 0,transparent 50%);--gradient-base:linear-gradient(#c084fc 0 100%);position:relative;display:grid;overflow:visible;isolation:isolate;transform:translate3d(0,0,.01px);border:1.5px solid rgb(255 255 255/10%);border-radius:var(--border-radius);background:var(--card-bg);box-shadow:0 2px 10px -4px rgba(0,0,0,.4)}
.border-glow-card::before,.border-glow-card::after,.border-glow-card>.edge-light{content:'';position:absolute;z-index:-1;inset:0;border-radius:inherit;transition:opacity .25s ease-out}.border-glow-card:not(:hover):not(.sweep-active)::before,.border-glow-card:not(:hover):not(.sweep-active)::after,.border-glow-card:not(:hover):not(.sweep-active)>.edge-light{opacity:0;transition:opacity .75s ease-in-out}.border-glow-card::before{border:2px solid transparent;background:linear-gradient(var(--card-bg) 0 100%) padding-box,linear-gradient(rgb(255 255 255/0%) 0 100%) border-box,var(--gradient-one) border-box,var(--gradient-two) border-box,var(--gradient-three) border-box,var(--gradient-four) border-box,var(--gradient-five) border-box,var(--gradient-six) border-box,var(--gradient-seven) border-box,var(--gradient-base) border-box;opacity:calc((var(--edge-proximity) - var(--color-sensitivity))/(100 - var(--color-sensitivity)));mask-image:conic-gradient(from var(--cursor-angle) at center,#000 calc(var(--cone-spread)*1%),transparent calc((var(--cone-spread) + 15)*1%),transparent calc((100 - var(--cone-spread) - 15)*1%),#000 calc((100 - var(--cone-spread))*1%))}.border-glow-card::after{border:1px solid transparent;background:var(--gradient-one) padding-box,var(--gradient-two) padding-box,var(--gradient-three) padding-box,var(--gradient-four) padding-box,var(--gradient-five) padding-box,var(--gradient-six) padding-box,var(--gradient-seven) padding-box,var(--gradient-base) padding-box;mask-image:linear-gradient(to bottom,#000,#000),radial-gradient(ellipse at 50% 50%,#000 40%,transparent 65%),radial-gradient(ellipse at 66% 66%,#000 5%,transparent 40%),radial-gradient(ellipse at 33% 33%,#000 5%,transparent 40%),radial-gradient(ellipse at 66% 33%,#000 5%,transparent 40%),radial-gradient(ellipse at 33% 66%,#000 5%,transparent 40%),conic-gradient(from var(--cursor-angle) at center,transparent 5%,#000 15%,#000 85%,transparent 95%);mask-composite:subtract,add,add,add,add,add;opacity:calc(var(--fill-opacity)*(var(--edge-proximity) - var(--color-sensitivity))/(100 - var(--color-sensitivity)));mix-blend-mode:soft-light}.border-glow-card>.edge-light{z-index:1;inset:calc(var(--glow-padding)*-1);pointer-events:none;mask-image:conic-gradient(from var(--cursor-angle) at center,#000 2.5%,transparent 10%,transparent 90%,#000 97.5%);opacity:calc((var(--edge-proximity) - var(--edge-sensitivity))/(100 - var(--edge-sensitivity)));mix-blend-mode:plus-lighter}.border-glow-card>.edge-light::before{content:'';position:absolute;inset:var(--glow-padding);border-radius:inherit;box-shadow:inset 0 0 0 1px var(--glow-color),inset 0 0 1px 0 var(--glow-color-60),inset 0 0 3px 0 var(--glow-color-50),inset 0 0 6px 0 var(--glow-color-40),inset 0 0 15px 0 var(--glow-color-30),inset 0 0 25px 2px var(--glow-color-20),inset 0 0 50px 2px var(--glow-color-10),0 0 1px 0 var(--glow-color-60),0 0 3px 0 var(--glow-color-50),0 0 6px 0 var(--glow-color-40),0 0 15px 0 var(--glow-color-30),0 0 25px 2px var(--glow-color-20),0 0 50px 2px var(--glow-color-10)}.border-glow-inner{position:relative;z-index:1;min-width:0}
@media(min-width:1100px){body.viewer-public{padding-left:0}.viewer-public .topbar .viewer-brand-link{display:flex}.viewer-public .wrap{max-width:1180px}}
@media(max-width:900px){.viewer-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.viewer-feature:last-child{grid-column:auto}.viewer-how ol{grid-template-columns:repeat(2,minmax(0,1fr))}.viewer-faq-groups{grid-template-columns:1fr}.viewer-dashboard-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.viewer-home-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.viewer-home-channels{grid-template-columns:1fr 1fr}.viewer-home-channel:last-child:nth-child(odd){grid-column:1/-1}}
@media(max-width:720px){.viewer-home{gap:54px}.viewer-home-authenticated{gap:24px}.viewer-home-hero,.viewer-auth-hero{grid-template-columns:1fr;min-height:0}.viewer-home-copy{padding:30px 22px 16px}.viewer-robot-stage,.viewer-auth-hero .viewer-robot-stage{min-height:320px}.viewer-robot-poster,.viewer-auth-hero .viewer-robot-poster{mask-image:linear-gradient(to bottom,transparent 0,#000 16%)}.viewer-home-actions{align-items:stretch}.viewer-primary-action,.viewer-secondary-action,.viewer-auth-next .viewer-button{flex:1 1 220px}.viewer-feature-grid{grid-template-columns:1fr;gap:18px}.viewer-how ol{grid-template-columns:1fr}.viewer-streamer-row{align-items:flex-start;flex-direction:column}.viewer-dashboard-heading{display:block}.viewer-home-status{align-items:flex-start;flex-direction:column}.viewer-home-important,.viewer-home-contest{align-items:flex-start;flex-wrap:wrap}.viewer-home-important .viewer-button,.viewer-home-contest .viewer-button{width:100%}}
@media(max-width:480px){.topbar .viewer-brand-link{display:flex}.topbar .viewer-brand-link img{width:min(169px,43vw)}.topbar h1{display:none}.for-streamers-link{min-height:34px;padding:6px 9px;font-size:11px}.viewer-public .wrap{padding-top:12px}.viewer-home{gap:46px}.viewer-home-authenticated{gap:22px}.viewer-home-hero,.viewer-auth-hero{border-radius:18px}.viewer-home-copy{padding:26px 17px 12px}.viewer-auth-next{padding:22px 17px 8px}.viewer-auth-next h2{font-size:29px}.viewer-home h1{font-size:38px}.viewer-home-lead{font-size:15px}.viewer-robot-stage,.viewer-auth-hero .viewer-robot-stage{min-height:280px}.viewer-home-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.viewer-home-stat{min-height:108px;padding:13px}.viewer-home-stat strong{font-size:24px}.viewer-home-channels{grid-template-columns:1fr}.viewer-home-channel:last-child:nth-child(odd){grid-column:auto}.viewer-home-section>h2{margin-bottom:20px;font-size:32px}.viewer-feature .border-glow-inner,.viewer-faq-group .border-glow-inner{padding:18px}.viewer-dashboard .border-glow-inner{padding:18px}.viewer-dashboard-actions{grid-template-columns:1fr 1fr;gap:8px}.viewer-dashboard-actions button{min-height:70px;padding:11px}.viewer-streamer-row{padding:20px}.viewer-help{gap:44px}.me{display:none}}
@media(prefers-reduced-motion:reduce){.viewer-robot-canvas{display:none}.viewer-robot-poster{opacity:1!important}.viewer-faq-plus::after{transition:none}}

/* Общий каркас разделов кабинета. */
.viewer-skip-link{position:fixed;z-index:100;left:12px;top:10px;transform:translateY(-150%);min-height:44px;padding:11px 15px;border:2px solid var(--brand-cyan);border-radius:11px;background:var(--card);color:var(--text);font-weight:800}.viewer-skip-link:focus{transform:none;outline:3px solid #9bdcff;outline-offset:3px}
.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin:6px 0 24px}.page-head-copy{min-width:0}.page-eyebrow{margin:0 0 6px;color:var(--brand-cyan);font-size:11px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.page-head h1{margin:0;font-size:clamp(30px,3.1vw,44px);line-height:1.04;letter-spacing:-.045em;overflow-wrap:anywhere}.page-description{max-width:720px;margin:9px 0 0;color:var(--text2);font-size:15px;line-height:1.55}.page-head-actions{display:flex;flex:0 0 auto;gap:10px}.viewer-button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:10px 16px;border:1px solid var(--border-strong);border-radius:12px;background:var(--card2);color:var(--text);font:800 14px/1.2 inherit;cursor:pointer}.viewer-button:hover{border-color:var(--accent-border)}.viewer-button-primary{border-color:transparent;background:linear-gradient(135deg,var(--accent2),#5b21b6);color:#fff}.viewer-button-secondary{background:var(--surface)}
.page-head[data-viewer-section="home"]+.viewer-home .viewer-dashboard .border-glow-inner>.viewer-eyebrow,.page-head[data-viewer-section="home"]+.viewer-home .viewer-dashboard-heading>div:first-child,.page-head[data-viewer-section="commands"]+.commands-guide>.command-intro,.page-head[data-viewer-section="avatar"]+.avatar-page>.avatar-intro,.page-head[data-viewer-section="channels"]~.channels-page-head,.page-head[data-viewer-section="store"]+.store-page>.store-heading{display:none}
.page-head[data-viewer-section="home"]+.viewer-home .viewer-dashboard-heading{justify-content:flex-start}.page-head[data-viewer-section="home"]+.viewer-home .viewer-dashboard-heading:has(.guide-account-status:empty){display:none}.page-head[data-viewer-section="home"]+.viewer-home .viewer-dashboard-actions{margin-top:0}
.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:28px 0 13px}.section-head h2{margin:0;font-size:21px;letter-spacing:-.025em}.section-head p{margin:4px 0 0;color:var(--text2);line-height:1.5}.section-head a{display:inline-flex;min-height:44px;align-items:center;color:var(--brand-cyan);font-weight:800}
.viewer-notice,.connection-card,.channels-context{border:1px solid var(--accent-border);border-radius:14px;background:var(--accent-soft)}
.toolbar{display:flex;align-items:center;gap:10px;margin-bottom:16px;padding:12px;border:1px solid var(--border);border-radius:16px;background:var(--card)}.toolbar :is(input,select,button){min-height:44px}
.state-panel{display:grid;min-height:280px;place-items:center;align-content:center;gap:10px;margin:0;padding:32px;border:1px solid var(--border);border-radius:18px;background:var(--card);text-align:center}.state-panel h2{margin:0;font-size:22px;letter-spacing:-.025em}.state-panel p{max-width:520px;margin:0;color:var(--text2);font-size:14px;line-height:1.6}.state-mark{display:grid;width:46px;height:46px;place-items:center;border:1px solid var(--accent-border);border-radius:50%;background:var(--accent-soft);color:var(--accent);font-size:20px;font-weight:900}.state-error .state-mark{border-color:#ff6b7a66;background:#ff6b7a16;color:#ff6b7a}.state-skeleton{display:grid;width:min(100%,440px);gap:9px;margin-top:8px}.state-skeleton i{height:12px;border-radius:999px;background:linear-gradient(100deg,var(--surface) 20%,var(--card2) 38%,var(--surface) 56%);background-size:280% 100%;animation:viewer-state-shimmer 1.5s linear infinite}.state-skeleton i:nth-child(2){width:82%}.state-skeleton i:nth-child(3){width:64%}@keyframes viewer-state-shimmer{to{background-position:-280% 0}}
:is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #9bdcff!important;outline-offset:3px!important}
.nav-more,.nav-more-sheet{display:none}

@media(min-width:768px){
  body:not(.viewer-public):not(.viewer-login){padding-left:224px;padding-bottom:24px}
  body:not(.viewer-public):not(.viewer-login) .topbar{position:sticky;padding-inline:28px}
  body:not(.viewer-public):not(.viewer-login) .topbar .viewer-brand-link{display:none}
  .wrap,.wrap.channels-wrap,.wrap:has(.store-page){width:min(100%,1228px);max-width:1228px;padding:28px 24px 72px;margin:0 auto}
  .app-nav{inset:0 auto 0 0;width:224px;height:100svh;padding:22px 14px;background:var(--sidebar);border-top:0;border-right:1px solid var(--border);overflow-y:auto}
  .nav-heading{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:12px;padding:0 8px 20px;border-bottom:1px solid var(--border);color:var(--text2);font-size:11px;letter-spacing:.1em;text-transform:uppercase}
  .nav-heading picture{display:block;width:184px;line-height:0}.nav-heading img{display:block;width:100%;height:auto}
  .nav-actions{display:flex;max-width:none;flex-direction:column;gap:5px}
  .nav-button{display:block;min-height:44px;padding:11px 14px;text-align:left;font-size:13px;font-weight:700}
  .nav-more{display:none!important}.nav-more-sheet{display:none!important}
  .toast{left:calc(50% + 112px);bottom:24px}
}
@media(min-width:768px) and (max-width:900px){.page-head{align-items:flex-start;flex-direction:column}.page-head-actions,.page-head-actions .viewer-button{width:100%}}
@media(max-width:767px){
  body{padding-bottom:calc(78px + env(safe-area-inset-bottom))}
  .topbar{height:56px;padding:6px 12px;gap:7px}.topbar h1{font-size:14px}.topbar .viewer-brand-link{display:flex}.for-streamers-link{min-height:44px;padding:6px 8px;font-size:10px}.logout{min-height:44px}.me{display:none}
  .wrap,.wrap.channels-wrap,.wrap:has(.store-page){width:auto;max-width:none;margin:0;padding:24px 16px 110px}
  .page-head{display:block;margin:0 0 18px}.page-head h1{font-size:32px}.page-description{font-size:14px}.page-head-actions{width:100%;flex-wrap:wrap;margin-top:16px}.page-head-actions .viewer-button{width:auto;flex:1 1 150px}
  .toolbar{align-items:stretch;flex-wrap:wrap;padding:10px}.toolbar :is(input,select){flex:1 1 100%}
  .app-nav{position:fixed;z-index:30;inset:auto 0 0;padding:7px 6px calc(7px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:color-mix(in srgb,var(--topbar) 96%,transparent);backdrop-filter:blur(16px);overflow:visible}
  .nav-heading{display:none}.nav-actions{display:grid;max-width:none;grid-template-columns:repeat(5,minmax(0,1fr));gap:3px}.nav-button{display:none;min-width:0;min-height:50px;padding:5px 2px;border-radius:10px;font-size:10px;font-weight:800;text-align:center}.nav-button.nav-primary,.nav-button.nav-more{display:grid;place-items:center}.nav-button[aria-current="page"]{color:var(--text)}
  .nav-more-sheet{position:fixed;z-index:40;right:10px;bottom:calc(72px + env(safe-area-inset-bottom));left:10px;padding:10px;border:1px solid var(--border-strong);border-radius:18px;background:var(--card);box-shadow:0 24px 80px #000}.nav-more-sheet.is-open{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.nav-more-link{display:flex;min-height:48px;align-items:center;padding:10px 12px;border:0;border-radius:11px;background:var(--surface);color:var(--text);font:800 13px/1.2 inherit;text-align:left}.nav-more-link[aria-current="page"]{background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--accent-border)}
  :is(button,a[href],summary){min-height:44px}
  .state-panel{min-height:300px;padding:24px 18px}.toast{bottom:calc(86px + env(safe-area-inset-bottom))}
  body.viewer-public{padding-bottom:32px}.viewer-public .wrap{padding:12px 12px 32px}
}
@media(max-width:390px){.wrap,.wrap.channels-wrap,.wrap:has(.store-page){padding-inline:12px}.page-head h1{font-size:29px}.topbar h1{font-size:13px}.for-streamers-link{padding-inline:7px}}

/* Конкурсы и инвентарь используют тот же ритм, карточки и фильтры, что витрина. */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.contest-feed{display:grid;gap:14px}.contest-filters{display:flex;gap:8px;overflow-x:auto;padding:2px;scrollbar-width:none}.contest-filters::-webkit-scrollbar{display:none}.contest-list{display:grid;gap:14px}.contest-card{padding:22px;border:1px solid var(--border);border-radius:18px;background:var(--card);box-shadow:var(--panel-shadow)}.contest-card-badges{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.contest-status,.contest-tag{display:inline-flex;min-height:34px;align-items:center;padding:7px 11px;border:1px solid var(--border);border-radius:99px;background:var(--surface);color:var(--text2);font-size:11px;font-weight:800}.contest-status.is-joined{border-color:color-mix(in srgb,#10b981 35%,var(--border));background:color-mix(in srgb,#10b981 12%,var(--card));color:#34d399}.contest-status.is-open{border-color:color-mix(in srgb,#f59e0b 30%,var(--border));background:color-mix(in srgb,#f59e0b 10%,var(--card));color:#fbbf24}.contest-status.is-completed{color:var(--text2)}.contest-card-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,260px);gap:24px;align-items:end}.contest-card-copy{min-width:0}.contest-card h2{margin:0;font-size:21px;line-height:1.25;letter-spacing:-.025em;overflow-wrap:anywhere}.contest-card-copy>p{margin:9px 0 0;color:var(--text2);font-size:13px;line-height:1.6}.contest-prizes{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px}.contest-prize{padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font-size:11px;font-weight:700}.contest-no-prize{font-size:11px!important}.contest-card-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.contest-card-summary p{display:flex;min-height:54px;flex-direction:column;justify-content:center;margin:0;padding:8px 10px;border:1px solid var(--border);border-radius:11px;background:var(--surface);text-align:right}.contest-card-summary span{color:var(--text2);font-size:9px}.contest-card-summary strong{margin-top:2px;font-size:15px;line-height:1.25}.contest-card-summary .btn{grid-column:1/-1;min-height:44px;margin:0;padding:10px;font-size:12px}.contest-empty{min-height:240px;padding:40px;border:1px solid var(--border);border-radius:18px;background:var(--card);text-align:center}.contest-empty h2{margin:0;font-size:20px}.contest-empty p{max-width:480px;margin:8px auto 0;color:var(--text2);line-height:1.55}.contest-card :is(button):focus-visible,.contest-filters button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.inventory-page{min-width:0}.inventory-shortcuts{display:flex;justify-content:flex-end;gap:8px;margin:-8px 0 14px}.inventory-filters{display:grid;grid-template-columns:minmax(220px,1fr) minmax(190px,260px) auto;gap:10px;align-items:end;margin-bottom:10px}.inventory-category{display:grid;gap:6px;color:var(--text2);font-size:11px;font-weight:750}.inventory-category select{width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--border-strong);border-radius:11px;background:var(--surface);color:var(--text);font:inherit}.inventory-equipped-filter{margin-bottom:0}.inventory-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.inventory-item .store-product-price{min-height:38px;color:var(--text2);font-weight:700}.inventory-item .inventory-equipped{background:color-mix(in srgb,#10b981 12%,var(--surface));color:#34d399}.inventory-item .store-product-command{margin-top:0}.inventory-category select:focus-visible,.inventory-equipped-filter:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(max-width:900px){.inventory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.contest-card{padding:18px}.contest-card-layout{grid-template-columns:1fr;gap:18px}.contest-card-summary p{text-align:left}.inventory-shortcuts{display:grid;grid-template-columns:1fr 1fr;margin-top:0}.inventory-filters{grid-template-columns:1fr}.inventory-equipped-filter{justify-self:start}.inventory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:390px){.contest-card{padding:18px}.contest-card h2{font-size:19px}.contest-card-summary{grid-template-columns:1fr}.contest-card-summary .btn{grid-column:auto}.inventory-shortcuts{grid-template-columns:1fr}.inventory-shortcuts .viewer-button{width:100%}.inventory-grid{gap:8px}.inventory-item .store-product-price{font-size:10px}}
@media(prefers-color-scheme:light){.contest-status.is-joined,.inventory-item .inventory-equipped{color:#047857}.contest-status.is-open{color:#9a5b00}}
@media(prefers-reduced-motion:reduce){.state-skeleton i{animation:none;background:var(--card2)}}

/* Доводка кабинета: прозрачная сцена, полная боковая подложка и гостевая шапка. */
.viewer-auth-hero{overflow:hidden}.viewer-auth-hero::before{background:var(--bg)}.viewer-auth-hero .viewer-robot-stage{overflow:visible;background:transparent}.viewer-auth-hero :is(.viewer-robot-poster,.viewer-robot-canvas){background:transparent;mask-image:linear-gradient(to right,transparent 0,#000 22%,#000 82%,transparent 100%)}body.viewer-public .topbar .viewer-brand-link,body.viewer-login .topbar .viewer-brand-link{display:flex}
@media(min-width:768px){body:not(.viewer-public):not(.viewer-login){position:relative}body:not(.viewer-public):not(.viewer-login)::before{content:'';position:absolute;z-index:0;inset:0 auto 0 0;width:224px;min-height:100%;pointer-events:none;background:var(--sidebar);border-right:1px solid var(--border)}}
@media(max-width:480px){.topbar .viewer-brand-link img{width:148px}.viewer-header-login-full{display:none}.viewer-header-login-short{display:inline}.viewer-public .topbar h1,.viewer-login .topbar h1{display:none}.for-streamers-link,.viewer-header-login{min-height:36px;padding:6px 8px;font-size:10px}}
