*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{overscroll-behavior:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#000;height:100%;margin:0;overflow:hidden}body{color:#eee;font-family:Lucida Console,Courier New,Menlo,Monaco,monospace}#app{position:fixed;top:0;bottom:0;left:0;right:0}#view{width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges;display:block;position:absolute;top:0;bottom:0;left:0;right:0}.hidden{display:none!important}button{font-family:inherit}#scanlines{pointer-events:none;z-index:5;background:repeating-linear-gradient(#0000 0 2px,#0000002e 3px,#0000 4px);position:absolute;top:0;bottom:0;left:0;right:0;box-shadow:inset 0 0 120px #000000a6}#dayHud{left:max(18px, env(safe-area-inset-left));top:max(14px, env(safe-area-inset-top));z-index:10;pointer-events:none;text-shadow:0 2px #000,0 0 6px #000;position:absolute}.dayTitle{letter-spacing:1px;align-items:center;gap:10px;font-size:26px;font-weight:700;display:flex}.dayTitle svg{filter:drop-shadow(0 2px #000)}.objective{max-width:min(560px,80vw);margin-top:8px;font-size:16px;line-height:1.3}.objective .dot{vertical-align:2px;font-size:12px}#prompt{right:max(18px, env(safe-area-inset-right));bottom:max(22px, env(safe-area-inset-bottom));z-index:12;color:#f2f2f2;text-shadow:0 2px #000;letter-spacing:.5px;background:#00000059;border:1px solid #ffffff40;padding:10px 14px;font-size:19px;position:absolute}#crosshair{z-index:9;pointer-events:none;background:#ffffffb3;width:4px;height:4px;margin:-2px;position:absolute;top:50%;left:50%;box-shadow:0 0 2px #000}#dialog{left:50%;bottom:max(26px, env(safe-area-inset-bottom));z-index:20;cursor:pointer;background:#08080ad1;border:1px solid #ffffff38;width:min(760px,92vw);padding:14px 18px 16px;font-size:17px;line-height:1.45;position:absolute;transform:translate(-50%)}#dlgWho{color:#e8c27a;letter-spacing:2px;margin-bottom:6px;font-size:13px}#dlgNext{color:#aaa;animation:1s steps(2,end) infinite blink;position:absolute;bottom:6px;right:12px}@keyframes blink{50%{opacity:0}}#computer,#phone{z-index:30;background:#0000008c;justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}.crt{background:#0f1a12;border:14px solid #cfc8b4;border-radius:22px;width:min(680px,94vw);padding:18px;box-shadow:inset 0 0 40px #000000e6,0 10px 40px #000}#crtText{color:#9fe8a8;white-space:pre-wrap;text-shadow:0 0 6px #78ff8c80;min-height:220px;margin:0;font-family:inherit;font-size:15px;line-height:1.35}.crtBar{border:1px solid #5a8;height:8px;margin:10px 0}#crtProg{background:#7d7;width:0;height:100%}.crtBtns{flex-wrap:wrap;gap:10px;display:flex}.crtBtns button,.phKeys button{color:#bfe;background:#1f3324;border:1px solid #6a8;padding:10px 16px;font-size:15px}.crtHint{color:#6a8;margin-top:8px;font-size:12px}.handset{background:#2a2d30;border-radius:34px 34px 26px 26px;width:250px;padding:34px 22px 22px;box-shadow:0 10px 40px #000,inset 0 2px #555}.phScreen{color:#1c2614;background:#9db37a;border:4px solid #151515;min-height:160px;padding:10px;font-size:14px;line-height:1.35}.phHead{letter-spacing:1px;border-bottom:1px solid #1c2614;margin-bottom:6px;font-size:11px}.phKeys{justify-content:space-between;margin-top:16px;display:flex}.phKeys button{color:#eee;background:#444;border:1px solid #666;border-radius:10px}#nightHud{z-index:10;color:#e0a64a;pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}#nightHud button{pointer-events:auto}#scope{width:var(--sw,90vw);height:var(--sh,90vh);border:14px solid #161616;border-radius:50%;outline:2px solid #2b2b2b;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 200vmax #060606,inset 0 0 60px 20px #000000d9}#compass{height:52px;position:absolute;top:7%;left:22%;right:22%;overflow:hidden}#compassStrip{white-space:nowrap;will-change:transform;height:100%;position:absolute;top:0;left:0}#compassStrip .tk{background:#e0a64a;width:2px;position:absolute;bottom:14px}#compassStrip .lb{font-size:17px;position:absolute;top:0;transform:translate(-50%)}#compass .caret{font-size:13px;position:absolute;bottom:-2px;left:50%;transform:translate(-50%)}.bracket{border:2px solid #e0a64a;padding:6px 10px;font-size:17px;line-height:1.4;position:absolute;top:19%}.bracket.left{border-right:none;left:14%}.bracket.right{text-align:right;border-left:none;right:14%}#ammoBox{text-align:left;font-size:17px;line-height:1.35;position:absolute;top:43%;right:9%}#ammoCount{font-size:30px;font-weight:700}#shell{border:2px solid #e0a64a;border-radius:10px 10px 2px 2px;width:20px;height:54px;position:absolute;top:32px;right:-34px}#shell.empty{opacity:.5;border-style:dashed}#loadState{margin-top:2px;font-size:12px}#loadState.bad{animation:.6s steps(2,end) infinite blink}#clock{opacity:.85;font-size:15px;position:absolute;top:45%;left:11%}#reticle{width:0;height:0;position:absolute;top:50%;left:50%}#reticle .v{background:#e0a64a;width:2px;height:60px;position:absolute;top:14px;left:-1px}#reticle .h{background:linear-gradient(90deg,#e0a64a 0 70px,#0000 70px 110px,#e0a64a 110px);width:180px;height:2px;position:absolute;top:-1px;left:-90px}#reticle .c{clip-path:polygon(0 0,0 100%,100% 100%);border:2px solid #e0a64a;border-top:none;width:14px;height:14px;position:absolute;top:-7px;left:-7px;transform:rotate(-45deg)}#hitMarker{opacity:0;border:2px solid #ffd27a;width:46px;height:46px;margin:-23px;transition:opacity .35s;position:absolute;top:50%;left:50%;transform:rotate(45deg)}#hitMarker.on{opacity:1;transition:none}#crewBtns{left:50%;bottom:calc(50% - var(--sh,90vh) / 2 + 9%);gap:2.2vw;display:flex;position:absolute;transform:translate(-50%)}#crewBtns button{color:#e0a64a;letter-spacing:1px;background:#0a080473;border:2px solid #e0a64a;border-radius:6px;min-width:150px;padding:9px 16px;font-size:17px}#crewBtns button:active,#crewBtns button.flash{background:#e0a64a59}#btnFire.ready{box-shadow:0 0 10px #e0a64ab3}#subtitle{left:50%;bottom:calc(50% - var(--sh,90vh) / 2 + 2.5%);text-align:center;letter-spacing:1px;text-shadow:0 0 4px #000;width:86vw;font-size:17px;position:absolute;transform:translate(-50%)}#kbHint{text-align:center;opacity:.55;font-size:11px;position:absolute;bottom:6px;left:0;right:0}body.touch #kbHint{display:none}@media (orientation:portrait){#compass{height:42px;top:9%;left:12%;right:12%}#compassStrip .lb{font-size:13px}.bracket{padding:3px 6px;font-size:12px;top:24%}.bracket.left{left:7%}.bracket.right{right:7%}#ammoBox{font-size:12px;top:58%;right:12%}#ammoCount{font-size:22px}#shell{width:14px;height:38px;top:26px;right:-24px}#clock{font-size:12px;top:62%;left:9%}#reticle .h{background:linear-gradient(90deg,#e0a64a 0 45px,#0000 45px 75px,#e0a64a 75px);width:120px;left:-60px}#reticle .v{height:40px}#crewBtns{bottom:auto;top:calc(50% + var(--sh) / 2 + 18px);flex-direction:column;gap:10px;width:80vw}#crewBtns button{width:100%;padding:14px;font-size:18px}#subtitle{bottom:auto;top:calc(50% - var(--sh) / 2 - 92px);font-size:15px}}@media (orientation:landscape) and (max-height:500px){#crewBtns button{min-width:110px;padding:7px 10px;font-size:13px}#subtitle{font-size:13px}.bracket,#ammoBox{font-size:12px}#ammoCount{font-size:20px}#compassStrip .lb{font-size:12px}#compass{height:36px}.dayTitle{font-size:20px}.objective{font-size:13px}}#touch{z-index:8;pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}#stick{left:max(26px, env(safe-area-inset-left));bottom:max(34px, env(safe-area-inset-bottom));pointer-events:auto;background:#0000002e;border:2px solid #ffffff47;border-radius:50%;width:128px;height:128px;position:absolute}#knob{background:#ffffff47;border-radius:50%;width:54px;height:54px;margin:-27px;position:absolute;top:50%;left:50%}body.touch #prompt{background:#0000008c;padding:14px 18px;font-size:18px}#fade{opacity:0;pointer-events:none;z-index:40;background:#000;transition:opacity 1.2s;position:absolute;top:0;bottom:0;left:0;right:0}#card{z-index:45;text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}#cardTitle{letter-spacing:6px;color:#ddd;font-size:clamp(26px,6vw,46px)}#cardSub{color:#999;white-space:pre-line;max-width:560px;margin-top:18px;font-size:16px;line-height:1.5}#cardBtn,#startBtn{color:#eee;letter-spacing:3px;cursor:pointer;pointer-events:auto;background:0 0;border:1px solid #888;margin-top:28px;padding:12px 28px;font-size:18px}#title{z-index:50;text-align:center;background:radial-gradient(#1416188c,#000000eb);justify-content:center;align-items:center;padding:20px;display:flex;position:absolute;top:0;bottom:0;left:0;right:0}#title h1{letter-spacing:10px;color:#e6e1d6;text-shadow:0 0 18px #ffdcaa40;margin:0;font-size:clamp(34px,9vw,72px);font-weight:400}#title .tag{color:#9a958c;margin:10px 0 0;font-size:15px}.tControls{color:#8d8a84;margin-top:28px;font-size:13px;line-height:1.8}.tControls b{color:#bbb;font-weight:400}.tControls .small{color:#666;margin-top:8px;font-size:12px}
