@font-face{font-family:Pirata One;src:url(../fonts/PirataOne-Regular.ttf)format("truetype");font-display:swap}@font-face{font-family:VT323;src:url(../fonts/VT323-Regular.ttf)format("truetype");font-display:swap}@font-face{font-family:Bangers;src:url(../fonts/Bangers-Regular.ttf)format("truetype");font-display:swap}@font-face{font-family:Permanent Marker;src:url(../fonts/PermanentMarker-Regular.ttf)format("truetype");font-display:swap}:root{--ink:#120d1c;--panel:#120d1cdb;--edge:#d6a54e8c;--gold:#e3b45c;--green:#8dff6a;--text:#f2ead8;--muted:#b6a9c9;--red:#ff5a48;--sat:env(safe-area-inset-top,0px);--sar:env(safe-area-inset-right,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px);--gap:clamp(8px, 2.2vmin, 20px);--tap:44px;--hud-w:calc(4 * var(--tap) + 3 * 8px);--ease-out:cubic-bezier(.2, .8, .2, 1)}*{box-sizing:border-box}html,body{overscroll-behavior:none;height:100%;color:var(--text);touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:#05040a;margin:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif;overflow:hidden}#stage{touch-action:none;position:fixed;inset:0}#stage canvas{touch-action:none;display:block}#ui{pointer-events:none;position:fixed;inset:0}#ui>*{pointer-events:auto}body.busy #stage canvas{cursor:progress}button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}:focus{outline:none}:focus-visible{outline:2px solid var(--green);outline-offset:3px}.scrollable{touch-action:pan-y;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.title-screen{z-index:90;padding:var(--sat) var(--sar) var(--sab) var(--sal);-webkit-backdrop-filter:blur(6px);background:radial-gradient(at 50% 40%,#2818468c,#05040aeb 70%);place-items:center;transition:opacity 1.1s,-webkit-backdrop-filter 1.1s,backdrop-filter 1.1s;display:grid;position:fixed;inset:0;overflow:hidden}.title-screen.gone{opacity:0;-webkit-backdrop-filter:blur();pointer-events:none}.title-card{text-align:center;max-width:640px;padding:clamp(10px,3vmin,24px)}.kicker{letter-spacing:.18em;text-transform:uppercase;color:var(--green);opacity:.9;font-family:VT323,monospace;font-size:clamp(14px,1.2vw + .8vh,18px)}.title-card h1{color:var(--gold);text-shadow:0 2px #4a2a10,0 0 40px #e3b45c59;margin:.04em 0 .06em;font-family:Pirata One,serif;font-size:clamp(44px,min(10vw,17vh),112px);font-weight:400;line-height:.95}.tagline{color:var(--muted);max-width:34em;margin:0 auto clamp(12px,4vh,28px);font-size:clamp(14px,1.1vw + 1vh,18px);line-height:1.35}.loadbar{background:#ffffff14;border-radius:2px;width:min(260px,60vw);height:4px;margin:0 auto clamp(10px,3vh,22px);overflow:hidden}.loadbar i{background:var(--green);width:0;height:100%;box-shadow:0 0 12px var(--green);transition:width .3s;display:block}.title-screen.ready .loadbar{opacity:0;transition:opacity .6s}.start,.primary{min-height:var(--tap);cursor:pointer;color:#1a1206;background:linear-gradient(#f2c873,#c9963f);border:1px solid #ffe2a4;border-radius:6px;padding:8px 34px;font-family:Pirata One,serif;font-size:clamp(21px,1.4vw + 1.4vh,26px);line-height:1.1;transition:transform .12s,box-shadow .12s,filter .2s;box-shadow:0 4px #6a4416,0 0 30px #e3b45c40}.start:hover:not(:disabled),.primary:hover{filter:brightness(1.08);transform:translateY(-1px)}.start:active,.primary:active{transform:translateY(3px);box-shadow:0 1px #6a4416}.start:disabled{opacity:.45;cursor:wait}.title-screen.ready .start{animation:2.4s ease-in-out infinite start-glow}@keyframes start-glow{50%{box-shadow:0 4px #6a4416,0 0 46px #e3b45c8c}}.small{color:var(--muted);font-size:clamp(12px,.6vw + .8vh,13px)}.title-card .small{margin:clamp(10px,3vh,22px) 0 0}.rotate-tip{display:none}body.is-phone.portrait .rotate-tip{letter-spacing:.06em;color:var(--green);justify-content:center;align-items:center;gap:10px;margin:18px 0 0;font-family:VT323,monospace;font-size:18px;display:flex}.mini-phone{width:16px;height:26px;color:var(--green);animation:2.8s ease-in-out infinite rot-turn;display:inline-grid}.mini-phone svg{width:100%;height:100%}.subtitle{left:50%;bottom:calc(var(--sab) + clamp(8px, 3.4vh, 56px));z-index:20;width:max-content;max-width:min(880px, 82vw, calc(100vw - var(--sal) - var(--sar) - 2 * var(--gap)));opacity:0;text-align:center;background:#08060eb8;border:1px solid #8dff6a2e;border-radius:10px;padding:clamp(5px,1.2vh,12px) clamp(12px,2vw,22px) clamp(6px,1.4vh,14px);transition:opacity .25s,transform .25s;position:fixed;transform:translate(-50%,12px);pointer-events:none!important}.subtitle.show{opacity:1;transform:translate(-50%)}.subtitle .who{letter-spacing:.2em;text-transform:uppercase;color:var(--green);margin-bottom:3px;font-family:VT323,monospace;font-size:clamp(15px,.8vw + 1vh,20px);line-height:1;display:block}.subtitle .line{text-shadow:0 2px 8px #000;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;font-size:clamp(15px,1.2vw + 1.1vh,24px);font-weight:600;line-height:1.28;display:-webkit-box;overflow:hidden}.objective{left:calc(var(--sal) + var(--gap));bottom:calc(var(--sab) + var(--gap));z-index:10;border-left:3px solid var(--gold);max-width:min(360px,40vw);color:var(--muted);opacity:0;background:linear-gradient(90deg,#0a0712d9,#0a071200);padding:clamp(6px,1.2vh,10px) 14px;font-size:clamp(12px,.5vw + .9vh,14px);line-height:1.4;transition:opacity .6s;position:fixed;pointer-events:none!important}.objective.show{opacity:1}body.busy .objective.show,body.subs-on .objective.show{opacity:0;transition-duration:.25s}.objective b{color:var(--text)}.obj-tag{letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:3px;font-family:VT323,monospace;font-size:14px;line-height:1;display:block}.tooltip{z-index:30;background:var(--panel);border:1px solid var(--edge);opacity:0;border-radius:8px;max-width:min(280px,70vw);padding:8px 12px;transition:opacity .15s;position:fixed;top:0;left:0;overflow:hidden;box-shadow:0 8px 30px #00000080;pointer-events:none!important}.tooltip.show{opacity:1}.tooltip b{color:var(--gold);font-family:Pirata One,serif;font-size:22px;font-weight:400;line-height:1;display:block}.tooltip span{color:var(--muted);margin-top:3px;font-size:13px;line-height:1.35;display:block}.tooltip.tap{text-align:center;padding:9px 14px 11px}.tooltip.tap b{font-size:24px}.tip-fill{background:var(--gold);width:100%;height:3px;box-shadow:0 0 8px var(--gold);transform-origin:0;display:none;position:absolute;bottom:0;left:0;transform:scaleX(0)}.tooltip.tap .tip-fill{display:block}.tooltip.tap.arming .tip-fill{animation:.52s linear forwards tip-fill}@keyframes tip-fill{to{transform:scaleX(1)}}.tap-ripple{z-index:25;border-radius:50%;width:40px;height:40px;margin:-20px 0 0 -20px;position:fixed;top:0;left:0;pointer-events:none!important}.tap-ripple:after{content:"";animation:ripple .6s var(--ease-out) forwards;border:2px solid #f2ead88c;border-radius:50%;position:absolute;inset:0}.tap-ripple.hit:after{border-color:var(--gold);box-shadow:0 0 12px #e3b45c99}@keyframes ripple{0%{opacity:1;transform:scale(.3)}to{opacity:0;transform:scale(1.5)}}.hs-markers{z-index:15;position:fixed;inset:0;pointer-events:none!important}.hs-marker{width:var(--tap);height:var(--tap);margin:calc(var(--tap) / -2) 0 0 calc(var(--tap) / -2);cursor:pointer;opacity:0;pointer-events:none;will-change:transform;background:0 0;border:0;padding:0;transition:opacity .35s;position:absolute;top:0;left:0}.hs-marker.on{opacity:1;pointer-events:auto}.hs-marker .dot{border:2px solid var(--gold);background:radial-gradient(circle,#fff3cf 0 22%,#e3b45cd9 30%,#e3b45c40 62%);border-radius:50%;width:18px;height:18px;margin:-9px 0 0 -9px;position:absolute;top:50%;left:50%;box-shadow:0 0 14px #e3b45ccc,0 0 0 2px #120d1c99}.hs-marker .dot:before,.hs-marker .dot:after{content:"";border:2px solid var(--gold);opacity:0;border-radius:50%;position:absolute;inset:-2px}.hs-marker.on .dot{animation:.45s cubic-bezier(.3,1.6,.5,1) both dot-pop}.hs-marker.on .dot:before{animation:1.6s ease-out infinite dot-ring}.hs-marker.on .dot:after{animation:1.6s ease-out .8s infinite dot-ring}.hs-markers.auto .hs-marker.on .dot:before,.hs-markers.auto .hs-marker.on .dot:after{animation-iteration-count:2}@keyframes dot-pop{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes dot-ring{0%{opacity:.9;transform:scale(1)}to{opacity:0;transform:scale(2.8)}}.hs-marker .lbl{white-space:nowrap;letter-spacing:.06em;text-transform:uppercase;color:var(--gold);border:1px solid var(--edge);background:#120d1ce0;border-radius:999px;padding:2px 8px 3px;font-family:VT323,monospace;font-size:17px;line-height:1;position:absolute;top:calc(100% - 6px);left:50%;transform:translate(-50%);box-shadow:0 4px 14px #00000080}.hs-marker[data-pos=above] .lbl{top:auto;bottom:calc(100% - 6px)}.hs-marker[data-pos=right] .lbl{top:50%;left:calc(100% - 6px);transform:translateY(-50%)}.hs-marker[data-pos=left] .lbl{top:50%;left:auto;right:calc(100% - 6px);transform:translateY(-50%)}.hs-marker:hover .dot,.hs-marker:focus-visible .dot{transform:scale(1.2)}.hs-markers .hs-marker:nth-child(2) .dot{animation-delay:50ms}.hs-markers .hs-marker:nth-child(3) .dot{animation-delay:.1s}.hs-markers .hs-marker:nth-child(4) .dot{animation-delay:.15s}.hs-markers .hs-marker:nth-child(5) .dot{animation-delay:.2s}.hs-markers .hs-marker:nth-child(6) .dot{animation-delay:.25s}.hs-markers .hs-marker:nth-child(7) .dot{animation-delay:.3s}.hud{top:calc(var(--sat) + var(--gap));right:calc(var(--sar) + var(--gap));z-index:35;gap:8px;transition:opacity .4s;display:flex;position:fixed}body:not(.started) .hud{display:none}.hud-btn{width:var(--tap);height:var(--tap);border:1px solid var(--edge);background:var(--panel);color:var(--text);cursor:pointer;opacity:.8;border-radius:50%;place-items:center;padding:0;transition:opacity .2s,color .2s,background .2s,transform .12s;display:grid;box-shadow:0 4px 14px #00000059}.hud-btn svg{width:22px;height:22px;display:block}.hud-btn:hover{opacity:1}.hud-btn:active{transform:scale(.92)}.hud-btn.on{color:var(--green)}.hud-btn.off{color:var(--muted)}.hud-btn.hint{color:var(--gold);border-color:var(--gold);opacity:.95}.hud-btn.hint.active{background:var(--gold);color:#1a1206;box-shadow:0 0 18px #e3b45c99}.hud-btn.hint.nudge{animation:1.2s ease-in-out 2 nudge}@keyframes nudge{0%,to{transform:scale(1)}30%{transform:scale(1.18)rotate(-8deg)}60%{transform:scale(1.06)rotate(6deg)}}body.busy .hud-btn.hint{opacity:.3;pointer-events:none}.toasts{top:calc(var(--sat) + var(--gap));z-index:45;width:max-content;max-width:min(620px, calc(100vw - 2 * (var(--hud-w) + var(--gap) * 2) - var(--sal) - var(--sar)));flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;left:50%;transform:translate(-50%);pointer-events:none!important}.toast{background:var(--panel);border:1px solid var(--edge);text-align:center;opacity:0;max-width:100%;transition:opacity .4s, transform .4s var(--ease-out);border-radius:10px;padding:clamp(8px,1.5vh,12px) clamp(12px,2vw,20px);font-size:clamp(13px,.5vw + 1vh,15px);line-height:1.4;transform:translateY(-16px);box-shadow:0 10px 30px #00000073}.toast.show{opacity:1;transform:none}.toast.out{opacity:0;transform:translateY(-10px)}.toast .bulb{margin-right:6px}.toast .denied,.toast .granted{letter-spacing:.15em;font-family:VT323,monospace;font-size:clamp(24px,1.2vw + 2vh,30px);font-weight:400;line-height:1}.toast .denied{color:var(--red)}.toast .granted{color:var(--green)}.modal{z-index:40;opacity:0;padding:calc(var(--sat) + var(--gap)) calc(var(--sar) + var(--gap)) calc(var(--sab) + var(--gap)) calc(var(--sal) + var(--gap));background:#05040a59;place-items:center;transition:opacity .3s;display:grid;position:fixed;inset:0}.modal.show{opacity:1}.modal.gone{opacity:0;pointer-events:none}.keypad-wrap{padding-right:max(calc(var(--sar) + var(--gap)), 8vw);background:0 0;place-items:center end}.keypad{width:280px;transition:transform .35s var(--ease-out);background:linear-gradient(160deg,#4a4558,#24212c);border:2px solid #15121c;border-radius:14px;padding:18px;position:relative;transform:translate(24px);box-shadow:inset 0 1px #ffffff26,0 20px 60px #0009}.modal.show .keypad{transform:none}.kp-brand{color:#c8bfd8;letter-spacing:.1em;text-align:center;padding:0 22px;font-family:VT323,monospace;font-size:18px;line-height:1.1}.kp-brand small{opacity:.7;font-size:14px;display:block}.kp-lcd{text-align:center;background:#160404;border:2px solid #0a0606;border-radius:6px;margin:10px 0 14px;padding:8px;box-shadow:inset 0 0 18px #ff3c2859}.kp-code{letter-spacing:.4em;color:#ff5a48;text-shadow:0 0 10px #ff3a28;padding-left:.4em;font-family:VT323,monospace;font-size:46px;line-height:1}.kp-lcd.ok .kp-code{color:var(--green);text-shadow:0 0 10px var(--green)}.kp-help{display:none}.kp-keys{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.kp-keys button{cursor:pointer;color:#2a1a06;background:linear-gradient(#f0c46e,#b8862f);border:1px solid #ffe2a4;border-radius:8px;height:52px;font:700 22px Segoe UI,sans-serif;transition:transform 60ms,box-shadow 60ms;box-shadow:0 4px #5e3c12}.kp-keys button.clr,.kp-keys button.ok{font-size:18px}.kp-keys button.ok{background:linear-gradient(#a6f08a,#4fae3a);border-color:#d9ffc9;box-shadow:0 4px #24611a}.kp-keys button:active,.kp-keys button.down{transform:translateY(3px);box-shadow:0 1px #5e3c12}.kp-close{width:var(--tap);height:var(--tap);color:#c8bfd8;cursor:pointer;background:0 0;border:0;font-size:26px;line-height:1;position:absolute;top:0;right:0}.card{text-align:left;color:#2a1d10;width:min(580px,100%);max-height:100%;transition:transform .35s var(--ease-out);-webkit-user-select:text;user-select:text;background:linear-gradient(170deg,#f3e6c4,#e2cc98);border:2px solid #8a6328;border-radius:14px;flex-direction:column;padding:clamp(14px,3.6vmin,28px) clamp(16px,4vmin,32px);display:flex;transform:translateY(10px)scale(.98);box-shadow:0 30px 80px #0009,inset 0 0 60px #78501440}.modal.show .card{transform:none}.card .kicker{color:#2e7a3a}.card h2{color:#4a1a10;margin:4px 0 clamp(6px,1.5vh,10px);font-family:Pirata One,serif;font-size:clamp(25px,1.6vw + 2.4vh,38px);font-weight:400;line-height:1.05}.card-body{flex:auto;min-height:0;padding-right:4px;font-size:clamp(14px,.5vw + 1.1vh,16px);line-height:1.5;overflow-y:auto}.card-body p{margin:0 0 .7em}.card-body ul{margin:0 0 .7em;padding-left:1.2em}.card-body li{margin:4px 0}.card .small{color:#6a5530}.card-foot{flex:none;padding-top:clamp(8px,1.8vh,14px)}.side-panel{z-index:38;width:min(420px, 46vw, calc(100vw - 2 * var(--gap)));max-height:calc(100% - var(--sat) - var(--sab) - 2 * var(--gap));background:var(--panel);border:1px solid var(--edge);transition:transform .45s var(--ease-out), opacity .45s;opacity:0;-webkit-backdrop-filter:blur(4px);border-radius:12px;padding:clamp(12px,3vmin,22px) clamp(14px,3vmin,24px);position:fixed;top:50%;overflow-y:auto;box-shadow:0 20px 60px #00000080}.side-panel.right{right:calc(var(--sar) + var(--gap));top:calc(50% + (var(--tap) + 8px) / 2);max-height:calc(100% - var(--sat) - var(--sab) - 2 * var(--gap) - var(--tap) - 8px);transform:translate(40px,-50%)}.side-panel.left{left:calc(var(--sal) + var(--gap));transform:translate(-40px,-50%)}.side-panel.show{opacity:1;transform:translateY(-50%)}.side-panel h3{color:var(--gold);margin:4px 0 clamp(6px,1.6vh,12px);font-family:Pirata One,serif;font-size:clamp(22px,1.2vw + 1.8vh,28px);font-weight:400;line-height:1.05}.side-panel p{margin:0 0 .8em;font-size:clamp(13px,.5vw + 1vh,15px);line-height:1.45}.side-panel .flags{margin:0 0 clamp(8px,2vh,16px);padding:0;list-style:none}.side-panel .flags li{gap:10px;margin:clamp(5px,1.2vh,10px) 0;font-size:clamp(13px,.5vw + 1vh,15px);line-height:1.4;display:flex}.side-panel .num{background:var(--red);color:#1a0505;border-radius:50%;flex:0 0 26px;place-items:center;height:26px;font-weight:800;display:grid}.side-panel .marker{color:#ffe46a;font-family:Permanent Marker,cursive;font-size:clamp(18px,1vw + 1.8vh,22px);line-height:1.5}.side-panel>.primary{margin-top:4px;position:sticky;bottom:0;box-shadow:0 4px #6a4416,0 0 30px #e3b45c40,0 -6px 14px 10px #120d1cf5}.sticky-zoom{color:#1a2a8a;text-align:center;background:#ffe95c;margin:4px 10px clamp(14px,3.5vh,22px);padding:clamp(12px,3vh,22px);font-family:Permanent Marker,cursive;font-size:clamp(20px,1vw + 2.4vh,26px);line-height:1.2;transform:rotate(-3deg);box-shadow:0 10px 30px #00000080}.sticky-zoom .code{color:#c8231c;letter-spacing:.15em;font-size:clamp(38px,2vw + 6vh,56px);line-height:1.1}.sticky-zoom .small{color:#1a2a8a;font-size:clamp(14px,.5vw + 1.6vh,18px)}.rotate-overlay{z-index:100;text-align:center;padding:calc(var(--sat) + 24px) calc(var(--sar) + 24px) calc(var(--sab) + 24px) calc(var(--sal) + 24px);background:radial-gradient(at 50% 38%,#301c54eb,#05040af7 72%);place-items:center;display:none;position:fixed;inset:0}body.started.is-phone.portrait:not(.rotate-ok) .rotate-overlay{animation:.35s both fade-in;display:grid}@keyframes fade-in{0%{opacity:0}}.rot-card{max-width:340px}.rot-anim{place-items:center;width:132px;height:132px;margin:0 auto 18px;display:grid;position:relative}.rot-phone{width:58px;height:94px;color:var(--gold);filter:drop-shadow(0 0 16px #e3b45c59);animation:2.8s ease-in-out infinite rot-turn;display:grid}.rot-phone svg{width:100%;height:100%}.rot-arrow{width:48px;height:48px;color:var(--green);animation:2.8s ease-in-out infinite rot-arrow;position:absolute;top:-2px;right:-4px}.rot-arrow svg{width:100%;height:100%}@keyframes rot-turn{0%,18%{transform:rotate(0)}48%,78%{transform:rotate(90deg)}to{transform:rotate(0)}}@keyframes rot-arrow{0%,10%{opacity:0;transform:rotate(20deg)}22%,40%{opacity:1;transform:rotate(0)}52%,to{opacity:0;transform:rotate(-30deg)}}.rotate-overlay h2{color:var(--gold);text-shadow:0 2px #4a2a10,0 0 30px #e3b45c4d;margin:6px 0 10px;font-family:Pirata One,serif;font-size:40px;font-weight:400;line-height:1}.rotate-overlay p{color:var(--muted);margin:0 0 22px;font-size:16px;line-height:1.45}.rotate-overlay .primary{margin:0 auto 10px;display:block}.rotate-overlay .primary[hidden]{display:none}.link{min-height:var(--tap);cursor:pointer;color:var(--muted);text-underline-offset:3px;background:0 0;border:0;padding:8px 16px;font:14px Segoe UI,system-ui,sans-serif;text-decoration:underline}.link:hover{color:var(--text)}.debug{top:calc(var(--sat) + var(--gap) + var(--tap) + 10px);right:calc(var(--sar) + var(--gap));z-index:60;touch-action:pan-y;background:#000000bf;border-radius:8px;width:210px;max-height:70vh;padding:8px 10px;font-size:12px;position:fixed;overflow:auto}.debug details{margin:6px 0}.debug summary{cursor:pointer;color:var(--green)}.debug button{color:#fff;cursor:pointer;background:#2a2438;border:1px solid #555;border-radius:4px;margin:2px;padding:3px 6px;font-size:11px;display:inline-block}.fatal{z-index:200;inset:auto 20px calc(var(--sab) + 20px) 20px;color:#fff;background:#400;border-radius:8px;padding:16px;position:fixed}@media (orientation:landscape) and (max-height:500px){:root{--gap:10px}.hud{gap:6px}.tagline{max-width:40em}.subtitle{bottom:calc(var(--sab) + 8px);max-width:min(720px,78vw)}.subtitle .who{vertical-align:1px;margin:0 .45em 0 0;font-size:16px;display:inline}.subtitle .line{display:inline}.subtitle{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.objective{max-width:min(300px,36vw)}.tooltip b{font-size:20px}.tooltip span{font-size:12px}.tooltip.tap b{font-size:21px}.tooltip.tap{padding:7px 12px 9px}.keypad-wrap{padding-right:calc(var(--sar) + 4vw)}.keypad{grid-template-columns:136px auto;align-items:center;gap:14px;width:auto;padding:12px 14px;display:grid}.kp-head{flex-direction:column;justify-content:center;display:flex}.kp-brand{padding:0;font-size:15px}.kp-brand small{font-size:12px}.kp-lcd{margin:8px 0 6px;padding:4px}.kp-code{font-size:38px}.kp-help{color:#a99fbd;text-align:center;letter-spacing:.05em;font-family:VT323,monospace;font-size:14px;display:block}.kp-keys{grid-template-columns:repeat(3,56px);gap:6px}.kp-keys button{height:clamp(42px,12.5vh,50px);font-size:20px}.kp-close{top:-6px;left:-6px;right:auto}.keypad .kp-brand{padding-left:18px}.card{grid-template:"head body"1fr"foot body"/minmax(170px,36%) 1fr;column-gap:22px;width:min(780px,100%);display:grid}.card-head{grid-area:head;align-self:center}.card-body{grid-area:body;align-self:stretch;max-height:100%}.card-foot{grid-area:foot;padding-top:10px}.card h2{font-size:clamp(24px,3.2vw,32px)}.side-panel{width:min(430px,52vw)}.side-panel .flags li{margin:4px 0}.rotate-tip{display:none!important}}@media (orientation:landscape) and (max-height:360px){.title-card .small{display:none}.subtitle .line{font-size:15px}}@media (orientation:portrait){.objective{max-width:min(360px,70vw)}.subtitle{max-width:calc(100vw - var(--sal) - var(--sar) - 2 * var(--gap))}.toasts{top:calc(var(--sat) + var(--gap) + var(--tap) + 10px);max-width:calc(100vw - 2 * var(--gap))}.side-panel{width:min(420px, calc(100vw - 2 * var(--gap)))}}@media (hover:none){.hud-btn{opacity:.9}}@media (prefers-reduced-motion:reduce){.title-screen,.subtitle,.toast,.side-panel,.modal,.card,.keypad,.objective,.hs-marker,.tooltip{transition:none!important}.title-screen.ready .start,.hud-btn.hint.nudge,.mini-phone,.tap-ripple:after,.hs-marker.on .dot,.hs-marker.on .dot:before,.hs-marker.on .dot:after{animation:none!important}.rotate-overlay,body.started.is-phone.portrait:not(.rotate-ok) .rotate-overlay{animation:none}.rot-phone{animation:none;transform:rotate(90deg)}.rot-arrow{opacity:1;animation:none}.mini-phone{transform:rotate(90deg)}.tooltip.tap.arming .tip-fill{animation:none;transform:scaleX(1)}}.skip-btn{right:max(18px, env(safe-area-inset-right));bottom:max(18px, env(safe-area-inset-bottom));border:1px solid var(--edge);background:var(--panel);min-height:44px;color:var(--text);cursor:pointer;opacity:.8;border-radius:22px;padding:10px 16px;font:600 14px Segoe UI,system-ui,sans-serif;position:fixed}.skip-btn:hover{opacity:1}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.ui-keys:focus,.ui-keys [tabindex="-1"]:focus{outline:none}.ui-demo-backdrop{position:fixed;inset:0}.ui-demo-backdrop svg{width:100%;height:100%;display:block}.choice-wrap{z-index:37;padding:0 calc(var(--sar) + var(--gap)) calc(var(--sab) + clamp(10px, 3.2vh, 44px)) calc(var(--sal) + var(--gap));opacity:0;flex-direction:column;justify-content:flex-end;align-items:center;transition:opacity .35s;display:flex;position:fixed;inset:0}.choice-wrap.show{opacity:1}.choice-wrap.gone{opacity:0}#ui>.choice-wrap.pass,#ui>.choice-wrap.gone{pointer-events:none!important}.choice-wrap.pass .choice-card{pointer-events:auto}.choice-wrap:not(.pass){background:#05040a38}.choice-scrim{pointer-events:none;background:linear-gradient(#100a0600,#100a0680 48%,#100a06cc);height:min(78%,560px);position:absolute;bottom:0;left:0;right:0}.choice-head{text-align:center;pointer-events:none;margin-bottom:clamp(8px,2.2vh,20px);position:relative}.choice-head .kicker{color:#ffd98a}.choice-head h2{color:#fff3d6;text-shadow:0 2px #3a1f0c,0 0 26px #000000a6;margin:2px 0 0;font-family:Pirata One,serif;font-size:clamp(27px,1.3vw + 2.8vh,50px);font-weight:400;line-height:1}.choice-row{justify-content:center;gap:clamp(8px,1.4vw,24px);width:min(100%,1180px);display:flex;position:relative}.choice-card{--tilt:0deg;cursor:pointer;text-align:center;color:#2a1d10;min-width:0;max-width:350px;transform:rotate(var(--tilt));transition:transform .2s var(--ease-out), box-shadow .2s, opacity .3s, filter .2s;font:inherit;background:linear-gradient(170deg,#fdf5e1,#ecd8a8);border:2px solid #8a6328;border-radius:14px;flex-direction:column;flex:1 1 0;align-items:center;gap:clamp(4px,1vh,10px);padding:clamp(10px,1.8vh,20px) clamp(10px,1.2vw,20px) clamp(12px,2.2vh,22px);display:flex;position:relative;box-shadow:0 5px #6a4416,0 16px 34px #00000073,inset 0 0 34px #8c5f1e29}.choice-card:first-child{--tilt:-1deg}.choice-card:nth-child(2){--tilt:.7deg}.choice-card:nth-child(3){--tilt:-.5deg}.choice-card:nth-child(4){--tilt:1deg}.choice-wrap.show .choice-card{animation:cc-in .55s cubic-bezier(.2, 1.35, .4, 1) calc(var(--i) * 80ms + 60ms) backwards}@keyframes cc-in{0%{transform:translateY(46px) rotate(calc(var(--tilt) * 4));opacity:0}}.choice-card:hover,.choice-card:focus-visible{transform:translateY(-7px)rotate(0);box-shadow:0 5px #6a4416,0 0 0 3px #ffd98a,0 18px 40px #00000080,0 0 34px #ffd2788c}.choice-card:focus-visible{outline-offset:3px;outline:3px solid #2f6fd6}.choice-card:active{transform:translateY(-2px)scale(.98)}.cc-key{color:#2a1606;background:linear-gradient(#f6d27e,#c9963f);border:2px solid #6a4416;border-radius:50%;place-items:center;width:30px;height:30px;font:800 16px/1 Segoe UI,system-ui,sans-serif;display:grid;position:absolute;top:-9px;left:-9px;box-shadow:0 2px #4a2a0c}body.is-touch .cc-key{display:none}.cc-art{height:clamp(46px,12.5vh,118px);display:block}.cc-art svg{width:auto;height:100%;display:block;overflow:visible}.cc-text{flex-direction:column;gap:3px;display:flex}.cc-label{color:#2a1d10;text-wrap:balance;font:700 clamp(15px,.45vw + 1.6vh,22px)/1.22 Segoe UI,system-ui,sans-serif}.cc-sub{color:#5a4428;font-size:clamp(14px,.3vw + 1.2vh,17px);line-height:1.3}.choice-help{letter-spacing:.1em;text-transform:uppercase;color:#fff3d6d9;pointer-events:none;margin:clamp(6px,1.6vh,14px) 0 0;font-family:VT323,monospace;font-size:17px;position:relative}.choice-wrap.picked .choice-card:not(.chosen){opacity:0;transform:translateY(24px)scale(.95)}.choice-wrap.picked .choice-card.chosen{transform:translateY(-12px)scale(1.05)rotate(0);box-shadow:0 5px #6a4416,0 0 0 4px #ffd98a,0 0 60px #ffd278cc}.choice-wrap.picked .choice-head,.choice-wrap.picked .choice-help{opacity:0;transition:opacity .3s}body.choice-open .objective.show{opacity:0}body.choice-open .subtitle{top:calc(var(--sat) + var(--gap));max-width:min(640px, calc(100vw - 2 * (var(--hud-w) + 2 * var(--gap)) - var(--sal) - var(--sar)));bottom:auto}@media (orientation:landscape) and (max-height:500px){.choice-wrap{padding-bottom:calc(var(--sab) + 8px)}.choice-head{margin-bottom:8px}.choice-head .kicker{font-size:15px}.choice-head h2{font-size:27px}.choice-row{gap:12px;padding:0 6px}.choice-card{gap:4px;padding:9px 10px 11px}.cc-art{height:50px}.cc-label{font-size:15px;line-height:1.25}.choice-help{display:none}}.hunt,body.hunt-open{--hunt-w:min(52vw, 860px);--hunt-x:calc(var(--sal) + var(--gap) + 2vw);--hunt-fs:clamp(15px, .5vw + 1.3vh, 20px)}.hunt{z-index:18;opacity:0;transition:opacity .35s;position:fixed;inset:0}#ui>.hunt,#ui>.hunt.hidden,#ui>.hunt.gone{pointer-events:none!important}.hunt>*{pointer-events:auto}.hunt.show{opacity:1}.hunt.hidden,.hunt.gone{opacity:0}.hunt.hidden *,.hunt.gone *{pointer-events:none!important}.hunt-dim{background:linear-gradient(90deg, #0e080585, #0e08054d calc(var(--hunt-w) + 8vw), #0e08050f);position:absolute;inset:0;pointer-events:none!important}.hunt-layout{left:var(--hunt-x);right:calc(var(--sar) + var(--gap));max-height:calc(100% - var(--sat) - var(--sab) - 2 * var(--gap));align-items:flex-start;gap:clamp(12px,1.6vw,30px);display:flex;position:absolute;top:50%;transform:translateY(-50%)}#ui>.hunt .hunt-layout{pointer-events:none}.hunt-layout>*{pointer-events:auto}.hunt-panel{width:var(--hunt-w);max-height:calc(100vh - var(--sat) - var(--sab) - 2 * var(--gap));transition:translate .45s var(--ease-out);font-size:var(--hunt-fs);color:#2a1d10;background:#fbf3df;border:2px solid #8a6328;border-radius:14px;flex-direction:column;flex:none;display:flex;position:relative;overflow:hidden;translate:-26px;box-shadow:0 0 0 5px #e8b75247,0 30px 80px #0000008c}.hunt.show .hunt-panel{translate:0}.hunt-panel:focus{outline:none}.hunt-bar{color:#f2ead8;background:linear-gradient(#3b2b4c,#281c34);border-bottom:2px solid #8a6328;flex:none;align-items:center;gap:10px;min-height:46px;padding:4px 6px 4px 14px;display:flex}.hunt-brand{color:var(--gold);white-space:nowrap;align-items:center;gap:7px;font-family:Pirata One,serif;font-size:21px;line-height:1;display:flex}.hunt-brand svg{width:20px;height:20px}.hunt-progress{flex:1;justify-content:center;align-items:center;gap:9px;min-width:0;display:flex}.hunt-dots{gap:5px;display:flex}.hunt-dots i{background:0 0;border:2px solid #e8b752;border-radius:50%;width:12px;height:12px;transition:background .3s,transform .3s}.hunt-dots i.on{background:#e0503c;border-color:#ffd0b8;transform:scale(1.12);box-shadow:0 0 8px #ff785ab3}.hunt-count{white-space:nowrap;color:#f2ead8;font:600 15px/1 Segoe UI,system-ui,sans-serif}.hunt-tools{gap:6px;display:flex}.hunt-tool{cursor:pointer;color:#ffd98a;white-space:nowrap;background:#ffffff12;border:1.5px solid #e8b752bf;border-radius:999px;align-items:center;gap:6px;height:36px;padding:0 12px;font:600 15px/1 Segoe UI,system-ui,sans-serif;display:inline-flex;position:relative}.hunt-tool:before{content:"";position:absolute;inset:-5px -2px}.hunt-tool svg{width:18px;height:18px}.hunt-tool:hover{color:#fff3d6;background:#e8b75233}.hunt-tool:focus-visible{outline-offset:2px;outline:3px solid #7fb6ff}.hunt-tool:disabled{opacity:.4;cursor:default}.mail{touch-action:pan-y;overscroll-behavior:contain;background:radial-gradient(at 15% 0,#ffffffb3,#fff0 55%),radial-gradient(at 100% 100%,#c4964638,#c4964600 60%),#f8edd4;flex:auto;min-height:0;padding:clamp(12px,2.2vh,26px) clamp(16px,2.2vw,34px) clamp(12px,2.2vh,26px) calc(clamp(16px,2.2vw,34px) + 20px);font-family:Georgia,Times New Roman,serif;line-height:1.42;position:relative;overflow:hidden auto}.mail-gutter{pointer-events:none;z-index:2;width:30px;height:100%;position:absolute;top:0;left:0}.mail-badge{filter:drop-shadow(0 1px 1px #0000004d);width:22px;height:22px;margin-top:-11px;position:absolute;left:7px}.mail-badge svg{width:100%;height:100%;display:block}.mail-badge.pop{animation:.5s cubic-bezier(.3,1.6,.5,1) .35s backwards badge-pop}@keyframes badge-pop{0%{transform:scale(0)rotate(-40deg)}}.mail-ink{pointer-events:none;z-index:2;position:absolute;top:0;left:0;overflow:visible}.ink-circle{fill:none;stroke:#c8231c;stroke-width:2.7px;stroke-linecap:round;stroke-linejoin:round;opacity:.92}.mail-head{align-items:center;gap:.6em;margin-bottom:.45em;display:flex}.mail-crest{flex:none;padding:2px;line-height:0;display:inline-block}.mail-crest svg{width:2.6em;height:2.6em;display:block}.mail-subject{color:#1f140c;font-size:1.14em;font-weight:700;line-height:1.22}.mail-meta{color:#3a2a1a;font-family:Segoe UI,system-ui,sans-serif;font-size:.95em;line-height:1.36}.mm-row{align-items:baseline;gap:.5em;display:flex}.mm-k{color:#7a6040;flex:0 0 3.1em;font-weight:600}.mm-name{color:#1f140c;font-weight:700}.mail-rule{background:linear-gradient(90deg,#c99a3e00,#c99a3e 10%,#f0c768 50%,#c99a3e 90%,#c99a3e00);border-radius:2px;height:3px;margin:.5em 0 .65em}.mail-body p{margin:0 0 .5em}.mail-body strong{color:#1f140c;letter-spacing:.01em;font-weight:700}.rg{cursor:pointer;-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:4px;transition:background-color .15s,box-shadow .15s}.rg:hover{background-color:#e8b7523d}.rg:focus{outline:none}.rg:focus-visible{outline-offset:2px;background-color:#2f6fd614;outline:2px solid #2f6fd6}.rg.glow{background-color:#ffd66680;animation:1.3s ease-in-out infinite rg-glow;box-shadow:0 0 0 2px #d6a032f2,0 0 16px #ffc446d9}@keyframes rg-glow{50%{background-color:#ffd66638;box-shadow:0 0 0 2px #d6a03299,0 0 6px #ffc44666}}.rg.wobble{animation:.55s ease-out rg-miss}@keyframes rg-miss{0%{background-color:#788caa59}to{background-color:#788caa00}}.mail-actions{flex-wrap:wrap;align-items:center;gap:.5em .7em;margin:.15em 0 .5em;display:flex}.rg.mail-btn{letter-spacing:.07em;color:#fff;background:linear-gradient(#d84c3d,#a92e22);border-radius:8px;align-items:center;min-height:40px;padding:0 1.15em;font:800 .95em/1 Segoe UI,system-ui,sans-serif;display:inline-flex;box-shadow:0 3px #6e1a12}.rg.mail-btn:hover{background:linear-gradient(#e45a4a,#b83426)}.rg.mail-btn.pressing{box-shadow:0 0 0 4px #2f6fd680,0 3px #6e1a12}.mail-inspect{cursor:pointer;color:#4a3418;background:#fff9;border:1.5px dashed #8a6328;border-radius:999px;align-items:center;gap:.4em;max-width:100%;min-height:40px;padding:.25em .8em;font:600 .95em/1.2 Segoe UI,system-ui,sans-serif;display:inline-flex}.mail-inspect:hover{background:#fffaf0;border-style:solid}.mail-inspect:focus-visible{outline-offset:2px;outline:2px solid #2f6fd6}.mail-inspect svg{flex:none;width:1.15em;height:1.15em}.mi-url,.mail-inspect.url .mi-ico,.mail-inspect.url .mi-text{display:none}.mail-inspect.url .mi-url{overflow-wrap:anywhere;align-items:center;gap:.12em;min-width:0;display:inline-flex}.mail-inspect.url{color:#4a3a2a;cursor:default;background:#fff8f0;border:1.5px solid #c8231c;font-family:Segoe UI,system-ui,sans-serif;font-size:.95em;font-weight:500;box-shadow:0 2px 10px #c8231c2e}.mail-inspect.url .mi-url svg{display:none}.mail-inspect.url{letter-spacing:-.01em;padding:.25em .7em}.u-host{color:#c8231c;font-weight:700}.u-scheme,.u-path{color:#6a5a4a}.mail-sig{margin:0!important}.mail-help{color:#5a4428;font-size:max(14px,.9em);margin-top:.25em!important}.mail-miss{z-index:4;white-space:nowrap;pointer-events:none;color:#fff3d6;opacity:0;background:#2a1d33;border-radius:8px;padding:6px 11px;font:600 14px/1.25 Segoe UI,system-ui,sans-serif;transition:opacity .2s;position:absolute;top:0;left:0;box-shadow:0 6px 18px #00000059}.mail-miss.show{opacity:1}.hunt-side{min-width:0;font-size:var(--hunt-fs);transition:translate .45s var(--ease-out);flex-direction:column;flex:0 400px;gap:10px;display:flex;position:relative;translate:26px}.hunt.show .hunt-side{translate:0}.hunt-card{border-radius:12px;box-shadow:0 12px 32px #0000006b}.hunt-notes{border:1px solid var(--edge);color:#f2ead8;background:#160f1eeb;padding:11px 14px 12px}.hunt-chips{flex-wrap:wrap;gap:5px;margin-bottom:9px;display:flex}.hunt-chips[hidden]{display:none}.hunt-chip{color:#ffe6da;background:#e0503c2e;border:1px solid #ff96788c;border-radius:999px;align-items:center;gap:5px;padding:2px 9px 2px 3px;font:600 14px/1.3 Segoe UI,system-ui,sans-serif;display:inline-flex}.hunt-chip svg{width:18px;height:18px}.hunt-note.pop{animation:hn-pop .35s var(--ease-out)}@keyframes hn-pop{0%{opacity:0;transform:translateY(6px)}}.hn-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--gold);align-items:center;gap:6px;font-family:VT323,monospace;font-size:17px;line-height:1;display:flex}.hn-kicker svg{flex:none;width:20px;height:20px}.hn-kicker.hint{color:#ffd98a}.hn-title{color:#ffd98a;margin:6px 0 4px;font-family:Pirata One,serif;font-size:1.45em;font-weight:400;line-height:1.05}.hn-text{color:#f2ead8;margin:6px 0 0;font-size:1em;line-height:1.42}.hn-text b{color:#ffd98a}.hunt-dir{color:#2a1d10;background:linear-gradient(170deg,#f8edd2,#e8d4a2);border:1.5px solid #8a6328;padding:10px 14px 11px}.hunt-dir h3{color:#4a1a10;align-items:center;gap:7px;margin:0 0 6px;font-family:Pirata One,serif;font-size:1.3em;font-weight:400;line-height:1;display:flex}.hunt-dir h3 svg{color:#8a3a20;width:20px;height:20px}.hunt-dir ul{gap:5px;margin:0;padding:0;list-style:none;display:grid}.hunt-dir li{border-left:3px solid #8a632859;flex-wrap:wrap;align-items:baseline;column-gap:.55em;padding-left:9px;display:flex}.hunt-dir li.primary-entry{border-left-color:#2e7a3a}.hunt-dir .dn{color:#2a1d10;font:700 max(14px,.95em)/1.25 Segoe UI,system-ui,sans-serif}.hunt-dir .da{color:#1f5a2c;overflow-wrap:anywhere;font:600 max(14px,.95em)/1.3 Segoe UI,system-ui,sans-serif}body.hunt-open .objective{display:none}body.hunt-open .subtitle{left:calc(var(--hunt-x) + var(--hunt-w) + var(--hunt-gap,clamp(12px, 1.6vw, 30px)));right:calc(var(--sar) + var(--gap));bottom:calc(var(--sab) + var(--gap));width:auto;max-width:none;transform:translateY(12px)}body.hunt-open .subtitle.show{transform:none}body.hunt-open .subtitle,body.hunt-open .subtitle .line{-webkit-line-clamp:unset;line-clamp:none;display:block;overflow:visible}body.hunt-open .subtitle .who{margin:0 0 3px;display:block}@media (orientation:landscape) and (max-height:500px){.hunt,body.hunt-open{--hunt-w:min(55.5vw, 600px);--hunt-x:calc(var(--sal) + var(--gap));--hunt-fs:15px;--hunt-gap:var(--gap)}.hunt-dim{background:linear-gradient(90deg,#0e080599,#0e08056b 62%,#0e08051f)}.hunt-layout{top:calc(var(--sat) + 8px);bottom:calc(var(--sab) + 8px);align-items:stretch;gap:var(--gap);max-height:none;transform:none}.hunt-panel{border-radius:12px;max-height:none}.hunt-side{align-self:flex-start}.hunt-bar{gap:8px;min-height:44px;padding:3px 5px 3px 10px}.hunt-brand{font-size:18px}.hunt-brand span{display:none}.hunt-tool{height:34px;padding:0 10px}.mail{padding:7px 10px 6px 32px;line-height:1.3}.mail-gutter{width:30px}.mail-badge{width:20px;height:20px;margin-top:-10px;left:6px}.mail-head{margin-bottom:4px}.mail-crest svg{width:32px;height:32px}.mail-subject{font-size:16px}.mail-meta{font-size:14px;line-height:1.3}.mail-rule{margin:5px 0 6px}.mail-body p{margin-bottom:5px}.mail-actions{margin:2px 0 5px}.rg.mail-btn,.mail-inspect{min-height:36px}.mail-inspect,.mail-inspect.url{font-size:14px}.hunt-side{--hunt-fs:14px;gap:8px}.hunt-notes{padding:8px 11px 9px}.hunt-chips{gap:4px;margin-bottom:6px}.hn-title{margin:0 0 2px;font-size:20px}.hunt-note .hn-kicker:not(.hint){display:none}.hunt-note[data-kind=found] .hn-title:before{content:"";vertical-align:-2px;background:radial-gradient(circle,#fff6e6 0 28%,#c8402e 32%);border-radius:50%;width:18px;height:18px;margin-right:6px;display:inline-block;box-shadow:0 0 0 2px #7a1d12}.hunt-chip{padding:1px 8px 1px 2px;font-size:14px}.hunt-chip.current,.hunt-chips.only-current{display:none}.hunt-chip svg{width:16px;height:16px}.hn-text{margin-top:4px;line-height:1.34}.hunt-dir{padding:7px 11px 8px}.hunt-dir h3{margin-bottom:4px;font-size:17px}body.hunt-open .subtitle{bottom:calc(var(--sab) + 8px);padding:6px 12px 8px}body.hunt-open .subtitle .who{margin:0 .45em 0 0;display:inline}body.hunt-open .subtitle .line{font-size:15px;line-height:1.3;display:inline}}@media (orientation:portrait){.hunt,body.hunt-open{--hunt-w:calc(100vw - var(--sal) - var(--sar) - 2 * var(--gap));--hunt-x:calc(var(--sal) + var(--gap))}.hunt-layout{top:calc(var(--sat) + var(--gap) + var(--tap) + 10px);bottom:calc(var(--sab) + 96px);touch-action:pan-y;overscroll-behavior:contain;flex-direction:column;max-height:none;overflow-y:auto;transform:none}.hunt-panel{max-height:none}.hunt-side{flex:none;width:100%}body.hunt-open .subtitle,body.hunt-open .subtitle.show{left:var(--gap);right:var(--gap);transform:none}}@media (max-width:560px){.hunt-brand span,.hunt-tool span{display:none}.hunt-tool{padding:0 10px}}.icheck .hunt-dots i.cur{border-color:#fff3d6;transform:scale(1.12)}.icheck .ic-mail{animation:ic-in .45s var(--ease-out)}@keyframes ic-in{0%{opacity:0;transform:translate(-24px)rotate(-1deg)}}.ic-part{-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:4px;transition:background-color .25s,box-shadow .25s}.ic-part.flag.concern{background:#e0503c29;box-shadow:0 0 0 2px #c8231c}.ic-part.flag.clear{background:#3f8f4a24;box-shadow:0 0 0 2px #3f8f4a}.ic-tag{vertical-align:middle;color:#fff;border-radius:999px;margin:.15em 0 .15em .5em;padding:1px 8px;font:700 max(14px,.78em)/1.35 Segoe UI,system-ui,sans-serif;animation:.35s cubic-bezier(.3,1.6,.5,1) backwards ic-tag-in;display:inline-block}@keyframes ic-tag-in{0%{opacity:0;transform:scale(.6)}}.ic-tag.concern{background:#c8231c}.ic-tag.clear{background:#2e7a3a}.mail-meta .ic-tag,.mail-head .ic-tag{margin-left:.4em}.ic-expected{color:#24502c;background:#3f8f4a1a;border:1px solid #3f8f4a66;border-radius:8px;align-items:flex-start;gap:.4em;margin:.45em 0 0;padding:.3em .6em;font:600 max(14px,.9em)/1.3 Segoe UI,system-ui,sans-serif;display:flex}.ic-expected svg{color:#2e7a3a;flex:none;width:1.1em;height:1.1em;margin-top:.1em}.ic-answers{flex-direction:column;gap:8px;margin-top:8px;display:flex}.ic-btn{cursor:pointer;text-align:left;color:#2a1d10;min-height:52px;transition:transform .15s var(--ease-out), box-shadow .15s, opacity .25s, filter .25s;background:linear-gradient(170deg,#fdf5e1,#ecd8a8);border:2px solid #8a6328;border-radius:12px;align-items:center;gap:10px;padding:6px 14px 6px 8px;font:700 clamp(15px,.4vw + 1.4vh,19px)/1.2 Segoe UI,system-ui,sans-serif;display:flex;box-shadow:0 4px #6a4416}.ic-btn:hover:not(:disabled),.ic-btn:focus-visible{transform:translateY(-3px);box-shadow:0 4px #6a4416,0 0 0 3px #ffd98a,0 0 22px #ffd27880}.ic-btn:focus-visible{outline-offset:2px;outline:3px solid #7fb6ff}.ic-btn:active:not(:disabled){transform:translateY(1px);box-shadow:0 2px #6a4416}.ic-ico{flex:none;place-items:center;width:38px;height:38px;display:grid}.ic-ico svg{width:100%;height:100%}.ic-tick{color:#fff;background:#2e7a3a;border-radius:50%;width:32px;height:32px;margin:0 3px}.ic-tick svg{width:70%;height:70%}.ic-btn:disabled{cursor:default}.icheck.answered .ic-btn:not(.chosen){opacity:.45;filter:saturate(.4)}.icheck.answered .ic-btn.chosen{box-shadow:0 4px #6a4416,0 0 0 3px #ffd98a}.icheck.answered .ic-btn.correct:after{content:"✓";color:#2e7a3a;margin-left:auto;font-size:1.2em}.ic-help{color:#f2ead8cc;margin:8px 0 0;font-size:.86em}.icheck.answered .ic-help{display:none}.ic-note{animation:hn-pop .35s var(--ease-out);border-top:1px solid #e8b75259;margin-top:10px;padding-top:8px}.ic-note[data-outcome=missed] .hn-kicker{color:#ff9a7a}.ic-note[data-outcome=cautious] .hn-kicker{color:#9fe0a8}.ic-next{cursor:pointer;color:#2a1606;min-height:44px;animation:hn-pop .35s var(--ease-out);background:linear-gradient(#f6d27e,#c9963f);border:2px solid #6a4416;border-radius:999px;align-items:center;gap:8px;margin-top:10px;padding:0 18px;font:800 16px/1 Segoe UI,system-ui,sans-serif;display:inline-flex;box-shadow:0 3px #4a2a0c}.ic-next[hidden]{display:none}.ic-next svg{width:18px;height:18px}.ic-next:focus-visible{outline-offset:2px;outline:3px solid #7fb6ff}@media (orientation:landscape) and (max-height:500px){.ic-btn{gap:8px;min-height:44px;padding:4px 10px 4px 6px;font-size:15px}.ic-ico{width:30px;height:30px}.ic-tick{width:26px;height:26px}.ic-answers{gap:6px;margin-top:6px}.ic-help{display:none}.ic-note{margin-top:6px;padding-top:5px}.ic-next{min-height:40px;margin-top:6px}.icheck.answered .ic-dir-hide,.icheck.answered .hunt-dir,.icheck.answered .ic-answers{display:none}}.ep-sheet-wrap{z-index:42;padding:calc(var(--sat) + var(--gap)) calc(var(--sar) + var(--gap)) calc(var(--sab) + var(--gap)) calc(var(--sal) + var(--gap));opacity:0;background:#0a060e94;place-items:center;transition:opacity .35s;display:grid;position:fixed;inset:0;overflow:hidden}.ep-sheet-wrap.show{opacity:1}#ui>.ep-sheet-wrap.gone{opacity:0;pointer-events:none!important}.ep-sheet{touch-action:pan-y;overscroll-behavior:contain;color:#2a1d10;width:min(1000px,100%);max-height:100%;transition:translate .42s var(--ease-out), scale .42s var(--ease-out);-webkit-user-select:text;user-select:text;background:radial-gradient(at 20% 0,#ffffff8c,#fff0 55%),linear-gradient(170deg,#f8edd2,#e4cf9c);border:2px solid #8a6328;border-radius:16px;padding:clamp(16px,3.6vmin,36px) clamp(16px,3.6vmin,40px);position:relative;overflow-y:auto;translate:0 16px;scale:.97;box-shadow:0 0 0 6px #e8b75240,0 30px 90px #0009,inset 0 0 70px #78501433}.ep-sheet:focus{outline:none}.ep-sheet-wrap.show .ep-sheet{translate:0;scale:1}.ep-head{text-align:center;margin-bottom:clamp(10px,2.4vh,22px)}.ep-head .kicker{color:#2e7a3a}.ep-head h2{color:#4a1a10;margin:4px 0 0;font-family:Pirata One,serif;font-size:clamp(28px,1.4vw + 3vh,50px);font-weight:400;line-height:1}.tk-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(8px,1.8vh,18px) clamp(8px,1.4vw,20px);margin:0;padding:0;list-style:none;display:grid}.tk{animation:tk-in .5s var(--ease-out) calc(70ms * var(--i) + .1s) backwards;background:#fffbeeb3;border:1px solid #8a632859;border-radius:12px;align-items:flex-start;gap:clamp(8px,1vw,14px);padding:clamp(8px,1.6vh,16px) clamp(8px,1vw,16px);display:flex}@keyframes tk-in{0%{opacity:0;transform:translateY(12px)}}.tk-ico{flex:none;width:clamp(40px,6.6vh,76px)}.tk-ico svg{width:100%;height:auto;display:block;overflow:visible}.tk-text b{color:#3a1a10;margin-bottom:3px;font:700 clamp(15px,.35vw + 1.3vh,20px)/1.2 Segoe UI,system-ui,sans-serif;display:block}.tk-text span{color:#4a3622;font-size:clamp(14px,.3vw + 1.15vh,18px);line-height:1.35;display:block}.ep-foot{justify-content:center;margin-top:clamp(12px,2.4vh,24px);display:flex}.ep-foot .primary,.end-actions .primary{align-items:center;gap:10px;display:inline-flex}.ep-foot .primary svg,.end-actions .primary svg{width:22px;height:22px}.ep-sheet .primary:focus-visible,.ep-btn:focus-visible{outline-offset:3px;outline:3px solid #2f6fd6}.end-wrap .ep-sheet{width:min(860px,100%)}.end-stats{grid-template-columns:1fr 1fr 2.2fr;gap:clamp(8px,1.2vw,14px);margin:0 0 clamp(8px,1.8vh,16px);display:grid}.end-stat{text-align:center;background:#fffbeeb8;border:1px solid #8a632861;border-radius:12px;flex-direction:column;justify-content:center;gap:2px;padding:clamp(8px,1.6vh,14px) 14px;display:flex}.end-stat dt{letter-spacing:.12em;text-transform:uppercase;color:#6a5530;font-family:VT323,monospace;font-size:17px;line-height:1}.end-stat dd{justify-content:center;align-items:baseline;gap:6px;margin:0;display:flex}.end-stat dd b{color:#4a1a10;font-family:Pirata One,serif;font-size:clamp(32px,2vw + 3vh,52px);font-weight:400;line-height:1}.end-stat dd span{color:#6a5530;font-size:15px}.end-stat dd.end-path{color:#2a1d10;font:600 clamp(15px,.3vw + 1.4vh,19px)/1.3 Segoe UI,system-ui,sans-serif}.end-seen{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin:0 0 10px;display:flex}.end-k{letter-spacing:.12em;text-transform:uppercase;color:#6a5530;margin-right:4px;font-family:VT323,monospace;font-size:17px}.end-chip{color:#1f4a28;background:#2e7a3a1f;border:1px solid #2e7a3a73;border-radius:999px;padding:3px 10px;font:600 14px/1.3 Segoe UI,system-ui,sans-serif}.end-note{text-align:center;color:#5a4428;margin:0 0 clamp(10px,2vh,18px);font-size:clamp(14px,.3vw + 1.2vh,17px)}.end-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.ep-btn{min-height:var(--tap);cursor:pointer;color:#3a2410;background:#fffbeeeb;border:1.5px solid #8a6328;border-radius:10px;align-items:center;gap:8px;padding:8px 16px;font:600 15px/1.2 Segoe UI,system-ui,sans-serif;transition:transform .12s,background .15s;display:inline-flex;box-shadow:0 3px #6a44168c}.ep-btn svg{color:#8a5a20;flex:none;width:20px;height:20px}.ep-btn:hover{background:#fff;transform:translateY(-1px)}.ep-btn:active{transform:translateY(2px);box-shadow:0 1px #6a44168c}@media (orientation:landscape) and (max-height:500px){.ep-sheet{padding:12px 16px 14px}.lesson-wrap .ep-sheet{width:min(860px,100%)}.ep-head{margin-bottom:8px}.ep-head .kicker{font-size:15px}.ep-head h2{font-size:27px}.tk-grid{gap:7px}.tk{gap:8px;padding:7px 8px}.tk-ico{width:38px}.tk-text b{margin-bottom:1px;font-size:15px}.tk-text span{font-size:14px;line-height:1.28}.ep-foot{margin-top:9px}.ep-foot .primary{min-height:40px;padding:4px 30px;font-size:21px}.end-stats{gap:8px;margin-bottom:8px}.end-stat{padding:6px 10px}.end-stat dd b{font-size:32px}.end-note{margin-bottom:8px}.end-actions{gap:8px}.end-actions .primary{padding:4px 22px;font-size:21px}.ep-btn{padding:6px 12px}}@media (orientation:portrait),(max-width:700px){.tk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.end-stats{grid-template-columns:1fr 1fr}.end-stat.wide{grid-column:1/-1}}.title-screen.ep-title{background:radial-gradient(at 50% 40%,#965c2e9e,#1e101ef2 72%)}.ep-rays{pointer-events:none;opacity:.22;background:repeating-conic-gradient(at 50% 42%,#ffd68c80 0deg 6deg,#ffd68c00 6deg 18deg);position:absolute;inset:-20%;-webkit-mask-image:radial-gradient(circle at 50% 42%,#000 0,#0000 45%);mask-image:radial-gradient(circle at 50% 42%,#000 0,#0000 45%)}.ep-title-card{max-width:min(960px,100%);position:relative}.ep-emblem{filter:drop-shadow(0 8px 18px #00000073);width:clamp(84px,17vh,150px);margin:0 auto 4px;animation:3.2s ease-in-out infinite ep-bob}.ep-emblem svg{width:100%;height:auto;display:block}@keyframes ep-bob{50%{transform:translateY(-6px)rotate(2deg)}}.ep-title .kicker{color:#ffd98a}.ep-title .loadbar i{background:var(--gold);box-shadow:0 0 12px var(--gold)}.ep-title .tagline{color:#e9d9c0}.ep-title .small{color:#cbb89e}@media (orientation:landscape) and (max-height:500px){.ep-emblem{width:64px;margin-bottom:0}.ep-title .title-card h1{font-size:clamp(44px,13vh,64px)}.ep-title .tagline{margin-bottom:10px}}.ep-titlecard{z-index:44;place-items:center;display:grid;position:fixed;inset:0}#ui>.ep-titlecard{pointer-events:none!important}.etc-inner{opacity:0;flex-direction:column;align-items:center;transition:opacity .35s,transform .6s cubic-bezier(.2,1.5,.4,1);display:flex;transform:scale(.6)rotate(-5deg)}.ep-titlecard.show .etc-inner{opacity:1;transform:none}.ep-titlecard.gone .etc-inner{opacity:0;transition:opacity .45s,transform .5s ease-in;transform:scale(1.08)}.etc-emblem{z-index:1;filter:drop-shadow(0 6px 14px #00000080);width:clamp(70px,15vh,140px);margin-bottom:-8px;position:relative}.etc-emblem svg{width:100%;height:auto;display:block}.etc-ribbon{text-align:center;background:linear-gradient(#b8323a,#8e1f28);border:3px solid #e8b752;border-radius:6px;padding:clamp(10px,2.2vh,20px) clamp(36px,6vw,90px) clamp(12px,2.4vh,22px);position:relative;box-shadow:0 0 0 3px #4a1408,0 18px 50px #0000008c}.etc-ribbon:before,.etc-ribbon:after{content:"";z-index:-1;background:#7a1820;border:3px solid #4a1408;width:clamp(34px,5vw,70px);height:76%;position:absolute;top:22%}.etc-ribbon:before{clip-path:polygon(0 0,100% 0,100% 100%,0 100%,30% 50%);left:calc(clamp(34px,5vw,70px)/-1.33333)}.etc-ribbon:after{clip-path:polygon(0 0,100% 0,70% 50%,100% 100%,0 100%);right:calc(clamp(34px,5vw,70px)/-1.33333)}.etc-kicker{letter-spacing:.25em;text-transform:uppercase;color:#fff3d6;font-family:VT323,monospace;font-size:clamp(16px,1vw + 1.2vh,24px);line-height:1}.etc-title{color:#ffd98a;text-shadow:0 3px #4a1408,0 0 30px #ffc86459;margin:2px 0 0;font-family:Pirata One,serif;font-size:clamp(42px,3.4vw + 6vh,116px);font-weight:400;line-height:.95}.etc-sub{letter-spacing:.18em;text-transform:uppercase;color:#f6dcb8;margin-top:4px;font-family:VT323,monospace;font-size:clamp(15px,.8vw + 1vh,20px)}@media (prefers-reduced-motion:reduce){.choice-wrap.show .choice-card,.tk,.mail-badge.pop,.hunt-note.pop,.ep-emblem{animation:none!important}.choice-card,.hunt-panel,.hunt-side,.ep-sheet,.etc-inner{transition:opacity .2s!important}.choice-card:hover,.choice-card:focus-visible,.choice-wrap.picked .choice-card.chosen,.choice-wrap.picked .choice-card:not(.chosen){transform:none}.hunt-panel,.hunt-side,.ep-sheet{translate:none!important;scale:none!important}.rg.glow{animation:none}.etc-inner,.ep-titlecard.gone .etc-inner{transform:none!important}}body.reduced-motion .choice-wrap.show .choice-card,body.reduced-motion .tk,body.reduced-motion .mail-badge.pop,body.reduced-motion .hunt-note.pop,body.reduced-motion .ep-emblem,body.reduced-motion .rg.glow{animation:none!important}body.reduced-motion .hunt-panel,body.reduced-motion .hunt-side,body.reduced-motion .ep-sheet{translate:none!important;scale:none!important}body.reduced-motion .etc-inner{transition:opacity .2s!important;transform:none!important}.explore-bar{z-index:40;top:calc(12px + env(safe-area-inset-top));pointer-events:auto;color:#2b1d12;align-items:center;gap:8px;font:600 15px/1 system-ui,sans-serif;display:flex;position:fixed;left:50%;transform:translate(-50%)}.explore-bar button{pointer-events:auto;cursor:pointer;min-width:44px;min-height:44px;font:inherit;color:inherit;background:linear-gradient(#f3d58a,#d9a94a);border:2px solid #7a5520;border-radius:999px;padding:0 16px;box-shadow:0 4px 14px #00000059}.explore-bar .explore-view{padding:0;font-size:24px}.explore-bar .explore-label{color:#fbefd6;background:#140e0ab8;border-radius:999px;padding:6px 10px;font-size:14px}.explore-bar button:focus-visible{outline-offset:3px;outline:3px solid #fff}body.showcase{touch-action:auto;overscroll-behavior:auto;-webkit-user-select:text;user-select:text;color:#f3ebdc;background:#171624;height:auto;overflow:auto}html:has(body.showcase){touch-action:auto;overscroll-behavior:auto;-webkit-user-select:text;user-select:text;color:#f3ebdc;background:#171624;height:auto;overflow:auto}body.showcase{background:radial-gradient(at 90% 0,#44314555,#0000 45%),#171624}.showcase-main{max-width:1320px;margin:auto;padding:0 clamp(20px,5vw,72px)}.showcase-main a{color:inherit;touch-action:manipulation;text-decoration:none}.showcase-header{border-bottom:1px solid #ffffff20;justify-content:space-between;align-items:center;padding:30px 0 26px;display:flex}.showcase-brand{letter-spacing:-.04em;font-family:Pirata One,Georgia,serif;font-size:36px}.showcase-brand span{color:#efbd75}.showcase-brand i{color:#efbd75;margin-left:14px;font:22px Georgia;display:inline-block}.showcase-label,.showcase-eyebrow,.showcase-type{text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:650}.showcase-label{color:#b8aebf}.showcase-intro{padding:46px 0 36px}.showcase-eyebrow{color:#efbd75;margin:0 0 14px}.showcase-intro h1{letter-spacing:-.015em;margin:0 0 18px;font:400 clamp(42px,5.6vw,74px)/1.02 Pirata One,Georgia,serif}.showcase-intro h1 em{color:#efbd75;font-style:normal}.showcase-intro>p:last-child{color:#beb5c6;max-width:580px;margin:0;font-size:16px;line-height:1.6}.showcase-grid{grid-template-columns:repeat(6,1fr);gap:22px;display:grid}.showcase-card{background:#232130;border:1px solid #ffffff17;border-radius:12px;flex-direction:column;grid-column:span 2;transition:border-color .2s,transform .2s;display:flex;overflow:hidden}.showcase-feature,.showcase-card:nth-child(2){grid-column:span 3}.showcase-card:hover{border-color:#efbd7577;transform:translateY(-3px)}.showcase-card:focus-visible,.showcase-main nav a:focus-visible{outline-offset:5px;outline:3px solid #efbd75}.showcase-image{aspect-ratio:16/9;background:#302936;position:relative;overflow:hidden}.showcase-image img{object-fit:cover;width:100%;height:100%;display:block}.showcase-badge{letter-spacing:.035em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#171624df;border:1px solid #ffffff26;border-radius:4px;padding:6px 9px;font-size:10px;font-weight:600;position:absolute;bottom:12px;left:14px}.showcase-feature .showcase-badge{color:#241b22;background:#efbd75;border-color:#efbd75}.showcase-card-copy{flex-direction:column;flex:1;padding:22px;display:flex}.showcase-card-copy>div{flex:1}.showcase-type{color:#b3a0bb;margin:0 0 9px;font-size:10px;line-height:1.5}.showcase-card h2{margin:0 0 10px;font:400 31px/1.1 Pirata One,Georgia,serif}.showcase-feature h2,.showcase-card:nth-child(2) h2{font-size:37px}.showcase-card-copy p:not(.showcase-type){color:#c0b6ca;margin:0;font-size:14px;line-height:1.6}.showcase-cta{color:#efbd75;border-top:1px solid #ffffff14;justify-content:space-between;align-items:center;margin-top:22px;padding-top:16px;font-size:13px;font-weight:600;display:flex}.showcase-cta>span{font-size:21px;font-weight:400}.showcase-characters{color:#b9afc3;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:26px 0;font-size:13px;display:flex}.showcase-characters nav{flex-wrap:wrap;gap:8px;display:flex}.showcase-characters nav a{color:#f3ebdc;border:1px solid #ffffff25;border-radius:6px;align-items:center;min-height:44px;padding:8px 14px;display:inline-flex}.showcase-characters nav a:hover{background:#ffffff0b;border-color:#efbd75}.showcase-footer{color:#9d90aa;border-top:1px solid #ffffff20;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:24px 0 30px;font-size:11px;line-height:1.6;display:flex}.showcase-footer span span{color:#efbd75;margin:0 6px}.showcase-return{right:max(8px, env(safe-area-inset-right));bottom:max(8px, env(safe-area-inset-bottom));z-index:110;color:#f3ebdc;touch-action:manipulation;background:#171624e8;border:1px solid #ffffff40;border-radius:7px;align-items:center;min-height:44px;padding:8px 12px;font:12px/1.2 Segoe UI,system-ui,sans-serif;text-decoration:none;display:inline-flex;position:fixed}.showcase-return.story-return{bottom:auto;right:auto;left:max(8px, env(safe-area-inset-left));top:max(8px, env(safe-area-inset-top))}.showcase-return:hover{background:#3b2f48}.showcase-return:focus-visible{outline-offset:3px;outline:2px solid #efbd75}@media (max-width:760px){.showcase-grid{grid-template-columns:repeat(2,1fr);gap:16px}.showcase-card,.showcase-feature,.showcase-card:nth-child(2){grid-column:span 1}.showcase-feature{grid-column:span 2}.showcase-card h2,.showcase-card:nth-child(2) h2{font-size:28px}.showcase-card-copy{padding:17px}.showcase-intro{padding-top:34px}}@media (max-width:520px){.showcase-header{padding-top:22px}.showcase-brand{font-size:31px}.showcase-label{letter-spacing:.08em;font-size:9px}.showcase-grid{grid-template-columns:1fr}.showcase-card,.showcase-feature,.showcase-card:nth-child(2){grid-column:1}.showcase-intro>p:last-child{font-size:15px}.showcase-characters{padding-top:18px}}@media (prefers-reduced-motion:reduce){.showcase-card{transition:none}}
