*{box-sizing:border-box}html{color-scheme:dark}body{margin:0;background:#0b1014;color:#dae2e8;font:15px/1.5 system-ui,sans-serif}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 85% 0%,#3c252644,transparent 50%)}main{position:relative;max-width:1180px;margin:auto;padding:28px 24px}header{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:0 0 22px}.brand{display:flex;gap:16px;align-items:center}.mark{color:#c57b77;font-size:52px}.eyebrow{letter-spacing:.2em;font-size:10px;color:#99a8b4;margin:0 0 5px}h1{font:clamp(28px,4vw,43px)/1.1 Georgia,serif;margin:0;letter-spacing:-.03em}.tagline{font:italic 16px/1.5 Georgia,serif;color:#a9b4bd;margin:0}.shell{border:1px solid #35404a;border-radius:12px;overflow:hidden;background:#151d24;box-shadow:0 20px 70px #0006}.toolbar{padding:12px 16px;display:flex;gap:12px;justify-content:space-between;align-items:center;border-bottom:1px solid #35404a}#phase{font-size:12px;color:#c9a19c}.actions{display:flex;gap:6px;flex-wrap:wrap}button{background:#26323d;color:#e6edf3;border:1px solid #47535f;border-radius:5px;padding:8px 12px;font:inherit;font-size:12px;cursor:pointer;min-height:38px}button:hover{background:#394853}button:focus-visible,a:focus-visible,#stage:focus-visible{outline:2px solid #e7caa0;outline-offset:3px}button:disabled{opacity:.4;cursor:wait}#start,#resume{background:#9e5551;border-color:#c47b73}button[aria-pressed=true]{border-color:#d5b890}#stage{position:relative;width:100%;aspect-ratio:16/9;background:#000;overflow:hidden;touch-action:none}#stage canvas{position:absolute;top:0;left:0;width:100%;height:100%}#stage canvas:last-of-type{z-index:1}#paused{position:absolute;inset:0;background:#070b10cc;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;backdrop-filter:blur(4px)}#paused[hidden]{display:none}#paused b{font:36px Georgia,serif}#paused span{color:#a9b4bd;font-size:13px}.readout{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;padding:16px 20px;border-top:1px solid #35404a}.readout>div{display:flex;flex-direction:column;gap:4px}.readout span{font-size:9px;letter-spacing:.16em;color:#91a1ad}.readout strong{font-weight:500;font-size:12px;font-variant-numeric:tabular-nums}.readout small{font-size:11px;color:#a9b4bd}meter{width:100%;height:9px;display:block}#health{accent-color:#b76561}#curse{accent-color:#c4d6e4}.touch{display:flex;justify-content:space-between;gap:10px;padding:0 20px 16px}.touch>div{display:flex;gap:7px}.touch button{touch-action:none;user-select:none;min-width:47px;min-height:44px;font-size:14px}.touch button.held{background:#8f504e}kbd{font:11px ui-monospace,monospace;background:#34414a;border-radius:3px;padding:2px 4px}#instructions{background:#18212a;border:1px solid #35404a;border-radius:10px;padding:20px 24px;margin-top:18px;color:#c5cfd7}h2{font:24px Georgia,serif;margin:0}#instructions p{max-width:900px;font-size:14px}footer{display:flex;justify-content:space-between;gap:20px;margin-top:20px;color:#8997a2;font-size:10px}footer p{margin:0}a{color:#bdc9d2;text-underline-offset:3px}@media(max-width:650px){main{padding:16px 10px}header{margin-bottom:16px}.mark{font-size:36px}.brand{gap:10px}.tagline{display:none}.toolbar{flex-direction:column;align-items:flex-start;padding:10px}.actions{width:100%;gap:5px}button{padding:8px;font-size:11px}.readout{gap:12px;padding:12px}.readout strong,.readout small{font-size:10px}.touch{padding:0 10px 12px;gap:5px}.touch>div{gap:4px}.touch button{min-width:40px;font-size:12px}footer{display:block}footer p{margin:8px 0}#paused b{font-size:24px}#paused span{font-size:11px}#paused{gap:7px}}