:root{color-scheme:dark;--letterbox: #121212;--ink: #f3efe6;--muted: #b8b3a8;--gold: #e2c56a}*{box-sizing:border-box}[hidden]{display:none!important}html,body{margin:0;height:100%;background:var(--letterbox);color:var(--ink);font-family:Georgia,Times New Roman,serif}body.room{overflow:hidden}.chrome{position:fixed;z-index:12;top:.7rem;left:.9rem;pointer-events:none}.brand{margin:0;font-size:.78rem;letter-spacing:.16em;text-transform:lowercase;color:var(--ink)}.chrome-rail{position:fixed;z-index:12;top:.65rem;right:.75rem;display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.4rem;max-width:min(34rem,calc(100vw - 7.25rem))}.chrome-control{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(243,239,230,.18);background:#121212b8;color:var(--muted);font:.68rem/1.2 system-ui,sans-serif;letter-spacing:.06em;text-transform:uppercase;padding:.38rem .55rem;cursor:pointer;text-decoration:none}.chrome-control:hover,.chrome-control:focus-visible,.chrome-control[aria-current=page]{color:var(--ink);border-color:#e2c56a8c}.chrome-control:focus{outline:none}.chrome-control:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.stage{height:100%;display:flex;align-items:center;justify-content:center;background:var(--letterbox)}.scene{position:relative;width:min(100vw,calc(100vh * 5516 / 3600));height:min(100vh,calc(100vw * 3600 / 5516))}.plate{display:block;width:100%;height:100%;object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.hotspots{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.hotspot{pointer-events:auto;cursor:pointer;outline:none}.hotspot-shape{fill:transparent;stroke:none}.hotspot[data-hint=glow]:hover .hotspot-shape,.hotspot[data-hint=glow]:focus-visible .hotspot-shape{fill:#ffdc781f;stroke:#ffe0966b;stroke-width:8;filter:url(#hotspot-glow)}.hotspot:focus-visible .hotspot-shape{stroke:#ffe6a0e6;stroke-width:7}.hotspot[data-hint=none]:hover .hotspot-shape,.hotspot[data-hint=none]:focus-visible .hotspot-shape{fill:transparent;stroke:none;filter:none}.hud{position:fixed;z-index:6;left:.75rem;bottom:.7rem;padding:.28rem .5rem;background:#0c0c0cc7;color:#d7e8ff;font:.72rem/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;pointer-events:none}.overlay-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:8}.overlay-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:0;padding:0;background:#0000008c;cursor:pointer}.overlay-card{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(28rem,calc(100vw - 2rem));padding:1.6rem 1.5rem 1.15rem;background:#1a1a1a;color:var(--ink);border:1px solid rgba(226,197,106,.35)}.overlay-card:has(.overlay-image){width:min(42rem,calc(100vw - 2rem))}.overlay-image{display:block;width:100%;max-height:min(52vh,28rem);object-fit:contain;margin:.85rem 0 .45rem;background:#111}.overlay-image+.overlay-body{margin-top:.45rem}.overlay-title{margin:0;font-family:system-ui,sans-serif;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}.overlay-body{margin:.85rem 0 1.1rem;white-space:pre-line;font-size:1.15rem;line-height:1.4}.overlay--navy .overlay-body{font-size:1.05rem}.overlay--navy .overlay-body:first-line{font-family:system-ui,sans-serif;font-size:4.2rem;font-weight:650;letter-spacing:.04em;line-height:1.05}.overlay-body:has(+.overlay-source){margin-bottom:.45rem}.overlay-source{display:inline-block;margin:0 0 1.1rem;font-family:system-ui,sans-serif;font-size:.72rem;line-height:1.3;color:var(--muted);text-decoration:none}.overlay-source:hover,.overlay-source:focus-visible{text-decoration:underline}.overlay-source:focus{outline:none}.overlay-source:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.overlay-close{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(243,239,230,.22);background:transparent;color:var(--muted);font:.72rem/1 system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;padding:.4rem .65rem;cursor:pointer}.overlay-close:hover,.overlay-close:focus-visible{color:var(--ink)}.overlay-close:focus{outline:none}.overlay-close:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
