@font-face{font-family:Doto LCD;src:url(/assets/doto-latin-DtlIPefW.woff2)format("woff2");font-weight:400 900;font-style:normal;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b0b0c;--panel:#151517;--panel-2:#1c1c1f;--panel-3:#26262a;--rim:#000;--border:#303034;--text:#e8e8e5;--muted:#9c9c97;--muted-2:#6c6c68;--key:#b8b9b5;--key-hi:#d8d9d5;--key-lo:#8d8e8a;--key-ink:#151517;--key-2:#6d6f6f;--key-2-hi:#858787;--key-2-lo:#545656;--key-2-ink:#101012;--key-on:#f2d21a;--key-on-ink:#17170c;--focus:var(--key-on);--accent:#c8452f;--accent-2:#4a6fa8;--accent-dark:#a33524;--accent-soft:#c8452f26;--accent-2-soft:#4a6fa826;--accent-ink:#fff3f0;--ok:#2ea043;--ok-text:#7ee787;--warn:#d29922;--err:#f85149;--err-text:#ffa198;--cloud:#8fa9cf;--star:#e3b341;--lcd-bg:#f2d21a;--lcd-bg-2:#d8b60d;--lcd-ink:#17170c;--lcd-ink-dim:#4a3f0a;--lcd-warn:#b83b0a;--lcd-frame:#0a0a0b;--radius:4px;--radius-sm:3px;--radius-pill:999px;--edge-light:#ffffff1f;--bevel:inset 0 1px 0 var(--edge-light), 0 1px 2px #00000080;--bevel-press:inset 0 2px 6px #000000a6, inset 0 -1px 0 #ffffff12;--shadow:0 12px 30px #00000080;--gap:12px;--pad:14px;--tap:44px;--key-h:34px;--z-sticky:20;--z-toast:35;--z-player:40;--z-sheet:50;--z-drop:10;--sidebar-w:232px;--deck-art:clamp(58px, 11.5vh, 150px);--bottom-h:0px;--safe-bottom:env(safe-area-inset-bottom,0px);--safe-top:env(safe-area-inset-top,0px);--font:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--font-lcd:ui-monospace, "SFMono-Regular", Menlo, Consolas, "Liberation Mono", monospace;--font-dot:"Doto LCD", var(--font-lcd);--font-panel:"Helvetica Neue", Helvetica, Arial, system-ui, sans-serif;--fs-page:26px;--fs-section:19px;--fs-body:14px;--fs-small:13px;--tracking-lcd:.03em;--tracking-panel:.14em;--press-scale:.98;--ease:cubic-bezier(.2, .7, .3, 1)}@media (width>=600px){:root{--pad:18px;--gap:14px;--tap:42px;--key-h:36px}}@media (width>=900px){:root{--pad:28px;--gap:16px;--key-h:38px}}@media (display-mode:fullscreen),(display-mode:standalone){:root{--safe-top:max(env(safe-area-inset-top,0px), 10px);--safe-bottom:max(env(safe-area-inset-bottom,0px), 6px)}}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%}html{overscroll-behavior-y:none}body{background:var(--bg);color:var(--text);font:15px/1.5 var(--font);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none;margin:0}h1,h2,h3{letter-spacing:.2px;margin:0;font-weight:600}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}img{max-width:100%;display:block}::selection{background:var(--accent-2);color:#fff}.hidden{display:none!important}.muted{color:var(--muted)}.small{font-size:13px}.nowrap{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.app{grid-template:"top""main"minmax(0,1fr)"bottom"/minmax(0,1fr);height:100dvh;display:grid;overflow:hidden}.app__main{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;grid-area:main;min-height:0;overflow-y:auto}.app__content{min-width:0;padding:var(--pad)}.app__topbar{padding:calc(8px + var(--safe-top)) var(--pad) 8px;background:var(--panel);border-bottom:1px solid var(--border);grid-area:top;align-items:center;gap:10px;display:flex}.app__topbar-text{flex-direction:column;flex:1;min-width:0;line-height:1.25;display:flex}.app__logo{border-radius:8px;flex:none}.app__brand{letter-spacing:.3px;font-size:16px;font-weight:700}.app__greeting{min-width:0;color:var(--muted);font-size:12.5px}.app__bottom{grid-area:bottom}.app__sidebar{display:none}.app__bottomnav{background:var(--panel);border-top:1px solid var(--border);padding-bottom:var(--safe-bottom);display:flex}@media (width>=900px){.app{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);grid-template-rows:minmax(0,1fr) auto;grid-template-areas:"sidebar main""bottom bottom"}.app__topbar{display:none}.app__sidebar{background:var(--panel);border-right:1px solid var(--border);flex-direction:column;grid-area:sidebar;gap:6px;min-height:0;padding:20px 12px;display:flex;overflow-y:auto}.app__content{width:100%;max-width:1280px;margin:0 auto;padding:28px 32px}.app__bottomnav{display:none}}.brand{letter-spacing:.4px;align-items:center;gap:10px;padding:6px 8px 4px;font-size:17px;font-weight:700;display:flex}.app__sidebar .app__greeting{padding:0 8px 16px;font-size:13px}.userbox{flex-direction:column;gap:6px;display:flex}.userbox__profile{border-radius:var(--radius-sm);align-items:center;gap:10px;min-width:0;padding:8px;display:flex}.userbox__profile:hover{background:var(--panel-2)}.userbox__avatar{background:var(--accent-2);color:#fff;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;font-size:13px;font-weight:700;display:grid}.userbox__text{flex-direction:column;min-width:0;line-height:1.25;display:flex}.userbox__name{font-size:13.5px;font-weight:600}.userbox__user{color:var(--muted);font-size:11.5px}.nav{display:contents}.nav__item{color:var(--muted);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;padding:8px 4px;font-size:11px;display:flex}.nav__item--active{color:var(--text)}.nav__icon{font-size:18px;line-height:1}@media (width>=900px){.nav{flex-direction:column;gap:2px;display:flex}.nav__item{border-radius:var(--radius-sm);text-align:left;flex-direction:row;justify-content:flex-start;gap:12px;padding:10px 12px;font-size:14.5px;font-weight:500}.nav__item:hover{background:var(--panel-2);color:var(--text)}.nav__item--active{background:var(--panel-2)}}.nav__badge{color:var(--muted);margin-left:auto;font-size:11px}@media (width<=899px){.nav__badge{display:none}}.btn{border-radius:var(--radius-sm);border:1px solid var(--border);background:linear-gradient(180deg, var(--panel-3), var(--panel-2));box-shadow:var(--bevel);color:var(--text);cursor:pointer;white-space:nowrap;transition:background .12s var(--ease), border-color .12s var(--ease), box-shadow 90ms var(--ease), transform 90ms var(--ease);justify-content:center;align-items:center;gap:7px;padding:9px 14px;font-family:inherit;display:inline-flex}.btn:hover:not(:disabled){border-color:var(--accent-2)}.btn:active:not(:disabled){transform:translateY(1px) scale(var(--press-scale));box-shadow:var(--bevel-press);background:var(--panel-2)}.btn:disabled{opacity:.45;cursor:default}.btn--primary{background:linear-gradient(180deg, var(--accent), var(--accent-dark));border-color:var(--accent-dark);color:var(--accent-ink);font-weight:600}.btn--primary:hover:not(:disabled){background:linear-gradient(180deg, var(--accent), var(--accent));border-color:var(--accent)}.btn--ghost{color:var(--muted);background:0 0;border-color:#0000}.btn--ghost:hover:not(:disabled){color:var(--text);border-color:var(--border)}.btn--ghost.btn--primary{background:linear-gradient(180deg, var(--accent), var(--accent-dark));border-color:var(--accent-dark);color:var(--accent-ink)}.btn--ghost.btn--primary:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn--icon{padding:7px 10px;line-height:1}.btn--sm{padding:5px 9px;font-size:13px}.btn--round{border-radius:50%;width:44px;height:44px;padding:0}.btn--play{background:linear-gradient(180deg, var(--accent), var(--accent-dark));border-color:var(--accent-dark);color:var(--accent-ink);font-size:17px}.field{margin-bottom:14px;display:block}.field__label{color:var(--muted);margin-bottom:5px;font-size:13px;display:block}.field__hint{color:var(--muted);margin-top:5px;font-size:12.5px;display:block}.form__error{color:var(--err-text);margin:0 0 12px;font-size:13px}.input{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);width:100%;padding:10px 12px}.input:focus{outline:2px solid var(--accent-2);outline-offset:-1px}.check{color:var(--muted);align-items:flex-start;gap:9px;font-size:13.5px;display:flex}.check input{flex:none;margin:3px 0 0}.chips{flex-wrap:wrap;gap:7px;display:flex}.chip{border-radius:var(--radius-sm);border:1px solid var(--border);background:linear-gradient(180deg, var(--panel-3), var(--panel-2));box-shadow:var(--bevel);color:var(--muted);cursor:pointer;transition:background .12s var(--ease), color .12s var(--ease), transform 90ms var(--ease);padding:6px 13px;font-size:13.5px}.chip:active{transform:translateY(1px) scale(var(--press-scale));box-shadow:var(--bevel-press)}.chip:not(.chip--active):hover{color:var(--text)}.chip--active{background:linear-gradient(180deg, #3a6cc4, var(--accent-2));color:#fff;border-color:#4a76c8;font-weight:600;box-shadow:inset 0 1px #ffffff2e}.chip__count{font-variant-numeric:tabular-nums;margin-left:6px}.segmented{border:1px solid var(--key-lo);border-radius:var(--radius-sm);background:linear-gradient(180deg, var(--key-hi), var(--key) 46%, var(--key-lo));flex:0 auto;align-items:stretch;min-width:300px;display:flex;overflow:hidden;box-shadow:inset 0 1px #ffffff59,0 2px 3px #00000080}.segmented__item{min-width:0;min-height:var(--key-h);border:0;border-left:1px solid var(--key-lo);color:var(--key-ink);font-family:var(--font-panel);letter-spacing:var(--tracking-panel);text-transform:uppercase;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:background .1s var(--ease), color .1s var(--ease);background:0 0;flex:1 1 0;padding:0 6px;font-size:12px;font-weight:700;overflow:hidden}.segmented__item:first-child{border-left:0}.segmented__item:not(.segmented__item--active):hover{background:linear-gradient(180deg, var(--key-hi), var(--key));color:var(--key-ink)}.segmented__item:active{box-shadow:inset 0 2px 4px #00000059}.segmented__item--active{background:linear-gradient(180deg, #ffe66a, var(--key-on) 55%, #d9b90d);color:var(--key-on-ink);box-shadow:inset 0 1px #ffffff80}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:18px;padding:18px}.panel--narrow{max-width:440px;margin:24px auto}.dropzone{border:1.5px dashed var(--border);border-radius:var(--radius);background:var(--panel);text-align:center;flex-direction:column;align-items:center;gap:12px;padding:28px 16px;display:flex}.dropzone--over{border-color:var(--accent);background:var(--accent-soft)}.dropzone__icon{font-size:26px;line-height:1}.stack{flex-direction:column;gap:12px;display:flex}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px;display:flex}.toolbar__spacer{flex:1}.section{margin-bottom:28px}.section__head{align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.section__title{font-size:19px}.section__title--sm{font-size:16px}.page-title{margin-bottom:4px;font-size:26px}.page-head{flex-wrap:wrap;align-items:flex-start;gap:10px;margin-bottom:16px;display:flex}.page-head__text{flex:220px;min-width:0}.page-head .page-sub{margin:0}.page-sub{color:var(--muted);margin:0 0 20px;font-size:13.5px}.empty{text-align:center;color:var(--muted);padding:40px 12px}.empty__icon{margin-bottom:10px;font-size:34px;display:block}.notice{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--panel-2);color:var(--muted);margin-bottom:14px;padding:10px 13px;font-size:13.5px}.notice--error{color:var(--err-text);background:#f8514915;border-color:#f8514955}.notice--ok{color:var(--ok-text);background:#2ea04315;border-color:#2ea04355}.notice--warn{color:var(--warn);background:#d2992215;border-color:#d2992255}.progress{border-radius:var(--radius-pill);background:var(--panel-3);height:6px;overflow:hidden}.progress__bar{background:var(--accent);height:100%;transition:width .3s}.progress--done .progress__bar{background:var(--ok)}.progress--partial .progress__bar{background:var(--warn)}.progress--failed .progress__bar{background:var(--err)}.grid{grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:16px;display:grid}.card{text-align:left;border-radius:var(--radius);background:var(--panel);cursor:pointer;border:1px solid #0000;padding:12px;transition:background .14s,border-color .14s;display:block;position:relative}.card:hover{background:var(--panel-2);border-color:var(--border)}.card__title{margin-top:10px;font-size:14.5px;font-weight:600}.card__sub{color:var(--muted);margin-top:2px;font-size:12.5px}.card__badge{position:absolute;top:18px;right:18px}.cover{aspect-ratio:1;border-radius:var(--radius-sm);width:100%;color:var(--muted);background:linear-gradient(150deg,#232c37,#141a21);flex:none;place-items:center;font-size:26px;display:grid;position:relative;overflow:hidden}.cover img{object-fit:cover;width:100%;height:100%}.cover--xs{width:44px;height:44px;font-size:17px}.cover--sm{width:56px;height:56px}.cover--fill{width:100%}.cover--hero{border-radius:var(--radius);width:min(280px,58vw);box-shadow:var(--shadow)}.mosaic{grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;width:100%;height:100%;display:grid}.mosaic img{object-fit:cover;width:100%;height:100%}.rows{flex-direction:column;display:flex}.review__group-head{flex-wrap:wrap;align-items:center;gap:10px;margin:18px 0 6px;display:flex}.row{border-radius:var(--radius-sm);cursor:pointer;align-items:center;gap:12px;padding:6px 8px;display:flex}.row:not(.row--active):not(.row--selected):hover{background:var(--panel-2)}.row--active{background:var(--accent-soft);box-shadow:inset 0 0 0 1px #1f6feb55}.row__grab{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:12px;padding:0;display:flex}.row__meta{flex:1;min-width:0;display:block}.row__title{white-space:nowrap;text-overflow:ellipsis;font-weight:500;display:block;overflow:hidden}.row__sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;display:block;overflow:hidden}.row__line{align-items:baseline;gap:5px;min-width:0;display:flex}.row__line .row__sub{flex:0 auto;min-width:0}.row__line .row__state-inline{flex:none}.row__line .row__state-inline:before{content:"· "}.row__tail{color:var(--muted);font-variant-numeric:tabular-nums;flex:none;font-size:12.5px}.row__actions{flex:none;gap:4px;display:flex}.row__index{text-align:right;width:22px;color:var(--muted);font-variant-numeric:tabular-nums;flex:none;font-size:12.5px}.badge{border-radius:var(--radius-pill);border:1px solid var(--border);color:var(--muted);white-space:nowrap;flex:none;padding:2px 8px;font-size:11px}.badge--cloud{border-color:var(--cloud);color:var(--cloud)}.badge--local{border-color:var(--ok);color:var(--ok-text)}.badge--warn{border-color:var(--warn);color:var(--warn)}.badge--err{border-color:var(--err);color:var(--err-text)}.login{place-items:center;min-height:100%;padding:24px 16px;display:grid}.login__card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);width:100%;max-width:400px;padding:24px}.login__brand{align-items:center;gap:10px;margin-bottom:6px;font-size:22px;font-weight:700;display:flex}.player{background:linear-gradient(180deg, var(--panel-3), var(--panel-2) 42%, var(--panel));border-top:1px solid var(--edge-light);flex-direction:column;gap:6px;padding:8px 12px;display:flex;box-shadow:0 -1px #00000080,0 -10px 24px #0000004d}.player__top{align-items:center;gap:12px;display:flex}.player__info{cursor:pointer;flex:1;min-width:0}.player__title{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.player__sub{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.player__controls{align-items:center;gap:6px;display:flex}.player__seek{color:var(--muted);font-variant-numeric:tabular-nums;align-items:center;gap:9px;font-size:11.5px;display:flex}.range{appearance:none;border-radius:var(--radius-pill);background:var(--panel-3);cursor:pointer;width:100%;height:4px}.range::-webkit-slider-thumb{appearance:none;background:var(--text);border-radius:50%;width:12px;height:12px}.range::-moz-range-thumb{background:var(--text);border:0;border-radius:50%;width:12px;height:12px}@media (width<=899px){.player__seek .time,.player__extra{display:none}}.sheet{z-index:var(--z-player);background:linear-gradient(180deg, #1a1a1d, var(--bg) 55%);height:100dvh;padding:calc(10px + var(--safe-top)) 14px calc(12px + var(--safe-bottom));grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);gap:8px;display:grid;position:fixed;inset:0;overflow:hidden}.sheet__head{align-items:center;gap:12px;display:flex}.sheet__controls{min-height:0;display:grid}@media (width>=600px){.sheet{padding:calc(14px + var(--safe-top)) 20px calc(18px + var(--safe-bottom));gap:12px}}@media (width>=900px){.sheet{padding:calc(20px + var(--safe-top)) 28px calc(24px + var(--safe-bottom))}.sheet__controls{width:100%;max-width:1080px;margin:0 auto}}.draggable{align-items:center;display:flex}.row__handle{color:var(--muted-2);cursor:grab;touch-action:none;background:0 0;border:0;flex:none;align-self:stretch;padding:0 6px;font-size:15px;line-height:1}.row__handle:hover{color:var(--text)}.row__handle:active{cursor:grabbing}.dragging{opacity:.5}.drop-target{box-shadow:inset 0 2px 0 var(--accent)}.lyrics{color:var(--muted);flex-direction:column;gap:12px;padding:8px 0 40px;font-size:17px;line-height:1.45;display:flex}.lyrics__line{text-align:left;cursor:pointer;color:inherit;font-size:inherit;background:0 0;border:0;padding:0;transition:color .15s}.lyrics__line:hover{color:var(--text)}.lyrics__line--active{color:var(--text);font-weight:700}.spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin;display:inline-block}.toasts{left:12px;right:12px;bottom:calc(var(--bottom-h) + 10px);z-index:var(--z-toast);pointer-events:none;flex-direction:column;gap:8px;display:flex;position:fixed}.toasts .toast{pointer-events:auto;box-shadow:var(--shadow);background:var(--panel-2);margin:0}@media (width>=900px){.toasts{max-width:420px;left:auto;right:20px}}html{-webkit-text-size-adjust:100%}.btn{min-height:var(--tap);touch-action:manipulation}.btn--sm{min-height:34px}.btn--icon{min-width:var(--tap)}.chip{touch-action:manipulation;min-height:36px}.row__grab{min-height:44px}.nav__item{min-height:54px}button,a,.row,.chip{-webkit-tap-highlight-color:transparent}.hero{flex-direction:column;gap:14px;margin-bottom:22px;display:flex}.hero__art{align-self:center;width:min(66vw,260px)}.hero__meta{flex-direction:column;gap:6px;min-width:0;display:flex}.hero__title{overflow-wrap:anywhere;font-size:22px;font-weight:700;line-height:1.2}.hero__actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px;display:grid}.hero__actions .btn{white-space:normal;text-align:center;line-height:1.2}.hero__actions .btn--ghost{justify-self:start}.facts{flex-direction:column;gap:10px;display:flex}.fact{justify-content:space-between;align-items:center;gap:10px;display:flex}.fact__label{color:var(--muted);font-size:13px}.fact__value{text-align:right;overflow-wrap:anywhere;min-width:0}.row__state-inline{display:none}.actionsheet{z-index:var(--z-sheet);background:#0008;align-items:flex-end;animation:.12s fade-in;display:flex;position:fixed;inset:0}.actionsheet__panel{background:var(--panel-2);width:100%;max-height:82vh;padding:10px 10px calc(14px + var(--safe-bottom));border-top-left-radius:16px;border-top-right-radius:16px;animation:.16s slide-up;overflow-y:auto}@media (width>=900px){.actionsheet__panel{border-radius:16px 16px 0 0;max-width:420px;margin:0 auto}}.actionsheet__head{border-bottom:1px solid var(--border);align-items:center;gap:12px;margin-bottom:6px;padding:4px 8px 12px;display:flex}.actionsheet__head .cover{width:44px;height:44px}.actionsheet__titles{min-width:0}.actionsheet__title{font-weight:600}.actionsheet__sub{color:var(--muted);font-size:12.5px}.actionsheet__item{border-radius:var(--radius-sm);width:100%;min-height:48px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:14px;padding:10px 12px;display:flex}.actionsheet__item:hover:not(:disabled){background:var(--panel-3)}.actionsheet__item:disabled{opacity:.45;cursor:default}.actionsheet__item--danger{color:var(--err-text)}.actionsheet__icon{text-align:center;flex:none;width:22px;font-size:17px}.row__more{display:inline-flex}@media (width<=599px){.chips{flex-wrap:wrap;padding-bottom:0}.chips .chip{flex:none}.chip__count{display:none}.chip{padding:0 6px}.segmented{flex:100%;min-width:0;max-width:none}.segmented__item{letter-spacing:.06em;padding:0 3px;font-size:11px}.grid{grid-template-columns:repeat(auto-fill,minmax(136px,1fr));gap:12px}.card{padding:9px}.card__title{margin-top:8px;font-size:13.5px}.panel{margin-bottom:14px;padding:14px}.page-title{font-size:22px}.section{margin-bottom:22px}.toolbar{gap:8px;margin-bottom:14px}.row{gap:10px;padding:2px 0}.row__grab{gap:10px}.row__index{width:18px}.row .badge,.row .row__actions{display:none}.row__state-inline{display:inline}.row__more{display:inline-flex}.cover--xs{width:40px;height:40px}.sheet{padding:calc(10px + var(--safe-top)) 14px calc(16px + var(--safe-bottom))}.lyrics{font-size:16px}}@media (width>=600px){.hero{flex-direction:row;align-items:flex-end;gap:22px}.hero__art{flex:none;align-self:auto;width:min(240px,38vw)}.hero__title{font-size:26px}.hero__actions{flex-wrap:wrap;display:flex}.fact{justify-content:flex-start}.fact__label{flex:none;min-width:150px}.fact__value{text-align:left}.grid{grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:16px}.card{padding:12px}}@media (width>=900px){.hero{gap:28px;margin-bottom:28px}.hero__art{width:min(300px,28vw)}.hero__title{font-size:30px}.grid{grid-template-columns:repeat(auto-fill,minmax(176px,1fr))}.card__play{opacity:0}.card:hover .card__play,.card:focus-visible .card__play{opacity:1}}@media (width>=1400px){.grid{grid-template-columns:repeat(auto-fill,minmax(196px,1fr))}}.card__play{background:var(--accent-2);color:#fff;width:40px;height:40px;box-shadow:var(--shadow);pointer-events:none;border-radius:50%;place-items:center;transition:opacity .15s,transform .12s;display:grid;position:absolute;bottom:52px;right:16px}@media (hover:none){.card__play{display:none}}.nav__item--active{font-weight:600}.nav__item--active .nav__icon{filter:saturate(1.4)}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{transform:translateY(14px)}to{transform:translateY(0)}}@keyframes pop-in{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.unmatched{border:1px solid var(--border);border-radius:var(--radius-sm);margin-bottom:8px;padding:8px 10px}.unmatched__missing{align-items:flex-start;gap:8px;display:flex}.unmatched__missing .row__meta{flex:1;min-width:0}.unmatched__candidate{background:var(--panel-2);border-radius:var(--radius-sm);border:1px solid #0000;align-items:center;gap:10px;margin-top:8px;padding:6px 8px;display:flex}.choices{flex-direction:column;gap:4px;margin-top:6px;display:flex}.choices .unmatched__candidate{margin-top:0}.unmatched__candidate--picked{border-color:var(--accent)}.unmatched__candidate input[type=radio]{accent-color:var(--accent);flex:none}.unmatched__candidate .check{cursor:pointer;min-width:0;color:inherit;flex:1;align-items:center}.unmatched__candidate .check .row__title{font-weight:400}.missing{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:7px 2px;display:flex}.missing .row__meta{flex:1;min-width:0}.missing__actions{flex:none;gap:4px;display:flex}@keyframes spin{to{transform:rotate(360deg)}}.logbox{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);white-space:pre-wrap;overflow-wrap:anywhere;max-height:280px;margin:12px 0 0;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;line-height:1.5;overflow:auto}.btn:focus-visible,.btn--quiet:focus-visible,.chip:focus-visible,.tab:focus-visible,.nav__item:focus-visible,.row__grab:focus-visible,.card__play:focus-visible,.input:focus-visible,.range:focus-visible,summary:focus-visible,a:focus-visible{outline:2px solid var(--focus);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important}}.btn,.chip{min-height:var(--key-h);border:1px solid var(--key-lo);border-radius:var(--radius-sm);background:linear-gradient(180deg, var(--key-hi), var(--key) 46%, var(--key-lo));color:var(--key-ink);font-family:var(--font-panel);letter-spacing:var(--tracking-panel);text-transform:uppercase;transition:background .1s var(--ease), transform 80ms var(--ease), box-shadow 80ms var(--ease), color .1s var(--ease);font-size:12px;font-weight:700;box-shadow:inset 0 1px #ffffff59,0 2px 3px #00000080}.btn:hover:not(:disabled),.chip:not(.chip--active):hover{background:linear-gradient(180deg, #e6e7e3, var(--key-hi) 60%, var(--key));border-color:var(--key-lo);color:var(--key-ink)}.btn:active:not(:disabled),.chip:active{transform:translateY(1px) scale(var(--press-scale));background:linear-gradient(180deg, var(--key-lo), var(--key));box-shadow:var(--bevel-press)}.btn--ghost,.btn--sm:not(.btn--primary):not(.btn--danger){background:linear-gradient(180deg, var(--key-2-hi), var(--key-2) 55%, var(--key-2-lo));border-color:var(--key-2-lo);color:#f1f1ee}.btn--ghost:hover:not(:disabled){background:linear-gradient(180deg, #d3d4d0, var(--key-hi) 60%, var(--key));border-color:var(--key-lo);color:var(--key-2-ink)}.btn--primary,.btn--ghost.btn--primary,.btn--play,.chip--active{background:linear-gradient(180deg, #ffe66a, var(--key-on) 55%, #d9b90d);color:var(--key-on-ink);border-color:#b69a09;box-shadow:inset 0 1px #ffffff80,0 2px 4px #00000080}.btn--danger{color:var(--err-text);background:0 0;border-color:#f8514944}.btn--icon{min-width:var(--key-h);padding:6px 8px}.panel,.card,.actionsheet,.notice{border-radius:var(--radius);background:linear-gradient(180deg, var(--panel-2), var(--panel));border:1px solid var(--border);box-shadow:var(--bevel)}.input{border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-lcd);background:#0f0f10;box-shadow:inset 0 1px 3px #000000a6}.brand,.app__brand,.section__title,.page-title,.status-title,.badge,th,.fact__label,.field__label,.nav__item,.flag,.btn,.chip{font-family:var(--font-panel);letter-spacing:var(--tracking-panel);text-transform:uppercase}.section__title,.page-title{color:var(--text);font-size:12.5px;font-weight:700}.page-title{font-size:15px}.plate{gap:2px;min-width:0;display:grid}.plate__album{letter-spacing:.06em;text-transform:uppercase;color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:700;overflow:hidden}.plate__meta{letter-spacing:calc(var(--tracking-panel) + .06em);text-transform:uppercase;color:var(--muted-2);white-space:nowrap;text-overflow:ellipsis;font-size:9px;font-weight:600;overflow:hidden}.plate--idle .plate__album{color:var(--muted)}.lcd{--lcd-rows:10;--lcd-row-h:clamp(24px, 2.9vh, 36px);--lcd-head-h:36px;border:2px solid var(--lcd-frame);border-radius:var(--radius-sm);background:linear-gradient(180deg, var(--lcd-bg), var(--lcd-bg-2));height:auto;min-height:0;color:var(--lcd-ink);font-family:var(--font-dot);-webkit-font-smoothing:antialiased;letter-spacing:var(--tracking-lcd);text-shadow:none;filter:var(--lcd-filter,none);grid-template-rows:auto auto minmax(0,1fr);padding:7px 10px 9px;font-size:clamp(15px,1.9vh,22px);font-weight:900;display:grid;box-shadow:inset 0 0 0 1px #00000059,inset 0 2px 6px #0003,0 1px #ffffff14}.lcd__readout{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:baseline;gap:2px 12px;padding-bottom:3px;display:grid;overflow:hidden}.lcd__cell{white-space:nowrap;font-variant-numeric:tabular-nums;align-items:baseline;gap:4px;display:inline-flex}.lcd__word{letter-spacing:var(--tracking-panel);text-transform:uppercase;opacity:.8;font-size:.67em}.lcd__number{font-size:1.13em;font-weight:700}.lcd__dim{color:var(--lcd-ink-dim);font-size:.8em}.lcd__cell--time{letter-spacing:.02em;justify-content:center;font-size:clamp(22px,5.6vw,34px);font-weight:700;line-height:1}.lcd__cell--state{justify-content:flex-end;font-size:.83em}.lcd__cell--source{letter-spacing:var(--tracking-panel);opacity:.8;justify-content:flex-end;font-size:.7em}.lcd__switch{letter-spacing:0;border-bottom:1px solid #17170c2e;flex-wrap:wrap;align-items:baseline;gap:2px 14px;padding-bottom:5px;font-size:.87em;display:flex}.lcd__sw{white-space:nowrap;color:var(--lcd-ink-dim);align-items:baseline;gap:4px;display:inline-flex}.lcd__sw-name{opacity:.8}.lcd__sw-state{font-weight:700}.lcd__sw[data-on=true]{color:var(--lcd-ink)}.lcd--time{font-family:var(--font-lcd);font-variant-numeric:tabular-nums;letter-spacing:.04em;color:var(--lcd-bg);filter:var(--lcd-filter,none)}.lcd__body{height:calc(var(--lcd-row-h) * var(--lcd-rows) + var(--lcd-head-h) + 10px);overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;min-height:0;padding-top:6px;overflow-y:auto}.lcd__page{align-content:start;gap:10px;display:grid}:is(.lcd__page:has(>.empty),.lcd__page:has(>.muted)){align-content:center}.lcd__text{align-content:center;gap:3px;padding-bottom:6px}.lcd__title{overflow-wrap:anywhere;margin:0;font-size:clamp(20px,2.6vh,30px);font-weight:700;line-height:1.15}.lcd__sub{color:var(--lcd-ink-dim);margin:0;font-size:.83em}.lcd__upnext{min-width:0;color:var(--lcd-ink-dim);gap:2px;margin:10px 0 0;padding:0;font-size:.82em;list-style:none;display:grid}.lcd__next{grid-template-columns:3.2em minmax(0,1fr) auto;align-items:baseline;gap:10px;min-width:0;display:grid}.lcd__upnext>.lcd__next:first-child{color:var(--lcd-ink)}.lcd__next-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lcd__listpage{grid-template-rows:auto minmax(0,1fr);gap:4px;height:100%}.lcd__listhead{height:var(--lcd-head-h);border-bottom:1px solid #17170c2e;align-items:center;gap:8px;padding-bottom:4px;display:flex}.lcd__list{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;min-height:0;overflow-y:auto}.lcd__row{height:var(--lcd-row-h);cursor:grab;border-radius:2px;align-items:center;gap:8px;padding:0 3px;display:flex}.lcd__row--now{background:var(--lcd-ink);color:var(--lcd-bg);--lcd-ink-dim:#c2a812}.lcd__row--dragging{opacity:.5}.lcd__no{font-variant-numeric:tabular-nums;color:var(--lcd-ink-dim);flex:none;font-size:.87em}.lcd__grab{min-width:0;color:inherit;font:inherit;letter-spacing:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:baseline;gap:8px;padding:0;display:flex}.lcd__name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lcd__by{text-overflow:ellipsis;white-space:nowrap;max-width:42%;color:var(--lcd-ink-dim);flex:0 auto;overflow:hidden}.lcd__len{font-variant-numeric:tabular-nums;color:var(--lcd-ink-dim);flex:none;font-size:.87em}.lcd__drop{color:inherit;font:inherit;opacity:.65;cursor:pointer;background:0 0;border:0;flex:none;padding:0 9px;font-size:.8em}.lcd__drop:hover{opacity:1}.lcd__empty{color:var(--lcd-ink-dim);gap:4px;font-size:.87em}.lcd__key{min-height:26px;color:inherit;font-family:var(--font-dot);font-size:.77em;font-weight:inherit;letter-spacing:var(--tracking-panel);text-transform:uppercase;white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #17170c80;border-radius:2px;padding:1px 8px}.lcd__key:hover{background:#17170c1a}.lcd__key:active{background:#17170c2e}.lcd__menu{gap:12px}.lcd__menuhead{letter-spacing:var(--tracking-panel);text-transform:uppercase;margin:0;font-size:.87em;font-weight:700}.lcd__field{gap:5px;display:grid}.lcd__label{letter-spacing:var(--tracking-panel);text-transform:uppercase;opacity:.8;font-size:.67em}.lcd__choices{flex-wrap:wrap;gap:6px;display:flex}.lcd__choice{color:inherit;font-family:var(--font-dot);font-size:.87em;font-weight:inherit;letter-spacing:.03em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #17170c80;border-radius:2px;padding:2px 10px}.lcd__choice:hover{background:#17170c14}.lcd__choice--on{background:var(--lcd-ink);border-color:var(--lcd-ink);color:var(--lcd-bg)}.lcd__check{align-items:center;gap:8px;font-size:.8em;display:flex}.lcd__check input{width:16px;height:16px;accent-color:var(--lcd-ink)}.lcd__body .lyrics{color:var(--lcd-ink-dim);gap:8px;padding:0 0 16px;font-size:16px;line-height:1.4}.lcd__body .lyrics__line:hover,.lcd__body .lyrics__line--active{color:var(--lcd-ink)}.lcd__body .muted,.lcd__body .empty{color:var(--lcd-ink-dim)}.lcd__body .empty{padding:16px 8px}.lcd__body .empty__icon{margin-bottom:6px;font-size:26px}.flags{flex-wrap:wrap;justify-content:center;align-items:center;gap:4px 6px;display:flex}@media (width>=900px){.flags{justify-content:flex-start;gap:6px 10px}.flags .flag{flex:1 1 0;max-width:220px}}.flag{letter-spacing:.06em;color:var(--muted-2);flex:none;font-size:clamp(10.5px,1.4vh,13.5px);font-weight:700}.flag--on{color:var(--key-on)}.deck{border-radius:var(--radius);background:repeating-linear-gradient(90deg, #ffffff05 0 1px, #0000 1px 3px), linear-gradient(180deg, #202023, var(--panel) 42%, #101012);border:1px solid #000000e6;grid-template-columns:minmax(0,1fr);align-content:space-between;gap:8px;min-height:0;padding:12px;display:grid;position:relative;box-shadow:inset 0 1px #ffffff1a,0 10px 30px #000000a6}.deck__head{align-items:center;gap:12px;min-width:0;display:flex}.deck__art{width:var(--deck-art);height:var(--deck-art);border-radius:2px}.deck__keys{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.deck .btn{color:#dededa;text-shadow:0 1px #000000a6;background:linear-gradient(#3d3d41,#26262a 46%,#16161a);border:1px solid #08080a;border-radius:4px;flex:1 1 0;min-width:0;max-width:260px;min-height:clamp(50px,8.5vh,80px);font-size:clamp(11px,1.3vh,14px);box-shadow:inset 0 1px #ffffff2e,inset 0 -1px #000000a6,0 2px 3px #00000080}.deck .btn:hover:not(:disabled):not([data-playing=true]){color:#f4f4f1;background:linear-gradient(#49494e,#2e2e32 46%,#1c1c20)}.deck .btn:active:not(:disabled){background:linear-gradient(#151519,#212125);box-shadow:inset 0 2px 5px #000000b3}.deck .btn--play{min-height:clamp(58px,10vh,96px);font-size:clamp(12px,1.5vh,16px)}.deck .btn--play[data-playing=true]{background:linear-gradient(180deg, #ffe66a, var(--key-on) 55%, #d9b90d);color:var(--key-on-ink);text-shadow:none;border-color:#b69a09;box-shadow:inset 0 1px #ffffff80,0 2px 4px #00000080}.deck__func{flex-wrap:wrap;gap:6px;display:flex}.fkey{color:#c8c8c4;min-width:max-content;min-height:clamp(42px,6vh,64px);font-family:var(--font-panel);letter-spacing:var(--tracking-panel);text-transform:uppercase;white-space:nowrap;cursor:pointer;background:linear-gradient(#35353a,#232327 55%,#141418);border:1px solid #08080a;border-radius:3px;flex:1 1 0;justify-content:center;align-items:center;gap:6px;padding:2px 10px;font-size:clamp(10.5px,1.25vh,13.5px);font-weight:700;display:inline-flex;box-shadow:inset 0 1px #ffffff24,0 1px 2px #00000080}.fkey:hover:not(:disabled){color:#f2f2ef}.fkey:active:not(:disabled){transform:translateY(1px) scale(var(--press-scale));box-shadow:inset 0 2px 5px #000000b3}.fkey:disabled{opacity:.55;cursor:default}.fkey:focus-visible{outline:2px solid var(--key-on);outline-offset:2px}.fkey--on{color:var(--key-on);text-shadow:0 0 7px #f2d21a73;box-shadow:inset 0 1px #ffffff24,0 0 0 1px #f2d21a4d,0 1px 2px #00000080}@media (width<=899px){.deck{gap:8px;padding:10px}.deck__keys{flex-wrap:nowrap;gap:6px}.deck__keys .btn{letter-spacing:.06em;flex:1 1 0;gap:6px;min-width:0;padding:4px 2px;font-size:clamp(10.5px,1.4vh,13px)}.deck__keys .btn--play{min-width:0}.deck__keys .icon{width:clamp(17px,2.1vh,21px);height:clamp(17px,2.1vh,21px)}.deck__func{gap:4px}.fkey{gap:4px;min-height:clamp(40px,5.6vh,58px);padding:2px 6px;font-size:clamp(10px,1.15vh,12.5px)}.fkey .icon{display:none}.lcd{padding:6px 9px}.lcd__readout{gap:2px 6px}.lcd__menu{gap:8px}.lcd__choice{padding:2px 8px}.lcd__key{min-height:30px}}@media (width<=899px) and (height<=700px){.deck{gap:6px;padding:8px}.lcd__blocks{height:6px}}.player{background:linear-gradient(180deg, #1e1e21, var(--panel) 60%);border-top:1px solid #ffffff14;box-shadow:0 -1px #000c,0 -14px 30px #00000073}.nav__item{border-radius:var(--radius-sm);color:var(--muted);font-size:11px;font-weight:600}.nav__item--active{color:var(--text);background:linear-gradient(180deg, var(--panel-3), var(--panel-2));box-shadow:var(--bevel)}.cover{border-radius:2px;box-shadow:0 1px 3px #000000a6}.range{background:#0f0f10;box-shadow:inset 0 1px 2px #000000a6}.range::-webkit-slider-thumb{background:linear-gradient(180deg, var(--key-hi), var(--key-lo));border:1px solid var(--key-lo);box-shadow:0 1px 2px #000000a6}.range::-moz-range-thumb{background:linear-gradient(180deg, var(--key-hi), var(--key-lo));border:1px solid var(--key-lo);box-shadow:0 1px 2px #000000a6}.badge{font-size:9.5px;font-weight:700}.star{color:var(--star)}.icon{flex:none;display:block}.nav__icon .icon{width:20px;height:20px}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}button.flag{white-space:nowrap;color:#c8c8c4;cursor:pointer;background:linear-gradient(#35353a,#232327 55%,#141418);border:1px solid #08080a;border-radius:3px;justify-content:center;align-items:center;min-height:clamp(28px,4.2vh,44px);padding:3px clamp(8px,1.5vw,12px);display:inline-flex;box-shadow:inset 0 1px #ffffff24,0 1px 2px #00000080}button.flag:hover{color:#f2f2ef}button.flag.flag--on{color:var(--key-on);text-shadow:0 0 7px #f2d21a73;box-shadow:inset 0 1px #ffffff24,0 0 0 1px #f2d21a4d,0 1px 2px #00000080}.lcd--bar{border:2px solid var(--lcd-frame);border-radius:var(--radius-sm);background:linear-gradient(180deg, var(--lcd-bg), var(--lcd-bg-2));filter:var(--lcd-filter,none);padding:5px 6px;display:block;position:relative;box-shadow:inset 0 0 0 1px #00000059,inset 0 2px 6px #0003}.lcd__blocks{gap:clamp(1px,.35vw,3px);height:clamp(7px,1.1vh,12px);display:flex}.lcd__block{background:var(--lcd-ink-dim);opacity:.35;border-radius:1px;flex:1 1 0}.lcd__block[data-on=true]{background:var(--lcd-ink);opacity:1}.lcd--bar:focus-within{outline:2px solid var(--lcd-ink);outline-offset:2px}.deck__bar{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}@media (width>=900px){.deck{gap:12px;padding:16px 20px}.deck__head .plate{flex:auto}.lcd{padding:10px 14px 12px}.lcd__readout{width:100%;max-width:620px;margin:0 auto}.flag,.fkey{font-size:12px}}.chip{align-items:center;gap:6px;display:inline-flex}.filterbar{flex-direction:column;gap:14px;margin-bottom:14px;padding:12px;display:flex}.filterbar__field{flex-direction:column;gap:7px;display:flex}.filterbar__label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-2);font-size:10.5px}.filterbar__years{align-items:flex-end;gap:8px;display:inline-flex}.filterbar__year{flex-direction:column;gap:4px;display:flex}.filterbar__year .input{width:78px}.filterbar__row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filterbar__summary{flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:14px;display:flex}.row__check{flex:none;justify-content:center;align-items:center;width:22px;display:flex}.row__check input{width:16px;height:16px;accent-color:var(--accent-2);cursor:pointer}.row--selected{background:var(--accent-2-soft);box-shadow:inset 0 0 0 1px #4a6fa866}.row--active.row--selected{background:var(--accent-soft)}.bulkbar{z-index:var(--z-sticky);border:1px solid var(--border);border-radius:var(--radius);background:var(--panel-2);box-shadow:var(--shadow);flex-direction:column;gap:9px;margin-top:12px;padding:10px;display:flex;position:sticky;bottom:0}.bulkbar__row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bulkbar__count{font-variant-numeric:tabular-nums;font-size:13.5px}.bulkbar__actions .btn{flex:1 1 0;min-width:84px}.picker__list{max-height:46vh;overflow-y:auto}.fader{align-items:center;gap:8px;min-width:0;display:flex}.fader__label,.fader__readout{font-family:var(--font-panel);letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2);white-space:nowrap;flex:none;font-size:8.5px;font-weight:700}.fader__readout{font-family:var(--font-dot);letter-spacing:var(--tracking-lcd);color:var(--lcd-bg);font-variant-numeric:tabular-nums;font-size:12px}.fader__track{flex:auto;align-items:center;min-width:52px;height:34px;display:flex;position:relative}.fader__track:before{content:"";background:linear-gradient(#0a0a0b,#131316 60%,#1c1c20);border-radius:2px;height:6px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);box-shadow:inset 0 1px 3px #000000d9,inset 0 -1px #ffffff14}.fader__scale{pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:absolute;inset:0}.fader__tick{background:#ffffff21;width:1px;height:9px}.fader__tick[data-major=true]{background:#ffffff3d;height:14px}.fader .range{z-index:1;width:100%;height:34px;box-shadow:none;background:0 0;border-radius:0;margin:0;position:relative}.fader .range::-webkit-slider-thumb{appearance:none;background:repeating-linear-gradient(90deg, #ffffff1f 0 1px, #0000 1px 4px), linear-gradient(180deg, var(--key-hi), var(--key) 45%, var(--key-lo));cursor:grab;border:1px solid #08080a;border-radius:3px;width:22px;height:26px;box-shadow:inset 0 1px #ffffff80,0 1px 3px #000000a6}.fader .range::-moz-range-thumb{background:repeating-linear-gradient(90deg, #ffffff1f 0 1px, #0000 1px 4px), linear-gradient(180deg, var(--key-hi), var(--key) 45%, var(--key-lo));cursor:grab;border:1px solid #08080a;border-radius:3px;width:22px;height:26px;box-shadow:inset 0 1px #ffffff80,0 1px 3px #000000a6}.fader .range:active::-webkit-slider-thumb{cursor:grabbing}.player__seek .fader{flex:none;width:128px}@media (width>=900px){.player__seek .fader{width:170px}}.knob{flex:none;align-items:center;display:flex}.knob__dial{touch-action:none;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:0;display:flex;position:relative}.knob__dial:after{content:"";position:absolute;inset:-7px -3px}.knob__dial:active{cursor:grabbing}.knob__dial:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:var(--radius-sm)}.knob__body{background:repeating-conic-gradient(#ffffff1a 0deg 4deg,#0000 4deg 9deg),radial-gradient(circle at 50% 32%,#4c4c52,#2a2a2e 58%,#17171a);border:1px solid #050506;border-radius:50%;width:clamp(26px,3.6vh,34px);height:clamp(26px,3.6vh,34px);position:relative;box-shadow:inset 0 1px #fff3,inset 0 -2px 3px #000000a6,0 1px 2px #000000a6}.knob__dial[data-level="1"]{--turn:-135deg}.knob__dial[data-level="2"]{--turn:-67deg}.knob__dial[data-level="3"]{--turn:0deg}.knob__dial[data-level="4"]{--turn:67deg}.knob__dial[data-level="5"]{--turn:135deg}.knob__mark{transform:rotate(var(--turn,0deg));position:absolute;inset:0}.knob__mark:after{content:"";background:var(--key-on);border-radius:1px;width:2px;height:34%;margin-left:-1px;position:absolute;top:3px;left:50%;box-shadow:0 0 4px #f2d21a99}.knob__label{font-family:var(--font-panel);letter-spacing:.1em;text-transform:uppercase;color:var(--muted-2);white-space:nowrap;font-size:8.5px;font-weight:700}.knob__dial:hover .knob__label{color:var(--text)}.deck__strip{align-items:center;gap:10px;display:flex}.deck__strip .lcd--bar{flex:auto;min-width:0}.leds{align-items:center;gap:6px;margin-left:2px;display:inline-flex}@media (width>=900px){.leds{margin-left:auto}}.led{flex-direction:column;align-items:center;gap:1px;display:inline-flex}.led__lamp{background:radial-gradient(circle at 50% 40%,#2a2a2e,#131316);border-radius:50%;width:7px;height:7px;box-shadow:inset 0 0 0 1px #000000a6,inset 0 -1px #ffffff14}.led__lamp[data-on=true]{background:radial-gradient(circle at 50% 35%, #fff8d0, var(--key-on) 45%, #b39a09);box-shadow:0 0 6px #f2d21a73,inset 0 0 0 1px #7d6a04}.led__lamp[data-busy=true]{animation:1.4s ease-in-out infinite lamp-pulse}.led__label{font-family:var(--font-panel);letter-spacing:.02em;color:var(--muted-2);font-size:6.5px;font-weight:700;line-height:1}@keyframes lamp-pulse{0%,to{opacity:1}50%{opacity:.3}}.deck__screws{pointer-events:none;position:absolute;inset:5px}.deck__screws>span{background:radial-gradient(circle at 45% 38%,#5c5c62,#2c2c30 55%,#101013);border-radius:50%;width:9px;height:9px;position:absolute;box-shadow:inset 0 1px 2px #000000d9,0 1px #ffffff1a}.deck__screws>span:after{content:"";background:#000000d9;height:1px;margin-top:-.5px;position:absolute;top:50%;left:1px;right:1px;transform:rotate(-28deg)}.deck__screws>span:first-child{top:0;left:0}.deck__screws>span:nth-child(2){top:0;right:0}.deck__screws>span:nth-child(3){bottom:0;left:0}.deck__screws>span:nth-child(4){bottom:0;right:0}.deck__vents{opacity:.85;background:repeating-linear-gradient(90deg,#0a0a0b 0 5px,#0000 5px 11px);border-radius:2px;height:5px;box-shadow:inset 0 1px 1px #000000b3}.deck__disc{width:var(--deck-art);height:var(--deck-art);flex:none;display:block}.deck__art--disc{border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff1f,0 2px 10px #000000b3}.deck__art--disc:after{content:"";pointer-events:none;background:radial-gradient(circle at 50% 50%, var(--bg) 0 5%, #000c 5.3% 7%, #0000 7.4%), conic-gradient(from 210deg, #ffffff17, #fff0 20%, #ffffff1a 42%, #fff0 64%, #ffffff12 84%, #fff0);border-radius:50%;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff24,inset 0 0 22px #000000a6}.deck__art--disc img,.deck__art--disc>span{animation:18s linear infinite paused disc-spin}.deck__disc[data-spinning=true] .deck__art--disc img,.deck__disc[data-spinning=true] .deck__art--disc>span{animation-play-state:running}@keyframes disc-spin{to{transform:rotate(360deg)}}.star-btn{border-radius:var(--radius-sm);color:var(--muted-2);cursor:pointer;background:0 0;border:1px solid #0000;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.star-btn:hover:not(:disabled){color:var(--text)}.star-btn:disabled{opacity:.5;cursor:default}.star-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.star-btn[data-on=true]{color:var(--star)}.star-btn[data-on=true] .icon{filter:drop-shadow(0 0 4px #e3b34166)}.star-btn--row{width:32px;height:32px}.star-btn--bar{border-color:var(--key-lo);background:linear-gradient(180deg, var(--key-hi), var(--key) 46%, var(--key-lo));width:34px;height:34px;color:var(--key-ink);box-shadow:inset 0 1px #ffffff59,0 2px 3px #00000080}.star-btn--bar:hover:not(:disabled){color:var(--key-ink);background:linear-gradient(#e6e7e3,#bfc0bc 46%,#93948f)}.star-btn--key{color:#b9b9b5;background:linear-gradient(#3d3d41,#26262a 46%,#16161a);border:1px solid #08080a;border-radius:4px;width:clamp(44px,5.4vh,52px);height:clamp(44px,5.4vh,52px);box-shadow:inset 0 1px #ffffff2e,inset 0 -1px #000000a6,0 2px 3px #00000080}.star-btn--key:hover:not(:disabled){color:#f4f4f1;background:linear-gradient(#49494e,#2e2e32 46%,#1c1c20)}.star-btn--key[data-on=true]{background:linear-gradient(180deg, #ffe66a, var(--key-on) 55%, #d9b90d);color:#17170c;border-color:#b69a09}.row--pin{position:relative}.row--pin:before{content:"";background:var(--key-on);width:2px;position:absolute;top:0;bottom:0;left:0}@media (width<=899px) and (height<=700px){.deck__vents{display:none}}@media (prefers-reduced-motion:reduce){.deck__art--disc img,.deck__art--disc>span,.led__lamp[data-busy=true]{animation:none!important}}.btn--quiet,.btn--quiet.btn--sm:not(.btn--primary):not(.btn--danger){box-shadow:none;color:var(--muted);font-family:var(--font);font-size:var(--fs-small);letter-spacing:normal;text-transform:none;background:0 0;border-color:#0000;font-weight:500}.btn--quiet:hover:not(:disabled),.btn--quiet.btn--sm:not(.btn--primary):not(.btn--danger):hover:not(:disabled){background:var(--panel-2);border-color:var(--border);color:var(--text)}.btn--quiet:active:not(:disabled),.btn--quiet.btn--sm:not(.btn--primary):not(.btn--danger):active:not(:disabled){background:var(--panel-3);border-color:var(--border);box-shadow:none}.btn--quiet.btn--icon{min-width:34px;color:var(--muted);padding:0 6px;font-size:15px}.tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:stretch;gap:4px;margin-bottom:14px;display:flex}.tab{min-height:var(--tap);color:var(--muted);font-family:var(--font);font-size:var(--fs-body);white-space:nowrap;cursor:pointer;transition:color .12s var(--ease), border-color .12s var(--ease);background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:6px;padding:0 12px;font-weight:500;display:inline-flex}.tab:hover{color:var(--text)}.tab--active{color:var(--text);border-bottom-color:var(--key-on);font-weight:600}.tab__count{color:var(--muted-2);font-variant-numeric:tabular-nums;font-size:12px}.listbar{z-index:var(--z-sticky);background:var(--bg);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 12px;padding:8px 0;display:flex;position:sticky;top:0}.listbar__search{flex:170px;min-width:0}.listbar .input:not(.listbar__search){flex:none;width:auto}.listbar__row{color:var(--muted);font-size:var(--fs-small);flex-wrap:wrap;align-items:center;gap:8px;margin:-4px 0 12px;display:flex}.disclosure>summary{min-height:var(--tap);color:var(--muted);font-size:var(--fs-small);cursor:pointer;align-items:center;gap:8px;list-style:none;display:flex}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary:before{content:"▸";color:var(--muted-2)}.disclosure[open]>summary:before{content:"▾"}.disclosure>summary:hover{color:var(--text)}.disclosure[open]>summary{margin-bottom:10px}.skeleton{flex-direction:column;gap:10px;display:flex}.skeleton__row,.skeleton__card{border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--panel) 0%, var(--panel-2) 50%, var(--panel) 100%);background-size:200% 100%;animation:1.4s linear infinite shimmer}.skeleton__row{height:52px}.skeleton--grid{grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:16px;display:grid}.skeleton__card{aspect-ratio:1;border-radius:var(--radius)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.empty__title{color:var(--text);font-size:var(--fs-body);margin:0}.empty__hint{font-size:var(--fs-small);margin:6px 0 0}.empty__actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:16px;display:flex}.notice__actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.page-head__eyebrow{color:var(--muted);letter-spacing:var(--tracking-panel);text-transform:uppercase;font-size:12px;display:block}.hero__head{align-items:center;gap:8px;display:flex}.page-figures{color:var(--muted);font-size:var(--fs-small);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:6px 14px;margin:0 0 14px;display:flex}.loadmore{justify-content:center;margin-top:12px;display:flex}input[type=search]::-webkit-search-cancel-button{appearance:none}input[type=search]::-webkit-search-decoration{appearance:none}.card__grab{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;display:block}.card__actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.spinner--sm{vertical-align:-1px;border-width:2px;width:12px;height:12px}.dialog{z-index:var(--z-sheet);background:#0008;align-items:flex-end;animation:.12s fade-in;display:flex;position:fixed;inset:0}.dialog__panel{background:var(--panel);border-top:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;flex-direction:column;width:100%;max-height:88vh;display:flex}@media (width>=700px){.dialog{justify-content:center;align-items:center}.dialog__panel{border:1px solid var(--border);border-radius:var(--radius);max-width:680px;max-height:82vh}}.dialog__head,.dialog__foot{flex-wrap:wrap;flex:none;align-items:center;gap:8px;padding:10px 14px;display:flex}.dialog__head{border-bottom:1px solid var(--border);padding-top:calc(10px + var(--safe-top))}.dialog__foot{border-top:1px solid var(--border);padding-bottom:calc(10px + var(--safe-bottom))}.dialog__title{font-size:var(--fs-body);letter-spacing:var(--tracking-panel);text-transform:uppercase;font-weight:600}.dialog__body{flex:auto;min-height:0;padding:0 14px 10px;overflow-y:auto}.optionpicker{position:relative}.optionpicker__chosen{min-height:var(--key-h);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:var(--fs-small);background:#0f0f10;align-items:center;gap:8px;padding-left:10px;display:flex;box-shadow:inset 0 1px 3px #000000a6}.optionpicker__chosen .btn--quiet{margin-left:auto}.optionpicker__list{z-index:var(--z-drop);background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius-sm);max-height:240px;box-shadow:var(--shadow);position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.optionpicker__item{width:100%;color:var(--text);font-family:var(--font);font-size:var(--fs-small);text-align:left;cursor:pointer;background:0 0;border:0;padding:9px 12px;display:block}.optionpicker__item:hover{background:var(--panel-3)}.optionpicker__empty{color:var(--muted);font-size:var(--fs-small);margin:0;padding:10px 12px}@media (width<=599px){.tab__count{display:none}.tab{font-size:var(--fs-small);padding:0 9px}}.actionsheet--center{background:#000a;justify-content:center;align-items:center;padding:16px}.actionsheet--center .actionsheet__panel{border-radius:16px;width:min(100%,460px);max-width:460px;max-height:min(84vh,620px);padding:10px;animation:.14s pop-in}.castsheet__now{border-bottom:1px solid var(--border);margin-bottom:6px;padding:4px 12px 10px}.castsheet__line{align-items:center;gap:8px;display:flex}.castsheet__dot{background:var(--muted-2);border-radius:50%;flex:none;width:8px;height:8px}.castsheet__dot[data-state=playing]{background:var(--key-on);box-shadow:0 0 6px var(--key-on)}.castsheet__dot[data-state=starting]{background:var(--key-on);opacity:.5}.castsheet__actions{gap:6px;padding:8px 12px;display:flex}.castsheet__foot{border-top:1px solid var(--border);flex-wrap:wrap;gap:6px;margin-top:6px;padding:10px 12px 4px;display:flex}.castsheet__row{align-items:center;display:flex}.castsheet__pick{flex:auto;min-width:0}.castsheet__forget{flex:none}.castsheet__kind{font-size:var(--fs-small);letter-spacing:var(--tracking-panel);text-transform:uppercase;flex:none;padding-left:6px}.castsheet__badge{color:var(--key-on);font-size:var(--fs-small);letter-spacing:var(--tracking-panel);text-transform:uppercase}.castsheet__form{gap:6px;padding:6px 12px 4px;display:flex}.castsheet__form .input{flex:auto;min-width:0}.castsheet__hint{color:var(--muted);font-size:var(--fs-small);margin:0;padding:2px 12px 8px}.castsheet__hint--error{color:var(--err-text)}.fader__input:disabled{opacity:.45;cursor:default}.castsheet__scan{border-top:1px solid var(--border);margin-top:4px;padding:6px 0 2px}.castsheet__list{font-size:var(--fs-small);margin:0;padding:0 12px 4px 30px}.castsheet__list li{margin-bottom:2px}
