:root{color-scheme:dark;font-family:Inter,Segoe UI,system-ui,sans-serif;color:#f5f7ff;background:#080b2b;--cyan:#28e7f2;--green:#63f58a;--orange:#ffa43a;--panel:rgba(14,17,55,.96)}*{box-sizing:border-box}html,body,#game{margin:0;width:100%;height:100%;overflow:hidden}body{background:radial-gradient(circle,#25205c,#080b2b)}button,input{font:inherit}button{width:100%;padding:.9rem 1.2rem;margin:.35rem 0;border:2px solid #5d65a3;border-radius:10px;color:#fff;background:#282858;font-weight:800;cursor:pointer}button:hover,button:focus-visible{border-color:var(--cyan);outline:3px solid rgba(40,231,242,.3);outline-offset:2px}button.primary{color:#07152b;background:linear-gradient(90deg,var(--cyan),#4ef6ae);border-color:transparent;letter-spacing:.06em}.hidden{display:none!important}button.danger-button{border-color:#ff765f;background:#6b2430;color:#fff}button.danger-button:hover,button.danger-button:focus-visible{border-color:#ffb09f;outline-color:#ff765f55}.danger-badge{color:#ff9b86;border-color:#ff765f88}.reset-confirm p{color:#e6d8dc;line-height:1.6}.creator-link{margin:.75rem 0;color:#9ea8d4;text-align:center;font-size:.74rem}.creator-link a{color:#8eeff4}.creator-link a:hover{color:#fff}.creator-link a:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}.actions{display:flex;gap:.65rem;flex-wrap:wrap}.actions button{flex:1;min-width:150px}.game-explainer{margin:1rem 0;padding:.8rem 1rem;border-left:3px solid var(--green);border-radius:7px;background:#091435b8;text-align:left}.game-explainer strong{color:var(--green);font-family:Oxanium,Inter,sans-serif}.game-explainer p{margin:.35rem 0;color:#e1e7fa;font-size:.82rem;line-height:1.45}.game-explainer small{display:block;color:#aeb9dc;font-size:.72rem;line-height:1.4}.loading-screen{pointer-events:auto;position:fixed;z-index:40;inset:0;display:grid;place-content:center;justify-items:center;gap:.65rem;padding:1.5rem;text-align:center;background:radial-gradient(circle at center,#182a55 0,#090d2a 48%,#040616)}.loading-screen h2{margin:.3rem 0 0}.loading-screen p{margin:0;color:#bdc9e8}.loading-orbit{position:relative;width:112px;height:112px;margin-bottom:.5rem;border:3px solid #28e7f244;border-top-color:var(--cyan);border-radius:50%;box-shadow:0 0 35px #28e7f244;animation:loading-spin 1.4s linear infinite}.loading-orbit:before,.loading-orbit:after{content:"";position:absolute;border-radius:50%;inset:13px;border:2px solid #63f58a55;border-right-color:var(--green);animation:loading-spin .9s linear infinite reverse}.loading-orbit:after{inset:34px;border-color:#6d42cf88;border-left-color:#a98cff;animation-duration:.7s}.loading-orbit span{position:absolute;inset:47px;border-radius:50%;background:var(--cyan);box-shadow:0 0 22px var(--cyan)}.loading-track{width:min(360px,76vw);height:5px;margin-top:.8rem;overflow:hidden;border-radius:99px;background:#27315c}.loading-track span{display:block;width:42%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--cyan),var(--green));box-shadow:0 0 14px var(--cyan);animation:loading-track 1.2s ease-in-out infinite alternate}@keyframes loading-spin{to{transform:rotate(360deg)}}@keyframes loading-track{0%{transform:translate(-100%)}to{transform:translate(240%)}}body.reduced-motion .loading-orbit,body.reduced-motion .loading-orbit:before,body.reduced-motion .loading-orbit:after,body.reduced-motion .loading-track span{animation:none}.loading-screen.fade-out{opacity:0;transition:opacity .2s ease}.achievement-toast{position:fixed;z-index:50;top:1.25rem;right:1.25rem;width:min(420px,calc(100vw - 2rem));min-height:112px;display:grid;grid-template-columns:72px 1fr;align-items:center;gap:1rem;padding:1rem 1.1rem;overflow:hidden;border:1px solid #ffe083;border-left:5px solid #ffd75e;border-radius:12px;background:linear-gradient(135deg,#0c1030fa,#153440fa);box-shadow:0 18px 55px #000b,0 0 32px #ffd75e38,0 0 18px #28e7f23b;transform:translate(calc(100% + 2rem));opacity:0;pointer-events:none}.achievement-toast:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 15%,#fff2 40%,transparent 65%);transform:translate(-130%)}.achievement-toast.show{animation:achievement-enter .55s cubic-bezier(.16,1,.3,1) forwards}.achievement-toast.show:before{animation:achievement-shine .9s .35s ease-out}.toast-emblem{display:grid;place-items:center;width:64px;height:64px;border:2px solid #ffe083;border-radius:50%;color:#07152b;background:radial-gradient(circle at 35% 30%,#fff8bd,#ffd75e 55%,#d48618);font-size:2rem;box-shadow:0 0 22px #ffd75e77}.achievement-toast.show .toast-emblem{animation:achievement-pulse .8s .2s ease-out}.toast-copy{min-width:0}.toast-copy span{display:block;color:#78f5ee;font:700 .67rem Oxanium;letter-spacing:.13em}.toast-copy strong{display:block;margin:.28rem 0;color:#fff;font:700 1.25rem Oxanium;text-shadow:0 0 16px #28e7f277}.toast-copy p{margin:0;color:#cfd8ef;font-size:.82rem;line-height:1.35}.toast-timer{position:absolute;left:0;bottom:0;width:100%;height:3px;transform-origin:left;background:linear-gradient(90deg,#ffd75e,var(--cyan))}.achievement-toast.show .toast-timer{animation:achievement-timer 4.2s linear forwards}@keyframes achievement-enter{0%{transform:translate(calc(100% + 2rem));opacity:0}70%{transform:translate(-8px);opacity:1}to{transform:translate(0);opacity:1}}@keyframes achievement-shine{to{transform:translate(130%)}}@keyframes achievement-pulse{0%{transform:scale(.55) rotate(-20deg)}65%{transform:scale(1.14) rotate(7deg)}to{transform:scale(1)}}@keyframes achievement-timer{to{transform:scaleX(0)}}body.reduced-motion .achievement-toast.show{animation:achievement-fade .15s ease-out forwards}body.reduced-motion .achievement-toast.show:before,body.reduced-motion .achievement-toast.show .toast-emblem{animation:none}@keyframes achievement-fade{to{transform:none;opacity:1}}#game{display:block}#ui-layer{position:fixed;inset:0;pointer-events:none;display:grid;place-items:center;padding:1rem}.panel{pointer-events:auto;width:min(92vw,550px);max-height:calc(100dvh - 2rem);overflow-x:hidden;overflow-y:auto;overflow-wrap:anywhere;padding:clamp(1.3rem,4vw,2.5rem);border:1px solid #6571ba;border-top:4px solid var(--cyan);border-radius:14px;background:linear-gradient(145deg,var(--panel),rgba(25,22,76,.97));box-shadow:0 24px 90px #0009,0 0 35px #28e7f222}.splash{text-align:center}h1,h2,.brand{font-family:Oxanium,Inter,sans-serif}h1{margin:.4rem 0;font-size:clamp(3rem,10vw,5.7rem);line-height:.76;letter-spacing:-.06em}h1 span,.brand span{color:var(--cyan);text-shadow:0 0 20px #28e7f288}h2{font-size:clamp(1.6rem,5vw,2.4rem);margin:.5rem 0 1rem;overflow-wrap:anywhere}.badge{display:inline-block;color:var(--cyan);font:700 .73rem Oxanium;letter-spacing:.16em;border:1px solid #28e7f277;border-radius:99px;padding:.35rem .7rem}.controls-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.55rem;margin:1.5rem 0}.controls-grid div{padding:.75rem .2rem;background:#080b2c99;border-radius:9px;display:grid;gap:.5rem}kbd{color:var(--cyan);font:700 .8rem Oxanium}.controls-grid span,.save-note{color:#b9c0e5;font-size:.74rem}#hud{position:fixed;inset:0;pointer-events:none;padding:1rem}.brand{position:absolute;top:1rem;left:1rem;font-weight:700}.case-update{position:absolute;top:3.1rem;left:1rem;display:grid;gap:.18rem;width:min(340px,calc(100vw - 2rem));padding:.75rem 1rem;border:1px solid #28e7f266;border-left:3px solid var(--cyan);border-radius:6px;background:#0a0e31e8;box-shadow:0 10px 30px #0005,0 0 20px #28e7f21c;animation:case-update-in .28s ease-out}.case-update small{color:var(--cyan);font:700 .61rem Oxanium;letter-spacing:.13em}.case-update strong{font-size:.84rem}.case-update span{margin-top:.18rem;color:var(--green);font-size:.74rem;font-weight:800}@keyframes case-update-in{0%{opacity:0;transform:translate(-18px)}to{opacity:1;transform:none}}body.reduced-motion .case-update{animation:none}#crosshair{position:absolute;inset:50% auto auto 50%;color:#fff;font-size:1.7rem;text-shadow:0 0 5px #000;transform:translate(-50%,-50%)}.prompt{position:absolute;bottom:12%;left:50%;transform:translate(-50%);width:max-content;max-width:calc(100vw - 2rem);white-space:normal;text-align:center;overflow-wrap:anywhere;padding:.65rem 1rem;background:#070a27e8;border:1px solid var(--cyan);border-radius:8px;font-weight:700}.prompt kbd{display:inline-grid;place-items:center;width:1.8rem;height:1.8rem;margin-right:.5rem;background:var(--cyan);color:#07152b;border-radius:5px}.subtitle{position:absolute;bottom:3%;left:50%;transform:translate(-50%);max-width:calc(100vw - 2rem);text-align:center;overflow-wrap:anywhere;background:#050615e8;border-radius:5px;padding:.55rem 1rem;font-size:.84rem}.icon-button{pointer-events:auto;position:absolute;right:1rem;bottom:1rem;width:3rem;height:3rem;padding:0;margin:0}.dialog{width:min(94vw,820px)}.dialog p{line-height:1.6;color:#d8dcf2}.dialog .actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:.65rem}.dialog .actions button{min-width:0;min-height:3.75rem;margin:0;white-space:normal;overflow-wrap:anywhere;word-break:break-word;line-height:1.3}.email{max-width:100%;overflow-wrap:anywhere;background:#f6f7fb;color:#17203a;border-radius:8px;padding:1.1rem;font-size:.9rem}.email-header{border-bottom:1px solid #ccd1de;padding-bottom:.8rem;margin-bottom:.8rem}.email .danger{color:#9c1830;font-weight:800}.email .fake-link{display:inline-block;max-width:100%;overflow-wrap:anywhere;color:#fff;background:#3264bf;border-radius:4px;padding:.7rem 1rem;margin:.4rem 0}.clue-list{display:grid;gap:.5rem;margin:.8rem 0}.clue-item{border:1px solid #4b5289;border-radius:7px;padding:.75rem;background:#121642;overflow-wrap:anywhere}.clue-item.found{border-color:var(--green);color:#dffff0}.score{display:grid;place-items:center;margin:1rem}.score strong{font:700 4rem Oxanium;color:var(--green)}.score span{font-size:.7rem;letter-spacing:.2em}.result{text-align:center}.result-icon{margin:auto;display:grid;place-items:center;width:4.5rem;height:4.5rem;border:3px solid var(--green);border-radius:50%;font-size:2.7rem;color:var(--green)}fieldset{border:1px solid #4d548b;margin-top:1rem;border-radius:8px}label{display:flex;justify-content:space-between;margin:.8rem 0}input[type=range]{width:100%}.toggle{justify-content:flex-start;gap:.7rem}.achievements{width:min(94vw,680px)}.achievement-count{color:#b9c8e8;margin-top:-.5rem}.achievement-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:1rem 0}.achievement-card{display:flex;gap:.8rem;align-items:flex-start;min-height:84px;padding:.85rem;border:1px solid #4b5289;border-radius:10px;background:#10143a}.achievement-card.unlocked{border-color:var(--green);background:linear-gradient(135deg,#102f31,#151844)}.achievement-card.locked{color:#a7aecf}.achievement-icon{display:grid;place-items:center;flex:0 0 2rem;height:2rem;border-radius:50%;background:#242958}.achievement-card.unlocked .achievement-icon{color:#07152b;background:var(--green)}.achievement-card strong{font-family:Oxanium,Inter,sans-serif}.achievement-card p{margin:.35rem 0 0;color:#d4e9df;font-size:.83rem;line-height:1.35}.achievement-unlock{margin:1rem 0;padding:1rem;border:1px solid var(--green);border-radius:10px;background:#0e3034}.achievement-unlock span{display:block;color:var(--green);font:700 .68rem Oxanium;letter-spacing:.12em}.achievement-unlock strong{display:block;margin-top:.35rem;font:700 1.15rem Oxanium}.achievement-unlock p{margin:.35rem 0 0!important}.achievement-pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;margin:.25rem 0 .65rem}.achievement-pagination button{margin:0;padding:.65rem .8rem}.achievement-pagination span{color:#b9c8e8;font-size:.78rem;font-weight:700;white-space:nowrap}.achievement-pagination button:disabled{cursor:not-allowed;opacity:.42;border-color:#4b5289;outline:none}@media(max-width:520px){.controls-grid{grid-template-columns:1fr}.controls-grid div{display:flex;justify-content:center;gap:1rem}.brand{font-size:.75rem}.case-update{top:2.6rem}.panel{padding:1.2rem}.actions{display:grid}.mission-dialog{padding:.9rem}.mission-dialog .actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem}.mission-dialog .mission-tile{min-height:3.8rem;padding:.42rem;font-size:.69rem}.mission-dialog .mission-navigation,.mission-dialog .mission-page-button,.mission-dialog .mission-close{min-height:2.3rem;padding:.4rem;font-size:.68rem}.mission-browser-intro{font-size:.7rem;margin-bottom:.4rem}.prompt{bottom:16%;font-size:.82rem}.achievement-list{grid-template-columns:1fr}.achievement-toast{top:.75rem;right:1rem;grid-template-columns:54px 1fr;min-height:96px}.toast-emblem{width:50px;height:50px;font-size:1.55rem}.toast-copy strong{font-size:1rem}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}.game-card{border:3px solid var(--orange);background:linear-gradient(145deg,#fff4d8,#e8f5ff)}.final-review{display:grid;gap:.65rem;margin:1rem 0 1.25rem}.review-label{color:var(--cyan);font:700 .68rem Oxanium;letter-spacing:.12em}.final-review .email{max-height:42vh;overflow-y:auto}.final-question{margin:0 0 .8rem;padding:.85rem 1rem;border-left:3px solid var(--cyan);border-radius:4px;background:#0b1035}.game-card .email-header{color:#693b00;font-size:1.05rem}.terminal-card{background:#081c21;color:#b7ffcf;border:2px solid var(--green);font-family:Consolas,monospace}.terminal-card .email-header{border-color:#3b8f61;color:var(--green)}.terminal-card p{border:1px solid #285b43;border-radius:5px;padding:.45rem}.chat-card{background:#eef0ff}.chat-card p{background:#fff;border-radius:12px 12px 12px 3px;padding:.65rem;box-shadow:0 2px 5px #29325a22}.mission-best{padding:.7rem;border-left:3px solid var(--green);background:#0a2b2b}.clue-item small{color:#b8c3e7}.clue-item.found small{color:#c8f9d8}.mission-dialog{width:min(94vw,760px);overflow:hidden!important}.mission-dialog h2{margin-bottom:.45rem}.mission-browser-intro{margin-bottom:.65rem;color:#bdc7e5;font-size:.8rem}.mission-dialog .actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:.48rem}.mission-dialog .mission-tile{min-height:5rem;padding:.65rem .55rem;white-space:pre-line;line-height:1.25;border-color:#59639c;background:linear-gradient(145deg,#202653,#171a43);font-size:.82rem}.mission-dialog .mission-tile.new{border-color:#28e7f288}.mission-dialog .mission-tile.completed{border-color:#63f58a99;background:linear-gradient(145deg,#163b3b,#171a43)}.mission-dialog .mission-navigation,.mission-dialog .mission-page-button,.mission-dialog .mission-close{min-height:2.65rem;padding:.55rem;font-size:.76rem}.mission-dialog .mission-page-button{color:#aeb9dc;border-color:#3f4779;background:#101438}.mission-dialog button:disabled{cursor:not-allowed;opacity:.4;outline:none}.asset-credit{margin:1.2rem 0 0;color:#9ea8d4;font-size:.68rem;line-height:1.5}.asset-credit a{color:#8eeff4}.asset-credit a:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
