:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--stone:#c4a574;--timber:#8b5a2b;--linen:#e8dcc8;--ink:#2c2416;--sky-day:#7ba3c4;--dusk:#3d4f6f;--elf:#4a7c59;--iron:#6b7280;--threat:#8b3a3a;--gold:#c9a227;--ok:#4a7c59;--bg:#1a1612;--panel:#2a231c;--text:var(--linen);--muted:#a89880;--border:#3d342a;--btn:#3a3028;--btn-border:#524536;font-family:Segoe UI,system-ui,sans-serif;line-height:1.45}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box}body{background:radial-gradient(ellipse at top, #2c241c 0%, var(--bg) 60%);min-height:100vh;color:var(--text);margin:0;transition:background .35s}body.lighting-day{background:radial-gradient(ellipse at top, #3a3228 0%, var(--bg) 65%)}body.lighting-dusk{background:radial-gradient(ellipse at top, var(--dusk) 0%, #12151c 55%)}#app{max-width:720px;margin:0 auto;padding:1.25rem}h1{letter-spacing:.02em;color:var(--linen);margin:0 0 .25rem;font-size:1.25rem;font-weight:600}.sub{color:var(--muted);margin-bottom:1rem;font-size:.9rem}.panel{background:var(--panel);border:1px solid var(--border);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--timber) 25%, transparent);border-radius:10px;margin-bottom:.75rem;padding:1rem 1.1rem}.scene-bedroom{border-color:color-mix(in srgb, var(--timber) 55%, var(--border));background:linear-gradient(180deg, #322820 0%, var(--panel) 55%)}.scene-inn{border-color:color-mix(in srgb, var(--gold) 35%, var(--timber));background:linear-gradient(#3a2a18 0%,#2a231c 60%);box-shadow:inset 0 0 40px #c45a201f}.scene-street{border-color:color-mix(in srgb, var(--stone) 40%, var(--border));background:linear-gradient(180deg, #2a3038 0%, var(--panel) 55%)}body.lighting-dusk .scene-street{border-color:color-mix(in srgb, var(--dusk) 70%, var(--threat));background:linear-gradient(#243048 0%,#1a1612 60%)}.scene-tag{letter-spacing:.06em;text-transform:uppercase;color:var(--gold);margin-bottom:.5rem;font-size:.75rem;display:inline-block}.meta{flex-wrap:wrap;gap:.75rem 1.25rem;font-size:.9rem;display:flex}.meta strong{color:var(--stone);font-weight:600}.threat-bar{background:#3a3028;border-radius:4px;height:8px;margin-top:.35rem;overflow:hidden}.threat-bar>span{background:linear-gradient(90deg, var(--ok), var(--gold), var(--threat));height:100%;display:block}.beat{white-space:pre-wrap;margin:0;font-size:1.05rem}.actions{flex-direction:column;gap:.4rem;display:flex}button.action{text-align:left;background:var(--btn);color:var(--text);border:1px solid var(--btn-border);cursor:pointer;font:inherit;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--gold) 20%, transparent);border-radius:8px;padding:.55rem .75rem}button.action:hover{border-color:var(--gold);background:#453828}button.action .dur{color:var(--muted);float:right;font-size:.85rem}.row{flex-wrap:wrap;gap:.5rem;margin-top:.5rem;display:flex}button.secondary{border:1px solid var(--iron);color:var(--stone);cursor:pointer;font:inherit;background:0 0;border-radius:8px;padding:.4rem .7rem}button.danger{border-color:var(--threat);color:#e8a090}.modal-backdrop{background:#0000008c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal{background:var(--panel);border:1px solid var(--threat);border-radius:12px;width:100%;max-width:420px;padding:1.25rem}.clues span{background:#3a3028;border:1px solid #524536;border-radius:50%;width:.65rem;height:.65rem;margin-right:.25rem;display:inline-block}.clues span.on{background:var(--ok);border-color:var(--ok)}.err{color:#e8a090;margin:.35rem 0 0;font-size:.9rem}
