*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{overflow:hidden;background:#242424;font-family:Georgia,serif}#canvas{position:fixed;top:0;left:0;width:100%;height:100%}#ui{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none}#viewport-header{position:fixed;top:0;left:0;right:0;height:26px;background:#1e1e1e;border-bottom:1px solid #333;display:flex;align-items:center;padding:0 12px;gap:16px;z-index:10;pointer-events:none}.vp-dot{width:6px;height:6px;border-radius:50%;background:#c8b560;opacity:.6}.vp-label{font-family:monospace;font-size:10px;color:#777;letter-spacing:.05em}.vp-label.active{color:#c8b560}#axis-widget{position:fixed;bottom:18px;left:18px;z-index:10;pointer-events:none}#corner-hint{position:fixed;top:34px;right:14px;font-family:monospace;font-size:9px;color:#666;line-height:1.6;text-align:right;z-index:10;pointer-events:none}.vp-link{margin-left:auto;font-family:monospace;font-size:10px;letter-spacing:.05em;color:#c8b560;text-decoration:none;pointer-events:auto;opacity:.75}.vp-link:hover,.vp-link:focus-visible{opacity:1;text-decoration:underline}#help{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;padding:1.5rem;background:#0000008c;pointer-events:auto;opacity:0;transition:opacity .25s ease}#help.open{opacity:1}#help[hidden]{display:none}.help-card{width:min(30rem,100%);background:#2b2b2b;border:1px solid #3d3d3d;border-radius:3px;padding:1.6rem 1.75rem 1.4rem;color:#e6e6e6;font:15px/1.5 Crimson Pro,Georgia,serif;box-shadow:0 20px 60px #00000080;transform:translateY(6px);transition:transform .25s ease}#help.open .help-card{transform:none}.help-card h2{margin:0 0 .2rem;font:italic 700 1.7rem Cormorant Garamond,Georgia,serif;color:#c8b560}.help-card .help-sub{margin:0 0 1.1rem;color:#9a9a9a;font-style:italic}.help-rows{display:grid;grid-template-columns:max-content 1fr;gap:.6rem 1rem;margin:0}.help-rows dt{white-space:nowrap;padding-top:1px}.help-rows dd{margin:0;color:#c8c8c8}.help-rows strong{color:#f0f0f0;font-weight:600}.help-card kbd{display:inline-block;min-width:1.6em;padding:1px 6px;border:1px solid rgba(200,181,96,.4);border-radius:3px;background:#242424;color:#c8b560;font:11px/1.6 monospace;text-align:center}.help-actions{display:flex;align-items:center;gap:1rem;margin-top:1.4rem;padding-top:1rem;border-top:1px solid #3d3d3d}.help-actions a{color:#9a9a9a;font-style:italic;font-size:14px}.help-actions a:hover{color:#c8b560}.help-start{margin-left:auto;padding:7px 18px;background:#c8b56026;border:1px solid rgba(200,181,96,.55);border-radius:3px;color:#c8b560;font:11px monospace;letter-spacing:.12em;cursor:pointer}.help-start:hover{background:#c8b56040}.help-card :focus-visible{outline:2px solid #c8b560;outline-offset:2px}.help-button{position:absolute;bottom:1.5rem;right:1.5rem;width:30px;height:30px;border:1px solid rgba(200,181,96,.3);border-radius:3px;background:#1a1a14b3;color:#c8b560;font:13px monospace;cursor:pointer;pointer-events:all}.help-button:hover{background:#c8b56026}@media (prefers-reduced-motion: reduce){#help,.help-card{transition:none}}#ui,#corner-hint,#axis-widget{transition:opacity .25s ease}body.zoomed #ui,body.zoomed #corner-hint,body.zoomed #axis-widget{opacity:0}body.zoomed #ui *{pointer-events:none!important}@media (prefers-reduced-motion: reduce){#ui,#corner-hint,#axis-widget{transition:none}}
