:root{--bone:#e8e2c8;--bone-dim:#e8e2c88c;--ink:#0b0904;--poster-sans:"Helvetica Neue", "Nimbus Sans L", Helvetica, Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body,#app{background:var(--ink);height:100%;overflow:hidden}#game-canvas{cursor:crosshair;width:100%;height:100%;display:block;position:absolute;inset:0}#interact-prompt{z-index:2;pointer-events:none;font-family:var(--poster-sans);color:var(--bone-dim);text-shadow:0 1px 10px #000000b3;align-items:center;gap:.6em;display:flex;position:absolute;bottom:12vh;left:50%;transform:translate(-50%)}#interact-prompt .key{border:1px solid var(--bone-dim);border-radius:2px;justify-content:center;align-items:center;min-width:1.7em;height:1.7em;font-size:.8rem;font-weight:700;display:inline-flex}#interact-prompt .action{letter-spacing:.22em;text-transform:lowercase;font-size:.78rem}#poster-inspect{z-index:4;pointer-events:none;color:var(--bone-dim);font-family:var(--poster-sans);background:#040300d1;flex-direction:column;justify-content:center;align-items:center;gap:1.1rem;display:flex;position:absolute;inset:0}#poster-inspect-image{max-width:min(86vw,60vh);max-height:76vh;box-shadow:0 18px 60px #000c}#poster-inspect-caption{letter-spacing:.22em;text-transform:lowercase;font-size:.78rem}#poster-inspect .inspect-hint{letter-spacing:.18em;color:#e8e2c859;font-size:.68rem}#title-screen{z-index:5;text-align:center;color:var(--bone);background:radial-gradient(#0504002e 30%,#050400b8 100%);flex-direction:column;justify-content:center;align-items:center;transition:opacity .9s;display:flex;position:absolute;inset:0}#title-screen.fade-out{opacity:0;pointer-events:none}#loading-status{min-width:min(72vw,16rem);font-family:var(--poster-sans);letter-spacing:.2em;color:var(--bone-dim);text-transform:lowercase;justify-items:center;gap:.75rem;font-size:.68rem;transition:opacity .3s;display:grid}.loading-icon{border:1px solid #e8e2c82e;border-top-color:var(--bone);border-radius:50%;width:1.7rem;height:1.7rem;animation:.85s linear infinite loading-spin}.loading-track{background:#e8e2c81f;width:100%;height:1px;overflow:hidden}#loading-bar{background:var(--bone-dim);transform-origin:0;width:100%;height:100%;transition:transform .2s ease-out;display:block;transform:scaleX(0)}#title-screen.is-ready #loading-status{display:none}#retry-button{appearance:none;border:1px solid var(--bone-dim);color:var(--bone);font:.72rem var(--poster-sans);letter-spacing:.18em;cursor:pointer;background:#0b090480;border-radius:2px;padding:.75rem 1rem;display:none}#title-screen.load-error .loading-icon,#title-screen.load-error .loading-track{display:none}#title-screen.load-error #retry-button{display:block}.hidden{display:none!important}.title{top:max(1.5rem, env(safe-area-inset-top));left:max(1.5rem, env(safe-area-inset-left));font-family:var(--poster-sans);letter-spacing:-.045em;text-align:left;text-shadow:0 1px 12px #000000c2;font-size:clamp(1rem,1.8vw,1.4rem);font-weight:700;line-height:.82;position:absolute}.title span{display:block}#play-button{appearance:none;cursor:pointer;color:var(--bone-dim);background:0 0;border:0;padding:14px;transition:color .3s;display:none}#title-screen.is-ready #play-button{display:block}#play-button:hover,#play-button:focus-visible{color:var(--bone);outline:none}#play-button:active{transform:scale(.94)}#play-button svg{width:34px;height:34px;display:block;overflow:visible}#play-button path{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}#play-button .click-rays,#play-button .click-cursor{transform-box:fill-box;transform-origin:50%}#play-button .click-rays{animation:1.8s ease-out infinite click-rays}#play-button .click-cursor{animation:1.8s ease-in-out infinite click-press}@keyframes click-rays{0%,20%{opacity:.35;transform:scale(.82)}42%{opacity:1;transform:scale(1)}70%,to{opacity:.25;transform:scale(.9)}}@keyframes click-press{0%,24%,to{transform:translate(0)scale(1)}40%{transform:translate(-.5px,-.5px)scale(.9)}56%{transform:translate(0)scale(1)}}@keyframes loading-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){#play-button .click-rays,#play-button .click-cursor,.loading-icon{animation:none}}
