@font-face{font-family:Unbounded;src:url(/fonts/unbounded-var.woff2)format("woff2");font-weight:200 900;font-display:swap}@font-face{font-family:Space Mono;src:url(/fonts/space-mono-400.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Space Mono;src:url(/fonts/space-mono-700.woff2)format("woff2");font-weight:700;font-display:swap}:root{--bg:#08080a;--line:#1f1f25;--panel:#131318;--text:#f0efed;--dim:#8b8b93;--faint:#4c4c55;--accent:#ff3b30;--accent-hi:#ff5c52;--accent-soft:#ff3b301a;--accent-line:#ff3b3057;--accent-glow:#ff3b304d;--red:#d4453a;--bg-glow:#111116;--field-bg:#0c0c0f;--hover-bg:#ffffff06;--overlay-bg:#101014f5;--accent-deep:#b3140b;--ctl-ring:#ffffff1f;--ctl-face:linear-gradient(#ffffff0d, #ffffff0d);--ctl-face-hover:linear-gradient(#ffffff1a, #ffffff1a);--ctl-shadow:none;--ctl-shadow-hover:none;--ctl-press:none;--primary-face:linear-gradient(180deg, var(--accent-hi) 0%, var(--accent) 100%);--primary-face-hover:linear-gradient(180deg, var(--accent-hi) 0%, var(--accent-hi) 100%);--primary-shadow:0 6px 24px var(--accent-glow), 0 2px 6px #00000052;--primary-shadow-hover:0 10px 34px var(--accent-glow), 0 3px 9px #00000057;--primary-press:0 3px 14px var(--accent-glow), 0 1px 3px #0000004d;--float-shadow:0 6px 18px -8px #00000080, 0 2px 6px -3px #00000052;--orb-1:radial-gradient(circle, #ff3b3038 0%, #ff3b3012 45%, transparent 72%);--orb-2:radial-gradient(circle, #ce262229 0%, #ce26220d 45%, transparent 72%);--orb-3:radial-gradient(circle, #ff604821 0%, #ff60480a 45%, transparent 72%);--mono:"Space Mono", ui-monospace, Menlo, monospace;--display:"Unbounded", system-ui, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--expo-out:linear(0 0%, .1684 2.66%, .3165 5.49%, .446 8.52%, .5581 11.78%, .6535 15.29%, .7341 19.11%, .8011 23.3%, .8557 27.93%, .8962 32.68%, .9283 38.01%, .9529 44.08%, .9711 51.14%, .9833 59.06%, .9915 68.74%, 1 100%)}[data-theme=light]{--bg:#f4f3f0;--line:#e4e3dd;--panel:#fff;--text:#1a1a1d;--dim:#6c6c74;--faint:#9a9aa2;--accent:#db2b20;--accent-hi:#ff3b30;--accent-soft:#db2b201f;--accent-line:#db2b2066;--accent-glow:#db2b2047;--red:#cf3b30;--bg-glow:#fff;--field-bg:#fff;--hover-bg:#0000000d;--overlay-bg:#fffffff5;--accent-deep:#a3150c;--ctl-ring:#0000001a;--ctl-face:linear-gradient(#fff, #fff);--ctl-face-hover:linear-gradient(#f1f0ec, #f1f0ec);--ctl-shadow:0 1px 2px #0000000f;--ctl-shadow-hover:0 2px 8px #0000001a;--ctl-press:none;--primary-shadow:0 6px 22px var(--accent-glow), 0 2px 6px #0000001f;--primary-shadow-hover:0 10px 30px var(--accent-glow), 0 3px 8px #00000024;--primary-press:0 3px 12px var(--accent-glow), 0 1px 3px #0000001a;--float-shadow:0 6px 16px -8px #00000029, 0 2px 5px -3px #0000001a;--orb-1:radial-gradient(circle, #ff3b3026 0%, #ff3b300d 45%, transparent 72%);--orb-2:radial-gradient(circle, #d62b241c 0%, #d62b2408 45%, transparent 72%);--orb-3:radial-gradient(circle, #f06e5a1a 0%, #f06e5a08 45%, transparent 72%);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}html{background:radial-gradient(120% 90% at 50% 18%, var(--bg-glow) 0%, var(--bg) 62%), var(--bg);background-attachment:fixed}body{min-height:100dvh;color:var(--text);font-family:var(--mono);-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;flex-direction:column;justify-content:center;align-items:center;display:flex;overflow:hidden}.bg-orbs{z-index:0;pointer-events:none;position:fixed;top:0;bottom:0;left:0;right:0;overflow:hidden}.orb{filter:blur(44px);will-change:transform;opacity:0;border-radius:50%;position:absolute}.orb-1{background:var(--orb-1);width:52vmax;height:52vmax;animation:1.4s ease-out .1s forwards orb-in,24s ease-in-out 1.5s infinite orb-float-1;top:-16%;left:-12%}.orb-2{background:var(--orb-2);width:44vmax;height:44vmax;animation:1.5s ease-out .3s forwards orb-in,28s ease-in-out 1.8s infinite orb-float-2;bottom:-18%;right:-12%}.orb-3{background:var(--orb-3);width:34vmax;height:34vmax;animation:1.6s ease-out .5s forwards orb-in,22s ease-in-out 2s infinite orb-float-3;top:36%;left:52%}@keyframes orb-in{to{opacity:1}}@keyframes orb-float-1{0%,to{transform:translate(0)scale(1)}33%{transform:translate(7%,9%)scale(1.05)}66%{transform:translate(11%,2%)scale(.97)}}@keyframes orb-float-2{0%,to{transform:translate(0)scale(1)}33%{transform:translate(-8%,-7%)scale(1.04)}66%{transform:translate(-4%,6%)scale(.98)}}@keyframes orb-float-3{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-9%,8%)scale(1.06)}}#app{width:100%;max-width:480px;height:100dvh;padding:calc(env(safe-area-inset-top) + 22px) calc(env(safe-area-inset-right) + 26px) calc(env(safe-area-inset-bottom) + 26px) calc(env(safe-area-inset-left) + 26px);z-index:1;flex-direction:column;display:flex;position:relative}.brand{flex:none;justify-content:center;align-items:center;gap:12px;display:flex}.wordmark{font-family:var(--display);letter-spacing:.06em;color:#c4c4cc;font-size:13px;font-weight:500}.wordmark .acc{color:var(--accent)}[data-theme=light] .wordmark{color:#45454d}.theme-toggle{top:calc(env(safe-area-inset-top) + 12px);right:calc(env(safe-area-inset-right) + 16px);z-index:70;width:38px;height:38px;color:var(--dim);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;transition:color .2s,background .2s;display:flex;position:fixed}.theme-toggle:hover{color:var(--text);background:var(--hover-bg)}.theme-toggle .ic-sun{display:none}[data-theme=light] .theme-toggle .ic-sun{display:block}[data-theme=light] .theme-toggle .ic-moon{display:none}.share-widget{z-index:70;opacity:0;visibility:hidden;pointer-events:none;align-self:center;align-items:center;gap:8px;margin-bottom:14px;transition:opacity .25s,transform .25s,visibility 0s linear .25s;display:inline-flex;position:relative;transform:translateY(4px)}.share-widget.on{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .25s,transform .25s,visibility;transform:translateY(0)}.share-toggle{border:1px solid var(--line);height:34px;color:var(--dim);font-family:var(--mono);letter-spacing:.03em;cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:7px;padding:0 15px 0 13px;font-size:13px;font-weight:400;transition:color .2s,background .2s,border-color .2s;display:inline-flex}.share-label{line-height:1}.share-toggle:hover,.share-toggle.active{color:var(--text);background:var(--hover-bg);border-color:var(--dim)}.fav-toggle{border:1px solid var(--line);width:34px;height:34px;color:var(--dim);cursor:pointer;background:0 0;border-radius:50%;justify-content:center;align-items:center;transition:color .2s,background .2s,border-color .2s;display:inline-flex}.fav-toggle:hover{color:var(--accent);border-color:var(--accent-line);background:var(--accent-soft)}.fav-toggle[aria-pressed=true]{color:var(--accent);border-color:var(--accent-line)}.heart-ic{fill:currentColor;flex:none}.heart-filled{fill:var(--accent)}.fav-toggle .heart-filled,.fav-toggle[aria-pressed=true] .heart-outline{display:none}.fav-toggle[aria-pressed=true] .heart-filled{display:inline-flex}.share-menu{background:var(--panel);border:1px solid var(--line);opacity:0;visibility:hidden;pointer-events:none;transform-origin:top;z-index:75;border-radius:14px;flex-direction:column;min-width:198px;padding:6px;transition:opacity .18s,transform .18s,visibility 0s linear .18s;display:flex;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%)scale(.96)translateY(-6px);box-shadow:0 12px 34px #00000080}.share-menu.open{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .18s,transform .18s,visibility;transform:translate(-50%)scale(1)translateY(0)}.share-item{width:100%;color:var(--dim);font-family:var(--mono);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:11px;padding:9px 10px;font-size:13px;font-weight:400;text-decoration:none;transition:background .15s,color .15s;display:flex}.share-item:hover{background:var(--hover-bg);color:var(--text)}.share-item-ic{flex:none;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.share-item-ic svg{width:18px;height:18px}.share-div{background:var(--line);height:1px;margin:5px 6px}.ic-check,.check-text{display:none}.share-copy.copied{color:var(--accent)}.share-copy.copied .ic-copy,.share-copy.copied .copy-text{display:none}.share-copy.copied .ic-check{display:flex}.share-copy.copied .check-text{display:inline}.stage{flex-direction:column;flex:auto;justify-content:center;align-items:center;min-height:0;display:flex}.now{text-align:center;flex-direction:column;align-items:center;gap:10px;width:min(90vw,420px);display:flex}.now-name-box{justify-content:center;align-items:center;width:100%;min-height:clamp(64px,15vw,92px);display:flex;position:relative}.dial{opacity:0;pointer-events:none;width:min(264px,64vw);height:42px;transition:opacity .3s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.now[data-mode=scan] .dial{opacity:1}.dial-scale{background-image:linear-gradient(90deg, var(--dim) 0 2px, transparent 2px), linear-gradient(90deg, var(--faint) 0 1.5px, transparent 1.5px);background-position:0,0;background-repeat:repeat-x,repeat-x;background-size:54px 22px,18px 12px;height:24px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 14% 86%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 14% 86%,#0000 100%)}.dial-needle{background:linear-gradient(var(--accent-hi), var(--accent) 55%, #c11212);width:2px;height:32px;box-shadow:0 0 7px 1px var(--accent-glow), 0 0 18px 4px var(--accent-soft);border-radius:2px;margin-top:-16px;animation:1.6s ease-in-out infinite alternate paused dial-sweep;position:absolute;top:50%;left:8%}.now[data-mode=scan] .dial-needle{animation-play-state:running}.dial-needle:before{content:"";background:radial-gradient(circle, var(--accent-soft) 0%, transparent 70%);border-radius:50%;width:64px;height:64px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.dial-tip{width:5px;height:5px;box-shadow:0 0 6px 2px var(--accent-glow);background:#fff;border-radius:50%;margin-left:-2.5px;position:absolute;top:-3px;left:50%}@keyframes dial-sweep{0%{left:8%}to{left:92%}}@media (prefers-reduced-motion:reduce){.dial{display:none}}.now-name{letter-spacing:.004em;max-width:100%;color:var(--text);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:clamp(19px,5vw,28px);font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}.now-name.scanning{color:var(--accent);letter-spacing:.07em}.now[data-mode=idle] .now-name{white-space:normal;color:var(--dim);font-size:15px;font-weight:400;line-height:1.5}.now[data-mode=msg] .now-name{white-space:normal;color:var(--dim);font-size:18px;font-weight:400}.now-track{max-width:100%;min-height:1.2em;color:var(--dim);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:400;overflow:hidden}.now-track .artist{color:var(--dim)}.now-track .sep{color:var(--faint)}.now-track .title{color:var(--text)}.now[data-mode=msg] .now-track{color:var(--faint)}.viz{cursor:pointer;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:14px;align-self:center;width:min(90vw,420px);height:clamp(104px,18vh,148px);margin-top:clamp(14px,3vh,26px);padding:0;display:block;position:relative}.viz-canvas{width:100%;height:100%;display:block}.viz:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (max-height:600px),(orientation:landscape) and (max-height:660px){.viz{display:none}}.deck{flex-direction:column;flex:none;align-items:center;gap:30px;display:flex}.controls{justify-content:center;align-items:center;gap:clamp(22px,8vw,34px);display:flex}.ctl{font-family:var(--mono);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;justify-content:center;align-items:center;transition:color .2s,background-image .2s,border-color .2s,box-shadow .25s,transform .12s cubic-bezier(.2,.7,.2,1),opacity .2s;display:flex;position:relative}.ctl:disabled{opacity:.28;cursor:default}.ctl>svg{z-index:1;position:relative}.ctl:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.flt:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.opt:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.picker-close:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.share-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.help-btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}#volume:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.ctl-side{border:1px solid var(--ctl-ring);width:54px;height:54px;color:var(--dim);background-image:var(--ctl-face);box-shadow:var(--ctl-shadow);border-radius:50%}.ctl-side:not(:disabled):hover{color:var(--text);border-color:var(--faint);background-image:var(--ctl-face-hover);box-shadow:var(--ctl-shadow-hover);transform:translateY(-1px)}.ctl-side:active:not(:disabled){background-image:var(--ctl-face-hover);box-shadow:var(--ctl-press);transform:translateY(.5px)scale(.95)}.ctl-toggle .ic-stop,#app[data-state=playing] .ctl-toggle .ic-play,#app[data-state=tuning] .ctl-toggle .ic-play{display:none}#app[data-state=playing] .ctl-toggle .ic-stop,#app[data-state=tuning] .ctl-toggle .ic-stop{display:block}.ctl-primary{background-color:var(--accent);background-image:var(--primary-face);color:#0b0b0d;width:78px;height:78px;box-shadow:var(--primary-shadow);border-radius:50%}.ctl-primary:not(:disabled):hover{background-image:var(--primary-face-hover);box-shadow:var(--primary-shadow-hover);transform:translateY(-1px)}.ctl-primary:active:not(:disabled){box-shadow:var(--primary-press);transform:translateY(1px)scale(.96)}.ctl-primary:after{content:"";border-radius:inherit;pointer-events:none;position:absolute;top:0;bottom:0;left:0;right:0}#app[data-state=tuning] .ctl-primary:after{animation:1.4s ease-out infinite ping}@keyframes ping{0%{box-shadow:0 0 0 0 var(--accent-glow)}70%,to{box-shadow:0 0 0 15px #ff3b3000}}.vol{justify-content:center;align-items:center;display:flex;position:relative}.vol.muted .vol-mute{color:var(--accent)}.vol .ic-x,.vol.muted .ic-waves{display:none}.vol.muted .ic-x{display:inline}.vol-pop{display:none}@media (hover:hover) and (pointer:fine){.vol-pop{background:var(--panel);border:1px solid var(--line);box-shadow:var(--float-shadow);opacity:0;pointer-events:none;transition:opacity .2s ease, transform .2s var(--expo-out);z-index:50;border-radius:16px;justify-content:center;align-items:center;padding:16px 12px;display:flex;position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%)translateY(8px)}.vol-pop:after{content:"";height:14px;position:absolute;top:100%;left:0;right:0}.vol:hover .vol-pop,.vol:focus-within .vol-pop{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)}}.vol.no-slider .vol-pop{display:none}#volume{-webkit-appearance:none;appearance:none;writing-mode:vertical-lr;accent-color:var(--accent);cursor:pointer;direction:rtl;background:0 0;width:22px;height:110px}#volume::-webkit-slider-runnable-track{background:var(--line);border-radius:3px;width:3px;height:100%}#volume::-webkit-slider-thumb{-webkit-appearance:none;background:var(--dim);border-radius:50%;width:13px;height:13px;margin-left:-5px}#volume:hover::-webkit-slider-thumb{background:var(--accent)}#volume::-moz-range-track{background:var(--line);border-radius:3px;width:3px}#volume::-moz-range-thumb{background:var(--dim);border:0;border-radius:50%;width:13px;height:13px}.vol.muted #volume{opacity:.4}.vol.muted #volume::-webkit-slider-thumb{background:var(--faint)}.vol.muted #volume::-moz-range-thumb{background:var(--faint)}.status{letter-spacing:.26em;color:var(--faint);text-transform:uppercase;text-align:center;justify-content:center;align-items:center;gap:8px;min-height:14px;font-size:10px;font-weight:700;display:flex}#app[data-state=playing] .status,#app[data-state=standby] .status,#app[data-state=nomatch] .status{color:var(--dim)}#app[data-state=error] .status{color:var(--red)}.status-bitrate{color:var(--faint)}.status-bitrate:empty{display:none}.led{background:var(--faint);border-radius:50%;flex:none;width:5px;height:5px}#app[data-state=playing] .led{background:var(--accent);box-shadow:0 0 6px var(--accent-glow);animation:1.4s ease-in-out infinite led-pulse}#app[data-state=tuning] .led{background:var(--accent);animation:.6s steps(2,end) infinite led-blink}#app[data-state=error] .led{background:var(--red)}@keyframes led-blink{to{opacity:.2}}@keyframes led-pulse{0%,to{opacity:1;box-shadow:0 0 6px var(--accent-glow)}50%{opacity:.35;box-shadow:0 0 2px var(--accent-glow)}}.install-chip{left:50%;bottom:calc(env(safe-area-inset-bottom) + 14px);background:var(--overlay-bg);-webkit-backdrop-filter:blur(16px)saturate(1.4);border:1px solid var(--line);color:var(--text);z-index:60;box-shadow:var(--float-shadow);border-radius:17px;align-items:center;gap:14px;max-width:calc(100vw - 28px);padding:12px 13px 12px 19px;font-size:13px;animation:.4s chip-in;display:flex;position:fixed;transform:translate(-50%)}.install-chip[hidden]{display:none}@keyframes chip-in{0%{opacity:0;transform:translate(-50%,12px)}}.install-chip button{font-family:var(--mono);letter-spacing:.06em;border:1px solid var(--accent-line);color:var(--accent);cursor:pointer;background:0 0;border-radius:999px;min-height:34px;padding:8px 14px;font-size:11px;font-weight:700}.install-chip #install-no{border-color:var(--line);color:var(--dim);flex:none;justify-content:center;align-items:center;width:30px;height:30px;min-height:0;padding:0;font-size:12px;line-height:1;display:flex}.install-chip.ios{border-radius:18px;align-items:center;gap:10px;padding:12px 12px 12px 18px}.install-chip.ios #install-text{text-align:left}.install-chip #install-text{line-height:1.45}.install-chip .ios-share{vertical-align:-3px;color:var(--text);margin:0 1px}.toast{left:50%;top:calc(env(safe-area-inset-top) + 60px);opacity:0;pointer-events:none;background:var(--overlay-bg);-webkit-backdrop-filter:blur(16px)saturate(1.4);border:1px solid var(--line);max-width:calc(100vw - 28px);color:var(--text);box-shadow:var(--float-shadow);z-index:65;border-radius:17px;align-items:center;gap:14px;padding:12px 13px 12px 19px;font-size:13px;transition:opacity .28s,transform .28s;display:flex;position:fixed;transform:translate(-50%,-10px)}.toast[hidden]{display:none}.toast.show{opacity:1;pointer-events:auto;transform:translate(-50%)}.toast-text{line-height:1.35}.toast-action{font-family:var(--mono);letter-spacing:.06em;border:1px solid var(--accent-line);color:var(--accent);background:var(--accent-soft);cursor:pointer;border-radius:999px;flex:none;min-height:34px;padding:8px 15px;font-size:11.5px;font-weight:700;transition:background .18s,border-color .18s}.toast-action:hover{background:var(--accent-soft);border-color:var(--accent)}.toast[data-kind=offline] .toast-text:before,.toast[data-kind=online] .toast-text:before{content:"";vertical-align:1px;background:var(--faint);border-radius:50%;width:6px;height:6px;margin-right:8px;display:inline-block}.toast[data-kind=online] .toast-text:before{background:var(--dim)}.filters{justify-content:flex-start;align-items:center;gap:8px;width:100%;max-width:420px;margin-inline-start:auto;margin-inline-end:auto;display:flex}.flt-fav{margin-left:auto}.flt{border:1px solid var(--line);width:38px;height:38px;box-shadow:none;color:var(--dim);font-family:var(--mono);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:color .2s,border-color .2s,background .2s;display:inline-flex}.flt svg{opacity:.8;flex:none;width:16px;height:16px}.flt-label{display:none}.flt-flag{font-size:15px;line-height:1;display:none}.flt:not(.active):hover{color:var(--text);border-color:var(--dim);background:var(--hover-bg)}.flt:not(.active):active{background:var(--hover-bg)}.flt.active{color:var(--accent);border-color:var(--accent-line);background:var(--accent-soft);box-shadow:none}.flt.active svg{opacity:1}#flt-country.active .flt-ic{display:none}#flt-country.active .flt-flag{display:inline}.share-intro{z-index:85;position:fixed;top:0;bottom:0;left:0;right:0}.share-intro[hidden]{display:none}.share-intro-backdrop{-webkit-backdrop-filter:blur(4px);opacity:0;background:#0009;transition:opacity .24s;position:absolute;top:0;bottom:0;left:0;right:0}.share-intro.open .share-intro-backdrop{opacity:1}.share-intro-card{text-align:center;background:var(--panel);border:1px solid var(--line);opacity:0;border-radius:22px;flex-direction:column;align-items:center;width:min(90vw,360px);padding:30px 26px 22px;transition:opacity .26s,transform .26s cubic-bezier(.2,.8,.2,1);display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,calc(12px - 50%))scale(.96);box-shadow:0 24px 60px #0000008c}.share-intro.open .share-intro-card{opacity:1;transform:translate(-50%,-50%)scale(1)}.share-intro-eyebrow{font-family:var(--mono);letter-spacing:.26em;text-transform:uppercase;color:var(--faint);font-size:10px;font-weight:700}.share-intro-name{color:var(--text);overflow-wrap:anywhere;margin-top:12px;font-size:clamp(20px,5.5vw,26px);font-weight:700;line-height:1.25}.share-intro-meta{font-family:var(--mono);color:var(--dim);margin-top:7px;font-size:12px}.share-intro-meta:empty{display:none}.share-intro-play{background:var(--primary-face);width:100%;height:50px;box-shadow:var(--primary-shadow);color:#fff;font-family:var(--mono);letter-spacing:.04em;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:9px;margin-top:24px;font-size:15px;font-weight:700;transition:box-shadow .2s,transform .1s,background .2s;display:inline-flex}.share-intro-play:hover{background:var(--primary-face-hover);box-shadow:var(--primary-shadow-hover)}.share-intro-play:active{box-shadow:var(--primary-press);transform:scale(.98)}.share-intro-dismiss{color:var(--dim);font-family:var(--mono);cursor:pointer;background:0 0;border:0;margin-top:12px;padding:8px 14px;font-size:13px;transition:color .2s}.share-intro-dismiss:hover{color:var(--text)}.share-intro-play:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.share-intro-dismiss:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.picker{z-index:80;position:fixed;top:0;bottom:0;left:0;right:0}body:has(#picker.open) #refresh-btn{visibility:hidden;pointer-events:none}.picker[hidden]{display:none}.picker-backdrop{-webkit-backdrop-filter:blur(2px);opacity:0;background:#0000008c;transition:opacity .22s;position:absolute;top:0;bottom:0;left:0;right:0}.picker.open .picker-backdrop{opacity:1}.picker-panel{background:var(--panel);border:1px solid var(--line);border-bottom:0;border-radius:22px 22px 0 0;flex-direction:column;width:100%;max-width:480px;min-height:52dvh;max-height:82dvh;transition:transform .28s cubic-bezier(.2,.8,.2,1);display:flex;position:absolute;bottom:0;left:50%;transform:translate(-50%,100%);box-shadow:0 -16px 50px #0009}.picker.open .picker-panel{transform:translate(-50%)}.picker-head{touch-action:none;flex:none;align-items:center;gap:10px;padding:16px 14px 10px 18px;display:flex;position:relative}.picker-grip{background:var(--line);border-radius:99px;width:38px;height:4px;position:absolute;top:7px;left:50%;transform:translate(-50%)}.picker-title{font-family:var(--display);letter-spacing:.03em;color:var(--text);flex:auto;font-size:15px;font-weight:500}.picker-close{width:34px;height:34px;color:var(--dim);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;font-size:13px}.picker-close:hover{color:var(--text)}.picker-search{background:var(--field-bg);border:1px solid var(--line);color:var(--faint);border-radius:12px;flex:none;align-items:center;gap:8px;margin:0 16px 8px;padding:0 12px;display:flex}.picker-search:focus-within{border-color:var(--accent-line)}.picker-input{min-width:0;height:44px;color:var(--text);font-family:var(--mono);background:0 0;border:0;outline:0;flex:auto;font-size:16px}.picker-input::placeholder{color:var(--faint)}.picker-input::-webkit-search-cancel-button{display:none}.picker-list{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;padding:2px 10px calc(env(safe-area-inset-bottom) + 14px);scrollbar-width:thin;flex:auto;overflow-y:auto}.opt{cursor:pointer;width:100%;color:var(--text);font-family:var(--mono);text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:11px;padding:11px 12px;font-size:14px;display:flex}.opt:hover{background:var(--hover-bg)}.opt-flag{text-align:center;flex:none;width:24px;font-size:18px;line-height:1}.opt-main{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.opt-native{color:var(--dim)}.opt-native:before{content:" · ";color:var(--faint)}.opt-count{color:var(--faint);font-variant-numeric:tabular-nums;flex:none;font-size:12px}.opt-check{width:18px;height:18px;color:var(--accent);opacity:0;flex:none;align-items:center;display:flex}.opt.is-sel{color:var(--accent)}.opt.is-sel .opt-native{color:var(--accent);opacity:.75}.opt.is-sel .opt-check{opacity:1}.opt-empty{text-align:center;color:var(--faint);padding:26px 12px;font-size:13px}.fav-opt{border-radius:12px;align-items:center;display:flex}.fav-opt:hover{background:var(--hover-bg)}.fav-opt-hit{cursor:pointer;min-width:0;color:var(--text);font-family:var(--mono);text-align:left;background:0 0;border:0;flex:auto;align-items:center;gap:11px;padding:11px 6px 11px 12px;font-size:14px;display:flex}.fav-opt-name{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;overflow:hidden}.fav-opt-sub{color:var(--dim)}.fav-opt-sub:before{content:" · ";color:var(--faint)}.fav-opt-rm{width:34px;height:34px;color:var(--accent);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;align-items:center;margin-right:6px;display:inline-flex}.fav-opt-rm:hover{background:var(--accent-soft)}@media (min-width:760px){.picker-panel{border:1px solid var(--line);opacity:0;border-radius:18px;max-width:384px;height:min(64vh,520px);min-height:0;max-height:none;transition:transform .22s,opacity .22s;top:50%;bottom:auto;transform:translate(-50%,-48%)scale(.98);box-shadow:0 30px 80px -22px #000000b3}.picker.open .picker-panel{opacity:1;transform:translate(-50%,-50%)scale(1)}.picker-grip{display:none}.picker-head{padding-top:14px}}@media (min-height:940px){#app{height:min(880px,100dvh)}}@media (min-width:760px){#app{max-width:520px}.now-name{font-size:clamp(26px,2.2vw,34px)}.now-track{font-size:14px}.ctl-side svg{width:clamp(23px,1.7vw,30px);height:clamp(23px,1.7vw,30px)}.ctl-primary svg{width:clamp(30px,2.2vw,40px);height:clamp(30px,2.2vw,40px)}}@media (pointer:coarse){html{background:var(--bg)}.orb-1,.orb-2,.orb-3{display:none}#app{padding-left:calc(env(safe-area-inset-left) + 18px);padding-right:calc(env(safe-area-inset-right) + 18px)}.ctl-side{width:56px;height:56px}.ctl-primary{width:84px;height:84px}.flt{width:42px;height:42px}.flt svg{width:17px;height:17px}.theme-toggle{width:44px;height:44px}.share-toggle{height:40px;padding:0 18px 0 15px;font-size:14px}.fav-toggle{width:40px;height:40px}.deck{margin-bottom:clamp(10px,6vh,56px)}}@media (orientation:landscape) and (max-height:520px){#app{padding-top:calc(env(safe-area-inset-top) + 10px);padding-bottom:calc(env(safe-area-inset-bottom) + 10px);max-width:680px}.now-name-box{min-height:clamp(44px,12vh,72px)}.now-name{font-size:clamp(22px,6.5vh,34px)}.now{gap:6px}.now-track{font-size:12px}.deck{gap:10px}}@media (prefers-reduced-motion:no-preference){::view-transition-group(root){animation-timing-function:var(--expo-out)}::view-transition-new(root){animation:theme-reveal 1s var(--expo-out) both;-webkit-mask:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 40 40\"><defs><filter id=\"blur\"><feGaussianBlur stdDeviation=\"2\"/></filter></defs><circle cx=\"20\" cy=\"20\" r=\"18\" fill=\"white\" filter=\"url(%23blur)\"/></svg>") 50%/0 no-repeat;mask:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 40 40\"><defs><filter id=\"blur\"><feGaussianBlur stdDeviation=\"2\"/></filter></defs><circle cx=\"20\" cy=\"20\" r=\"18\" fill=\"white\" filter=\"url(%23blur)\"/></svg>") 50%/0 no-repeat}::view-transition-old(root){animation:none}@keyframes theme-reveal{to{-webkit-mask-size:200vmax;mask-size:200vmax}}}@media (hover:none){.theme-toggle:hover{color:var(--dim);background:0 0}.share-toggle:hover{color:var(--accent);border-color:var(--accent-line);background:0 0}.fav-toggle:hover{color:var(--dim);border-color:var(--line);background:0 0}.fav-toggle[aria-pressed=true]:hover{color:var(--accent);border-color:var(--accent-line)}.ctl-side:not(:disabled):hover{color:var(--dim);border-color:var(--ctl-ring);background-image:var(--ctl-face);box-shadow:var(--ctl-shadow);transform:none}.vol.muted .ctl-side:hover{color:var(--accent);border-color:var(--accent-line)}.vol-mute:not(:disabled):hover{color:var(--dim);background:0 0}.ctl-primary:not(:disabled):hover{background-image:var(--primary-face);box-shadow:var(--primary-shadow);transform:none}.flt:not(.active):hover{color:var(--dim);border-color:var(--ctl-ring);background-image:var(--ctl-face);box-shadow:var(--ctl-shadow)}.picker-close:hover{color:var(--dim)}.opt:hover{background:0 0}}@media (prefers-reduced-motion:reduce){.led,.ctl-primary:after{animation:none!important}.orb{opacity:1;animation:none!important}}:root{--ctl-ring:#ffffff1a;--ctl-face:linear-gradient(180deg, #ffffff0e 0%, #ffffff08 100%);--ctl-face-hover:linear-gradient(180deg, #ffffff1a 0%, #fff1 100%);--ctl-shadow:0 1px 2px #0000004d, inset 0 1px 0 #ffffff0f;--ctl-shadow-hover:0 2px 7px #0006, inset 0 1px 0 #ffffff14;--ctl-press:inset 0 1px 3px #00000059;--primary-face:linear-gradient(180deg, var(--accent-hi) 0%, var(--accent) 100%);--primary-face-hover:linear-gradient(180deg, var(--accent-hi) 0%, var(--accent-hi) 100%);--primary-shadow:0 2px 11px var(--accent-glow), 0 1px 2px #00000047, inset 0 1px 0 #fff3;--primary-shadow-hover:0 4px 17px var(--accent-glow), 0 1px 3px #0000004d, inset 0 1px 0 #ffffff42;--primary-press:0 1px 6px var(--accent-glow), inset 0 1px 3px #00000038}[data-theme=light]{--ctl-ring:#0000001a;--ctl-face:linear-gradient(180deg, #fff 0%, #fafaf7 100%);--ctl-face-hover:linear-gradient(180deg, #fff 0%, #efeeea 100%);--ctl-shadow:0 1px 2px #00000012, inset 0 1px 0 #ffffffe6;--ctl-shadow-hover:0 2px 7px #0000001a, inset 0 1px 0 #ffffffe6;--ctl-press:inset 0 1px 3px #0000001a;--primary-shadow:0 2px 11px var(--accent-glow), 0 1px 2px #0000001f, inset 0 1px 0 #ffffff52;--primary-shadow-hover:0 4px 16px var(--accent-glow), 0 1px 3px #00000024, inset 0 1px 0 #ffffff61;--primary-press:0 1px 5px var(--accent-glow), inset 0 1px 3px #00000024}.controls{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:0;display:grid}.transport{grid-column:2;justify-content:center;align-items:center;gap:18px;display:flex}.ctl-help{grid-column:1;justify-self:end;margin-right:clamp(16px,4vw,30px);position:relative}.vol{grid-column:3;justify-self:start;margin-left:clamp(16px,4vw,30px)}.ctl-primary{width:60px;height:60px}.ctl-side{width:48px;height:48px}.ctl-toggle .ic-play{transform:translate(1px)}.vol-mute{width:32px;height:32px;box-shadow:none;color:var(--dim);background:0 0;border:0;border-radius:50%;transition:color .2s,background .2s}.vol-mute>svg{width:21px;height:21px}.vol-mute:not(:disabled):hover{color:var(--text);background:var(--hover-bg);box-shadow:none;transform:none}.vol-mute:active:not(:disabled){box-shadow:none;color:var(--text);transform:none}@media (min-width:760px){.ctl-primary{width:clamp(80px,6.2vw,112px);height:clamp(80px,6.2vw,112px)}.ctl-side{width:clamp(52px,4.4vw,72px);height:clamp(52px,4.4vw,72px)}}@media (pointer:coarse){.ctl-primary{width:68px;height:68px}.ctl-side{width:52px;height:52px}.transport{gap:22px}.vol{margin-left:clamp(18px,5vw,28px)}}@media (orientation:landscape) and (max-height:520px){.ctl-primary{width:58px;height:58px}.ctl-side{width:44px;height:44px}.ctl-primary svg{width:24px;height:24px}.ctl-side svg{width:20px;height:20px}.vol-mute>svg{width:22px;height:22px}}#app[data-state=playing] .ctl-toggle,#app[data-state=tuning] .ctl-toggle{color:#0b0b0d}.help-btn{width:32px;height:32px;color:var(--dim);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;transition:color .2s,background .2s;display:flex}.help-btn>svg{width:21px;height:21px}.help-btn:hover{color:var(--text);background:var(--hover-bg)}.help-tip{-webkit-user-select:none;user-select:none;background:var(--overlay-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);min-width:184px;box-shadow:var(--float-shadow);opacity:0;visibility:hidden;transform-origin:0 100%;z-index:60;pointer-events:none;border-radius:14px;flex-direction:column;gap:9px;padding:13px 14px;transition:opacity .2s,transform .2s,visibility 0s linear .2s;display:flex;position:absolute;bottom:calc(100% + 12px);left:0;transform:translateY(5px)scale(.98)}.ctl-help:hover .help-tip,.ctl-help.open .help-tip{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .2s,transform .2s,visibility;transform:translateY(0)scale(1)}.help-tip-title{font-family:var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--dim);margin-bottom:2px;font-size:9.5px;font-weight:700}.help-row{justify-content:space-between;align-items:center;gap:18px;display:flex}.help-row .keys{gap:5px;display:inline-flex}.help-act{letter-spacing:.14em;text-transform:uppercase;color:var(--dim);white-space:nowrap;font-size:10px;font-weight:700}.help-tip kbd{letter-spacing:.02em;min-width:24px;height:24px;color:var(--text);background:var(--field-bg);border:1px solid var(--ctl-ring);box-shadow:var(--ctl-shadow);border-radius:7px;justify-content:center;align-items:center;padding:0 7px;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:12px;font-weight:600;line-height:1;display:inline-flex}@media (hover:none){.ctl-help{display:none}.vol-mute{width:44px;height:44px}.vol-mute>svg{width:24px;height:24px}.vol-mute:hover{color:var(--dim);background:0 0}.vol.muted .vol-mute,.vol.muted .vol-mute:hover{color:var(--accent)}}
