:root{--fg:#f2f7f3;--shadow:0 1px 12px #00000073}html,body{overscroll-behavior:none;background:#0b1a14;height:100%;margin:0;overflow:hidden}#scene{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}.hud{top:max(16px, env(safe-area-inset-top));left:max(16px, env(safe-area-inset-left));right:max(16px, env(safe-area-inset-right));color:var(--fg);text-shadow:var(--shadow);pointer-events:none;font:16px/1.5 system-ui,-apple-system,Segoe UI,sans-serif;position:fixed}.hud h1{letter-spacing:-.02em;margin:0;font-size:clamp(1.5rem,4vw,2.25rem)}.hud p{opacity:.8;margin:.25em 0 0;font-size:.9rem;transition:opacity 1.2s}.hud p.quiet{opacity:.35}.stick{left:max(24px, env(safe-area-inset-left));bottom:max(24px, env(safe-area-inset-bottom));touch-action:none;background:#ffffff14;border:2px solid #ffffff40;border-radius:50%;place-items:center;width:120px;height:120px;display:grid;position:fixed}.stick[hidden]{display:none}.knob{pointer-events:none;background:#ffffff59;border-radius:50%;width:52px;height:52px}.action{left:50%;bottom:max(28px, env(safe-area-inset-bottom));color:var(--fg);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer;touch-action:manipulation;background:#141c18c7;border:1px solid #ffffff73;border-radius:999px;padding:14px 28px;font:600 1rem/1 system-ui,-apple-system,Segoe UI,sans-serif;position:fixed;transform:translate(-50%)}.action[hidden]{display:none}.weapon{right:max(20px, env(safe-area-inset-right));bottom:max(28px, env(safe-area-inset-bottom));color:var(--fg);letter-spacing:.04em;white-space:pre;cursor:pointer;touch-action:manipulation;background:#141c1899;border:1px solid #ffffff4d;border-radius:10px;padding:8px 14px;font:600 .9rem/1 system-ui,-apple-system,Segoe UI,sans-serif;position:fixed}.fire{right:max(24px, env(safe-area-inset-right));bottom:calc(max(28px, env(safe-area-inset-bottom)) + 52px);width:84px;height:84px;color:var(--fg);touch-action:manipulation;background:#96281e8c;border:2px solid #ffffff73;border-radius:50%;font:700 1rem/1 system-ui,-apple-system,Segoe UI,sans-serif;position:fixed}.weapon[hidden],.fire[hidden]{display:none}.action:hover,.action:focus-visible{outline-offset:2px;background:#3c5042e6;outline:2px solid #fff}.panel{text-align:center;width:min(300px,100vw - 32px);color:var(--fg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0e1412e0;border:1px solid #ffffff38;border-radius:16px;padding:20px 18px 18px;font:16px/1.4 system-ui,-apple-system,Segoe UI,sans-serif;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 10px 40px #00000080}.panel[hidden]{display:none}.panel h2{margin:0 0 4px;font-size:1.15rem}.panel-msg{opacity:.8;min-height:1.4em;margin:0 0 12px;font-size:.9rem}.panel-close{width:36px;height:36px;color:var(--fg);cursor:pointer;opacity:.7;background:0 0;border:0;font-size:1.6rem;line-height:1;position:absolute;top:6px;right:8px}.dots{justify-content:center;gap:14px;margin-bottom:14px;display:flex}.dots i{border:2px solid #fff9;border-radius:50%;width:14px;height:14px}.dots i.on{background:var(--fg)}.keys{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.keys button{height:52px;color:var(--fg);cursor:pointer;touch-action:manipulation;background:#ffffff14;border:1px solid #ffffff40;border-radius:12px;font-size:1.3rem}.keys button:hover,.keys button:focus-visible{background:#fff3;outline:none}.panel.shake{animation:.35s shake}.panel.ok .dots i{background:#7fd68a;border-color:#7fd68a}@keyframes shake{20%,60%{transform:translate(calc(-50% - 8px),-50%)}40%,80%{transform:translate(calc(8px - 50%),-50%)}}@media (prefers-reduced-motion:reduce){.panel.shake{animation:none}}.fade{opacity:0;pointer-events:none;background:#000;transition:opacity .35s;position:fixed;inset:0}.fade.on{opacity:1}.fallback{text-align:center;color:var(--fg);background:#0b1a14;place-content:center;gap:.5em;padding:24px;font:16px/1.5 system-ui,-apple-system,Segoe UI,sans-serif;display:grid;position:fixed;inset:0}.fallback[hidden]{display:none}.fallback h2{margin:0}.fallback p{opacity:.85;max-width:34em;margin:0 auto}.landing{z-index:20;background:radial-gradient(55% 60% at 22%,#563cbe52,#0000 70%),radial-gradient(55% 60% at 78%,#d9561f42,#0000 70%),#05070f;place-content:center;justify-items:center;gap:36px;padding:24px;transition:opacity .6s;display:grid;position:fixed;inset:0}.landing.gone{opacity:0;pointer-events:none}.landing[hidden]{display:none}.landing-title{color:var(--fg);opacity:.8;letter-spacing:.5em;text-indent:.5em;text-transform:lowercase;margin:0;font:500 clamp(1rem,3vw,1.3rem)/1 system-ui,-apple-system,Segoe UI,sans-serif}.doors{flex-wrap:wrap;justify-content:center;gap:44px;display:flex}.door{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:0;width:min(260px,78vw);height:120px;position:relative}.landing.busy .door{opacity:.5;pointer-events:none}.door:focus-visible{outline-offset:6px;outline:3px solid #fff}.home-link{color:var(--fg);opacity:.7;letter-spacing:.06em;font:500 .9rem/1 system-ui,-apple-system,Segoe UI,sans-serif;text-decoration:none}.home-link:hover,.home-link:focus-visible{opacity:1;text-decoration:underline}.landing-status{min-height:1.4em;color:var(--fg);opacity:.75;text-align:center;margin:0;font:400 .95rem/1.4 system-ui,-apple-system,Segoe UI,sans-serif}.door-barn{color:#fff1d0;letter-spacing:.02em;text-shadow:3px 3px #8c340c,6px 6px #4a1e08;background:linear-gradient(#e0621f 0 62%,#f3b52f 62% 74%,#b8470f 74% 87%,#6b2b0c 87% 100%);border:5px solid #f3b52f;border-radius:64px;padding-bottom:26px;font:800 2.5rem/1 Cooper Black,Bookman Old Style,Palatino Linotype,Georgia,serif;transition:transform .15s,box-shadow .15s;box-shadow:0 0 0 4px #6b2b0c,0 10px 0 4px #3f1a07,0 18px 30px #0000008c}.door-barn:hover,.door-barn:focus-visible{transform:translateY(-3px);box-shadow:0 0 0 4px #6b2b0c,0 13px 0 4px #3f1a07,0 22px 34px #0000008c}.door-barn:active{transform:translateY(5px);box-shadow:0 0 0 4px #6b2b0c,0 4px 0 4px #3f1a07,0 8px 14px #0000008c}.door span{position:relative}.door-barn span{top:-8px}.menu-btn{top:max(14px, env(safe-area-inset-top));right:max(14px, env(safe-area-inset-right));z-index:10;color:var(--fg);letter-spacing:.08em;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0e148c;border:1px solid #ffffff59;border-radius:999px;padding:8px 16px;font:500 .85rem/1 system-ui,-apple-system,Segoe UI,sans-serif;position:fixed}.menu-btn[hidden]{display:none}.menu-btn:hover,.menu-btn:focus-visible{background:#3c5042cc;outline:none}.hud[hidden],#scene[hidden]{display:none}@media (prefers-reduced-motion:reduce){.landing,.door{transition:none}}
