:root{--bg:#14161b;--panel:#101116e0;--panel-border:#3a3326;--text:#f1ead6;--muted:#9a9384;--accent:#ffb703;--accent-dark:#c47f00;--danger:#e5383b;--font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--safe-top:max(env(safe-area-inset-top,0px), calc(var(--tg-safe-top,0px) + var(--tg-content-safe-top,0px)));--safe-bottom:max(env(safe-area-inset-bottom,0px), calc(var(--tg-safe-bottom,0px) + var(--tg-content-safe-bottom,0px)));--safe-left:max(env(safe-area-inset-left,0px), var(--tg-safe-left,0px));--safe-right:max(env(safe-area-inset-right,0px), var(--tg-safe-right,0px))}*{box-sizing:border-box}html,body{background:var(--bg);width:100%;height:100%;color:var(--text);font-family:var(--font);overscroll-behavior:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-text-size-adjust:100%;margin:0;overflow:hidden}body{position:fixed;inset:0}#eruda{touch-action:auto;-webkit-user-select:text;user-select:text}#game{position:fixed;inset:0}#game canvas{display:block}#ui,#hud-layer{pointer-events:none;position:fixed;inset:0;overflow:hidden}.screen{pointer-events:auto;padding:calc(var(--safe-top) + 24px) calc(var(--safe-right) + 16px) calc(var(--safe-bottom) + 24px) calc(var(--safe-left) + 16px);flex-direction:column;align-items:center;gap:20px;display:flex;position:absolute;inset:0}.screen-menu{background:linear-gradient(#0a0a0ebf,#0a0a0e00 55%,#0a0a0eb3);justify-content:space-between}.title-block{text-align:center;margin-top:8vh}.game-title{letter-spacing:.02em;color:var(--accent);text-shadow:0 4px #6b3a00,0 8px 24px #000c;margin:0;font-size:clamp(40px,12vw,64px);font-weight:900;line-height:.95;transform:skewY(-4deg)}.game-subtitle{text-transform:uppercase;letter-spacing:.18em;color:var(--text);text-shadow:0 2px 6px #000;margin:18px 0 0;font-size:16px;font-weight:700}.menu-actions,.col-actions{flex-direction:column;gap:12px;width:100%;max-width:320px;display:flex}.row-actions{gap:12px;width:100%;max-width:420px;display:flex}.row-actions .btn{flex:1}.btn{font:inherit;text-transform:uppercase;letter-spacing:.06em;color:var(--text);cursor:pointer;background:#2a2c33;border:2px solid #4a4c55;border-radius:10px;padding:14px 18px;font-size:17px;font-weight:800;transition:transform 60ms;box-shadow:0 4px #15161a}.btn:active{transform:translateY(3px);box-shadow:0 1px #15161a}.btn-primary{color:#1a1204;background:var(--accent);box-shadow:0 4px 0 var(--accent-dark);border-color:#ffd166}.btn-big{padding:18px 22px;font-size:22px}.lang-switch{background:#00000073;border-radius:12px;gap:8px;padding:4px;display:flex}.lang-btn{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:9px;padding:10px 16px;font-size:14px;font-weight:700}.lang-btn.is-active{color:#1a1204;background:var(--text)}.screen-select,.screen-result,.screen-pause{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#08090cb8;justify-content:center}.screen-title{text-transform:uppercase;letter-spacing:.04em;text-align:center;margin:0;font-size:30px;font-weight:900}.screen-title.danger{color:var(--danger);font-size:38px}.cards{grid-template-columns:2fr 1fr 1fr;gap:10px;width:100%;display:grid}.card{background:var(--panel);border:2px solid var(--panel-border);border-radius:12px;flex-direction:column;gap:6px;min-width:0;padding:12px;display:flex}.card.is-locked{opacity:.55;border-style:dashed;justify-content:center;align-items:center}.locked-mark{color:var(--muted);font-size:34px;font-weight:900}.portrait{aspect-ratio:1;image-rendering:auto;border-radius:8px;align-self:center;width:100%;max-width:120px}.card-name{color:var(--accent);font-size:22px;font-weight:900}.card-title{color:var(--text);font-size:14px;font-weight:700}.card-desc{color:var(--muted);margin:2px 0 4px;font-size:12px;line-height:1.35}.stat{flex-direction:column;gap:3px;display:flex}.stat-label{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-size:11px;font-weight:700}.stat-bar{background:#2b2d33;border-radius:3px;height:6px;overflow:hidden}.stat-fill{background:var(--accent);height:100%}.card-row{justify-content:space-between;gap:6px;font-size:13px;font-weight:700;display:flex}.muted{color:var(--muted);font-weight:500}.panel{background:var(--panel);border:2px solid var(--panel-border);border-radius:14px;flex-direction:column;align-items:center;gap:12px;width:100%;max-width:400px;padding:22px 18px;display:flex}.result-row{border-bottom:1px solid #2b2d33;justify-content:space-between;width:100%;padding:6px 2px;font-size:18px;display:flex}.result-row strong{font-weight:900}.badge{background:var(--accent);color:#1a1204;text-transform:uppercase;letter-spacing:.08em;border-radius:999px;padding:5px 10px;font-size:13px;font-weight:900}.screen-playing{pointer-events:none;position:absolute;inset:0}.pause-btn{pointer-events:auto;top:calc(var(--safe-top) + 10px);right:calc(var(--safe-right) + 10px);cursor:pointer;background:#00000073;border:2px solid #ffffff40;border-radius:10px;width:44px;height:44px;position:absolute}.pause-btn:before,.pause-btn:after{content:"";background:var(--text);border-radius:1px;width:5px;height:16px;position:absolute;top:12px}.pause-btn:before{left:13px}.pause-btn:after{right:13px}.debug-overlay{left:calc(var(--safe-left) + 4px);bottom:calc(var(--safe-bottom) + 4px);color:#9dff9d;pointer-events:none;z-index:10;background:#000000a6;border-radius:6px;margin:0;padding:6px 8px;font:11px/1.35 ui-monospace,Menlo,Consolas,monospace;position:fixed}.debug-overlay-text{font:inherit;white-space:pre;margin:0}.debug-copy{pointer-events:auto;margin-top:4px}.debug-row{gap:4px;display:flex}.debug-panel{right:calc(var(--safe-right) + 4px);bottom:calc(var(--safe-bottom) + 4px);z-index:11;flex-direction:column;gap:4px;display:flex;position:fixed}.debug-btn{color:#9dff9d;cursor:pointer;touch-action:manipulation;background:#000000b3;border:1px solid #9dff9d66;border-radius:6px;padding:5px 8px;font:600 11px/1.2 ui-monospace,Menlo,Consolas,monospace}.debug-btn.is-on{color:#111;background:#ffb703d9}.debug-btn:active{background:#285a28d9}.sound-btn.is-muted{color:var(--muted)}.screen-pause .panel{gap:16px}.screen-title.victory{color:var(--accent);text-shadow:0 3px #6b3a00,0 6px 18px #000c;font-size:40px}.result-row.sub{color:var(--muted);border-bottom:0;padding:3px 2px;font-size:14px}.result-row.total{color:var(--accent);border-top:1px solid #3a3326;font-size:22px}.heavy-btn{--ready:0;pointer-events:auto;right:calc(var(--safe-right) + 8%);bottom:calc(var(--safe-bottom) + 3.5%);cursor:pointer;touch-action:none;background:radial-gradient(circle, #0a0a0ec7 58%, transparent 60%), conic-gradient(var(--accent) calc(var(--ready) * 360deg), #ffffff26 0);opacity:.75;border:0;border-radius:50%;width:84px;height:84px;padding:0;transition:opacity .15s,transform 60ms;position:absolute}.heavy-btn.is-ready{opacity:1;box-shadow:0 0 14px #ffb7038c}.heavy-btn:active{transform:scale(.94)}.heavy-icon{pointer-events:none;width:60px;height:auto}.menu-footer{flex-direction:column;align-items:center;gap:8px;display:flex}.credits{color:var(--muted);text-align:center;opacity:.8;margin:0;font-size:10px}.net-indicator{top:calc(var(--safe-top) + 62px);right:calc(var(--safe-right) + 10px);z-index:12;color:var(--muted);pointer-events:none;background:#0000008c;border-radius:999px;padding:4px 9px 4px 22px;font-size:12px;font-weight:700;position:absolute}.net-indicator:before{content:"";background:#e0533d;border-radius:50%;width:7px;height:7px;margin-top:-3.5px;position:absolute;top:50%;left:9px}.net-indicator[hidden]{display:none}.result-note{width:100%;color:var(--muted);text-align:right;padding:2px 2px 0;font-size:12px}.quality-block{flex-direction:column;align-items:center;gap:6px;width:100%;max-width:340px;display:flex}.quality-label{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0;font-size:12px;font-weight:800}.quality-switch{gap:2px}.quality-btn{padding:9px 10px;font-size:13px}.quality-btn:disabled{opacity:.45;cursor:default}.quality-hint{color:var(--muted);text-align:center;margin:0;font-size:11px}.intro-layer{pointer-events:none;position:absolute;inset:0}.intro-layer.is-hidden{display:none}.dlg{pointer-events:auto;left:calc(var(--safe-left) + 12px);right:calc(var(--safe-right) + 12px);bottom:calc(var(--safe-bottom) + 22%);touch-action:none;cursor:pointer;opacity:0;visibility:hidden;background:#0a0b10e0;border:2px solid #4a4c55;border-radius:12px;align-items:flex-start;gap:12px;padding:12px;transition:opacity .18s,transform .18s;display:flex;position:absolute;transform:translateY(12px);box-shadow:0 6px #0b0c10}.dlg.is-open{opacity:1;visibility:visible;transform:none}.dlg.is-hero{border-color:#7a2a2a}.dlg-portrait{color:#ffffffd9;width:64px;height:64px;image-rendering:pixelated;border:2px solid #ffffff26;border-radius:8px;flex:none;place-items:center;font-size:32px;font-weight:900;display:grid;position:relative}.dlg-portrait.eye-glow:after{content:"";background:#ff3020;border-radius:50%;width:9px;height:9px;animation:.4s ease-in-out infinite alternate eye-pulse;position:absolute;top:22px;right:14px;box-shadow:0 0 8px 3px #ff2814e6,0 0 18px 6px #ff000073}@keyframes eye-pulse{to{opacity:.6}}.dlg-body{flex:1;min-width:0;min-height:64px;position:relative}.dlg-name{text-transform:uppercase;letter-spacing:.06em;color:var(--accent,#ffb703);margin-bottom:4px;font-size:14px;font-weight:800}.dlg.is-hero .dlg-name{color:#ff5a4a}.dlg-text{color:var(--text);min-height:2.6em;font-size:18px;line-height:1.3}.dlg-more{border-left:7px solid #0000;border-right:7px solid #0000;border-top:9px solid var(--muted);opacity:0;width:0;height:0;position:absolute;bottom:-2px;right:0}.dlg.is-done .dlg-more{opacity:1;animation:.5s ease-in-out infinite alternate eye-pulse}.intro-caption,.intro-hint{left:calc(var(--safe-left) + 16px);right:calc(var(--safe-right) + 16px);text-align:center;text-transform:uppercase;letter-spacing:.08em;opacity:0;text-shadow:0 2px #000;font-weight:900;transition:opacity .25s;position:absolute}.intro-caption{color:#ffd23a;font-size:26px;top:34%}.intro-hint{bottom:calc(var(--safe-bottom) + 14%);color:var(--text);font-size:16px}.intro-caption.is-on,.intro-hint.is-on{opacity:1}.skip-btn{pointer-events:auto;right:calc(var(--safe-right) + 8%);bottom:calc(var(--safe-bottom) + 3.5%);opacity:.85;touch-action:none;padding:10px 14px;font-size:14px;position:absolute}.ib-modal{padding:calc(var(--safe-top) + 16px) calc(var(--safe-right) + 16px) calc(var(--safe-bottom) + 16px) calc(var(--safe-left) + 16px);pointer-events:none;visibility:hidden;opacity:0;touch-action:none;background:#0000008c;justify-content:center;align-items:center;transition:opacity .18s ease-in,visibility 0s linear .18s;display:flex;position:absolute;inset:0}.ib-modal.is-shown{pointer-events:auto;visibility:visible;opacity:1;transition:opacity .15s ease-out}.ib-modal.is-hidden{display:none}.item-banner{--ib-color:#38d9ff;border:2px solid var(--ib-color);width:min(100%,400px);box-shadow:0 0 18px color-mix(in srgb, var(--ib-color) 55%, transparent), inset 0 0 14px color-mix(in srgb, var(--ib-color) 25%, transparent);color:var(--text);background:linear-gradient(#ffffff0a,#00000040),#0e0e12f0;border-radius:16px;flex-direction:column;align-items:stretch;gap:12px;padding:16px;transition:transform .18s ease-in;display:flex;transform:scale(.8)}.ib-modal.is-shown .item-banner{transition:transform .38s cubic-bezier(.34,1.56,.64,1);transform:scale(1)}.ib-ok{align-self:center;min-width:55%}.ib-art{aspect-ratio:2;background-image:var(--ib-bg,none);background-size:var(--ib-size,contain);background-position:var(--ib-pos,center);width:100%;filter:drop-shadow(0 0 6px color-mix(in srgb, var(--ib-color) 60%, transparent));background-repeat:no-repeat;position:relative}.ib-art.is-empty{display:none}.ib-glint{-webkit-mask-image:var(--ib-bg);-webkit-mask-image:var(--ib-bg);mask-image:var(--ib-bg);-webkit-mask-size:var(--ib-size);-webkit-mask-size:var(--ib-size);mask-size:var(--ib-size);-webkit-mask-position:var(--ib-pos);-webkit-mask-position:var(--ib-pos);mask-position:var(--ib-pos);mix-blend-mode:screen;opacity:0;background:linear-gradient(105deg,#0000 35%,#ffffffd9 50%,#0000 65%) 120% 0/300% 100%;position:absolute;inset:0;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.ib-modal.is-shown .ib-glint{animation:.7s ease-out .3s both ib-glint}.item-banner.no-glint .ib-glint{display:none}@keyframes ib-glint{0%{opacity:1;background-position:120% 0}to{opacity:1;background-position:-20% 0}}.ib-text{flex-direction:column;flex:auto;gap:2px;min-width:0;display:flex}.ib-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--ib-color);font-size:10px;font-weight:800}.ib-title{text-shadow:0 0 8px color-mix(in srgb, var(--ib-color) 70%, transparent);font-size:22px;font-weight:900;line-height:1.1}.ib-slogan{color:var(--muted);margin-bottom:4px;font-size:13px;line-height:1.25}.ib-stats{grid-template-columns:max-content 1fr;gap:3px 8px;display:grid}.ib-stat{display:contents}.ib-stat-label{text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:700}.ib-bar{background:#ffffff1a;border-radius:3px;align-self:center;height:5px;overflow:hidden}.ib-bar-fill{background:var(--ib-color);height:100%;box-shadow:0 0 6px var(--ib-color);display:block}.dlg-portrait canvas{border-radius:6px;width:100%;height:100%;display:block}.vol-block{background:#0000008c;border-radius:10px;flex-direction:column;gap:6px;width:100%;padding:8px 12px;display:flex}.vol-row{color:var(--text);grid-template-columns:6.5em 1fr;align-items:center;gap:10px;font-size:13px;font-weight:700;display:grid}.vol-range{width:100%;accent-color:var(--accent);touch-action:pan-y}.death-vision{pointer-events:none;z-index:30;opacity:var(--dv-fade,1);transition:opacity .5s;display:none;position:absolute;inset:0;overflow:hidden}.death-vision.is-on{display:block}.dv-vision #game canvas{filter:grayscale()sepia()saturate(9)hue-rotate(-42deg)contrast(1.2)brightness(.92)}.dv-red{background:radial-gradient(at 50% 55%,#ff28141f,#3c00008c);position:absolute;inset:0}.dv-scan{background:repeating-linear-gradient(0deg,#00000047 0 1px,#0000 1px 3px);animation:.12s steps(2,end) infinite dv-scan;position:absolute;inset:0}@keyframes dv-scan{to{transform:translateY(2px)}}.dv-col{color:#ffd6cc;text-shadow:0 0 4px #ff3b2a;opacity:.85;white-space:pre;margin:0;font:10px/1.3 ui-monospace,Menlo,Consolas,monospace;position:absolute}.dv-col-0{left:calc(var(--safe-left) + 5%);top:calc(var(--safe-top) + 14%)}.dv-col-1{right:calc(var(--safe-right) + 5%);text-align:right;top:38%}.dv-col-2{left:calc(var(--safe-left) + 8%);bottom:calc(var(--safe-bottom) + 10%)}.dv-bar{opacity:0;mix-blend-mode:screen;background:linear-gradient(90deg,#0000,#ffe1d799 30%,#ff5a4659 70%,#0000);position:absolute;left:-5%;right:-5%}.dv-iris{position:absolute;inset:0;overflow:hidden}.dv-slit{--dv-glow:0;left:50%;top:var(--dv-cy,50%);background:rgba(255, 120, 100, calc(var(--dv-glow) * .35));width:100%;height:100%;box-shadow:0 0 0 200vmax #000, inset 0 0 calc(6px + var(--dv-glow) * 10px) rgba(255, 90, 70, var(--dv-glow));position:absolute;transform:translate(-50%,-50%)}.dv-iris:not(.is-closing) .dv-slit{box-shadow:none}.dv-iris.is-dark{background:#000}.dv-iris.is-dark .dv-slit{display:none}:root{--neon:#ffb703;--neon-soft:#ffb70359;--glass:#0c0c16d1;--glass-border:#8c96d247}.screen-menu{background:radial-gradient(120% 60% at 50% 0,#2812468c,#0a081400 70%),linear-gradient(#0807108c,#08071000 45%,#080710d1)}.game-title{background:linear-gradient(#fff3b8 0%,#ffc21a 42%,#ff7a1a 100%);color:#0000;-webkit-text-stroke:1px #fff4c859;text-shadow:none;filter:drop-shadow(0 4px #5a2600)drop-shadow(0 0 18px #ff8c148c)drop-shadow(0 10px 22px #000000d9);-webkit-background-clip:text;background-clip:text}.game-subtitle{color:#ffe9c4;text-shadow:0 0 12px #ff5aa0bf,0 2px 6px #000}.btn{text-shadow:0 1px 2px #0009;background:linear-gradient(#343849 0%,#23252f 100%);border:1.5px solid #a0aae666;border-radius:12px;box-shadow:0 4px #0e0f16,0 8px 18px #00000080,inset 0 1px #ffffff1f}.btn:active{box-shadow:0 1px #0e0f16,inset 0 1px #ffffff14}.btn-primary{text-shadow:0 1px #fff0be99;background:linear-gradient(#ffd95a 0%,#ffb703 48%,#f08a00 100%);border-color:#ffe9a0;box-shadow:0 4px #9a5200,0 0 22px #ffaa148c,0 10px 22px #0000008c,inset 0 1px #ffffff8c}.btn-primary:active{box-shadow:0 1px #9a5200,0 0 14px #ffaa1473,inset 0 1px #fff6}.btn-big.btn-primary{position:relative}.btn-big.btn-primary:after{content:"";opacity:0;pointer-events:none;border-radius:16px;animation:2.2s ease-in-out infinite btn-breathe;position:absolute;inset:-6px;box-shadow:0 0 26px 4px #ffaa1499}@keyframes btn-breathe{0%,to{opacity:0}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.btn-big.btn-primary:after{animation:none}}.vol-block,.lang-switch,.quality-switch{background:var(--glass);border:1px solid var(--glass-border);box-shadow:inset 0 1px #ffffff0d}.lang-btn.is-active{background:linear-gradient(#fff6dc,#ecd9a8);box-shadow:0 0 10px #ffdc9659}.screen-select,.screen-result,.screen-pause{background:radial-gradient(90% 55% at 50% 0,#3c185a80,#08081000 70%),#06060ecc}.screen-title{text-shadow:0 0 18px #ffb70359,0 3px #0009}.screen-title.danger{text-shadow:0 0 22px #e5383b99,0 3px #0009}.screen-title.victory{text-shadow:0 0 24px #ffb703b3,0 3px #5a2600}.card,.panel{border:1.5px solid var(--glass-border);background:linear-gradient(#1a182ceb,#0a0a12eb);box-shadow:0 12px 30px #0000008c,inset 0 1px #ffffff12}.card.is-selected{border-color:var(--neon);box-shadow:0 0 0 1px #ffb70380, 0 0 24px var(--neon-soft), 0 12px 30px #0000008c, inset 0 1px 0 #ffffff1a}.card-name{text-shadow:0 0 14px #ffb70373}.portrait{background:radial-gradient(circle at 50% 35%,#3a2a5c,#120f1e 75%);border:1px solid #ffb70359;box-shadow:inset 0 0 18px #0009}.stat-bar{background:#ffffff14}.stat-fill{background:linear-gradient(90deg,#ff8a1a,#ffd23a);box-shadow:0 0 8px #ffaa1499}.result-row.total{text-shadow:0 0 16px #ffb70380}.pause-btn{background:#0a0b12c7;border:1.5px solid #ffb703bf;box-shadow:0 0 10px #ffb70333}.heavy-btn.is-ready{box-shadow:0 0 18px #ffb70399,inset 0 0 12px #ffb70340}
