@font-face{font-family:'Unbounded';font-weight:400;font-display:swap;src:url(fonts/unbounded-400.woff2) format('woff2')}
@font-face{font-family:'Unbounded';font-weight:800;font-display:swap;src:url(fonts/unbounded-800.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-weight:400;font-display:swap;src:url(fonts/plexmono-400.woff2) format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-weight:600;font-display:swap;src:url(fonts/plexmono-600.woff2) format('woff2')}
@font-face{font-family:'Caveat';font-weight:600;font-display:swap;src:url(fonts/caveat-600.woff2) format('woff2')}

:root{
  --bg:#000;
  --ink:#a9a6a0;
  --hi:#dedbd4;
  --dim:#5f5d59;
  --line:#1c1c1c;
  --red:#a3151a;
  --blood:#5e0b0b;
  --ink-pen:#c0161c;
  --blue-pen:#2340a8;
  --cam:#ff9a3d;
  --paper:#d3d0c8;
  --paper2:#ecebe6;
  --serif:'Times New Roman',Times,'Liberation Serif','Noto Serif',serif;
  --sans:Verdana,Tahoma,'DejaVu Sans',Geneva,sans-serif;
  --grot:Arial,Helvetica,'Liberation Sans',sans-serif;
  --mono:'IBM Plex Mono','Courier New',monospace;
  --display:'Unbounded',Arial,sans-serif;
  --pen:'Caveat','Comic Sans MS',cursive;
}
*,*::before,*::after{box-sizing:border-box}
html{background:#000;-webkit-text-size-adjust:100%;overflow-x:hidden}
body{margin:0;background:#000;color:var(--ink);font:11.5px/1.5 var(--sans);overflow-x:hidden;overflow-x:clip;
  background-image:radial-gradient(ellipse at 50% 0%,#0d0d0d,#000 60%)}
img,video{display:block;max-width:100%;height:auto}
a{color:#c9c6bf}
a:visited{color:#7d6a78}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
p{margin:0 0 1em}
::selection{background:var(--red);color:#fff}
.js body.locked{overflow:hidden}
.red{color:var(--ink-pen)}
.dim{color:var(--dim)}

/* разрядка */
.wide{font:10px/1.6 var(--grot);letter-spacing:.32em;text-transform:uppercase;color:#8a8780;margin:0;word-spacing:.2em}
.wide--line{text-align:center;padding:10px 6px 14px;font-size:9.5px;color:#9b9891}
.wide--h{font-size:10px;color:#77746e;padding:34px 0 14px;border-bottom:1px solid #222;margin:0 0 18px}
.wide--foot{text-align:center;font-size:8.5px;letter-spacing:.2em;color:#5a5853;padding:30px 4px 12px}

/* зерно */
.grain{position:fixed;inset:-50%;width:200%;height:200%;pointer-events:none;z-index:90;opacity:.11;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  animation:grain .9s steps(5) infinite}
@keyframes grain{0%{transform:translate(0,0)}25%{transform:translate(-4%,3%)}50%{transform:translate(3%,-5%)}75%{transform:translate(-6%,-2%)}100%{transform:translate(0,0)}}

/* ---------- вход ---------- */
.gate{display:none}
.js .gate{display:grid;position:fixed;inset:0;z-index:100;background:#000;place-items:center;text-align:center;transition:opacity .9s ease, visibility 0s linear .9s}
.gate.off{opacity:0;visibility:hidden;pointer-events:none}
.gate__in{padding:20px}
.gate__img{width:92px;margin:0 auto 22px;opacity:.75;filter:contrast(1.2)}
.gate__name{font:800 clamp(34px,11vw,64px)/1 var(--display);letter-spacing:-.03em;margin:0 0 12px;
  background:linear-gradient(180deg,#d6d6d6 0%,#9a9a9a 45%,#5d5d5d 55%,#a8a8a8 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.gate__upd{font:10px var(--sans);color:var(--dim);margin-bottom:26px}
.gate__load{font:11px var(--mono);color:#777}
.gate__go{opacity:0;transition:opacity .5s;margin:26px 0 0}
.gate__go a{display:inline-block;min-width:240px;padding:22px 30px 22px 46px;font:400 26px/1 var(--serif);letter-spacing:.6em;color:#e6e3dc!important;text-decoration:none;
  background:linear-gradient(#2a2a2a,#0e0e0e);border:4px outset #5a5a5a;box-shadow:0 0 40px rgba(255,255,255,.06)}
.gate__go a:active{border-style:inset}
.gate__go a:focus-visible{outline:1px dotted #aaa;outline-offset:4px}
.gate.ready .gate__go{opacity:1}

/* ---------- каркас ---------- */
.wrap{max-width:820px;margin:0 auto;padding:10px 8px 0;display:grid;grid-template-columns:1fr;gap:10px}

.side{background:#0a0a0a;border:3px ridge #8a1515;box-shadow:0 0 14px rgba(150,15,15,.25);font:13px/1.25 var(--serif);text-align:center}
.side summary{list-style:none;cursor:pointer;padding:9px;color:#9c9992;letter-spacing:.12em;font-size:12px}
.side summary::-webkit-details-marker{display:none}
.side[open] summary{border-bottom:2px groove #5a1010}
.side ul{list-style:none;margin:0;padding:6px 10px;display:grid;grid-template-columns:1fr 1fr;gap:0 8px}
.side li{padding:9px 2px;border-bottom:1px solid #2a0d0d}
.side a{color:#e3e0d9;text-decoration:none}
.side a:hover{text-decoration:underline}
.side small{font-size:11px;color:#77746e}
.side .off{color:#555}
.side__meta{border-top:2px groove #5a1010;padding:10px;font:10px var(--sans);color:#6d6a65;display:flex;justify-content:space-around;gap:10px}
.side__meta p{margin:0}
.side__meta b{font:600 12px var(--mono);color:#b9b6af;font-variant-numeric:tabular-nums}
.counter{background:#000;border:1px inset #333;padding:0 4px;letter-spacing:.2em;color:#c33!important}

.frame{position:relative;background:#050505;border:9px solid #222;padding:14px 12px 4px;min-width:0;
  border-image:linear-gradient(180deg,#4a4a4a,#151515 18%,#2e2e2e 40%,#0e0e0e 70%,#363636) 1;
  box-shadow:inset 0 0 0 1px #000, inset 0 0 60px rgba(0,0,0,.9), 0 0 0 1px #2a2a2a}
.orb{position:absolute;top:-16px;width:58px;height:58px;border-radius:50%;overflow:hidden;border:4px ridge #555;z-index:3;background:#000;box-shadow:0 0 18px rgba(0,0,0,.9)}
.orb img{width:100%;height:100%;object-fit:cover;filter:brightness(.8) contrast(1.3)}
.orb--l{left:-18px}
.orb--r{right:-18px}

/* шапка как на афише */
.top{position:relative;padding:22px 4px 8px;text-align:left;container-type:inline-size}
.top__date{font:400 13px var(--grot);color:#bbb;margin:0 0 -4px 2px}
.logo{position:relative;font:800 11.2vw/1 var(--display);font-size:13cqw;letter-spacing:-.03em;margin:0;
  background:linear-gradient(180deg,#d6d6d6 0%,#9a9a9a 45%,#5d5d5d 55%,#a8a8a8 100%);-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 2px 0 #000) drop-shadow(0 0 14px rgba(255,255,255,.08))}
.logo::after{content:attr(data-text);position:absolute;inset:0;color:var(--red);opacity:0;-webkit-text-fill-color:var(--red);mix-blend-mode:screen;animation:gl 6s steps(1) infinite}
@keyframes gl{0%,93%,100%{opacity:0}94%{opacity:.7;clip-path:inset(20% 0 55% 0);transform:translate(-4px,0)}96%{opacity:.6;clip-path:inset(60% 0 8% 0);transform:translate(3px,0)}97%{opacity:0}}
.top__heads{display:flex;justify-content:space-between;font:400 12px var(--grot);letter-spacing:.06em;margin:2px 2px 12px}
.top__heads a{color:#c8c5be;text-decoration:none}

/* видео-кассета */
.vcr{position:relative;background:#000;border:2px inset #2a2a2a;aspect-ratio:4/3;overflow:hidden}
.vcr video{width:100%;height:100%;object-fit:cover;filter:contrast(1.15) saturate(.6) brightness(.9)}
.vcr::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:repeating-linear-gradient(0deg,rgba(0,0,0,.3) 0 1px,transparent 1px 3px),radial-gradient(ellipse at center,transparent 50%,rgba(0,0,0,.75) 100%)}
.vcr__hud{position:absolute;inset:10px 12px;z-index:2;pointer-events:none;font:600 13px var(--mono);color:#e8f6f2;text-shadow:0 0 6px rgba(160,255,230,.6);letter-spacing:.08em}
.vcr__hud span{position:absolute}
.vcr__tl{top:0;left:0}.vcr__tr{top:0;right:0}.vcr__bl{bottom:0;left:0}.vcr__br{bottom:0;right:0}
.vcr__tl{animation:blink 1.2s steps(2) infinite}
@keyframes blink{50%{opacity:.15}}
.vcr__snd{position:absolute;z-index:3;left:50%;bottom:8px;transform:translateX(-50%);font:10px var(--sans);letter-spacing:.2em;color:#ccc;background:rgba(0,0,0,.6);border:1px outset #444;padding:4px 8px}
.vcr__snd b{font-weight:400;color:#777}
.vcr__snd[aria-pressed="true"] b{color:#e8f6f2}

/* вступление — как на сайтах 2000-х */
.intro{padding:4px 2px 0;text-align:justify;font:12.5px/1.55 var(--sans);color:#d6d3cc;hyphens:auto}
.intro .note{font:10.5px/1.5 var(--mono);color:#8e2a2a;text-align:left}
.bevels{display:flex;flex-wrap:wrap;gap:8px}
.bevels--c{justify-content:center}
.bevel{display:inline-block;padding:9px 14px;background:linear-gradient(#262626,#121212);border:2px outset #4b4b4b;color:#e2dfd8!important;text-decoration:none;font:10.5px var(--sans);letter-spacing:.24em}
.bevel:active{border-style:inset}
.bevel--big{padding:13px 18px;font-size:11px}

.ticker{display:block;font:10.5px var(--serif);font-style:italic;letter-spacing:.06em;color:#777;border-top:1px solid #1d1d1d;border-bottom:1px solid #1d1d1d;padding:5px 0;margin:6px 0 0}

/* index of */
.idx{font:11px/1.5 var(--serif);color:#bbb;padding:22px 2px 6px}
.idx__h{font:700 19px/1.2 var(--serif);color:#ddd;margin:0 0 8px}
.idx table{width:100%;border-collapse:collapse;border-top:1px solid #555;border-bottom:1px solid #555;font-size:11.5px}
.idx th{text-align:left;font-weight:400;padding:4px 6px 4px 0;color:#9a9a9a}
.idx td{padding:1px 6px 1px 0;white-space:nowrap;color:#888}
.idx td:first-child{white-space:normal;word-break:break-all}
.idx td:nth-child(2){font-size:10px}
.idx a{color:#9fb4e8}
.idx a:visited{color:#a58bc3}
.idx__foot{font-style:italic;color:#666;margin:6px 0 0}
@media (max-width:420px){.idx td:nth-child(3),.idx th:nth-child(3){display:none}}

/* ---------- фото ---------- */
.ph{position:relative;margin:26px 0;background:#000}
.ph img{width:100%;cursor:zoom-in}
.ph[data-light]::after{content:"";position:absolute;left:0;right:0;top:0;bottom:var(--cap,0px);pointer-events:none;
  background:radial-gradient(circle var(--r,150px) at var(--x,50%) var(--y,50%),rgba(255,248,225,.07) 0,transparent 50%,rgba(0,0,0,.48) 76%,rgba(0,0,0,.82) 100%)}
.no-js .ph::after{display:none}
.ts{position:absolute;right:8px;bottom:8px;z-index:2;font:600 11px var(--mono);color:var(--cam);text-shadow:0 0 4px rgba(255,140,40,.7),1px 1px 0 #000;letter-spacing:.06em;pointer-events:none}
.ph:has(figcaption) .ts{bottom:calc(8px + var(--cap,0px))}
.ph figcaption{font:9.5px var(--grot);letter-spacing:.22em;color:#6a6762;padding:7px 0 0;text-transform:lowercase}
.ph--full{margin-left:-4px;margin-right:-4px}
.ph--w70{width:72%}
.ph--right{margin-left:auto}
.ph--tilt{transform:rotate(-1.2deg)}
.ph--down{margin-top:44px}
.ph--tv img{animation:tvf 3s steps(1) infinite}
@keyframes tvf{0%,100%{opacity:1}47%{opacity:.65}48%{opacity:1}73%{opacity:.85}}
.ph--poster{max-width:360px;margin:30px auto 10px;border:3px ridge #333}

.pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-items:start}
.pair .ph{margin:10px 0}
.pair--skew{grid-template-columns:1.45fr .55fr}
.pair--skew .ph:nth-child(2){margin-top:70px}
.pair--odd{grid-template-columns:1.2fr .8fr}
.vert{writing-mode:vertical-rl;font:10px var(--grot);letter-spacing:.4em;color:#55524e;margin:20px 0 0;justify-self:center}

.quad{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:26px 0 0}
.quad .ph{margin:0}
.quad .ph:nth-child(1){grid-row:span 2}
.quad .ph:nth-child(1) img{height:100%;object-fit:cover}
.quad .ph:nth-child(4){grid-column:1 / -1}
.quad .ph:nth-child(4) img{aspect-ratio:16/9;object-fit:cover}
.cap{font:9.5px var(--grot);letter-spacing:.22em;color:#6a6762;margin:7px 0 0}
.cap--r{text-align:right}

/* текстовые блоки */
.txt{font:11.5px/1.6 var(--sans);color:#a8a59f;max-width:400px;margin:22px 0;text-align:justify}
.txt--r{margin-left:auto;max-width:300px}
.lbl{font:10px var(--grot);letter-spacing:.38em;text-transform:uppercase;color:#d0cdc6;margin:0 0 6px}

/* кассета — лента кадров */
.strip{display:flex;gap:4px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -12px;padding:10px 12px;background:#0b0b0b;border-top:1px solid #1d1d1d;border-bottom:1px solid #1d1d1d;scrollbar-width:thin;scrollbar-color:#333 #000}
.strip figure{position:relative;margin:0;flex:0 0 78%;scroll-snap-align:center;border:6px solid #111;border-left-width:14px;border-right-width:14px;
  background:#000;box-shadow:inset 0 0 0 1px #222}
.strip figure::before,.strip figure::after{content:"";position:absolute;top:0;bottom:0;width:8px;left:-11px;
  background:repeating-linear-gradient(#000 0 5px,transparent 5px 12px)}
.strip figure::after{left:auto;right:-11px}
.strip img{cursor:zoom-in}

/* журнал как .txt */
.log{font:11px/1.6 var(--mono);color:#bdbab3;margin:24px 0;max-width:400px}
.log p{display:grid;grid-template-columns:auto 1fr;gap:12px;margin:0 0 6px}
.log .log__h{display:block;color:#77746e;font-size:10px;margin:0}
.log hr{border:0;border-top:1px dashed #333;margin:4px 0 10px}
.log b{color:#e9e6df;font-weight:600;white-space:nowrap}
.log i{font-style:normal;color:#fff;text-shadow:0 0 8px rgba(255,255,255,.6)}
.log--r{margin-left:auto;max-width:340px}
.log--last{color:#d7d4cd}
.cur{animation:blink .8s steps(2) infinite;color:var(--ink-pen)}

/* ---------- сканы документов ---------- */
.docwrap{position:relative;margin:40px -4px 50px;padding:10px 0 0}
.scan{position:absolute;width:62%;opacity:.35;filter:grayscale(1) brightness(.65);z-index:0;pointer-events:none}
.scan--a{right:-14px;top:-24px;transform:rotate(7deg)}
.scan--b{left:-18px;bottom:-30px;transform:rotate(-8deg)}
.docscan{position:relative;z-index:1;margin:0}
.docscan>img:first-child{width:100%;cursor:zoom-in}
.docscan--a{transform:rotate(-.8deg);box-shadow:0 22px 50px rgba(0,0,0,.85)}
.docscan--a>img:first-child{filter:sepia(.3) brightness(.78) contrast(1.08)}
.docscan--b{transform:rotate(.9deg);filter:drop-shadow(0 18px 30px rgba(0,0,0,.85))}
.docscan__att{position:absolute;width:46%;right:-10px;bottom:-30px;transform:rotate(5deg);border:6px solid #cfc9b8;border-bottom-width:24px;
  box-shadow:0 12px 26px rgba(0,0,0,.8);filter:grayscale(1) contrast(1.2) brightness(.8);cursor:zoom-in}
.docscan__clip{position:absolute;z-index:2;right:30%;bottom:calc(30% - 34px);width:16px;height:54px;border:3px solid #8a8e92;border-radius:10px;transform:rotate(8deg);
  box-shadow:1px 2px 3px rgba(0,0,0,.6)}
.stain{position:absolute;width:90px;left:8px;bottom:30px;mix-blend-mode:multiply;opacity:.5;transform:rotate(40deg);pointer-events:none}
.pen{font:600 18px/1.05 var(--pen);margin:0}
.pen--red{color:var(--ink-pen)}
.pen--b{text-align:right;margin:-12px 6px 0;transform:rotate(-4deg)}

/* прочее — превью */
.thumbs{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 8px;align-items:end}
.thumbs a{display:block;text-decoration:none;text-align:center;font:9px var(--sans);color:#6f6c67}
.thumbs img{width:100%;aspect-ratio:3/4;object-fit:cover;border:2px outset #333;filter:brightness(.8)}
.thumbs a:hover img,.thumbs a:active img{filter:brightness(1.05);border-color:#555}
.thumbs span{display:block;margin-top:4px;letter-spacing:.04em}

/* фигуранты — как на афише */
.cast{padding:0 2px}
.cast__top{position:relative;margin:4px 0 14px;container-type:inline-size}
.cast__top>span{font:13px var(--grot);color:#bbb}
.cast__logo{font:800 10vw/1 var(--display);font-size:13cqw;letter-spacing:-.03em;color:#8d8d8d;margin:0}
.cast__heads{display:flex;justify-content:space-between;font:12px var(--grot);margin:2px 0 0}
.cast a,.cast__heads a{color:#4d73ff;text-decoration:underline;text-underline-offset:2px;text-shadow:0 0 8px rgba(77,115,255,.55)}
.cast a:visited{color:#9b6bff;text-shadow:0 0 8px rgba(155,107,255,.5)}
.cast a:hover,.cast a:active{color:#8fa8ff;text-shadow:0 0 12px rgba(120,150,255,.9)}
.cast__cols{display:grid;grid-template-columns:1fr 1fr;gap:0 10px;font:13px/1.32 var(--grot);border-top:1px solid #222;padding-top:12px}
.cast__cols ul{list-style:none;margin:0;padding:0}
.cast__cols ul+ul{text-align:right}
.cast__cols li{padding:1px 0;word-break:break-word}
.cast__more{display:flex;justify-content:space-between;gap:10px;font:10.5px var(--grot);color:#77746e;margin:12px 0 0;letter-spacing:.04em}
.cast__more>span:last-child{text-align:right}
.cast .rd{font-size:10px}

/* допуск */
.adm{padding:28px 2px 0;border-top:1px solid #222;margin-top:28px}
.adm__row{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:6px;font-family:var(--grot)}
.adm__row b{display:block;font:400 26px/1 var(--grot);color:#ddd}
.adm__row span{display:block;font-size:11px;color:#77746e;margin-top:4px;letter-spacing:.04em}
.adm__c{text-align:center}
.adm__c b{font:800 16px var(--grot);letter-spacing:.02em}
.adm__c span{font-size:9.5px}
.adm__r{text-align:right}
.adm__links{text-align:center;font:11px var(--serif);margin:18px 0}

/* закрашенное: .rd открывается тапом, .x — навсегда */
.rd{color:transparent;background:#000;box-shadow:inset 0 0 0 1px #262626;cursor:pointer;padding:0 2px;-webkit-tap-highlight-color:transparent;transition:background .25s,color .25s;
  -webkit-box-decoration-break:clone;box-decoration-break:clone}
.rd.open{background:transparent!important;box-shadow:none;color:var(--ink-pen)!important}
.rd:focus-visible{outline:1px dotted #888}
.x{color:transparent;background:#161616;box-shadow:inset 0 0 0 1px #222;user-select:none;-webkit-user-select:none;padding:0 1px;border-radius:1px;
  -webkit-box-decoration-break:clone;box-decoration-break:clone}
.x--r{background:#560a0d;box-shadow:inset 0 0 0 1px #6c1013}
.vis{color:#f2efe8;text-shadow:0 0 8px rgba(255,255,255,.25)}
.clip{margin:4px 0 0 6%;color:#8a8780;font:10.5px/1.5 var(--mono);transform:rotate(-1.2deg);max-width:320px}
.clip b{font-weight:600;color:#e6e3dc;text-shadow:0 0 10px rgba(255,255,255,.18)}

/* ---------- системный мусор 2000-х ---------- */
.systop{grid-column:1/-1;margin:0;font:10.5px/1.6 var(--serif);color:#6d6a65;text-align:center}
.systop a{color:#7f95d6}
.systop b{color:#bbb;font-weight:400}
.php{font:12px/1.4 var(--serif);color:#d6d3cc;margin:18px 0 0;word-break:break-word}
.php b{font-weight:700}
.apache{font:13px/1.35 var(--serif);color:#d6d3cc;margin:34px 0 10px;word-break:break-word}
.apache h3{font:700 22px var(--serif);margin:0 0 10px}
.apache p{margin:0 0 10px}
.apache hr{border:0;border-top:1px solid #777}
.apache address{font-style:italic;font-size:12px;color:#aaa}
.idx--sub{padding:18px 0 4px}
.idx__h--sm{font:700 15px var(--serif);color:#ddd;margin:0 0 6px}
.new{font:700 9px var(--sans);color:#ff3b30;animation:blink .9s steps(2) infinite;vertical-align:super}

.win{--face:#c0c0c0;background:var(--face);color:#000;font:11px/1.35 Tahoma,Verdana,'DejaVu Sans',sans-serif;max-width:340px;
  border:2px solid;border-color:#fff #404040 #404040 #fff;box-shadow:inset -1px -1px #808080,inset 1px 1px #dfdfdf,0 14px 30px rgba(0,0,0,.7);filter:brightness(.82) saturate(.75)}
.win__bar{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:2px 3px 2px 5px;background:linear-gradient(90deg,#0a246a,#a6caf0);color:#fff;font-weight:700}
.win__bar i{flex:none;font-style:normal;width:16px;height:14px;line-height:12px;text-align:center;background:var(--face);color:#000;border:1px solid;border-color:#fff #404040 #404040 #fff}
.win__body{padding:10px 10px 8px}
.win__body p{margin:0 0 8px}
.win__msg{display:flex;gap:12px;align-items:flex-start}
.win__ico{flex:none;width:30px;height:30px;border-radius:50%;background:#c00;color:#fff;font:700 15px/30px Tahoma,sans-serif;text-align:center;box-shadow:inset -2px -2px rgba(0,0,0,.3)}
.win__ico--w{background:#e8c400;color:#000;border-radius:0;clip-path:polygon(50% 0,100% 100%,0 100%);line-height:38px;box-shadow:none}
.win__btns{text-align:center;margin:10px 0 0!important}
.win__btn{font:11px Tahoma,Verdana,sans-serif;color:#000;background:var(--face);min-width:72px;padding:4px 8px;margin:0 2px;border:2px solid;border-color:#fff #404040 #404040 #fff;box-shadow:inset -1px -1px #808080}
.win__btn:active{border-color:#404040 #fff #fff #404040;box-shadow:inset 1px 1px #808080}
.win__btn:focus-visible{outline:1px dotted #000;outline-offset:-5px}
.win__prog{height:16px;border:1px solid;border-color:#808080 #fff #fff #808080;background:#fff;padding:2px;margin:6px 0}
.win__prog i{display:block;height:100%;width:0;background:repeating-linear-gradient(90deg,#0a246a 0 8px,transparent 8px 10px);transition:width .4s linear}
.win__anim{position:relative;display:flex;justify-content:space-between;align-items:flex-end;height:30px}
.fold{width:30px;height:22px;background:#b3a674;border:1px solid #6c6440;border-radius:0 3px 2px 2px;position:relative}
.fold::before{content:"";position:absolute;left:-1px;top:-5px;width:13px;height:5px;background:#b3a674;border:1px solid #6c6440;border-bottom:0;border-radius:2px 2px 0 0}
.sheet{position:absolute;left:34px;bottom:6px;width:11px;height:14px;background:#fff;border:1px solid #777;animation:fly 1.5s linear infinite}
@keyframes fly{0%{left:34px;bottom:6px}50%{bottom:22px}100%{left:calc(100% - 46px);bottom:6px}}
.win--copy{margin:18px 0 0 auto;transform:rotate(-.6deg)}
.sysmodal{position:fixed;inset:0;z-index:96;display:grid;place-items:center;background:rgba(0,0,0,.45);padding:16px}
.sysmodal[hidden]{display:none}
.sysmodal .win{width:100%;max-width:320px;filter:none}

.badges{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;padding:26px 0 8px}
.b88{width:88px;height:31px;display:grid;grid-template-rows:1fr auto;border:1px solid #555;font:700 10px/1 var(--grot);text-align:center;overflow:hidden;filter:saturate(.7) brightness(.9)}
.b88 b{display:grid;place-items:center;letter-spacing:.04em}
.b88 i{font:400 8px/1 var(--sans);font-style:normal;padding:2px 0;background:#000;color:#999}
.b88--a{background:#0a246a;color:#fff}
.b88--b{background:#3a3a3a;color:#ddd}
.b88--c{background:#e8e8e8;color:#000}
.b88--d{background:#000;color:#e33}
.b88--d b{animation:blink 1.2s steps(2) infinite}
.b88--e{background:#4e0d0d;color:#eee}
.b88--f{background:linear-gradient(#2f5f2f,#173417);color:#dfe}
.sysfoot{text-align:center;font:10px/1.5 var(--serif);color:#5d5b57;margin:4px 0 0}

/* новости — как лента на портале 2000-х */
.news{margin:40px 0 10px;border:1px solid #2a2a2a;background:#080808;font:11.5px/1.55 var(--sans);color:#bdbab3}
.news a{color:#4d73ff;text-decoration:underline;text-underline-offset:2px;text-shadow:0 0 8px rgba(77,115,255,.45)}
.news a:visited{color:#9b6bff}
.news__bar{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:5px 8px;background:linear-gradient(#3a0b0b,#140303);border-bottom:1px solid #5a1010}
.news__bar b{font:700 11px var(--sans);color:#e6e3dc;letter-spacing:.2em}
.news__bar a{font-size:10px}
.news>p,.news>h3,.news>ul{margin-left:10px;margin-right:10px}
.news__date{font:700 10px var(--sans);color:#8e2a2a;margin-top:12px;margin-bottom:6px}
.news__h{font:700 19px/1.25 var(--serif);margin-top:0;margin-bottom:12px;transform:rotate(-1.4deg);transform-origin:0 50%}
.stretch{display:inline-block;transform:scaleX(1.7);transform-origin:0 50%;margin-right:4.4em;letter-spacing:.02em}
.news__lead{text-align:justify}
.news__big{font:400 17px/1.3 var(--serif);color:#e2dfd8;margin:16px 6px 16px 18px!important;transform:rotate(1.1deg) skewX(-6deg);letter-spacing:-.01em}
.squeeze{display:inline-block;transform:scaleX(.72);transform-origin:0 50%;margin-right:-1.6em;white-space:nowrap}
.news__list{list-style:none;padding:0}
.news__list li{position:relative;padding:0 0 9px 16px}
.news__list li::before{content:"»";position:absolute;left:2px;color:#8e2a2a;font-weight:700}
.news__list li:nth-child(2){margin-left:14px;transform:rotate(-.6deg)}
.news__list li:nth-child(3){letter-spacing:.08em;font-size:10.5px}
.news__list li:nth-child(4){margin-left:-4px;transform:rotate(.5deg)}
.news .moji{font-family:var(--serif);color:#c9584d}
.news__meta{font:10px var(--sans);color:#6d6a65;border-top:1px dashed #2a2a2a;padding:8px 0 10px;margin-bottom:0}
.news__meta a{text-shadow:none}

/* появление */
.js .ph img,.js .strip img{opacity:0;transition:opacity 1.6s ease, filter 1.6s ease;filter:blur(6px) brightness(.4)}
.js .ph.in img,.js .strip .in img{opacity:1;filter:none}
.js .thumbs img{filter:brightness(.8)}

/* подпись с фонарём */
.credit{text-align:center;font:10px var(--grot);letter-spacing:.2em;color:#5a5853;margin:0;padding:0 4px 26px}
.torch{position:relative;isolation:isolate;display:inline-block;margin-left:.6em;padding:6px 10px;font:600 15px/1 var(--mono);letter-spacing:.12em;text-decoration:none;
  background:radial-gradient(circle 46px at var(--tx,50%) 50%,#fffbea 0,#fff3c4 30%,#8a877f 62%,#3c3b38 100%);-webkit-background-clip:text;background-clip:text;color:transparent;
  animation:torch 4.2s ease-in-out infinite alternate}
.torch::before{content:"";position:absolute;z-index:-1;top:50%;left:var(--tx,50%);width:110px;height:56px;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none;
  background:radial-gradient(ellipse,rgba(255,244,205,.22),rgba(255,244,205,.06) 45%,transparent 70%)}
@property --tx{syntax:'<percentage>';inherits:true;initial-value:50%}
@keyframes torch{0%{--tx:-10%}45%{--tx:70%}60%{--tx:55%}100%{--tx:110%}}
.torch:hover{color:#fff;background:none;text-shadow:0 0 14px rgba(255,244,205,.8)}
.torch:visited{color:transparent}

/* подвал */
.foot{text-align:center;font:9.5px var(--sans);color:#4a4845;padding:16px 10px 96px;letter-spacing:.06em}
.foot a{color:#6d6a65}

/* липкие билеты */
.sticky{position:fixed;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));z-index:70;display:flex;justify-content:space-between;align-items:center;
  padding:12px 14px;background:linear-gradient(#1d1d1d,#0b0b0b);border:2px outset #444;color:#e2dfd8;text-decoration:none;
  font:10.5px var(--sans);letter-spacing:.24em;box-shadow:0 8px 30px #000;transform:translateY(160%);transition:transform .35s ease}
.sticky span:last-child{color:#77746e;letter-spacing:.12em;font-size:9.5px}
.sticky.show{transform:none}
.no-js .sticky{transform:none}

/* лайтбокс */
.lb{position:fixed;inset:0;z-index:95;background:rgba(0,0,0,.96);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px}
.lb[hidden]{display:none}
.lb img{max-height:78vh;width:auto;border:3px ridge #333}
.lb p{font:10px var(--grot);letter-spacing:.2em;color:#777;margin:12px 0 6px;text-transform:lowercase;text-align:center}
.lb__x{font:12px var(--serif);color:#ccc;letter-spacing:.1em;padding:8px}

@media (min-width:760px){
  body{font-size:12px}
  .wrap{grid-template-columns:186px 1fr;gap:14px;padding-top:24px;align-items:start}
  .side{position:sticky;top:14px}
  .side summary{display:none}
  .side ul{grid-template-columns:1fr;padding:6px 8px}
  .side__meta{flex-direction:column}
  .frame{padding:18px 26px 6px}
  .orb{width:74px;height:74px;top:-22px}
  .orb--l{left:-26px}.orb--r{right:-26px}
  .strip figure{flex-basis:46%}
  .sticky{left:auto;right:20px;bottom:20px;width:320px}
  .thumbs{grid-template-columns:repeat(4,1fr)}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .js .ph img,.js .strip img{opacity:1;filter:none}
}

/* кракозябры */
.moji{font-family:var(--serif);letter-spacing:.02em;color:inherit;word-break:break-all}
.moji.glitch{color:#c9584d;text-shadow:1px 0 #3ad, -1px 0 #d33}
.cap .moji,figcaption .moji{font-family:var(--grot);letter-spacing:.12em}
.log .moji{font-family:var(--mono);color:#6e6b65;letter-spacing:0;word-break:break-all}
