@font-face{font-family:VT323;src:url(/assets/vt323-latin-400-normal-wDgJuOC9.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#12002b;--panel:#140628d1;--text:#fbe9ff;--muted:#b59ac9;--accent:#ff4fa3;--accent-2:#2de2e6;--glow:#ff4fa3;--flash:0;--ui-font:system-ui, -apple-system, "Segoe UI", sans-serif;--readout-font:"VT323", monospace}:root[data-style=synthwave]{--bg:#12002b;--panel:#140628d1;--text:#fbe9ff;--muted:#b59ac9;--accent:#ff4fa3;--accent-2:#2de2e6;--glow:#ff4fa3}:root[data-style=chiptune]{--bg:#0b0f14;--panel:#0a100ce6;--text:#d8ffd0;--muted:#7fa07a;--accent:#7cff4f;--accent-2:#4fd1ff;--glow:#7cff4f}:root[data-style=orchestral]{--bg:#1a120b;--panel:#261a10e0;--text:#f3e6cc;--muted:#b29f80;--accent:#e8c27a;--accent-2:#c97b4a;--glow:#e8c27a}:root[data-style=techno]{--bg:#050505;--panel:#0e0e0eeb;--text:#f0f0f0;--muted:#8a8a8a;--accent:#c6ff00;--accent-2:#ff2a2a;--glow:#c6ff00}:root[data-style=lofi]{--bg:#1a1418;--panel:#22181ee0;--text:#f5e6dc;--muted:#b39a94;--accent:#ffb37a;--accent-2:#7fd1c7;--glow:#ffb37a}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--bg);min-height:100dvh;color:var(--text);font-family:var(--ui-font);transition:background .6s;overflow-x:hidden}body:after{content:"";z-index:0;pointer-events:none;position:fixed;inset:0}:root[data-style=synthwave] body{background:radial-gradient(circle at 50% 66%,#ffb347 0 9%,#0000 9.2%) fixed,linear-gradient(#12002b 0%,#2a0750 45%,#6b1a6e 62%,#ff4fa3 72%,#12002b 72.2%) fixed}:root[data-style=synthwave] body:after{transform-origin:top;background:repeating-linear-gradient(90deg,#2de2e659 0 1px,#0000 1px 40px),repeating-linear-gradient(0deg,#2de2e659 0 1px,#0000 1px 40px);height:28%;inset:auto 0 0;transform:perspective(300px)rotateX(60deg)}:root[data-style=chiptune] body:after{background:repeating-linear-gradient(0deg,#00000040 0 1px,#0000 1px 3px)}:root[data-style=orchestral] body{background:radial-gradient(at 50% 30%,#3a2716,#1a120b 70%) fixed}:root[data-style=techno] body{background:var(--bg)}:root[data-style=techno] body:after{background:var(--accent);opacity:var(--flash,0)}:root[data-style=lofi] body{background:radial-gradient(at 50% 0,#3a2530 0%,#1a1418 65%) fixed}:root[data-style=lofi] body:after{background:repeating-radial-gradient(circle,#ffffff06 0 1px,#0000 1px 3px)}#app{z-index:1;flex-direction:column;gap:12px;width:100%;max-width:1100px;min-height:100dvh;margin:0 auto;padding:16px;display:flex;position:relative}.faceplate,.tuner{background:var(--panel);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid #ffffff14;border-radius:12px}.faceplate{align-items:center;gap:18px;padding:14px 18px;display:flex}.brand{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);white-space:nowrap;font-size:13px}.brand span{color:var(--accent)}.install{border:1px solid var(--accent);color:var(--accent);font:inherit;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;vertical-align:middle;background:0 0;border-radius:999px;margin-left:10px;padding:2px 8px;font-size:10px}.install[hidden]{display:none}.info-btn{width:24px;height:24px;color:var(--accent);cursor:pointer;vertical-align:middle;background:radial-gradient(circle at 35% 30%,#3a3a44,#15151b 70%);border:1px solid #ffffff24;border-radius:50%;place-items:center;margin-left:8px;padding:0;display:inline-grid}.info-btn:hover{box-shadow:0 0 8px var(--glow)}.readout{cursor:pointer;background:#05030a;border-radius:8px;flex:1;min-width:0;padding:8px 14px;box-shadow:inset 0 0 18px #000000e6}.readout-title{font-family:var(--readout-font);color:var(--accent);text-shadow:0 0 8px var(--glow);white-space:nowrap;text-overflow:ellipsis;font-size:30px;line-height:1.1;overflow:hidden}.readout-sub{font-family:var(--readout-font);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:18px;overflow:hidden}.marquee-inner{white-space:nowrap;display:inline-block}.scrolling{text-overflow:clip}.scrolling .marquee-inner{animation:marquee var(--marquee-time,8s) ease-in-out infinite alternate}@keyframes marquee{0%,15%{transform:translate(0)}85%,to{transform:translateX(var(--marquee-shift,0))}}@media (prefers-reduced-motion:reduce){.scrolling .marquee-inner{animation:none}.scrolling{text-overflow:ellipsis}}.levels{--seg-h:10px;--seg-gap:6px;--bars-w:168px;grid-template-columns:16px var(--bars-w);grid-template-rows:repeat(3, var(--seg-h));gap:var(--seg-gap) 6px;flex:none;align-items:center;display:grid}.level-label{font-family:var(--readout-font);color:var(--accent);text-align:center;grid-column:1;font-size:13px;line-height:1}.level-l{grid-row:1}.level-r{grid-row:2}.meters{grid-area:1/2/span 2;width:100%;height:100%}.mute{width:16px;height:16px;color:var(--accent);cursor:pointer;background:0 0;border:0;grid-area:3/1;place-items:center;padding:0;display:grid}.mute .slash,.mute.muted .waves{display:none}.mute.muted .slash{display:inline}.mute.muted{color:var(--muted)}.volume-slider{width:100%;height:var(--seg-h);appearance:none;background:linear-gradient(90deg, var(--accent) 0 var(--fill,100%), color-mix(in srgb, var(--accent) 15%, transparent) var(--fill,100%) 100%);cursor:pointer;grid-area:3/2;margin:0;padding:0;-webkit-mask:repeating-linear-gradient(90deg,#000 0 calc(6.25% - 2px),#0000 calc(6.25% - 2px) 6.25%);mask:repeating-linear-gradient(90deg,#000 0 calc(6.25% - 2px),#0000 calc(6.25% - 2px) 6.25%)}.volume-slider::-webkit-slider-runnable-track{background:0 0;height:100%}.volume-slider::-webkit-slider-thumb{appearance:none;background:0 0;width:2px;height:100%}.volume-slider::-moz-range-track{background:0 0;height:100%}.volume-slider::-moz-range-thumb{background:0 0;border:0;width:2px;height:100%}.levels:has(.volume-slider:focus-visible){outline:2px solid var(--accent-2);outline-offset:4px;border-radius:2px}.stage{flex:1;min-height:240px;position:relative}.score{cursor:grab;touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.style-banner{background:var(--panel);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-align:center;opacity:0;pointer-events:none;border:1px solid #ffffff14;border-radius:12px;padding:14px 28px;transition:opacity .4s;position:absolute;top:24px;left:50%;transform:translate(-50%)}.style-banner.show{opacity:1}.banner-name{font-family:var(--readout-font);color:var(--accent);text-shadow:0 0 10px var(--glow);font-size:32px;line-height:1}.banner-blurb{color:var(--muted);margin-top:4px;font-size:14px}.tuner{flex-direction:column;gap:10px;padding:12px 18px;display:flex}.dial-wrap{background:#05030a;border-radius:8px;height:96px;position:relative;overflow:hidden;box-shadow:inset 0 0 18px #000000e6}.dial{scrollbar-width:none;height:100%;position:relative;overflow:auto hidden}.dial::-webkit-scrollbar{display:none}.dial:focus-visible{outline:2px solid var(--accent-2);outline-offset:-2px}.dial-track{box-sizing:content-box;align-items:stretch;width:max-content;height:100%;padding:0 calc(50% - 80px);display:flex;position:relative}.dial-scale{pointer-events:none;background-color:#0000;background-image:repeating-linear-gradient(90deg,#ffffff29 0 1px,#0000 1px 15px),repeating-linear-gradient(90deg,#ffffff0d 0 1px,#0000 1px 3px);background-position:0 100%;background-repeat:repeat-x;background-size:100% 8px,100% 4px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;position:absolute;inset:0}.station{width:160px;height:100%;color:var(--muted);font-family:var(--readout-font);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:0 0 160px;justify-content:center;align-items:center;gap:2px;padding:0;display:flex;position:relative}.station-freq{font-size:20px;line-height:1}.station-title{white-space:nowrap;text-overflow:ellipsis;max-width:140px;font-size:13px;overflow:hidden}.station.active{color:var(--accent);text-shadow:0 0 8px var(--glow)}.station.hidden{display:none}.station-caption{font-family:var(--ui-font);letter-spacing:.16em;text-transform:uppercase;text-align:center;opacity:.7;pointer-events:none;font-size:10px;position:absolute;top:5px;left:0;right:0}.needle{z-index:2;background:var(--accent-2);width:2px;height:100%;box-shadow:0 0 10px var(--accent-2);pointer-events:none;position:absolute;top:0;left:50%;transform:translate(-50%)}.transport{align-items:center;gap:12px;display:flex}.knob{width:44px;height:44px;color:var(--muted);cursor:pointer;background:radial-gradient(circle at 35% 30%,#3a3a44,#15151b 70%);border:1px solid #ffffff24;border-radius:50%;flex:none;place-items:center;font-size:15px;display:grid}.knob-main{width:56px;height:56px;color:var(--accent);font-size:18px}.knob-small{width:36px;height:36px;font-size:14px}.knob.on{color:var(--accent);box-shadow:0 0 10px var(--glow)}.time{min-width:44px;font-family:var(--readout-font);color:var(--muted);text-align:center;font-size:20px}.seek{min-width:80px;accent-color:var(--accent);flex:1}.bands{gap:8px;display:flex}.band{color:var(--muted);font:inherit;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:#00000073;border:1px solid #ffffff1a;border-radius:6px;flex:1;padding:10px 8px;font-size:12px;box-shadow:inset 0 2px 6px #0009}.band[aria-checked=true]{border-color:var(--accent);color:var(--accent);box-shadow:0 0 10px var(--glow), inset 0 2px 6px #0009}.presets{gap:6px;display:flex}.preset{color:var(--muted);font:inherit;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:#00000073;border:1px solid #ffffff1a;border-radius:6px;flex:1;padding:6px 8px;font-size:11px;box-shadow:inset 0 2px 6px #0009}.preset[aria-checked=true]{border-color:var(--accent);color:var(--accent);box-shadow:0 0 10px var(--glow), inset 0 2px 6px #0009}.dim-overlay{pointer-events:none;z-index:50;background:#000000b3;position:fixed;inset:0}.dim-overlay[hidden]{display:none}.screensaver{z-index:100;cursor:none;background:#000;position:fixed;inset:0}.screensaver[hidden]{display:none}.saver-box{color:var(--accent);opacity:.35;font-family:var(--readout-font);padding:16px;transition:transform 2s;position:absolute;top:0;left:0}.saver-title{font-size:22px}.saver-time{margin-top:4px;font-size:16px}.info-panel{border:1px solid var(--accent);max-width:min(92vw,420px);color:inherit;font:inherit;background:#0b0812;border-radius:12px;padding:20px;font-size:14px;line-height:1.45}.info-panel::backdrop{background:#0009}.info-panel h2{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 10px;font-size:16px}.info-row{gap:8px;margin:10px 0;display:flex}.info-action,.info-choice{color:var(--muted);font:inherit;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:#00000073;border:1px solid #ffffff1a;border-radius:6px;flex:1;padding:8px;font-size:11px;box-shadow:inset 0 2px 6px #0009}.info-action[aria-pressed=true],.info-choice[aria-checked=true]{border-color:var(--accent);color:var(--accent);box-shadow:0 0 10px var(--glow), inset 0 2px 6px #0009}.info-label{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-top:12px;font-size:11px}.info-keys{color:var(--muted);font-size:12px}.info-close{width:100%;margin-top:12px}.card-byline{color:var(--muted);margin:0 0 12px}.card-facts{grid-template-columns:auto 1fr;gap:4px 14px;margin:0 0 12px;display:grid}.card-facts dt{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;align-self:center;font-size:11px}.card-facts dd{font-family:var(--readout-font);color:var(--accent);margin:0;font-size:18px}.card-about{margin:0 0 4px}:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px}@media (width<=640px){#app{gap:8px;padding:10px}.faceplate{grid-template-columns:1fr auto;gap:6px 10px;padding:8px 10px;display:grid}.brand{grid-column:1/-1;font-size:10px}.readout{padding:6px 10px}.readout-title{font-size:22px}.readout-sub{font-size:15px}.levels{--seg-h:8px;--seg-gap:5px;--bars-w:104px;align-self:center}.stage{min-height:150px}.tuner{gap:8px;padding:8px 10px}.dial-wrap{height:64px}.dial-track{padding:0 calc(50% - 60px)}.station{flex-basis:120px;width:120px}.station-freq{font-size:17px}.station-title{max-width:110px;font-size:11px}.station-caption{display:none}.transport{gap:8px}.knob{width:34px;height:34px;font-size:12px}.knob-main{width:42px;height:42px;font-size:15px}.knob-small{width:30px;height:30px;font-size:12px}.time{min-width:0;font-size:16px}.seek{appearance:none;background:0 0;min-width:40px;height:32px}.seek::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--accent) 0 var(--progress,0%), #ffffff2e var(--progress,0%) 100%);border-radius:4px;height:8px}.seek::-webkit-slider-thumb{appearance:none;background:var(--accent);width:20px;height:20px;box-shadow:0 0 8px var(--glow);border:0;border-radius:50%;margin-top:-6px}.seek::-moz-range-track{background:#ffffff2e;border-radius:4px;height:8px}.seek::-moz-range-progress{background:var(--accent);border-radius:4px;height:8px}.seek::-moz-range-thumb{background:var(--accent);border:0;border-radius:50%;width:20px;height:20px}.bands{gap:6px}.preset{letter-spacing:.06em;padding:4px;font-size:10px}.band{letter-spacing:.02em;white-space:nowrap;padding:9px 1px;font-size:9px}}@media (prefers-reduced-motion:reduce){:root[data-style=techno] body:after{opacity:0!important}.style-banner{transition:none}}
