/* BLACKMARKET · дизайн 2026-10 — DMA, железо, поиск, статусы, тексты, блог, 404. */
.top-hero{position:relative;padding:150px 0 40px;overflow:hidden}
.top-hero .in{position:relative;z-index:2}
.top-hero h1{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:clamp(56px,9vw,170px);line-height:.88;text-wrap:balance}
.top-hero .kicker{margin-bottom:16px}
.top-hero__glow{position:absolute;right:-10%;top:-20%;width:60vw;height:60vw;border-radius:50%;pointer-events:none;
  background:radial-gradient(closest-side,rgba(255,255,255,.07),transparent 70%)}
.block{padding:60px 0}
.block__hd{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px;flex-wrap:wrap}
.block__hd h2{font-size:clamp(40px,4.6vw,84px)}
.block__hd a{font:500 11px var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-2)}
.block__hd a:hover{color:var(--ink)}
.note{padding:28px 30px;border-radius:22px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);color:var(--ink-2);line-height:1.65}
.note b{display:block;font:400 28px/1 var(--disp);text-transform:uppercase;color:var(--ink);margin-bottom:10px}
.note a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}

/* входы DMA */
.entries{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.entry{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:200px;padding:30px;border-radius:24px;overflow:hidden;
  background:radial-gradient(120% 90% at 50% 120%,#24242a 0%,#0e0e10 55%,#0a0a0b 100%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);transition:box-shadow .3s,transform .3s}
.entry:hover{box-shadow:inset 0 0 0 1px rgba(255,255,255,.3);transform:translateY(-3px)}
.entry.on{box-shadow:inset 0 0 0 1.5px var(--ink)}
.entry b{font:400 clamp(34px,3vw,52px)/.95 var(--disp);text-transform:uppercase;padding-right:80px}
.entry span{font:500 12px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2)}
.entry i{position:absolute;right:26px;top:22px;font:400 64px/1 var(--disp);font-style:normal;color:rgba(255,255,255,.12)}

/* игры чипами */
.gchips{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
.gchip{display:flex;align-items:center;gap:14px;padding:10px;border-radius:18px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .3s}
.gchip:hover{box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}
.gchip img,.gchip__ph{width:56px;height:76px;flex:none;border-radius:10px;object-fit:cover;background:#000;display:grid;place-items:center;font:400 22px var(--disp);color:var(--ink-2)}
.gchip b{display:block;font:600 16px var(--sans)}
.gchip span{display:block;margin-top:4px;font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-2)}

/* карточки железа: монохром, луч досмотра проявляет цвет */
.pgrid,.hwgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.hwneed{padding:90px 0 20px}
.hwc{position:relative;display:flex;flex-direction:column;border-radius:24px;overflow:hidden;background:#0c0c0e;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);transition:box-shadow .4s,transform .5s cubic-bezier(.2,.8,.2,1)}
.hwc:hover{box-shadow:inset 0 0 0 1px rgba(255,255,255,.34),0 30px 70px rgba(0,0,0,.55);transform:translateY(-4px)}
.hwc__media{position:relative;aspect-ratio:5/4;overflow:hidden;background:#050506}
.hwc__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.12);
  filter:grayscale(1) contrast(1.15) brightness(.9);transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.hwc__img--c{filter:none;clip-path:inset(0 0 100% 0);transition:clip-path .75s cubic-bezier(.6,0,.2,1),transform .9s cubic-bezier(.2,.8,.2,1)}
.hwc:hover .hwc__img{transform:scale(1.18)}
.hwc:hover .hwc__img--c{clip-path:inset(0 0 0 0)}
.hwc__scan{position:absolute;left:0;right:0;top:0;height:2px;background:#fff;opacity:0;
  box-shadow:0 0 18px 4px rgba(255,255,255,.55);transform:translateY(-4px);pointer-events:none}
.hwc:hover .hwc__scan{animation:hwscan .75s cubic-bezier(.6,0,.2,1) forwards}
@keyframes hwscan{0%{opacity:1;top:0}90%{opacity:1}100%{opacity:0;top:100%}}
.hwc__media::after{content:"";position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(to top,#0c0c0e,transparent);pointer-events:none}
.hwc__ph{position:absolute;inset:0;display:grid;place-items:center;font:400 72px var(--disp);color:var(--ink-3)}
.hwc__kind,.hwc__st{position:absolute;top:16px;z-index:2;font:500 10px var(--mono);letter-spacing:.18em;text-transform:uppercase;
  padding:6px 10px;border-radius:999px;background:rgba(0,0,0,.6);backdrop-filter:blur(6px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16)}
.hwc__kind{left:16px;color:var(--ink)}
.hwc__st{right:16px;display:flex;align-items:center;gap:7px;color:var(--ink)}
.hwc__st::before{content:"";width:6px;height:6px;border-radius:50%;background:#fff;box-shadow:0 0 8px #fff}
.hwc__st.off{color:var(--ink-2)}.hwc__st.off::before{background:transparent;border:1px solid #888;box-shadow:none}
.hwc__body{position:relative;display:flex;flex-direction:column;gap:10px;padding:6px 24px 24px;flex:1}
.hwc h3{font:400 clamp(26px,2vw,34px)/1 var(--disp);text-transform:uppercase;letter-spacing:.005em}
.hwc__specs{color:var(--ink-2);font-size:14px;line-height:1.5}
.hwc__specs i{font-style:normal;margin:0 8px;color:var(--ink-3)}
.hwc__foot{margin-top:auto;padding-top:18px;display:flex;justify-content:space-between;align-items:flex-end;gap:12px;border-top:1px solid var(--line)}
.hwc__price .lbl{display:block;margin-bottom:6px}
.hwc__price b{font:400 30px/1 var(--disp)}
.hwc__go{width:46px;height:46px;flex:none;border-radius:50%;display:grid;place-items:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,.24);transition:background .3s,transform .4s}
.hwc__go svg{width:18px;height:18px;fill:none;stroke:var(--ink);stroke-width:1.8;transition:stroke .3s}
.hwc:hover .hwc__go{background:var(--ink);transform:rotate(-45deg)}
.hwc:hover .hwc__go svg{stroke:#000}
@media (hover:none){.hwc__img{filter:grayscale(.2) contrast(1.05)}.hwc__img--c,.hwc__scan{display:none}}
@media (prefers-reduced-motion:reduce){.hwc__img--c{transition:none}.hwc:hover .hwc__scan{animation:none}}

/* строки-связки */
.lrows{display:grid;gap:10px}
.lrow{display:flex;align-items:center;gap:16px;padding:12px 16px;border-radius:16px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .3s}
.lrow:hover{box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}
.lrow__media{width:56px;height:56px;flex:none;border-radius:10px;overflow:hidden;background:#000;display:grid;place-items:center}
.lrow__media img{width:100%;height:100%;object-fit:contain}
.lrow__ph{font:400 20px var(--disp);color:var(--ink-2)}
.lrow__body{flex:1;min-width:0}
.lrow__body b{display:block;font:600 15px var(--sans)}
.lrow__meta{display:block;margin-top:3px;font:500 11px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}

/* железо */
.hw-shot{aspect-ratio:4/3;border-radius:24px;overflow:hidden;display:grid;place-items:center;background:radial-gradient(80% 80% at 50% 40%,#1c1c20,#08080a);box-shadow:inset 0 0 0 1px var(--line)}
.hw-shot img{width:84%;height:84%;object-fit:contain}
.checks{list-style:none;display:grid;gap:10px;margin-top:18px}
.checks li{display:flex;gap:10px;font-size:14px;line-height:1.5;color:#c3c1bb}
.checks li::before{content:"✓";color:var(--ink)}
.hw-price{margin:20px 0}
.hw-price span{display:block}
.hw-price b{display:block;margin-top:6px;font:400 48px/1 var(--disp)}
.hw-warn{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);font:500 11px var(--mono);letter-spacing:.1em;text-transform:uppercase}
.paybtn--ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}
.paybtn--ghost:hover{background:var(--ink);color:#000}
.gamelinks{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.gamelinks a{height:36px;display:inline-flex;align-items:center;padding:0 14px;border-radius:999px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);font:500 13px var(--sans)}
.gamelinks a:hover{background:var(--ink);color:#000}

/* поиск */
.searchbar{display:flex;gap:10px;margin-top:30px;max-width:680px}
.searchbar .search{flex:1}
.searchbar button{height:48px;padding:0 26px;border-radius:999px;border:0;background:var(--ink);color:#000;font:600 14px var(--sans);cursor:pointer}
.sec-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}
.sec-list a{display:flex;justify-content:space-between;align-items:center;padding:22px 24px;border-radius:18px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);font:400 26px/1 var(--disp);text-transform:uppercase}
.sec-list a i{font:500 11px var(--mono);font-style:normal;color:var(--ink-2)}
.sec-list a:hover{box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}

/* страницы */
.pager{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:40px}
.pager a{height:44px;display:inline-flex;align-items:center;padding:0 22px;border-radius:999px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2);font:600 14px var(--sans)}
.pager a:hover{background:var(--ink);color:#000}

/* статусы */
.stat-filter{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}
.stat-filter select{height:46px;padding:0 16px;border-radius:999px;background:var(--panel);color:var(--ink);border:1px solid rgba(255,255,255,.16);font:500 14px var(--sans)}
.stat-filter button{height:46px;padding:0 24px;border-radius:999px;border:0;background:var(--ink);color:#000;font:600 14px var(--sans);cursor:pointer}
.stat-filter a{height:46px;display:inline-flex;align-items:center;padding:0 18px;color:var(--ink-2);font:500 14px var(--sans)}
.stat-t{min-width:760px}
.stat-t td a{color:var(--ink)}
.stat-t td a:hover{text-decoration:underline}
.stat-t .stk{display:none}
@media (max-width:760px){
  .cmp-t.stat-t{min-width:0;border-collapse:separate;border-spacing:0}.cmp-t.stat-t thead{display:none}
  .cmp-t.stat-t tr{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;padding:16px;border-bottom:1px solid var(--line)}
  .cmp-t.stat-t td{padding:0;border:0}.cmp-t.stat-t td:first-child{grid-column:1/-1}
  .cmp-t.stat-t .stk{display:block;font:500 9px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);margin-bottom:4px}
}

/* тексты и блог */
.read{max-width:820px}
.read .prose h2{margin-top:50px;font:400 clamp(30px,3vw,44px)/1 var(--disp);text-transform:uppercase;color:var(--ink)}
.read .prose > h2:first-child{margin-top:0}
.read .prose table{width:100%;border-collapse:collapse;margin-top:16px;font-size:15px}
.read .prose td,.read .prose th{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left}
.read__cover{width:100%;height:auto;border-radius:24px;margin:0 0 40px;display:block}
.posts{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.post{display:flex;flex-direction:column;gap:12px;padding:16px 16px 24px;border-radius:24px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .3s,transform .3s}
.post:hover{box-shadow:inset 0 0 0 1px rgba(255,255,255,.3);transform:translateY(-3px)}
.post img{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:14px;display:block}
.post b{font:400 28px/1.12 var(--disp);text-transform:uppercase;padding:0 6px}
.post p{color:var(--ink-2);font-size:15px;line-height:1.6;padding:0 6px}
.post time{padding:0 6px}

/* 404 */
.miss{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:40px;padding-top:120px;padding-bottom:60px}
.miss__code{font:400 clamp(140px,20vw,320px)/.8 var(--disp);color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.35)}
.miss h1{font:400 clamp(48px,6vw,110px)/.9 var(--disp);text-transform:uppercase;margin:20px 0}
.miss p{color:var(--ink-2);font-size:17px;line-height:1.6;max-width:460px}
.miss__cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.miss img{width:100%;height:auto}
@media (max-width:1000px){.entries{grid-template-columns:1fr}.miss{grid-template-columns:1fr}}
.read .prose h2 + p{margin-top:14px}
.stat-t .nm.off{opacity:.5}
/* раскрывашки: высоту анимирует bm.js; фокус-рамка только с клавиатуры */
.q__a,.feat__body{overflow:hidden}
.q > summary:focus,.feat summary:focus{outline:none}
.q > summary:focus-visible,.feat summary:focus-visible{outline:1px solid rgba(255,255,255,.45);outline-offset:6px;border-radius:4px}
/* железо в связке с читом: горизонтальные карточки на всю ширину */
.hwc__img{transform:scale(1.03)}.hwc:hover .hwc__img{transform:scale(1.09)}
.hwgrid--row{grid-template-columns:repeat(auto-fit,minmax(min(100%,520px),1fr))}
.hwgrid--row .hwc{flex-direction:row}
.hwgrid--row .hwc__media{flex:0 0 46%;aspect-ratio:auto;min-height:260px}
.hwgrid--row .hwc__media::after{inset:0 0 0 auto;width:40%;height:auto;background:linear-gradient(to left,#0c0c0e,transparent)}
.hwgrid--row .hwc__body{padding:28px 28px 26px 8px;gap:12px}
@media (max-width:640px){.hwgrid--row .hwc{flex-direction:column}.hwgrid--row .hwc__media{flex:none;aspect-ratio:5/4;min-height:0}
  .hwgrid--row .hwc__media::after{inset:auto 0 0;width:auto;height:45%;background:linear-gradient(to top,#0c0c0e,transparent)}.hwgrid--row .hwc__body{padding:6px 24px 24px}}
/* У огромных заголовков буквы выходят за строку и перехватывают клики выше — крошки поверх. */
.crumbs{position:relative;z-index:5}
.updated{margin-top:30px}
/* Рамка фокуса только при управлении с клавиатуры */
.q > summary:focus-visible,.feat summary:focus-visible{outline:none}
html.kbd .q > summary:focus-visible,html.kbd .feat summary:focus-visible{outline:1px solid rgba(255,255,255,.45);outline-offset:6px;border-radius:4px}
/* Крошки всегда на 150px от верха, на любой странице и любом экране */
.game-hero .in.hero-crumbs{position:absolute;top:150px;left:0;right:0;z-index:5;padding-top:0;padding-bottom:0}
.game-hero .in:not(.hero-crumbs){padding-top:200px}
/* Заголовку игры — шире, чтобы длинные названия шли в две строки, а не в три */
.game-hero h1{max-width:min(1400px,100%)}

/* ── поддержка и контакты ── */
.help-hero{position:relative;min-height:88vh;display:flex;align-items:flex-end;overflow:hidden;padding:150px 0 70px}
.help-hero .in{position:relative;z-index:2;width:100%}
.help-hero__img{position:absolute;inset:0;z-index:0}
.help-hero__img img{position:absolute;right:0;top:0;width:min(1500px,92%);height:100%;object-fit:cover;object-position:70% 50%;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 38%,#000 85%,transparent 100%),linear-gradient(0deg,transparent,#000 25%);
  mask-image:linear-gradient(90deg,transparent 0%,#000 38%,#000 85%,transparent 100%);opacity:.9}
.help-hero::after{content:"";position:absolute;inset:auto 0 0;height:30%;z-index:1;background:linear-gradient(to top,var(--bg),transparent);pointer-events:none}
.help-hero h1{font-family:var(--disp);font-weight:400;text-transform:uppercase;font-size:clamp(64px,10vw,190px);line-height:.88;max-width:1100px}
.help-hero .lead{max-width:560px}
.help-hero__note{display:flex;align-items:center;gap:10px;margin-top:22px}
.help-hero__note i{width:7px;height:7px;border-radius:50%;background:#fff;box-shadow:0 0 10px #fff;animation:pulse 2.4s ease-in-out infinite}
@keyframes pulse{50%{opacity:.35}}
.chan-btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px}
.chan-btn{display:inline-flex;align-items:center;gap:12px;height:60px;padding:0 30px;border-radius:999px;background:var(--ink);color:#000;font:700 16px var(--sans);transition:transform .25s,box-shadow .25s}
.chan-btn + .chan-btn{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}
.chan-btn svg{width:22px;height:22px}
.chan-btn:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(255,255,255,.12)}
.chan-btn + .chan-btn:hover{background:var(--ink);color:#000}

.hsteps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;counter-reset:s}
.hsteps li{position:relative;display:flex;flex-direction:column;gap:12px;padding:30px 28px 28px;border-radius:24px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);overflow:hidden;transition:box-shadow .3s}
.hsteps li:hover{box-shadow:inset 0 0 0 1px rgba(255,255,255,.28)}
.hsteps__n{font:900 92px/.8 var(--disp);color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.28);margin-bottom:10px}
.hsteps h3{font:900 28px/1 var(--disp);text-transform:uppercase}
.hsteps p{color:var(--ink-2);font-size:15px;line-height:1.65}
.hsteps__go{margin-top:auto;padding-top:10px;font:500 11px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2)}
.hsteps__go:hover{color:var(--ink)}
.hsteps li:not(:last-child)::after{content:"";position:absolute;right:-1px;top:50%;width:14px;height:1px;background:rgba(255,255,255,.3)}

.write{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.write h2{font-size:clamp(44px,5vw,90px)}
.write__list{margin-top:30px}
.write__list li{font-size:17px;color:#d8d6d0}
.msg{border-radius:26px;overflow:hidden;background:#0d0d10;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1),0 40px 90px rgba(0,0,0,.6)}
.msg__bar{display:flex;align-items:center;gap:12px;padding:16px 22px;border-bottom:1px solid var(--line)}
.msg__bar svg{width:20px;height:20px;color:var(--ink)}
.msg__bar b{font:700 14px var(--sans)}
.msg__bar .lbl{margin-left:auto}
.msg__body{display:flex;flex-direction:column;gap:14px;padding:26px 22px 30px;background:radial-gradient(120% 80% at 50% 0%,#141418,#0a0a0c)}
.msg__body p{position:relative;max-width:82%;padding:14px 16px 24px;border-radius:18px;font-size:15px;line-height:1.55}
.msg__body time{position:absolute;right:12px;bottom:6px;font:500 10px var(--mono);color:rgba(255,255,255,.4)}
.msg__in{align-self:flex-end;background:#26262c;border-bottom-right-radius:6px}
.msg__out{align-self:flex-start;background:var(--ink);color:#000;border-bottom-left-radius:6px}
.msg__out time{color:rgba(0,0,0,.45)}
.msg__shot{display:block;margin-top:10px;padding:26px 12px 10px;border-radius:10px;background:repeating-linear-gradient(135deg,#333 0 6px,#2b2b30 6px 12px);font:500 10px var(--mono);color:rgba(255,255,255,.6)}

.files__t{display:block;margin:10px 0 14px}
.files{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;margin-bottom:36px}
.file{position:relative;display:grid;grid-template-columns:auto 1fr;gap:4px 16px;align-items:start;padding:20px 48px 20px 20px;border-radius:20px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .3s,transform .3s}
.file:hover{box-shadow:inset 0 0 0 1px rgba(255,255,255,.3);transform:translateY(-2px)}
.file i{grid-row:span 2;width:52px;height:52px;border-radius:14px;display:grid;place-items:center;background:#000;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);font:900 15px var(--disp);font-style:normal;letter-spacing:.02em}
.file b{font:600 16px var(--sans);align-self:end}
.file span{font-size:13px;line-height:1.5;color:var(--ink-2)}
.file svg{position:absolute;right:18px;top:20px;width:18px;height:18px;color:var(--ink-2);transition:transform .3s,color .3s}
.file:hover svg{color:var(--ink);transform:translate(2px,-2px)}

.chans{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.chan{position:relative;display:flex;flex-direction:column;gap:14px;padding:40px 40px 36px;border-radius:30px;overflow:hidden;min-height:440px;
  background:radial-gradient(120% 90% at 100% 0%,#1d1d22 0%,#0c0c0e 60%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);transition:box-shadow .4s,transform .5s cubic-bezier(.2,.8,.2,1)}
.chan:hover{box-shadow:inset 0 0 0 1px rgba(255,255,255,.4),0 40px 90px rgba(0,0,0,.6);transform:translateY(-4px)}
.chan__ic{position:absolute;right:-40px;top:-40px;width:260px;height:260px;color:rgba(255,255,255,.05);transition:color .5s,transform .8s cubic-bezier(.2,.8,.2,1)}
.chan__ic svg{width:100%;height:100%}
.chan:hover .chan__ic{color:rgba(255,255,255,.12);transform:rotate(-8deg) scale(1.05)}
.chan__name{font:900 clamp(64px,7vw,120px)/.85 var(--disp);text-transform:uppercase;letter-spacing:-.01em}
.chan .checks{margin-top:6px}
.chan__go{margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;gap:10px;height:54px;padding:0 26px;border-radius:999px;background:var(--ink);color:#000;font:700 15px var(--sans)}
.chan__go svg{width:18px;height:18px}
.route{display:grid}
.route__r{display:grid;grid-template-columns:1fr 1.4fr auto;gap:30px;align-items:center;padding:26px 0;border-top:1px solid var(--line)}
.route__r:last-child{border-bottom:1px solid var(--line)}
.route__r b{font:900 clamp(24px,2.2vw,36px)/1 var(--disp);text-transform:uppercase}
.route__r span{color:var(--ink-2);font-size:15px;line-height:1.6}
.route__r a{font:500 12px var(--mono);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}
.route__r a:hover{text-decoration:underline}
@media (max-width:1100px){.hsteps{grid-template-columns:1fr 1fr}.write,.chans{grid-template-columns:1fr}}
@media (max-width:640px){.hsteps{grid-template-columns:1fr}.route__r{grid-template-columns:1fr;gap:8px}.help-hero{min-height:0;padding-top:130px}
  .help-hero__img img{width:100%;opacity:.45}.chan{padding:30px 26px;min-height:0}}
/* крошки на 150px, как везде: герой поддержки идёт обычным потоком, не прижат к низу */
.help-hero{display:block;min-height:0;padding:150px 0 110px}
/* Discord — основной канал: светлее и с рамкой; Telegram для партнёров — тише */
.chans .chan:not(.chan--alt){box-shadow:inset 0 0 0 1px rgba(255,255,255,.32),0 30px 80px rgba(0,0,0,.5);background:radial-gradient(120% 90% at 100% 0%,#26262c 0%,#0e0e10 60%)}
.chans .chan:not(.chan--alt) .chan__ic{color:rgba(255,255,255,.09)}
.chan--alt .chan__go{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}
.chan--alt:hover .chan__go{background:var(--ink);color:#000}

/* Ворон в шапке служебных страниц: справа, растворяется в фоне */
.top-hero--img{min-height:min(80vh,780px);padding-bottom:70px}
.top-hero__img{position:absolute;inset:0;z-index:0;pointer-events:none}
.top-hero__img img{position:absolute;right:0;top:0;width:min(1500px,92%);height:100%;object-fit:cover;object-position:75% 50%;opacity:.92;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 40%,#000 86%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0%,#000 40%,#000 86%,transparent 100%)}
.top-hero--img::after{content:"";position:absolute;inset:auto 0 0;height:30%;z-index:1;background:linear-gradient(to top,var(--bg),transparent);pointer-events:none}
.top-hero--img .top-hero__glow{display:none}
.miss__img{position:relative}
.miss__img img{-webkit-mask-image:radial-gradient(closest-side,#000 60%,transparent);mask-image:radial-gradient(closest-side,#000 60%,transparent)}
@media (max-width:640px){.top-hero--img{min-height:0}.top-hero__img img{width:100%;opacity:.4}}
.top-hero--img h1,.help-hero h1{max-width:min(1000px,60%)}
.top-hero--img .lead{max-width:min(560px,48%)}
@media (max-width:900px){.top-hero--img h1,.help-hero h1,.top-hero--img .lead{max-width:none}}
.miss .miss__code{font:900 clamp(140px,20vw,320px)/.8 var(--disp);color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.35);max-width:none}

/* ── отзывы ── */
.rsum{display:flex;flex-wrap:wrap;gap:40px 60px;align-items:center;margin-top:40px}
.rsum__avg{display:grid;grid-template-columns:auto auto;gap:6px 18px;align-items:center}
.rsum__avg b{grid-row:span 2;font:900 clamp(72px,7vw,120px)/.8 var(--disp)}
.rsum__bars{display:grid;gap:6px;min-width:280px}
.rbar{display:grid;grid-template-columns:14px 220px 40px;gap:12px;align-items:center;opacity:.75;transition:opacity .2s}
.rbar:hover,.rbar.on{opacity:1}
.rbar i{display:block;height:6px;border-radius:3px;background:rgba(255,255,255,.12);overflow:hidden}
.rbar u{display:block;height:100%;background:var(--ink);text-decoration:none}
.rbar.on .lbl{color:var(--ink)}
.rgrid{columns:3 340px;column-gap:16px}
.rcard{break-inside:avoid;margin-bottom:16px;display:flex;flex-direction:column;gap:14px;padding:24px 24px 22px;border-radius:22px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);transition:box-shadow .3s}
.rcard:hover{box-shadow:inset 0 0 0 1px rgba(255,255,255,.26)}
.rcard header{display:flex;align-items:center;gap:12px}
.rcard__av{width:40px;height:40px;flex:none;border-radius:50%;display:grid;place-items:center;background:#000;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18);font:900 18px var(--disp)}
.rcard__who{flex:1;min-width:0}
.rcard__who b{display:block;font:600 15px var(--sans);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rcard__who time{display:block;margin-top:3px}
.rcard p{color:#cfcdc7;font-size:15px;line-height:1.65}
.rcard__about{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding-top:14px;border-top:1px solid var(--line)}
.rcard__about b{font:600 14px var(--sans)}
.rcard__about i{font-style:normal;font-size:13px;color:var(--ink-2)}
.rcard__about:hover b{text-decoration:underline}
.greviews{padding-top:100px}
.greviews__sum{display:flex;align-items:center;gap:14px}
.greviews__sum b{font:900 44px/1 var(--disp)}
.greviews__sum a{font:500 11px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2)}
.greviews__sum a:hover{color:var(--ink)}
@media (max-width:640px){.rbar{grid-template-columns:14px 1fr 40px}.rsum__bars{min-width:0;width:100%}}
.ft__copy{display:flex;justify-content:space-between;gap:10px 30px;flex-wrap:wrap;padding:22px var(--gut) 34px;border-top:1px solid var(--line);font-size:13px;color:var(--ink-3, #6f6d68)}

/* ── блог ── */
.blog-hero{min-height:min(64vh,620px)}
.blog-hero .tabs{margin-top:36px}
.post-hero{display:grid;grid-template-columns:1.25fr 1fr;gap:0;border-radius:28px;overflow:hidden;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);margin-bottom:24px;transition:box-shadow .3s}
.post-hero:hover{box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}
.post-hero__img{display:block;aspect-ratio:16/9;background:#000;overflow:hidden}
.post-hero__img img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.post-hero:hover .post-hero__img img{transform:scale(1.04)}
.post-hero__body{display:flex;flex-direction:column;gap:16px;padding:40px 40px 36px}
.post-hero__body b{font:900 clamp(32px,3vw,52px)/1 var(--disp);text-transform:uppercase}
.post-hero__intro{color:var(--ink-2);font-size:16px;line-height:1.65}
.post-hero__go{margin-top:auto;font:500 12px var(--mono);letter-spacing:.16em;text-transform:uppercase}
.blog-kinds{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.post-head h1{font-size:clamp(48px,6.4vw,120px);max-width:1200px}
.post-meta{display:flex;flex-wrap:wrap;gap:8px 18px;margin-bottom:6px}
.post-meta__cat{color:var(--ink)}
.post-cover{display:block;width:100%;height:auto;max-height:640px;object-fit:cover;border-radius:28px;margin:10px 0 20px}
.post-layout{display:grid;grid-template-columns:260px minmax(0,820px);gap:70px;padding-top:40px;padding-bottom:100px;justify-content:start}
.post-layout .read{max-width:none}
.toc{position:sticky;top:110px;align-self:start}
.toc ol{list-style:none;margin-top:16px;display:grid;gap:4px;counter-reset:t}
.toc li{counter-increment:t}
.toc a{display:block;padding:8px 0 8px 14px;border-left:1px solid var(--line);color:var(--ink-2);font-size:14px;line-height:1.4}
.toc a::before{content:counter(t,decimal-leading-zero) "  ";font:500 10px var(--mono);color:var(--ink-3,#6f6d68)}
.toc a:hover,.toc a.on{color:var(--ink);border-left-color:var(--ink)}
.read .prose h2{scroll-margin-top:110px}
.read .prose h3{margin-top:34px}
.read .prose h4{margin:0 0 10px;font:900 20px/1.1 var(--disp);text-transform:uppercase;color:var(--ink)}
.read .prose ol,.read .prose ul{margin:14px 0 0 22px}
.read .prose li{margin-top:8px}
.read .prose ul.cols{columns:2 240px;column-gap:30px}
.read .prose code{font:500 .9em var(--mono);padding:2px 7px;border-radius:6px;background:#17171b;color:var(--ink);box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}
.read .prose pre{margin-top:14px;padding:18px 20px;border-radius:16px;background:#0b0b0e;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1);overflow-x:auto}
.read .prose pre code{padding:0;background:none;box-shadow:none;font-size:13.5px;line-height:1.7}
.read .prose blockquote{margin-top:22px;padding:18px 22px;border-radius:16px;border-left:3px solid var(--ink);background:var(--panel);color:#d8d6d0}
.read .prose blockquote p{margin:0}
.read .prose .steps-card{margin-top:16px;padding:22px 24px 20px;border-radius:20px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line)}
.read .prose .steps-card ol{margin-top:6px}
.read .prose ol.big-steps{list-style:none;margin-left:0;counter-reset:b;display:grid;gap:10px}
.read .prose ol.big-steps li{counter-increment:b;position:relative;margin:0;padding:18px 20px 18px 74px;border-radius:18px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line)}
.read .prose ol.big-steps li::before{content:counter(b,decimal-leading-zero);position:absolute;left:20px;top:14px;font:900 32px/1 var(--disp);color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.4)}
.post-help{margin-top:60px;padding:30px 32px;border-radius:24px;background:radial-gradient(120% 90% at 100% 0%,#1d1d22,#0c0c0e 60%);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.post-help b{display:block;font:900 32px/1 var(--disp);text-transform:uppercase}
.post-help p{margin:10px 0 20px;color:var(--ink-2)}
.post-help div{display:flex;gap:10px;flex-wrap:wrap}
@media (max-width:1000px){.post-hero{grid-template-columns:1fr}.blog-kinds{grid-template-columns:1fr}.post-layout{grid-template-columns:1fr;gap:20px}.toc{position:static}}
.page-post .read .prose h3{font:700 19px/1.35 var(--sans);text-transform:none;color:var(--ink);margin-top:30px}
/* юридические документы: оглавление сбоку, вложенные списки с отступом */
.read .prose ul.inner{margin-left:44px;margin-top:6px}
.read .prose ul{list-style:disc}
.doc-layout .toc a{font-size:13px}
/* Раздел с вороном: стена коробок уступает место картинке */
.cat-hero--img .wall{display:none}
.cat-hero--img{min-height:min(84vh,820px)}
.cat-hero--img h1,.cat-hero--img .lead{max-width:min(1000px,60%)}
@media (max-width:900px){.cat-hero--img h1,.cat-hero--img .lead{max-width:none}}
.cat-hero--img h1{max-width:min(900px,52%)}
.cat-hero--img .lead{max-width:min(560px,46%)}
@media (max-width:900px){.cat-hero--img h1,.cat-hero--img .lead{max-width:none}}

/* ════════ спокойный режим: телефоны, планшеты, тач (класс calm ставит base.html) ════════ */
main,footer{overflow-x:clip}
.calm .rv,.calm .js .rv{opacity:1!important;transform:none!important}
/* бегущие строки и пульсации стоят */
.calm .wall__row,.calm .rays,.calm .glow,.calm .belt,.calm .gate__beam,.calm .tile__obj,.calm .help-hero__note i{animation:none!important}
/* разработчики: вместо бегущей ленты — лента, которую листают пальцем */
.calm .devs__row{animation:none;width:auto;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 var(--gut) 10px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.calm .devs__row::-webkit-scrollbar{display:none}
.calm .devs__row > *{scroll-snap-align:start;flex:none}
/* первый экран: знак стоит, надпись из стаи не нужна */
.calm .hero__word{display:none!important}
.calm.js .hero__logo,.calm .hero__logo{opacity:.9}
/* досмотр: без конвейера и рентгена — коробки лентой, которую листают пальцем */
.calm .stage{height:auto;overflow:visible;padding:20px 0 30px}
.calm .stage__bg,.calm .stage::after,.calm .track--x,.calm .gate,.calm .stamp,.calm .readout,.calm .belt{display:none!important}
.calm .track{position:static;height:auto;display:flex;gap:6px;overflow-x:auto;scroll-snap-type:x mandatory;padding:10px var(--gut) 20px;perspective:none;scrollbar-width:none}
.calm .track::-webkit-scrollbar{display:none}
.calm .track .slot{position:static;flex:none;width:170px;transform:none!important;scroll-snap-align:start}
/* ворон в «Рынке»: кадр вместо ролика */
.calm .about__raven video{display:block}
/* коробки читов на полке — под ширину экрана */
@media (max-width:640px){
  .shelf--wide .card--cheat,.shelf--wide .card--top{--box-w:min(300px,calc(100vw - 72px));--box-h:182px;--box-d:70px}
  .shelf--bm{justify-items:center}
}
html,body{overflow-x:clip}
/* Скрытые подписи не должны раздвигать страницу: позиционируются от своего блока, а не от экрана */
.vh{left:0;top:0}
.cmp__wrap{position:relative}

/* ── мобильное меню ── */
.burger{display:none}
@media (max-width:900px){
  .nav__in{gap:12px}
  .burger{display:block}
  .burger > summary{list-style:none;cursor:pointer}
  .burger > summary::-webkit-details-marker{display:none}
  .burger__btn{width:48px;height:48px;border-radius:50%;display:grid;place-content:center;gap:6px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}
  .burger__btn i{display:block;width:18px;height:1.5px;background:var(--ink);transition:transform .3s}
  .burger[open] .burger__btn i:first-child{transform:translateY(3.75px) rotate(45deg)}
  .burger[open] .burger__btn i:last-child{transform:translateY(-3.75px) rotate(-45deg)}
  .burger__panel{position:fixed;left:0;right:0;top:88px;bottom:0;overflow-y:auto;display:flex;flex-direction:column;padding:10px var(--gut) 40px;
    background:rgba(6,6,7,.97);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line)}
  .burger__panel > a:not(.burger__cta){display:flex;justify-content:space-between;align-items:center;padding:14px 0;border-bottom:1px solid var(--line);font:900 30px/1 var(--disp);text-transform:uppercase;color:var(--ink-2)}
  .burger__panel > a.on{color:var(--ink)}
  .burger__panel > a.burger__sub{font:600 16px var(--sans);text-transform:none;padding:12px 0 12px 16px;color:#cfcdc7}
  .burger__panel i{font:500 11px var(--mono);font-style:normal;color:var(--ink-2)}
  .burger__help{display:flex;flex-wrap:wrap;gap:8px 18px;padding:20px 0;font-size:14px;color:var(--ink-2)}
  .burger__cta{margin-top:10px;align-self:flex-start}
  .burger[open] ~ *{}
}
@media (max-width:900px){
  html:has(.burger[open]){overflow:hidden}
  /* текст поверх арта игры: на узком экране арт под текстом, поэтому темнее */
  .game-hero::after{background:linear-gradient(to top,var(--bg) 8%,rgba(7,7,8,.82) 45%,rgba(7,7,8,.55) 100%)!important}
  .page-hero__bg img{opacity:.35}
}
/* Каталог на телефоне: две коробки в ряд вместо одной */
@media (max-width:640px){
  .games{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 8px;padding:24px 0 60px}
  .games .gbox,.more__row .gbox{--box-w:min(140px,calc(50vw - 46px));--box-h:calc(var(--box-w) * 1.42);--box-d:46px}
  .games .cell__cap{font-size:12px}
}
/* На тач-экране наводить нечем: подпись под коробкой видна всегда */
.calm .cell__cap{opacity:1;transform:none;margin-top:12px;flex-wrap:wrap;justify-content:center;gap:4px 10px;text-align:center}
.calm .cell{padding:8px 0 14px}
.calm .cell::after{display:none}

/* ── телефон: коробки названием из воронов, без картинок (меньше трафика) ── */
.calm .gbox.has-cover .gb-art,.calm .gbox.has-cover .gb-hero,.calm .gbox.has-cover .gb-bg{display:none}
/* шапка игры: на компьютере широкий кадр или ролик, на телефоне — статичный основной кадр */
.game-hero__still{display:none}
.game-hero__media .game-hero__still,.game-hero__media .game-hero__wide{width:100%;height:100%;object-fit:cover}
@media (max-width:900px){
  .game-hero__media .game-hero__wide{display:none}
  .game-hero__media .game-hero__still{display:block;object-position:center 30%}
}
.calm .game-hero__media .game-hero__wide{display:none}
.calm .game-hero__media .game-hero__still{display:block}
/* похожие игры на телефоне: две в ряд */
@media (max-width:640px){
  .more__row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 8px}
  .more__row .cell .gbox{--box-w:min(140px,calc(50vw - 46px));--box-h:calc(var(--box-w) * 1.42);--box-d:46px}
}

/* ── телефон: главная лёгкая — без досмотра, большого ворона и картинок в заголовках ── */
.calm .xray,.calm .about__raven,.calm .inl{display:none!important}
@media (max-width:900px){
  .kinds,.about,.steps,.trust,.faq,.why,.devs,.txt,.block,.cmp,.shop,.know,.more,.all,.feat-g,.about-g,.greviews{padding-top:64px!important;padding-bottom:56px!important}
  .kinds__hd{margin-bottom:24px}
  .hero{height:auto;min-height:100svh}
  .faq__hd{margin-bottom:10px}
}
/* «Почему у нас» на телефоне: без 3D-картинок, карточки по содержимому */
.calm .tile__obj,.calm .tile__sheen{display:none!important}
.calm .tile{min-height:0!important;aspect-ratio:auto!important;padding-bottom:26px}
/* Первый экран на телефоне: знак, заголовок и кнопки идут потоком и не наезжают друг на друга */
@media (max-width:900px){
  .hero{display:flex;flex-direction:column;justify-content:flex-end;min-height:0;height:auto;padding:104px var(--gut) 48px}
  .hero__stage{position:relative;inset:auto;height:auto;display:flex;justify-content:center;margin-bottom:28px}
  .hero__logo{position:static;transform:none;height:auto;width:min(68vw,300px);max-height:34svh;object-fit:contain}
  .hero__lead,.hero__cta{position:static;max-width:none}
  .hero__cta{margin-top:22px}
  .hero__lead h1{font-size:clamp(30px,8.4vw,44px)}
  .hero__fade{display:none}
}
/* Телефон: футер без огромного знака, полка читов без пустот */
@media (max-width:900px){
  .ft__logo{height:96px}
  .ft{padding-top:56px}
  .giant{font-size:18.4vw}
  .shelf--wide{--gap:4px 0!important;row-gap:4px!important}
  .shelf--wide .card{padding:8px 0 12px!important}
  .shop__hd{margin-bottom:20px}
  .game-hero .in:not(.hero-crumbs){padding-bottom:36px}
  .game-hero{min-height:0}
}
@media (max-width:900px){
  .chips--feat{display:none}
  .cmp-t th:nth-child(6),.cmp-t td:nth-child(6){display:none}
  .cmp-t{min-width:640px}
  .cmp-t th,.cmp-t td{padding:12px 12px}
}

/* ── автор ── */
.post-meta__by{display:inline-flex;align-items:center;gap:8px;color:var(--ink)}
.post-meta__by img{width:22px;height:22px;border-radius:50%;object-fit:cover}
.post-meta__by:hover{text-decoration:underline}
.acard{display:flex;gap:22px;align-items:flex-start;margin-top:60px;padding:26px 28px;border-radius:24px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line)}
.acard__ava{width:88px;height:88px;flex:none;border-radius:50%;overflow:hidden;background:#000;display:grid;place-items:center;box-shadow:0 0 0 1px rgba(255,255,255,.18)}
.acard__ava img{width:100%;height:100%;object-fit:cover}
.acard__ava span{font:900 34px var(--disp)}
.acard__in{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}
.acard__name{font:900 30px/1 var(--disp);text-transform:uppercase}
.acard__name:hover{text-decoration:underline}
.acard p{margin:8px 0 4px;color:var(--ink-2);font-size:15px;line-height:1.6}
.acard__more{font:500 11px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-2)}
.acard__more:hover{color:var(--ink)}
.author-hero__g{display:grid;grid-template-columns:220px 1fr;gap:50px;align-items:center}
.author-hero__ava{width:220px;height:220px;border-radius:50%;overflow:hidden;background:#000;display:grid;place-items:center;box-shadow:0 0 0 1px rgba(255,255,255,.2),0 30px 80px rgba(0,0,0,.6)}
.author-hero__ava img{width:100%;height:100%;object-fit:cover}
.author-hero__ava span{font:900 90px var(--disp)}
.author-hero h1{font-size:clamp(56px,8vw,140px)}
.author-hero__games{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.author-hero__games li{height:34px;display:inline-flex;align-items:center;padding:0 14px;border-radius:999px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.16);font:500 13px var(--sans);color:#cfcdc7}
.author-hero__links{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
@media (max-width:760px){.author-hero__g{grid-template-columns:1fr;gap:24px}.author-hero__ava{width:120px;height:120px}.acard{flex-direction:column}}
@media (max-width:900px){.hero__word{display:none!important}}
.devs__lead{color:var(--ink-2);font-size:16px;line-height:1.6;max-width:420px}
/* статусы: сводка по играм */
.sgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px}
.sgame{position:relative;display:flex;flex-direction:column;gap:8px;padding:18px 20px 22px;border-radius:18px;background:var(--panel);box-shadow:inset 0 0 0 1px var(--line);overflow:hidden;transition:box-shadow .3s}
.sgame:hover{box-shadow:inset 0 0 0 1px rgba(255,255,255,.3)}
.sgame b{font:600 16px var(--sans)}
.sgame i{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(255,255,255,.12)}
.sgame i::after{content:"";position:absolute;inset:0 auto 0 0;width:var(--p);background:var(--ink)}
.stat-t{min-width:560px}
/* Хаб игры на телефоне: без картинки рядом с текстом «Об игре» — она давала пустоту в полэкрана */
@media (max-width:900px){.about-g__img{display:none}.about-g__g{gap:0}}
.calm .about-g__img{display:none}
