:root{--bg: #100d0f;--panel: #191014;--panel2: #221419;--ink: #eee8d9;--muted: #b2a7ad;--accent: #d92544;--accent2: #df405b;--line: #392028;--good: #8ad39a;--warn: #f0c36a;--mono: ui-monospace, SFMono-Regular, Consolas, monospace;--serif: Georgia, serif;--ui: 1;font-size:calc(15px * var(--ui));color-scheme:dark}body.tv{--ui: 1.45}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--bg);color:var(--ink);font-family:var(--mono)}#app{position:fixed;inset:0}#gl{position:absolute;inset:0;width:100%;height:100%;display:block;outline:none}#ui{position:absolute;inset:0;pointer-events:none}#ui>*{pointer-events:auto}h1,h2,h3{font-family:var(--serif);font-weight:600;margin:0;letter-spacing:.01em}button,select,input{font:inherit;color:inherit}button{background:var(--panel2);border:1px solid var(--line);border-radius:8px;padding:.6em 1em;cursor:pointer;text-align:left;transition:background .1s,border-color .1s,transform .05s;min-height:2.5em}button:hover{background:#2c1a21;border-color:#5a2a37}button:active{transform:translateY(1px)}button.primary{background:var(--accent);border-color:transparent;color:#fff;font-weight:700}button.primary:hover{background:var(--accent2)}button.on{border-color:var(--accent);background:#34151d}button:focus-visible,select:focus-visible,input:focus-visible,[data-nav]:focus-visible{outline:3px solid var(--accent2);outline-offset:2px}.small{font-size:.82em;color:var(--muted);line-height:1.45}.mono{font-family:var(--mono)}kbd{background:#2a1920;border:1px solid var(--line);border-bottom-width:2px;border-radius:4px;padding:0 .4em;font-size:.85em}.overlay{position:absolute;inset:0;display:none;place-items:center;background:radial-gradient(circle at 20% 10%,rgba(173,23,62,.28),transparent 45%),radial-gradient(circle at 85% 90%,rgba(146,17,54,.22),transparent 50%),#100d0fe0;backdrop-filter:blur(6px);padding:2vh 2vw;overflow:auto}.overlay.show{display:grid}.card{background:linear-gradient(180deg,var(--panel),#140c10);border:1px solid var(--line);border-radius:14px;padding:1.5em 1.7em;width:min(1100px,100%);box-shadow:0 20px 70px #0009}.card.narrow{width:min(640px,100%)}.eyebrow{color:var(--accent);font-size:.8em;letter-spacing:.14em;text-transform:uppercase}.title{font-size:2.3em;line-height:1.1;margin:.15em 0 .25em}.grid{display:grid;gap:.7em}.grid.cols2{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.grid.cols3{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.row{display:flex;gap:.7em;flex-wrap:wrap;align-items:center}.row>.grow{flex:1 1 auto}.sep{height:1px;background:var(--line);margin:1em 0}.tile{display:grid;gap:.25em;padding:1em 1.1em}.tile b{font-family:var(--serif);font-size:1.25em}.tile .small{margin-top:.1em}.pill{display:inline-block;padding:.1em .7em;border-radius:999px;border:1px solid var(--line);background:#1d1116;font-size:.8em;color:var(--muted)}.pill.ok{color:var(--good);border-color:#355a3f}.pill.warn{color:var(--warn);border-color:#6b5628}.pill.bad{color:#ff7d8d;border-color:#6a2530}.sl{display:grid;grid-template-columns:1fr auto;gap:.1em .8em;align-items:center;margin:.45em 0}.sl label{color:var(--muted);font-size:.88em}.sl .v{text-align:right;min-width:4.5em;font-variant-numeric:tabular-nums}.sl input[type=range]{grid-column:1 / -1;width:100%;accent-color:var(--accent);height:1.8em}select{background:#1d1116;border:1px solid var(--line);border-radius:8px;padding:.5em .6em;min-height:2.5em}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.8em}.wcard{border:1px solid var(--line);border-radius:12px;padding:.9em 1em;background:var(--panel2);cursor:pointer;text-align:left;display:grid;gap:.25em}.wcard.sel{border-color:var(--accent);background:#34151d}.wcard b{font-family:var(--serif);font-size:1.15em}#hud{position:absolute;inset:0;pointer-events:none;display:none}#hud.show{display:block}#hud *{pointer-events:none}#reticle{position:absolute;left:50%;top:50%;width:0;height:0}#reticle i{position:absolute;display:block;background:#fffffff2;box-shadow:0 0 3px #000000e6,0 0 1px #000}#reticle.dot i.d{width:6px;height:6px;margin:-3px;border-radius:50%}#reticle.dot i.c,#reticle.cross i.d{display:none}#reticle.cross i.c.h{width:22px;height:2px;margin:-1px -11px}#reticle.cross i.c.v{width:2px;height:22px;margin:-11px -1px}#reticle.ring i.d{width:28px;height:28px;margin:-14px;border-radius:50%;background:transparent;border:2px solid rgba(255,255,255,.9);box-shadow:0 0 3px #000,inset 0 0 3px #000}#reticle.ring i.c{display:none}#reticle.ads{opacity:0}#reticle.motion i{background:#ffd24a}#marker{position:absolute;left:50%;top:50%;width:0;height:0;opacity:0;transition:opacity .12s}#marker i{position:absolute;width:14px;height:2px;background:#fff;box-shadow:0 0 3px #000}#marker i:nth-child(1){transform:translate(-14px,-14px) rotate(45deg)}#marker i:nth-child(2){transform:translateY(-14px) rotate(-45deg)}#marker i:nth-child(3){transform:translate(-14px,4px) rotate(-45deg)}#marker i:nth-child(4){transform:translateY(4px) rotate(45deg)}#marker.show{opacity:1;transition:none}#marker.bull i{background:#ff4d5e}.pop{position:absolute;font-family:var(--serif);font-weight:700;font-size:1.8em;color:#fff;text-shadow:0 2px 6px #000,0 0 2px #000;transform:translate(-50%,-50%);animation:pop .9s ease-out forwards}.pop.big{color:#ff6a7b;font-size:2.3em}@keyframes pop{0%{opacity:0;transform:translate(-50%,-30%) scale(.6)}12%{opacity:1;transform:translate(-50%,-60%) scale(1.15)}to{opacity:0;transform:translate(-50%,-150%) scale(1)}}#ammo{position:absolute;right:1.6vw;bottom:2.2vh;text-align:right;text-shadow:0 2px 8px #000;background:linear-gradient(0deg,#0a06089e,#0a060847);border:1px solid rgba(57,32,40,.7);border-radius:12px;padding:.5em .9em}#ammo .n{font-family:var(--serif);font-size:3.4em;line-height:1}#ammo .n small{font-size:.4em;color:var(--muted)}#ammo .w{color:var(--muted)}#ammo .low{color:#ff7d8d}#stats{position:absolute;left:1.6vw;bottom:2.2vh;text-shadow:0 2px 8px #000;display:grid;gap:.15em;background:linear-gradient(0deg,#0a06089e,#0a060847);border:1px solid rgba(57,32,40,.7);border-radius:12px;padding:.5em .9em}#stats .big{font-family:var(--serif);font-size:2.2em}#timer{position:absolute;top:3vh;left:50%;transform:translate(-50%);text-align:center;text-shadow:0 2px 8px #000;display:none}#timer.show{display:block}#timer .t{font-family:var(--serif);font-size:3em}#timer .s{color:var(--muted)}#toast{position:absolute;top:9vh;left:50%;transform:translate(-50%);background:#191014eb;border:1px solid var(--line);border-radius:999px;padding:.5em 1.2em;opacity:0;transition:opacity .2s}#toast.show{opacity:1}#chip{position:absolute;top:2.5vh;right:2.2vw;display:flex;gap:.5em;align-items:center}#diag{position:absolute;top:2.5vh;left:2.2vw;background:#100a0de0;border:1px solid var(--line);border-radius:10px;padding:.8em 1em;font-size:.85em;white-space:pre;display:none;min-width:24em;line-height:1.5}#diag.show{display:block}#help{position:absolute;left:1.6vw;top:2vh;color:#d9cfc0;font-size:.82em;text-shadow:0 1px 3px #000,0 0 8px #000;line-height:1.6;background:#0a060866;padding:.4em .8em;border-radius:10px}#scopeOverlay{position:absolute;inset:0;display:none;pointer-events:none;background:radial-gradient(circle at 50% 50%,transparent 0 30vh,#000 31vh)}#scopeOverlay.show{display:block}#scopeOverlay svg{position:absolute;inset:0;width:100%;height:100%}#zoomTag{position:absolute;left:50%;bottom:14vh;transform:translate(-50%);color:#fff;text-shadow:0 2px 6px #000;display:none}#zoomTag.show{display:block}.panel{position:absolute;background:#150d11eb;border:1px solid var(--line);border-radius:12px;padding:.9em 1.1em;width:22em}#clothPanel{right:2vw;top:9vh;display:none;max-height:82vh;overflow:auto}#clothPanel.show{display:block}#clothPanel,#diag,#chip,#help,#stats,#ammo{pointer-events:auto}#bar{position:absolute;left:50%;bottom:3vh;transform:translate(-50%);display:none;gap:.5em}#bar.show{display:flex}#flashbang{position:absolute;inset:0;background:#000;opacity:0;pointer-events:none}.bigkey{font-family:var(--serif);font-size:1.1em}.cal-ring{width:100%;height:.7em;background:#1d1116;border-radius:99px;overflow:hidden;border:1px solid var(--line)}.cal-ring i{display:block;height:100%;width:0%;background:var(--accent)}canvas.preview{width:100%;aspect-ratio:16 / 9;background:#0c090b;border:1px solid var(--line);border-radius:10px}.grips{display:grid;grid-template-columns:1fr 1fr;gap:.8em}.grips button{display:grid;gap:.4em;justify-items:center;text-align:center;padding:1em}.grips svg{width:100%;max-width:280px}.step{display:none}.step.on{display:block}.stepper{display:flex;gap:.4em;margin-bottom:1em}.stepper i{flex:1;height:5px;background:#2a1920;border-radius:99px}.stepper i.done{background:var(--accent)}.stepper i.cur{background:var(--accent2)}table.map{width:100%;border-collapse:collapse}table.map td{padding:.3em .4em;border-bottom:1px solid var(--line)}table.map td:first-child{color:var(--muted)}@media(max-width:900px){:root{font-size:13px}.title{font-size:1.8em}}
