:root{--bg:#0a0a0b;--text:#F2F2F2;--muted:#A8A8A8;--muted2:#C9C9C9;--gold:#E3B964;--gold-l:#F3D79A;--gold-a:#F3D08A;--gold-b:#D9A54C;
--teal:#1F6F5C;--ok:#9FE3CF;--bad:#FFB49A;--line:rgba(255,255,255,.1);--safe-b:env(safe-area-inset-bottom,0px)}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;height:100%;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,sans-serif;font-size:15px}
button,input,select,textarea{font:inherit;color:inherit}
a{color:var(--gold);text-decoration:none}
#app{position:relative;height:100vh;height:var(--tg-viewport-stable-height,100vh);display:flex;flex-direction:column;overflow:hidden}
.grid-bg{background-color:var(--bg);background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:32px 32px}
.glows{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.glow{position:absolute;border-radius:50%;pointer-events:none;filter:blur(90px)}
.glow-a{width:320px;height:320px;left:-120px;top:40px;background:var(--gold-b);opacity:.22}
.glow-b{width:280px;height:280px;right:-110px;top:470px;background:var(--teal);opacity:.33}
.scroll{position:relative;flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:14px 16px 24px}
.scroll::-webkit-scrollbar{display:none}
.wrap{max-width:560px;margin:0 auto;display:flex;flex-direction:column;gap:14px}
.glass{background:linear-gradient(140deg,rgba(255,255,255,.11),rgba(255,255,255,.03));backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);border:1px solid rgba(255,255,255,.14);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 16px 40px rgba(0,0,0,.45);border-radius:20px}
.hl{background:var(--gold);color:#141006;padding:0 .16em;border-radius:6px}
.num{color:var(--gold)}
.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.h1{margin:0;font-family:Oswald,sans-serif;font-weight:700;font-size:36px;line-height:1;text-transform:uppercase}
.h2{margin:0;font-family:Oswald,sans-serif;font-weight:700;font-size:22px;line-height:1.05;text-transform:uppercase}
.brand{font-family:Oswald,sans-serif;font-weight:700;font-size:22px;letter-spacing:.02em}
.cap{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-weight:600}
.lbl{font-size:12px;color:var(--muted2);font-weight:500}
.muted{color:var(--muted)}
.small{font-size:13px}.tiny{font-size:11px}
.row{display:flex;align-items:center;gap:10px}
.between{justify-content:space-between}
.col{display:flex;flex-direction:column;gap:8px}
.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.pad{padding:16px}
.tap{all:unset;box-sizing:border-box;cursor:pointer;display:flex;width:100%}
.tap:active{opacity:.75}
.seg-wrap{display:flex;gap:4px;padding:4px;border-radius:14px;background:rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.08)}
.seg{all:unset;box-sizing:border-box;flex:1;text-align:center;min-height:40px;line-height:40px;border-radius:11px;cursor:pointer;font-weight:600;font-size:13px;color:var(--muted);white-space:nowrap;padding:0 6px}
.seg.on{background:rgba(255,255,255,.14);color:var(--text);box-shadow:inset 0 1px 0 rgba(255,255,255,.2)}
.chip{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border-radius:12px;cursor:pointer;font-size:13px;font-weight:600;background:rgba(0,0,0,.3);color:#BDBDBD;border:1px solid rgba(255,255,255,.16)}
.chip.on{background:rgba(227,185,100,.16);color:var(--gold-l);border-color:rgba(227,185,100,.55)}
.btn{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 16px;border-radius:12px;cursor:pointer;font-weight:600;font-size:14px;text-align:center}
.btn:active{transform:scale(.98)}
.btn[disabled]{opacity:.45;pointer-events:none}
.btn-gold{background:linear-gradient(180deg,var(--gold-a),var(--gold-b));color:#1a1206;font-family:Oswald,sans-serif;font-size:16px;letter-spacing:.02em;text-transform:uppercase}
.btn-big{min-height:50px;width:100%;font-size:17px;border-radius:14px}
.btn-line{border:1px solid rgba(255,255,255,.22);color:var(--text)}
.btn-red{border:1px solid rgba(255,138,101,.5);color:var(--bad);background:rgba(255,138,101,.08)}
.btn-sm{min-height:38px;padding:0 12px;font-size:13px}
.field{width:100%;min-height:46px;padding:11px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.18);background:rgba(0,0,0,.35);color:var(--text);font-size:16px;outline:none}
.field:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(227,185,100,.2)}
.field::placeholder{color:#8F8F8F}
textarea.field{resize:vertical;min-height:90px}
select.field{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#bbb 50%),linear-gradient(135deg,#bbb 50%,transparent 50%);background-position:calc(100% - 18px) 20px,calc(100% - 13px) 20px;background-size:5px 5px;background-repeat:no-repeat;padding-right:34px}
.pill{display:inline-block;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}
.p-ok{background:rgba(31,111,92,.4);color:var(--ok)}
.p-warn{background:rgba(227,185,100,.16);color:var(--gold-l)}
.p-bad{background:rgba(255,138,101,.16);color:var(--bad)}
.p-dim{background:rgba(255,255,255,.08);color:var(--muted2)}
.pref-gray{background:rgba(255,255,255,.12);color:#D4D4D4}
.pref-gold{background:var(--gold);color:#141006}
.pref-teal{background:rgba(31,111,92,.5);color:#A9EBD7}
.pref-blue{background:rgba(86,140,230,.3);color:#B9D2FF}
.pref-white{background:#F2F2F2;color:#141006}
.pref-purple{background:rgba(200,120,220,.28);color:#EBC7F5}
.pref-orange{background:rgba(255,150,80,.25);color:#FFD0B0}
.avatar{flex:none;width:46px;height:46px;border-radius:50%;background:var(--gold);color:#141006;display:flex;align-items:center;justify-content:center;font-family:Oswald,sans-serif;font-weight:700;font-size:20px;overflow:hidden}
.avatar img{width:100%;height:100%;object-fit:cover}
.avatar.sm{width:36px;height:36px;font-size:15px;background:rgba(227,185,100,.2);color:var(--gold-l)}
.list{padding:4px 14px}
.list>.item{border-bottom:1px solid rgba(255,255,255,.08)}
.list>.item:last-child{border-bottom:0}
.item{display:flex;align-items:center;gap:12px;min-height:60px;padding:6px 0;text-align:left}
.item .grow{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lnum{flex:none;width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-family:Oswald,sans-serif;font-weight:700;font-size:15px;background:rgba(227,185,100,.14);color:var(--gold)}
.lnum.done{background:var(--gold);color:#141006}
.locked{opacity:.55}
.bar{height:8px;border-radius:999px;background:rgba(255,255,255,.1);overflow:hidden}
.bar>span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--gold-b),var(--gold-a))}
.chart{height:120px;display:flex;align-items:flex-end;gap:3px;border-bottom:1px solid rgba(255,255,255,.14)}
.chart>span{flex:1;min-height:2px;border-radius:4px 4px 2px 2px;background:linear-gradient(180deg,var(--gold-a),#C98F35)}
.tile{padding:14px;display:flex;flex-direction:column;gap:4px;border-radius:18px}
.tile b{font-family:Oswald,sans-serif;font-weight:700;font-size:24px;line-height:1.05;color:var(--gold)}
.course-card{flex-direction:column;gap:10px;padding:16px;border-radius:22px}
.price{font-family:Oswald,sans-serif;font-weight:700;font-size:30px;line-height:1}
.old{font-family:Oswald,sans-serif;font-size:16px;color:#8C8C8C;text-decoration:line-through}
.video{width:100%;aspect-ratio:16/9;border-radius:18px;background:#000;border:1px solid rgba(255,255,255,.14);display:block}
.video-ph{aspect-ratio:16/9;border-radius:18px;border:1px dashed rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;color:var(--muted)}
.bubble{max-width:82%;padding:10px 13px;font-size:14px;line-height:1.45;white-space:pre-wrap;word-wrap:break-word}
.bubble.me{align-self:flex-end;border-radius:16px 16px 4px 16px;background:rgba(227,185,100,.16);border:1px solid rgba(227,185,100,.3)}
.bubble.them{align-self:flex-start;border-radius:16px 16px 16px 4px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12)}
.doc-text p{margin:0 0 10px;font-size:14px;line-height:1.6;color:var(--muted2);white-space:pre-wrap}
.drop{flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:92px;border-radius:16px;border:1.5px dashed rgba(227,185,100,.5);background:rgba(227,185,100,.05);text-align:center;padding:10px;position:relative}
.drop input{position:absolute;inset:0;opacity:0;cursor:pointer}
.sw{all:unset;box-sizing:border-box;width:46px;height:28px;border-radius:999px;cursor:pointer;position:relative;flex:none;background:rgba(255,255,255,.16);transition:background .15s}
.sw::after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#E6E6E6;transition:left .15s}
.sw.on{background:var(--gold)}.sw.on::after{left:21px;background:#141006}
.center-msg{min-height:60vh;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--muted);padding:24px;flex-direction:column;gap:14px}
#bottom{position:relative;background:rgba(10,10,11,.8);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--line);padding:8px 16px calc(8px + var(--safe-b))}
#bottom:empty{display:none}
#bottom .inner{max-width:560px;margin:0 auto;display:flex;flex-direction:column;gap:6px}
.tabs{display:flex}
.tab{all:unset;box-sizing:border-box;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:50px;font-size:11px;font-weight:600;color:var(--muted);cursor:pointer}
.tab.on{color:var(--gold)}
.tab svg{width:22px;height:22px}
#sheet-root .overlay{position:absolute;inset:0;background:rgba(0,0,0,.6);display:flex;flex-direction:column;justify-content:flex-end;z-index:20;animation:fade .15s}
#sheet-root .shade{flex:1}
#sheet-root .sheet{max-height:88%;overflow-y:auto;overflow-x:hidden;border-radius:26px 26px 0 0;background:#151517;border-top:1px solid rgba(255,255,255,.18);box-shadow:inset 0 1px 0 rgba(255,255,255,.18);padding:10px 16px calc(22px + var(--safe-b));animation:up .2s ease-out}
#sheet-root .sheet>.wrap{gap:12px}
.grab{align-self:center;width:40px;height:4px;border-radius:4px;background:rgba(255,255,255,.25)}
#toast{position:absolute;left:16px;right:16px;top:12px;z-index:40;padding:12px 16px;border-radius:14px;background:rgba(30,30,32,.94);border:1px solid rgba(227,185,100,.45);font-size:14px;font-weight:600;text-align:center;transform:translateY(-140%);transition:transform .2s;pointer-events:none}
#toast.show{transform:none}
.progress{height:6px;border-radius:999px;background:rgba(255,255,255,.1);overflow:hidden}
.progress>span{display:block;height:100%;background:var(--gold);transition:width .2s}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@keyframes fade{from{opacity:0}}
@keyframes up{from{transform:translateY(40px);opacity:.4}}

/* ---------- v2: широкие экраны, отзывы, розыгрыши, профиль, оплата ---------- */
.wrap.wide{max-width:760px}
.chips-scroll{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:0 -16px;padding:2px 16px}
.chips-scroll::-webkit-scrollbar{display:none}
.chips-scroll .chip{flex:none}
.stars{color:var(--gold);letter-spacing:1px;line-height:1}
.stars .off{color:rgba(255,255,255,.18)}
.star-btn{all:unset;box-sizing:border-box;cursor:pointer;width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:28px;color:rgba(255,255,255,.22);background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.12)}
.star-btn.on{color:var(--gold);border-color:rgba(227,185,100,.5);background:rgba(227,185,100,.1)}
.media{display:block;width:100%;border-radius:14px;background:#000;object-fit:cover;aspect-ratio:4/3}
video.media{aspect-ratio:16/9;object-fit:contain}
.media-btn{display:block;width:100%}
.media-grid{display:grid;gap:6px}
.media-grid.n1{grid-template-columns:1fr}
.media-grid.n2,.media-grid.n3,.media-grid.n4{grid-template-columns:repeat(2,minmax(0,1fr))}
.media-grid.n3>:first-child{grid-column:span 2}
.course-cover{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:14px;margin-bottom:2px}
.course-cover.big{border-radius:18px}
.comment+.comment{border-top:1px solid var(--line);padding-top:10px}
.contest{overflow:hidden;padding:0}
.contest-photo{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.prize{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:14px;background:rgba(227,185,100,.1);border:1px solid rgba(227,185,100,.35)}
.prize b{color:var(--gold-l);font-size:16px}
.avatar.xl{width:84px;height:84px;font-size:34px;border:3px solid var(--bg)}
.profile-head{padding:0;overflow:hidden}
.profile-cover{height:96px;background:radial-gradient(120% 140% at 0% 0%,rgba(227,185,100,.55),transparent 55%),radial-gradient(120% 140% at 100% 100%,rgba(31,111,92,.7),transparent 60%),#121214}
.profile-main{display:flex;gap:14px;align-items:flex-end;padding:0 16px;margin-top:-42px}
.profile-bio{margin:12px 16px 0;font-size:14px;line-height:1.55;white-space:pre-wrap;color:var(--muted2)}
.profile-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;padding:14px 16px 16px}
.profile-stats>div{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 4px;border-radius:14px;background:rgba(0,0,0,.3);text-align:center}
.profile-stats b{font-family:Oswald,sans-serif;font-size:22px;color:var(--gold)}
.profile-stats span{font-size:10px;color:var(--muted);line-height:1.2}
.portfolio{display:grid;grid-template-columns:1fr;gap:12px}
.post{padding:0;overflow:hidden;display:flex;flex-direction:column;gap:10px}
.post .media{border-radius:0}
.post-text{margin:0;padding:12px 14px 0;font-size:14px;line-height:1.55;white-space:pre-wrap}
.post .media+.post-text{padding-top:0}
.pay-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pay-card{flex-direction:column;align-items:flex-start;gap:4px;padding:14px;border-radius:18px;background:linear-gradient(140deg,rgba(255,255,255,.09),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.12);min-height:112px;position:relative;text-align:left}
.pay-card b{font-size:16px;padding-right:40px;line-height:1.25}
.pay-card:active{border-color:var(--gold)}
.pay-ico{position:absolute;right:12px;top:12px;width:38px;height:38px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-family:Oswald,sans-serif;font-weight:700;font-size:20px;color:#141006;background:linear-gradient(180deg,var(--gold-a),var(--gold-b))}
.badge{display:inline-block;min-width:18px;padding:0 5px;border-radius:999px;background:var(--bad);color:#141006;font-size:11px;font-weight:700;text-align:center}
@media (min-width:640px){
  .portfolio{grid-template-columns:repeat(2,minmax(0,1fr))}
  .profile-cover{height:140px}
  .avatar.xl{width:104px;height:104px}
  .pay-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

/* ---------- v3: главная, темы с фото-карточками, разделы, магазин, бонусы */
.hero-sub{margin:0;color:var(--muted2);font-size:14px;line-height:1.5}
.bonus-chip{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 12px;border-radius:999px;cursor:pointer;
  background:rgba(227,185,100,.14);border:1px solid rgba(227,185,100,.4);color:var(--gold-l);font-weight:700;font-size:13px}
.bonus-chip svg{width:16px;height:16px}
.sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:6px}
.sec-head .h2{font-size:20px}
.sec-head .more{all:unset;cursor:pointer;color:var(--gold);font-size:13px;font-weight:600;min-height:32px;display:flex;align-items:center}
.cat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.cat-card{all:unset;box-sizing:border-box;cursor:pointer;position:relative;display:block;aspect-ratio:4/5;border-radius:20px;overflow:hidden;
  border:1px solid rgba(255,255,255,.14);background:linear-gradient(160deg,#2a2418,#121214)}
.cat-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .3s}
.cat-card:active img{transform:scale(1.04)}
.cat-card .shade-b{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 35%,rgba(0,0,0,.85))}
.cat-card .cap-b{position:absolute;left:12px;right:12px;bottom:12px;display:flex;flex-direction:column;gap:4px}
.cat-card .cap-b b{font-family:Oswald,sans-serif;font-size:20px;line-height:1.05;text-transform:uppercase;text-align:left}
.cat-card .ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:rgba(227,185,100,.5)}
.cat-card .ph svg{width:44px;height:44px}
.hscroll{display:flex;gap:10px;overflow-x:auto;scrollbar-width:none;margin:0 -16px;padding:2px 16px 4px;scroll-snap-type:x mandatory}
.hscroll::-webkit-scrollbar{display:none}
.hscroll>*{flex:none;scroll-snap-align:start}
.lcard{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:8px;min-width:0}
.lcard .thumb{position:relative;width:100%;aspect-ratio:4/5;border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(160deg,#2a2418,#121214)}
.lcard .thumb img{width:100%;height:100%;object-fit:cover;display:block}
.lcard .thumb .ph{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:rgba(227,185,100,.45)}
.lcard .thumb .ph svg{width:36px;height:36px}
.lcard .badge{position:absolute;left:8px;top:8px}
.lcard .play{position:absolute;right:8px;bottom:8px;width:34px;height:34px;border-radius:50%;background:rgba(227,185,100,.92);color:#141006;
  display:flex;align-items:center;justify-content:center;font-size:13px}
.lcard.locked .thumb img{filter:grayscale(.4) brightness(.6)}
.lcard .t{font-weight:600;font-size:14px;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.hscroll .lcard{width:46%;max-width:220px}
.lgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 10px}
.tile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ntile{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:18px;min-height:112px}
.ntile .ic{width:38px;height:38px;border-radius:12px;background:rgba(227,185,100,.14);color:var(--gold);display:flex;align-items:center;justify-content:center}
.ntile .ic svg{width:20px;height:20px}
.ntile b{font-size:15px}
.ntile span{font-size:12px;color:var(--muted)}
.cont-card{all:unset;box-sizing:border-box;cursor:pointer;display:flex;gap:12px;align-items:center;padding:12px;border-radius:18px}
.cont-card .ring{flex:none;width:52px;height:52px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:Oswald;font-weight:700;color:var(--gold);
  background:conic-gradient(var(--gold) calc(var(--p)*1%),rgba(255,255,255,.1) 0)}
.cont-card .ring i{width:42px;height:42px;border-radius:50%;background:#151517;display:flex;align-items:center;justify-content:center;font-style:normal;font-size:13px}
.banner{all:unset;box-sizing:border-box;cursor:pointer;position:relative;display:block;border-radius:20px;overflow:hidden;min-height:120px;border:1px solid rgba(227,185,100,.35);
  background:linear-gradient(120deg,rgba(227,185,100,.22),rgba(31,111,92,.25))}
.banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.45}
.banner .in{position:relative;padding:16px;display:flex;flex-direction:column;gap:6px}
.prod-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 10px}
.pcard{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:6px;min-width:0}
.pcard .img{width:100%;aspect-ratio:1;border-radius:16px;overflow:hidden;background:#fff1;border:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:center;color:var(--muted)}
.pcard .img img{width:100%;height:100%;object-fit:cover}
.pcard .img svg{width:34px;height:34px}
.pcard .p{font-family:Oswald,sans-serif;font-weight:600;font-size:17px;color:var(--gold)}
.hscroll .pcard{width:40%;max-width:190px}
.wcard{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;border-radius:20px;overflow:hidden}
.wcard img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.wcard .in{padding:14px;display:flex;flex-direction:column;gap:6px}
.clamp3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.thumb-sm{flex:none;width:52px;height:52px;border-radius:12px;object-fit:cover;background:rgba(227,185,100,.12);color:var(--gold);display:flex;align-items:center;justify-content:center}
.thumb-sm svg{width:22px;height:22px}
.cat-hero{position:relative;border-radius:22px;overflow:hidden;min-height:180px;display:flex;align-items:flex-end;border:1px solid rgba(255,255,255,.14);
  background:linear-gradient(160deg,#2a2418,#121214)}
.cat-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.cat-hero .shade-b{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.1),rgba(0,0,0,.85))}
.cat-hero .in{position:relative;padding:16px;display:flex;flex-direction:column;gap:6px}
.balance{font-family:Oswald,sans-serif;font-weight:700;font-size:46px;line-height:1;color:var(--gold)}
.reflink{display:flex;gap:8px;align-items:center;padding:10px 12px;border-radius:14px;background:rgba(0,0,0,.35);border:1px dashed rgba(227,185,100,.45)}
.reflink .mono{flex:1;min-width:0;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.steps>div{padding:12px;border-radius:16px;display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--muted2);line-height:1.35}
.steps b{font-family:Oswald;font-size:22px;color:var(--gold)}
.acc-link{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:18px}
.acc-link .ic{width:40px;height:40px;border-radius:12px;background:rgba(227,185,100,.16);color:var(--gold);display:flex;align-items:center;justify-content:center;flex:none}
.acc-link .ic svg{width:20px;height:20px}
.admin-thumb{flex:none;width:46px;height:46px;border-radius:12px;object-fit:cover;background:rgba(255,255,255,.06)}
@media (min-width:640px){
  .cat-grid,.lgrid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .prod-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .tile-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .hscroll .lcard{width:30%}
}

/* ---------- v5: общий чат */
.gc-list{display:flex;flex-direction:column;gap:6px}
.gc-day{display:flex;justify-content:center;margin:8px 0 4px}
.gc-day span{font-size:11px;font-weight:600;color:var(--muted);background:rgba(255,255,255,.06);border-radius:999px;padding:4px 10px}
.gc-row{display:flex;gap:8px;align-items:flex-end;max-width:100%}
.gc-row.same{margin-top:-3px}
.gc-row.mine{justify-content:flex-end}
.gc-ava{flex:none;width:36px;display:flex;align-self:flex-end}
.gc-bubble{all:unset;box-sizing:border-box;cursor:pointer;max-width:min(78%,420px);display:flex;flex-direction:column;gap:3px;padding:8px 12px 6px;border-radius:18px 18px 18px 6px;
  background:rgba(255,255,255,.07);border:1px solid var(--line);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);word-break:break-word}
.gc-bubble.adm{border-color:rgba(227,185,100,.45)}
.gc-row.mine .gc-bubble{border-radius:18px 18px 6px 18px;background:rgba(227,185,100,.16);border-color:rgba(227,185,100,.3)}
.gc-name{display:flex;align-items:center;gap:6px;font-size:13px;min-width:0}
.gc-name b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--gold-l)}
.gc-name .pill{font-size:10px;padding:2px 7px}
.gc-admin{font-size:10px;font-weight:700;color:#141006;background:var(--gold);border-radius:6px;padding:1px 6px;text-transform:uppercase;letter-spacing:.04em}
.gc-quote{display:flex;flex-direction:column;gap:1px;border-left:3px solid var(--gold);padding:2px 0 2px 8px;font-size:12px;color:var(--muted2);
  overflow:hidden;max-height:3.4em;line-height:1.35}
.gc-quote b{color:var(--gold);font-size:12px}
.gc-text{font-size:15px;line-height:1.42;white-space:pre-wrap}
.gc-time{align-self:flex-end;font-size:10.5px;color:var(--muted);font-variant-numeric:tabular-nums}
.gc-row.flash .gc-bubble{box-shadow:0 0 0 2px var(--gold)}
.gc-pin{all:unset;box-sizing:border-box;cursor:pointer;display:flex;flex-direction:column;gap:2px;padding:10px 14px;border-radius:16px;border-left:3px solid var(--gold);min-width:0}
.gc-replybar{display:flex;align-items:center;gap:10px;padding:6px 10px;border-left:3px solid var(--gold);background:rgba(255,255,255,.05);border-radius:10px}
.gc-x{all:unset;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--muted)}
textarea.field.gc-in{flex:1;height:46px;min-height:46px;max-height:140px;resize:none;line-height:1.4;padding-top:12px;overflow-y:auto}
.gc-send{width:46px;min-width:46px;height:46px;padding:0;font-size:18px}
.gc-closed{text-align:center;color:var(--muted2);padding:10px 0}

/* ---------- v6: финансы */
.fin{background:linear-gradient(150deg,rgba(227,185,100,.14),rgba(255,255,255,.03))}
.fin-big{font-family:Oswald,sans-serif;font-size:40px;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:.01em}
.fin-eq{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;padding-top:12px;border-top:1px solid var(--line)}
.fin-eq .col{gap:2px;min-width:0}
.fin-eq b{font-size:14px}
.fin-op{color:var(--muted);font-size:18px;font-weight:600;padding-bottom:1px}
.fin-rates summary{list-style:none}
.fin-rates summary::-webkit-details-marker{display:none}
.fin-rates summary::after{content:' ▾';color:var(--muted)}
.fin-out{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:14px;background:rgba(227,185,100,.14);border:1px solid rgba(227,185,100,.4)}
.fin-mid{font-family:Oswald,sans-serif;font-size:26px;line-height:1;color:var(--gold-l);white-space:nowrap;font-variant-numeric:tabular-nums}
