:root{color-scheme:dark;--bg:#080b10;--ink:#ece9e2;--muted:#92979f;--accent:#ffb58d;--line:rgba(208,219,236,.14);font-family:Arial,Helvetica,sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);min-height:100svh}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:5px}button{transition:background .2s,border-color .2s,color .2s}button:hover{color:#fff}button:disabled{cursor:default;opacity:.5}button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}#field{position:fixed;inset:0;width:100%;height:100%;touch-action:none;outline:none}.grain{position:fixed;inset:0;pointer-events:none;opacity:.026;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.65' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}.topbar,.intro,.instrument,footer,.field-label{position:relative}.topbar{display:flex;align-items:center;justify-content:space-between;padding:26px 0;border-bottom:1px solid var(--line);gap:16px}#interface{max-width:1800px;margin:auto;padding:0 4.8vw;min-height:100svh;display:flex;flex-direction:column;pointer-events:none}#interface a,#interface button,#interface input{pointer-events:auto}.brand{display:flex;align-items:center;gap:14px;font-size:12px;letter-spacing:.14em;white-space:nowrap}.brand svg{width:31px;height:31px;fill:none;stroke:var(--ink);stroke-width:2.1}.brand b{font-weight:400;color:var(--muted)}.top-actions{display:flex;gap:30px;align-items:center}.edition,.eyebrow{font-size:12px;font-weight:400;letter-spacing:.15em;color:var(--muted)}.icon-button{height:40px;width:40px;display:grid;place-items:center;background:transparent;border:1px solid var(--line);border-radius:50%}.icon-button:hover{background:#ffffff0c}.intro{padding-top:35px;z-index:1}.eyebrow{margin:0}.intro h1{font-size:clamp(60px,7.5vw,116px);font-weight:400;letter-spacing:-.075em;margin:12px 0 16px;line-height:1.04}.intro h1 span{display:inline-block;font-size:20px;vertical-align:top;letter-spacing:0;margin:10px 0 0 12px}.instruction{font-size:16px;line-height:1.6;margin:0;color:#c8c8c9}.instruction span{color:var(--muted)}.field-label{margin-top:auto;align-self:flex-end;display:flex;align-items:center;gap:12px;font-family:monospace;font-size:12px;letter-spacing:.04em;color:var(--muted);min-height:80px;padding-top:130px;padding-bottom:24px}.field-label i{display:block;width:28px;height:1px;background:#676a70}.instrument{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:24px 0 18px;background:linear-gradient(0deg,#080b10de,transparent);backdrop-filter:blur(5px)}.instrument-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.instrument-heading p{font-size:16px;margin:8px 0 20px;color:#c2c4ca}.headphone-hint{font-size:12px;color:var(--muted);align-self:flex-start;padding-top:2px}.controls{display:flex;gap:24px;align-items:stretch;justify-content:space-between}.scenes{display:flex;gap:10px;flex:1;max-width:750px}.scene{display:flex;align-items:center;gap:16px;text-align:left;border:1px solid var(--line);border-radius:6px;background:#0c101680;padding:12px 18px;flex:1;min-height:65px;min-width:0}.scene.active{background:#ffffff08;border-color:var(--accent)}.scene.active .scene-icon{color:var(--accent)}.scene:hover{background:#ffffff0c}.scene>span:last-child{font-size:16px;white-space:nowrap}.scene small{display:block;color:var(--muted);font-family:monospace;font-size:12px;margin-bottom:6px}.scene-icon{color:#888e99;font-size:32px;font-weight:300;width:32px;text-align:center}.play-controls{display:flex;gap:10px}.sound-button,.pulse-button{border:1px solid var(--line);border-radius:6px;padding:16px 22px;display:flex;align-items:center;justify-content:center;gap:12px;font-size:14px;white-space:nowrap}.sound-button{background:var(--ink);color:#15171c;min-width:140px}.sound-button:hover{background:#fff;color:#000}.sound-button[aria-pressed=true]{background:var(--accent);border-color:var(--accent)}.pulse-button{background:#12161cc9}.pulse-button:hover{background:#252931}.pulse-button span{font-size:20px;color:var(--accent)}.fine-controls{display:flex;justify-content:space-between;align-items:center;margin-top:20px;gap:24px}.energy{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:14px}.energy input{appearance:none;width:150px;height:26px;background:transparent;cursor:pointer}.energy input::-webkit-slider-runnable-track{height:2px;background:#454952}.energy input::-moz-range-track{height:2px;background:#454952}.energy input::-webkit-slider-thumb{appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent);margin-top:-6px}.energy input::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent);border:0}.motion-controls{display:flex;gap:18px;align-items:center;min-height:30px;color:var(--muted);font-size:12px}.motion-controls button{padding:8px 0;min-height:40px;background:transparent;border:0;color:var(--muted);font-size:14px}.motion-controls button:hover{color:var(--ink)}.divider{width:1px;height:14px;background:var(--line)}.keyboard-hint{letter-spacing:.08em}#status:empty{display:none}footer{display:flex;justify-content:space-between;gap:16px;padding:22px 0 calc(20px + env(safe-area-inset-bottom));font-size:12px;letter-spacing:.09em;color:#828792}footer b{font-weight:400;color:var(--accent);margin-left:10px}#return{position:fixed;right:24px;bottom:calc(24px + env(safe-area-inset-bottom));padding:14px 20px;border:1px solid #ffffff30;border-radius:50px;background:#0a0e15aa;backdrop-filter:blur(10px);font-size:14px;z-index:3}#return span{padding-left:16px}body.immersed #interface{display:none}.no-script{position:fixed;inset:40%;color:#fff;z-index:5}
@media(min-height:950px){.field-label{padding-top:25vh}.intro{padding-top:50px}}
@media(max-width:1050px){.controls{flex-wrap:wrap;gap:14px}.scenes{max-width:none;flex-basis:60%}.play-controls{flex:1}.sound-button,.pulse-button{flex:1;padding:15px}.scene{gap:10px;padding:12px}.field-label{padding-top:100px}}
@media(max-width:760px){#interface{padding:0 6vw;min-height:100svh}.topbar{padding:16px 0}.brand{font-size:12px;letter-spacing:.1em;gap:10px}.brand svg{width:27px;height:27px}.edition{display:none}.intro{padding-top:26px}.intro h1{font-size:clamp(54px,13.2vw,90px);margin-top:12px;margin-bottom:14px}.intro h1 span{font-size:16px;margin:6px 0 0 10px}.instruction{font-size:14px;line-height:1.6}.eyebrow{font-size:12px;letter-spacing:.1em}.field-label{padding-top:165px;min-height:180px;padding-bottom:18px;gap:8px;font-size:12px}.field-label #scene-detail{display:none}.instrument{padding:18px 0 10px}.instrument-heading{align-items:start}.instrument-heading p{font-size:14px;margin:8px 0 16px}.headphone-hint{display:none}.controls{gap:12px}.scenes{flex-basis:100%;gap:7px}.scene{padding:10px 8px;gap:8px;min-height:65px}.scene-icon{font-size:25px;width:24px;flex-shrink:0}.scene>span:last-child{font-size:14px}.scene small{margin-bottom:5px}.play-controls{width:100%}.sound-button,.pulse-button{min-height:49px;font-size:14px}.fine-controls{margin-top:10px;gap:8px}.energy{gap:10px;font-size:12px}.energy input{width:86px}.motion-controls{gap:8px}.divider,.keyboard-hint{display:none}.motion-controls button{font-size:12px}.motion-controls #status{position:absolute;left:0;bottom:-24px;background:#080b10}footer{font-size:12px;line-height:1.5;padding-top:18px;gap:20px;letter-spacing:.035em}footer span{max-width:50%}footer span:last-child{text-align:right}footer b{margin-left:3px}}
@media(max-width:365px){.scene-icon{display:none}.scene{padding:10px}.fine-controls{flex-wrap:wrap}.intro h1{font-size:51px}.pulse-button{padding:12px}.brand{letter-spacing:0}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}.grain{display:none}}
