@font-face{font-family:'Departure Mono';src:url(fonts/DepartureMono-Regular.woff2) format('woff2');font-display:swap}
:root{color-scheme:dark;--paper:#e7eee9;--muted:#88979c;--accent:#a0e3cd;--border:#ffffff16;font-family:Arial,Helvetica,sans-serif;background:#070b10;color:var(--paper)}
*{box-sizing:border-box}body{margin:0;overflow:hidden}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:6px}button{border:0;background:none}button:disabled{opacity:.3;cursor:default}a{color:inherit;text-decoration:none}[hidden]{display:none!important}
#scene{position:fixed;inset:0;width:100%;height:100%;touch-action:none;cursor:crosshair}.vignette{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 54% 44%,transparent 25%,#070b1055 78%,#070b10bb 100%)}
header,footer{position:fixed;left:42px;right:42px;display:flex;align-items:center;justify-content:space-between;gap:24px;z-index:2}header{top:32px}.wordmark{font:22px/1 'Departure Mono',ui-monospace,monospace;font-synthesis:none}.wordmark span{color:var(--muted);font-weight:400}.quiet,.coordinates,.field-status,.signature,.sound-controls,.guide-top{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;letter-spacing:1.8px}.quiet{color:var(--muted);letter-spacing:.5px;padding:10px 0}.key{display:inline-grid;place-items:center;min-width:18px;height:20px;border:1px solid #ffffff1c;border-radius:4px;font:10px ui-monospace,monospace;color:#849c9e;margin-right:6px}#help-toggle{padding:12px;margin-right:-12px}.quiet .key{margin:0}.coordinates{position:fixed;top:112px;left:42px;display:flex;flex-direction:column;gap:9px;font-size:9px;color:#657b80;letter-spacing:1.4px}.field-status{position:fixed;right:42px;bottom:160px;text-align:right;font-size:9px;color:#70878b;letter-spacing:1.3px}.status-line{height:1px;width:85px;background:linear-gradient(90deg,transparent,#8ad8bf77);margin:14px 0 14px auto}
footer{bottom:30px;align-items:center}.signature{font-size:8px;line-height:1.7;color:#9aadae;letter-spacing:1.5px}.sound-controls{display:flex;align-items:center;gap:14px;font-size:9px;letter-spacing:1px}#sound{display:flex;align-items:center;gap:10px;color:#a5bbb7;font:inherit;letter-spacing:inherit;padding:12px 0}.sound-icon{display:flex;align-items:center;gap:2px;height:16px}.sound-icon i{width:2px;height:3px;background:#8baba3}.sound-icon i:nth-child(2){height:10px}.sound-icon i:nth-child(3){height:15px}.sound-icon i:nth-child(4){height:7px}#sound[aria-pressed=true] i{background:var(--accent);animation:equalize .9s ease-in-out infinite alternate}#sound[aria-pressed=true] i:nth-child(2){animation-delay:-.4s}#sound[aria-pressed=true] i:nth-child(3){animation-delay:-.7s}#volume{width:52px;height:2px;accent-color:var(--accent);cursor:pointer}#notice{position:fixed;top:100px;left:50%;transform:translateX(-50%);font:10px ui-monospace,monospace;letter-spacing:2px;color:#b4e8d9;pointer-events:none;opacity:0;transition:opacity .5s;text-align:center}#notice.visible{opacity:1}
#guide{position:fixed;z-index:4;right:24px;top:82px;width:326px;max-height:calc(100dvh - 120px);overflow:auto;background:#070b10f2;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:12px 18px 18px}.guide-top{display:flex;justify-content:space-between;align-items:center;font-size:9px;color:var(--muted);letter-spacing:1.5px}.guide-top .quiet{font-size:17px;padding:2px 4px}#guide dl{display:grid;grid-template-columns:105px 1fr;gap:14px 8px;margin:18px 0 0;font:10px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.1px}#guide dt{color:#819297}#guide dd{margin:0;color:#c3cfcc}#guide .touch-only{display:none}.guide-actions{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:22px}.guide-actions button{min-height:44px;border:1px solid var(--border);border-radius:6px;background:#ffffff06;font:10px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.3px;color:#c3cfcc}.guide-actions button:active{border-color:#a0e3cd55;color:var(--accent)}.guide-note{margin-top:22px;padding-top:16px;border-top:1px solid var(--border);font:10px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace}.guide-note h2{margin:0 0 4px;font:inherit;font-size:9px;letter-spacing:1.5px;color:var(--muted)}.guide-note p{margin:0 0 12px;color:#9fb0ae}.guide-note p:last-child{margin:0}#fallback,.no-script{position:fixed;top:35%;left:50%;transform:translateX(-50%);text-align:center;max-width:500px;width:85%;padding:30px;background:#0c141c;border:1px solid var(--border);border-radius:12px}#fallback h2{font-weight:400}#fallback p{font-size:14px;color:var(--muted);line-height:1.8}@keyframes equalize{to{transform:scaleY(.35)}}
@media(min-width:1600px){header,footer{left:56px;right:56px}.coordinates{left:56px}.field-status{right:56px}}
@media(max-width:1000px){header,footer{left:max(24px,env(safe-area-inset-left));right:max(24px,env(safe-area-inset-right))}.coordinates{left:max(24px,env(safe-area-inset-left))}.field-status{right:max(24px,env(safe-area-inset-right))}.signature{display:none}footer{justify-content:flex-end}#guide{right:6px}}
@media(max-width:650px){header{top:max(20px,env(safe-area-inset-top));left:20px;right:20px}.coordinates{left:20px;top:calc(max(20px,env(safe-area-inset-top)) + 65px);font-size:9px}.field-status{right:20px;bottom:calc(max(18px,env(safe-area-inset-bottom)) + 52px);font-size:8px}.field-status #node-count{display:none}.field-status .status-line{width:35px;margin:8px 0 0 auto}footer{left:15px;right:15px;bottom:max(18px,env(safe-area-inset-bottom));flex-direction:column;gap:7px}.sound-controls{height:44px;font-size:9px;gap:15px}.sound-icon{height:12px;transform:scale(.8)}#sound{padding:6px}#guide{top:70px;right:2px;left:2px;width:auto;padding:12px 18px 18px}#notice{top:85px;font-size:9px;max-width:50%;left:auto;right:20px;transform:none}}
#seed-label{padding:3px 0;text-align:left;font:inherit;letter-spacing:inherit;color:#7c9a92;max-width:min(300px,calc(100vw - 40px));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#seed-label:hover{color:var(--accent)}.coordinates{z-index:3}#seed-editor{width:min(300px,calc(100vw - 40px));padding:16px 0;background:#070e0df5;border-top:1px solid var(--border);border-bottom:1px solid var(--border);letter-spacing:0;font-size:10px}#seed-editor label{display:block;color:var(--muted);margin-bottom:12px}#seed-input{display:block;width:100%;background:transparent;color:var(--paper);font:12px ui-monospace,SFMono-Regular,Consolas,monospace;border:0;border-bottom:1px solid #a0e3cd40;border-radius:0;padding:8px 0;margin-bottom:12px}.seed-actions{display:flex;align-items:center;gap:18px}.seed-actions button,.seed-actions a{padding:6px 0;font:inherit;color:#b4cec5}.seed-actions button:hover,.seed-actions a:hover{color:var(--accent)}#seed-cancel{margin-left:auto;font-size:16px}
.lost{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(420px,calc(100vw - 40px));text-align:center}.lost-code{margin:0 0 18px;font:10px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:2px;color:#b4e8d9}.lost h1{margin:0 0 28px;font:33px/1.2 'Departure Mono',ui-monospace,monospace;font-synthesis:none}.lost a{display:inline-block;padding:12px 0;font:10px ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:1.5px;color:var(--muted);border-bottom:1px solid var(--border)}.lost a:hover{color:var(--accent)}
@media(hover:none) and (pointer:coarse){body{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}#seed-input{-webkit-user-select:text;user-select:text}#guide .touch-only{display:grid}#guide .desktop-only{display:none}button,a{touch-action:manipulation}#seed-label{padding:14px 0;margin:-11px 0}#seed-input{font-size:16px}.seed-actions button,.seed-actions a{padding:14px 0}.guide-top .quiet{padding:10px 14px;margin:-8px -14px -8px 0}#sound{padding:14px 6px}#volume{width:72px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
