:root{color-scheme:light;--fog-white:#f6f8f9;--graphite:#111315;--steel:#75828a;--steel-dark:#536067;--measurement-teal:#0b8d8f;--liner-blue:#2f6f95;--wear-amber:#e6a33b;--review-red:#d95145;--line:rgba(17,19,21,0.14);--mono:"IBM Plex Mono","SFMono-Regular",Consolas,monospace;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--fog-white);color:var(--graphite)}*{box-sizing:border-box}body,html{min-height:100%;margin:0}body{background:var(--fog-white)}.locale-entry{display:grid;min-height:100vh;place-content:center;grid-gap:6px;gap:6px;color:var(--steel-dark);text-align:center}.locale-entry p{margin:0}.locale-entry a{color:var(--graphite)}button{font:inherit}:focus-visible{outline:3px solid var(--measurement-teal);outline-offset:3px}.smoke-shell{min-height:100vh;padding:48px clamp(20px,6vw,96px)}.smoke-heading{max-width:760px}.smoke-heading p{max-width:600px;color:var(--steel);line-height:1.6}.smoke-stage{position:relative;min-height:480px;margin-top:32px;overflow:hidden;border:1px solid var(--line);background:#121a1c}.smoke-stage canvas{display:block;width:100%;height:480px}.smoke-status{display:flex;align-items:center;gap:8px;margin-top:16px;color:var(--steel);font-family:var(--mono);font-size:12px}.smoke-status[data-state=ready]{color:var(--measurement-teal)}.smoke-status[data-state=error]{color:var(--review-red)}.smoke-actions{display:flex;gap:12px;margin-top:18px}.smoke-actions button{border:1px solid var(--graphite);padding:10px 14px;cursor:pointer;background:var(--graphite);color:white}.smoke-actions button[disabled]{cursor:not-allowed;opacity:.45}@media (prefers-reduced-motion:reduce){.smoke-stage canvas{height:360px}}