@font-face{font-family:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/instrument-sans-latin-ext-wght-normal-B5bTHO_g.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/instrument-sans-latin-wght-normal-BbzFLZTg.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--accent-rgb:240, 112, 150;--accent:rgb(var(--accent-rgb));--on-accent:#120a0e;--bg:#0c0c0f;--bg-2:#131317;--raised:#1a1a1f;--surface:#ffffff0a;--surface-2:#ffffff12;--surface-3:#ffffff1c;--border:#ffffff1a;--border-strong:#ffffff2e;--text:#f2f2f4;--muted:#f2f2f4b8;--faint:#f2f2f494;--scrim:#08080c99;--ok:#4cc38a;--warn:#f0b849;--err:#f0606d;--font:"Instrument Sans Variable", "Instrument Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-display:var(--font);--fs-1:13px;--fs-2:15px;--fs-3:17px;--fs-4:22px;--fs-5:28px;--fs-6:40px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--radius-sm:6px;--radius:12px;--radius-round:999px;--radius-btn:8px;--shadow-overlay:0 16px 48px #0000008c;--dur:.2s;--ease:cubic-bezier(.25, .8, .3, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:var(--fs-2);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent;margin:0;padding:0;line-height:1.45}body{min-height:100dvh;overflow-x:hidden}#root{min-height:100dvh}a{color:inherit}button,input,textarea,select{font:inherit;color:inherit}img{max-width:100%}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.truncate{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.muted{color:var(--muted)}.warn-text{color:var(--warn)}.hint{color:var(--muted);font-size:var(--fs-1);margin:var(--space-4) 0}.empty{color:var(--muted);padding:var(--space-6) 0;margin:0}.center-screen{place-items:center;min-height:100dvh;display:grid}.brand__mark{flex:none;align-items:flex-end;gap:3px;width:20px;height:20px;display:inline-flex}.brand__mark span{background:var(--text);border-radius:1px;flex:1;height:40%}.brand__mark span:nth-child(2){height:100%}.brand__mark span:nth-child(3){height:65%}.brand__mark--lg{gap:4px;width:32px;height:32px}.artwork{object-fit:cover;background:var(--surface-2);aspect-ratio:1;display:block}.artwork--empty{color:var(--faint);background:var(--surface-2);place-items:center;display:grid}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-4);border-radius:var(--radius-btn);border:1px solid var(--border);background:var(--surface-2);font-weight:500;font-size:var(--fs-2);cursor:pointer;white-space:nowrap;transition:background var(--dur) var(--ease), border-color var(--dur) var(--ease), opacity var(--dur) var(--ease);line-height:1;text-decoration:none;display:inline-flex}.btn:hover:not(:disabled){background:var(--surface-3)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn--primary{background:var(--accent);color:var(--on-accent);border-color:#0000;font-weight:700}.btn--primary:hover:not(:disabled){background:var(--accent);filter:brightness(1.08)}.btn--ghost{background:0 0;border-color:#0000}.btn--ghost:hover:not(:disabled){background:var(--surface-2)}.btn--danger-ghost{color:var(--err);background:0 0;border-color:#f0606d66}.btn--danger-ghost:hover:not(:disabled){background:#f0606d1a}.btn--sm{min-height:36px;padding:0 var(--space-3);font-size:var(--fs-1)}.btn--lg{min-height:48px;padding:0 var(--space-5);font-size:var(--fs-3)}.btn-group{gap:var(--space-2);align-items:center;display:flex}.btn-group--wrap{flex-wrap:wrap}.btn-group--icons{gap:var(--space-1)}.icon-btn{border-radius:var(--radius-round);width:40px;height:40px;color:var(--muted);cursor:pointer;transition:background var(--dur) var(--ease), color var(--dur) var(--ease), opacity var(--dur) var(--ease);background:0 0;border:none;flex:none;place-items:center;display:inline-grid}.icon-btn:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.icon-btn:disabled{opacity:.3;cursor:not-allowed}.icon-btn--danger:hover:not(:disabled){color:var(--err);background:#f0606d1a}.badge{align-items:center;gap:var(--space-1);padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:var(--fs-1);white-space:nowrap;background:var(--surface-2);color:var(--muted);font-weight:500;display:inline-flex}.badge--pending{color:var(--warn)}.chip{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);background:var(--scrim);font-size:var(--fs-1);white-space:nowrap;font-weight:500;display:inline-flex}.chip--warn{color:var(--warn)}.explicit{color:var(--faint);vertical-align:middle;flex:none}.list{transition:opacity var(--dur) var(--ease);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.list.is-loading{opacity:.6}.track-row{align-items:center;gap:var(--space-3);padding:var(--space-2) 0;min-width:0;display:flex}.track-row--dim{opacity:.55}.track-row__index{text-align:right;width:1.6em;color:var(--faint);font-variant-numeric:tabular-nums;flex:none;font-weight:500}.track-row__art{border-radius:var(--radius-sm);flex:none;width:48px;height:48px}.track-row__text{flex:1;min-width:0}.track-row__title{font-weight:500;font-size:var(--fs-2);align-items:center;gap:6px;min-width:0;display:flex}.track-row__title--wrap .truncate{white-space:normal;-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box}.track-row__sub{color:var(--muted);font-size:var(--fs-1)}.track-row__meta{font-size:var(--fs-1);margin-top:2px}.track-row__actions{flex:none}.track-row__dur{color:var(--faint);font-variant-numeric:tabular-nums;font-size:var(--fs-1);flex:none}.progress__track{background:#ffffff29;border-radius:2px;height:4px;position:relative;overflow:hidden}.progress__fill{background:var(--accent);transition:width .25s linear;position:absolute;inset:0 auto 0 0}.progress__times{margin-top:var(--space-2);font-variant-numeric:tabular-nums;color:var(--muted);font-size:var(--fs-1);justify-content:space-between;font-weight:500;display:flex}.progress--compact .progress__track{height:3px}.progress__track--seek{cursor:pointer;overflow:visible}.progress__track--seek .progress__fill{border-radius:inherit}.progress__track--seek .progress__fill:after{content:"";background:var(--accent);opacity:0;border-radius:50%;width:12px;height:12px;margin-top:-6px;transition:opacity .15s;position:absolute;top:50%;right:-6px}.progress__track--seek:hover .progress__fill:after,.progress__track--seek:focus-within .progress__fill:after{opacity:1}.progress__track--seek:focus-within{outline:2px solid var(--accent);outline-offset:6px}.progress__input{opacity:0;cursor:pointer;width:100%;height:24px;margin:0;position:absolute;top:-10px;left:0;right:0}.field{gap:var(--space-2);margin:0 0 var(--space-5);flex-direction:column;min-width:0;display:flex}.field__label{font-size:var(--fs-1);color:var(--muted);font-weight:500}.field__hint{font-size:var(--fs-1);color:var(--faint)}.field__error{font-size:var(--fs-1);color:var(--err)}.field__value{float:right;color:var(--muted);font-variant-numeric:tabular-nums;font-weight:500}.field-row{gap:0 var(--space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.input{width:100%;min-height:44px;padding:10px var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border);transition:border-color var(--dur) var(--ease);background:#00000040;outline:none}.input:focus{border-color:var(--border-strong)}.input:focus-visible{outline:2px solid var(--accent);outline-offset:0}.input:disabled{opacity:.55;cursor:not-allowed}.input--mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:var(--fs-1);resize:vertical;word-break:break-all}.input--masked{-webkit-text-security:disc;text-security:disc}.input-group{gap:var(--space-2);display:flex}.input-group .input{flex:1;min-width:0}.switch-row,.switch-only{align-items:center;gap:var(--space-3);cursor:pointer;display:flex;position:relative}.switch-row{margin:0 0 var(--space-4);min-height:44px}.switch-row small{color:var(--faint);font-size:var(--fs-1);display:block}.switch-row input,.switch-only input{opacity:0;width:1px;height:1px;position:absolute}.switch{border-radius:var(--radius-round);background:var(--surface-3);width:40px;height:24px;transition:background var(--dur) var(--ease);flex:none;position:relative}.switch:after{content:"";width:18px;height:18px;transition:transform var(--dur) var(--ease);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px}input:checked+.switch{background:var(--accent)}input:checked+.switch:after{transform:translate(16px)}input:focus-visible+.switch{outline:2px solid var(--accent);outline-offset:2px}.range{appearance:none;cursor:pointer;--val:50%;background:0 0;width:100%;height:28px}.range::-webkit-slider-runnable-track{background:linear-gradient(90deg, var(--accent) var(--val), #ffffff2e var(--val));border-radius:2px;height:4px}.range::-moz-range-track{background:linear-gradient(90deg, var(--accent) var(--val), #ffffff2e var(--val));border-radius:2px;height:4px}.range::-webkit-slider-thumb{-webkit-appearance:none;background:#fff;border:none;border-radius:50%;width:16px;height:16px;margin-top:-6px}.range::-moz-range-thumb{background:#fff;border:none;border-radius:50%;width:16px;height:16px}.range:disabled{opacity:.45;cursor:not-allowed}.device-locked{align-items:center;gap:var(--space-1);margin:0 0 var(--space-3);display:flex}.segmented{border-radius:var(--radius-btn);background:var(--surface);border:1px solid var(--border);gap:2px;max-width:100%;padding:3px;display:inline-flex}.segmented button{min-height:34px;padding:0 var(--space-4);border-radius:var(--radius-sm);font-weight:500;font-size:var(--fs-2);color:var(--muted);cursor:pointer;transition:background var(--dur) var(--ease), color var(--dur) var(--ease);background:0 0;border:none;align-items:center;gap:6px;display:inline-flex}.segmented button.is-active{background:var(--surface-3);color:var(--text)}.tab__count{color:var(--faint);font-variant-numeric:tabular-nums;margin-left:6px;font-weight:500}.is-active .tab__count{color:var(--muted)}.banner{padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);margin:var(--space-3) 0;font-size:var(--fs-2);border:1px solid var(--border);border-left-width:3px}.banner--warn{color:var(--text);border-left-color:var(--warn)}.banner--err{color:var(--text);border-left-color:var(--err)}body [data-sonner-toaster][data-sonner-theme]{--normal-bg:var(--raised);--normal-border:var(--border-strong);--normal-text:var(--text);--border-radius:var(--radius);font-family:var(--font)}[data-sonner-toaster] [data-sonner-toast].toast{padding:var(--space-3) var(--space-4);box-shadow:var(--shadow-overlay);font-weight:500;font-size:var(--fs-2)}[data-sonner-toast].toast[data-type=success] [data-icon]{color:var(--ok)}[data-sonner-toast].toast[data-type=error] [data-icon]{color:var(--err)}.spinner{border:3px solid var(--surface-3);border-top-color:var(--muted);border-radius:50%;width:28px;height:28px;margin:40px auto;animation:.8s linear infinite spin}.spinner--sm{width:20px;height:20px;margin:var(--space-4) auto}@keyframes spin{to{transform:rotate(360deg)}}.skeleton .artwork,.sk-line{background:var(--surface-2)}.sk-line{border-radius:var(--radius-sm);width:70%;height:12px;margin:6px 0}.sk-line--short{width:40%}.search{margin:0 0 var(--space-3);align-items:center;display:flex;position:relative}.search__icon{left:var(--space-3);color:var(--faint);pointer-events:none;position:absolute}.search__input{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);width:100%;min-height:48px;font-size:var(--fs-3);appearance:none;transition:border-color var(--dur) var(--ease);outline:none;padding:0 44px}.search__input::placeholder{color:var(--faint)}.search__input::-webkit-search-cancel-button{display:none}.search__input:focus{border-color:var(--border-strong)}.search__input:focus-visible{outline:2px solid var(--accent);outline-offset:0}.search__input:disabled{opacity:.5}.search__clear{width:44px;height:44px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:50%;place-items:center;display:grid;position:absolute;right:2px}.popover-anchor{position:relative}.popover{bottom:calc(100% + var(--space-3));z-index:50;width:min(340px,100vw - 32px);padding:var(--space-5);border-radius:var(--radius);background:var(--raised);border:1px solid var(--border);box-shadow:var(--shadow-overlay);animation:fade-up var(--dur) var(--ease);position:absolute;left:0}.dialog-overlay{z-index:80;animation:fade-in var(--dur) var(--ease);background:#050508b3;position:fixed;inset:0}.dialog{z-index:81;width:min(420px,100vw - 32px);max-height:calc(100dvh - 32px);padding:var(--space-5);border-radius:var(--radius);background:var(--raised);border:1px solid var(--border);box-shadow:var(--shadow-overlay);animation:dialog-in var(--dur) var(--ease);position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.dialog:focus{outline:none}.dialog__title{margin:0 0 var(--space-2);font-family:var(--font-display);font-size:var(--fs-4);letter-spacing:-.01em;overflow-wrap:anywhere;font-weight:700;line-height:1.25}.dialog__desc{margin:0 0 var(--space-5);color:var(--muted)}.dialog__actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap-reverse;display:flex}@keyframes dialog-in{0%{opacity:0;transform:translate(-50%,-48%)}}dialog.dialog{color:var(--text);margin:0}dialog.dialog::backdrop{background:#050508b3}.dialog__notes{margin:0 0 var(--space-4);padding:var(--space-3);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);font-size:var(--fs-2);white-space:pre-line;overflow-wrap:anywhere}@keyframes fade-up{0%{opacity:0;transform:translateY(4px)}}@keyframes fade-in{0%{opacity:0}}@media (pointer:coarse){.btn,.btn--sm{min-height:44px}.icon-btn{width:44px;height:44px}.segmented button{min-height:44px}.btn-group,.btn-group--icons{gap:var(--space-2)}}.show-sm{display:none}@media (width<=560px){.hide-sm{display:none}.show-sm{display:inline-block}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.status-text{font-size:var(--fs-1);color:var(--muted);white-space:nowrap;font-weight:500}.status-text--pending{color:var(--warn)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eq{align-items:flex-end;gap:3px;width:24px;height:22px;display:inline-flex}.eq span{background:var(--accent);transform-origin:bottom;border-radius:1px;flex:1;height:100%;animation:.9s ease-in-out infinite alternate bar}.eq span:nth-child(2){animation-delay:-.3s}.eq span:nth-child(3){animation-delay:-.6s}.eq span:nth-child(4){animation-delay:-.15s}@keyframes bar{0%{transform:scaleY(.35)}to{transform:scaleY(1)}}.sync{align-items:center;gap:var(--space-2);font-size:var(--fs-1);color:var(--muted);min-width:0;margin:0 0 var(--space-3);font-weight:500;display:flex}.sync__label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sync__dot{background:var(--faint);border-radius:50%;flex:none;width:8px;height:8px}.sync--connecting .sync__dot,.sync--syncing .sync__dot{background:var(--warn)}.sync--synced .sync__dot{background:var(--ok)}.sync--error .sync__dot{background:var(--err)}
