 

:root{
  --void:#050706; --coal:#121715; --iron:#1b211f; --steel:#2d3735; --sage:#6d8277; --phos:#b5d0b8; --phos-d:#5f7b66;
  --paper:#cbc7b6; --ink:#1b1a17; --amber:#d39a41; --amber-d:#6d4b1a; --red:#c0281d; --red-h:#e84c3d; --red-d:#5c0f0a;
  --blue:#7694a0; --blue-d:#324853; --violet:#8b718d;
  --chrome:#8b938d; --shadow:#020403; --glow:rgba(120,185,148,.18);
  --stencil:"Bahnschrift","Arial Narrow","Roboto Condensed","Helvetica Neue",Arial,sans-serif;
  --mono:"IBM Plex Mono","Cascadia Mono","Lucida Console","Courier New",ui-monospace,monospace;
  --grain:url("../../assets/images/grain.svg");
}
*{box-sizing:border-box}
html,body{margin:0;height:100%;overflow-x:hidden;background:radial-gradient(circle at 50% 18%,#171d1a 0%,#090b0a 35%,#040505 100%);color:var(--paper);font-family:var(--mono);-webkit-tap-highlight-color:transparent}
body::before{content:"";position:fixed;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.02),transparent 12%,transparent 82%,rgba(0,0,0,.28));pointer-events:none}
button{font:inherit;color:inherit;cursor:pointer}
button:focus-visible,.lever-track:focus-visible{outline:2px solid var(--amber);outline-offset:2px}
.hidden{display:none!important}

#room{position:relative;height:100vh;height:100dvh;min-height:560px;display:flex;flex-direction:column;overflow:hidden;background:radial-gradient(circle at 50% 12%,#1a211d 0%,#0d120f 35%,#040504 100%);isolation:isolate;border:1px solid rgba(255,255,255,.04)}
#room::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.02),transparent 12%,rgba(0,0,0,.45) 100%);pointer-events:none}

 
.overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:flex-start;justify-content:center;background:radial-gradient(ellipse at 50% 40%,#151a17 0,#050605 75%);overflow-y:auto;overflow-x:hidden}
.overlay::before{content:"";position:absolute;inset:0;background:var(--grain);opacity:.6;pointer-events:none}
.menu-card{position:relative;text-align:center;padding:36px 28px;width:min(500px,92vw);margin:4vh auto}
.menu-card::before{content:"";position:absolute;inset:10px -8px;border:1px solid rgba(118,148,160,.16);transform:rotate(-1.2deg);pointer-events:none}
.menu-card::after{content:"04";position:absolute;right:-2px;top:7px;font:700 10px var(--mono);letter-spacing:.2em;color:#b9d5b622;transform:rotate(90deg);pointer-events:none}
.stencil{font-family:var(--stencil);font-weight:800;font-size:clamp(38px,9vw,64px);letter-spacing:.16em;color:var(--red);text-shadow:0 0 22px #5c0f0a,2px 2px 0 #000;margin-right:-.16em}
.sub{font-family:var(--stencil);letter-spacing:.5em;color:var(--sage);font-size:13px;margin:6px -.5em 34px 0}
.menu-logline{position:relative;margin:-12px auto 24px;color:#8fa398;font:12px/1.7 var(--mono);letter-spacing:.05em}
.menu-logline b{color:#e1b36c;font-weight:500}
.howto{position:relative;margin:0 auto 20px;padding:12px 12px 10px;text-align:left;border:1px solid #2f4632;background:linear-gradient(145deg,#101811,#080b09);box-shadow:inset 0 0 0 1px #ffffff08,0 8px 18px #0007}
.howto::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--amber);box-shadow:0 0 12px #c98a2b55}
.howto-title{margin-bottom:9px;color:#d49a62;font:700 10px var(--stencil);letter-spacing:.18em}
.howto-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
.howto-grid article{display:grid;grid-template-columns:24px 1fr;gap:7px;min-height:54px;padding:7px 6px;background:#0a120c;border:1px solid #23372a}
.howto-grid b{color:#e2b062;font:700 12px var(--mono)}
.howto-grid span{color:#a9c5a6;font:10px/1.45 var(--mono);letter-spacing:.01em}
.howto-foot{margin-top:9px;padding-top:8px;border-top:1px dashed #2f4632;color:#7f9b80;font:10px/1.45 var(--mono)}
.mbtn{display:block;width:100%;margin:12px 0;padding:15px 10px;background:linear-gradient(#2a302c,#191d1a);border:1px solid #454d47;border-bottom-width:4px;border-radius:3px;font-family:var(--stencil);font-weight:700;letter-spacing:.24em;color:var(--paper);min-height:52px}
.mbtn:hover:not(:disabled){border-color:var(--amber);color:#fff}
.mbtn:active:not(:disabled){transform:translateY(2px);border-bottom-width:2px}
.mbtn:disabled{opacity:.4;cursor:default}
.mbtn.small{display:inline-block;width:auto;margin:6px;padding:12px 18px;font-size:12px}
.mbtn.monetize{border-color:var(--amber-d);color:#e1b36c}
.mbtn.support{border-color:#6d4b1a;color:#e1b36c;background:linear-gradient(#322719,#1c1710)}
.fine{color:#59635c;font-size:11px;line-height:1.6;margin-top:28px}

#donation-modal{z-index:120;align-items:center;padding:20px;background:rgba(3,5,4,.86)}
.donation-card{position:relative;width:min(560px,94vw);padding:28px 24px 22px;background:linear-gradient(145deg,#202823,#0c100d 72%);border:1px solid #596b59;box-shadow:0 22px 70px #000d,inset 0 0 0 3px #101611,inset 0 1px 0 #ffffff1b;color:var(--paper)}
.donation-card::before{content:"";position:absolute;inset:8px;border:1px solid #b9d5b61a;pointer-events:none}
.donation-card>*{position:relative}
.donation-close{position:absolute;right:12px;top:8px;width:30px;height:30px;border:1px solid #596b59;background:#0a0e0b;color:#b9d5b6;font:700 20px/1 var(--mono);z-index:2}
.donation-close:hover{border-color:var(--amber);color:#fff}
.donation-kicker{color:#9a6d4a;font:700 9px var(--stencil);letter-spacing:.22em;margin-bottom:10px}
.donation-card h2{margin:0 36px 10px 0;color:#dfc798;font:700 clamp(17px,3vw,24px) var(--stencil);letter-spacing:.16em}
.donation-card p{margin:0 0 18px;color:#9db29f;font-size:11px;line-height:1.55;max-width:46em}
.donation-list{display:flex;flex-direction:column;gap:8px}
.donation-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px;background:#080d09;border:1px solid #2f4632}
.donation-row div{min-width:0}.donation-row b{display:block;color:#d49a62;font:700 10px var(--stencil);letter-spacing:.12em;margin-bottom:5px}.donation-row code{display:block;color:#c7d8c3;font:10px/1.4 var(--mono);word-break:break-all}
.donation-copy{flex:none;padding:8px 10px;border:1px solid #5b4519;background:#171207;color:#e2b062;font:700 9px var(--stencil);letter-spacing:.12em}.donation-copy:hover{border-color:var(--amber);color:#fff}.donation-copy.copied{border-color:#6f9a72;color:#b9d5b6}
.donation-warning{margin-top:15px;padding-top:10px;border-top:1px dashed #354b42;color:#8f776f;font-size:10px;line-height:1.45}

#endscreen{align-items:flex-start;padding:4vh 0}
.paper{position:relative;width:min(760px,94vw);margin:0 auto;padding:24px 30px 22px;background:#c8c1aa;color:var(--ink);transform:rotate(-.3deg);
  box-shadow:0 0 0 1px #0004,0 24px 60px #000c;background-image:linear-gradient(90deg,#7b563015,transparent 12%,transparent 84%,#5d3b2412),repeating-linear-gradient(0deg,#0000 0 27px,#0000000a 27px 28px)}
.paper::before{content:"";position:absolute;inset:0;background:var(--grain);opacity:.32;pointer-events:none}
.paper::after{content:"СЕКРЕТНО";position:absolute;right:22px;top:72px;border:3px solid #8e2724aa;color:#8e2724aa;padding:6px 9px;font:700 12px var(--stencil);letter-spacing:.22em;transform:rotate(8deg);mix-blend-mode:multiply;pointer-events:none}
.paper>*{position:relative}
.paper-header,.paper-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#4c4539;font:700 9px var(--stencil);letter-spacing:.16em;border-bottom:1px solid #514a3d99;padding-bottom:9px;margin-bottom:17px}
.paper-header b{font-size:14px;letter-spacing:.24em;color:#8e2724}
.paper-footer{border-top:1px solid #514a3d99;border-bottom:0;padding:10px 0 0;margin:18px 0 0;font-size:8px;color:#6b6251}
#end-paper{font-size:13px;line-height:1.55;word-break:break-word}
#end-paper h1{font-family:var(--stencil);letter-spacing:.24em;font-size:22px;margin:0 0 14px;border-bottom:3px double var(--ink);padding-bottom:10px}
#end-paper h3{font-family:var(--stencil);letter-spacing:.2em;font-size:13px;margin:20px 0 4px;background:var(--ink);color:var(--paper);padding:3px 8px;display:inline-block}
#end-paper p{margin:1px 0}
#end-paper p:nth-of-type(2),#end-paper p:nth-of-type(3){font-weight:700;letter-spacing:.04em}
#end-paper .sp{height:8px}
.end-bar{text-align:center;margin-top:26px;border-top:1px dashed #0006;padding-top:14px}
.end-bar .mbtn{color:var(--paper)}
@media (max-width:560px){.paper{padding:18px 16px 18px}.paper-header,.paper-footer{font-size:7px}.paper-header b{font-size:11px}.paper::after{right:14px;top:82px;font-size:9px}}
@media (max-width:560px){.donation-card{padding:24px 14px 16px}.donation-row{align-items:flex-start;flex-direction:column}.donation-copy{width:100%}.donation-card h2{font-size:17px}}
@media (max-width:560px){.howto-grid{grid-template-columns:1fr}.howto-grid article{min-height:0}}
