:root{--color-bg:#0a0a0c;--color-chrome:#0c0c0f;--color-surface-100:#121215;--color-surface-200:#1a1a1f;--color-surface-field:#16161a;--color-hairline:#27272a;--color-ink:#f2f2f4;--color-ink-2:#a1a1aa;--color-ink-3:#71717a;--color-accent:#4f46e5;--color-accent-soft:#6366f1;--color-accent-ink:#8b87f8;--color-brand-start:#5e5ff0;--color-brand-mid:#6a55ea;--color-brand-end:#9b48e6;--color-brand-deep:#1b0650;--color-success:#34d399;--color-warning:#fcd34d;--color-danger:#f87171;--radius-control:8px;--radius-card:12px;--radius-panel:16px;--font-display:"Outfit Variable", "Outfit", -apple-system, system-ui, sans-serif;--font-sans:"Inter Variable", "Inter", -apple-system, system-ui, sans-serif;--brand-grad:linear-gradient(135deg, var(--color-brand-start), var(--color-brand-mid) 50%, var(--color-brand-end));--sab:env(safe-area-inset-bottom,0px);--sat:env(safe-area-inset-top,0px);--tabs-h:56px;--mini-h:64px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--color-bg);color:var(--color-ink);font-family:var(--font-sans);margin:0;font-size:15px}body{overscroll-behavior-y:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}#rm-audio{display:none}.app{min-height:100dvh}.top{z-index:5;padding:calc(var(--sat) + 10px) 16px 10px;background:color-mix(in srgb, var(--color-chrome) 88%, transparent);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--color-hairline);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.brand{font-family:var(--font-display);letter-spacing:-.02em;background:var(--brand-grad);color:#0000;background-clip:text;font-size:20px;font-weight:700}.brand-sub{color:var(--color-ink-3);-webkit-text-fill-color:var(--color-ink-3);margin-left:8px;font-size:12px;font-weight:500}.chips{gap:6px;display:flex}.pill{border:1px solid var(--color-hairline);color:var(--color-ink-2);border-radius:99px;padding:3px 8px;font-size:11px}.pill.ok{color:var(--color-success);border-color:color-mix(in srgb, var(--color-success) 40%, transparent)}.pill.warn{color:var(--color-warning);border-color:color-mix(in srgb, var(--color-warning) 40%, transparent)}.pill.off{color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger) 40%, transparent)}.content{padding:12px 16px calc(var(--tabs-h) + var(--sab) + 24px)}.has-mini .content{padding-bottom:calc(var(--tabs-h) + var(--mini-h) + var(--sab) + 32px)}.screen{max-width:640px;margin:0 auto}.h1{font-family:var(--font-display);letter-spacing:-.02em;margin:8px 0 4px;font-size:24px}.muted{color:var(--color-ink-3);margin:0 0 12px;font-size:13px}.small{font-size:11px}.hint{color:var(--color-ink-2);margin:6px 0;font-size:12px}.section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--color-ink-3);margin-bottom:8px;font-size:11px}.card{background:var(--color-surface-100);border:1px solid var(--color-hairline);border-radius:var(--radius-card);margin:12px 0;padding:14px}.kv{border-bottom:1px solid color-mix(in srgb, var(--color-hairline) 50%, transparent);justify-content:space-between;gap:12px;padding:5px 0;font-size:13px;display:flex}.kv:last-of-type{border-bottom:0}.kv>:first-child{color:var(--color-ink-2);flex-shrink:0}.kv>:last-child{text-align:right;overflow-wrap:anywhere}.row-btns{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.btn{background:var(--brand-grad);color:#fff;border-radius:var(--radius-control);padding:10px 14px;font-size:14px;font-weight:600}.btn.ghost{background:var(--color-surface-200);color:var(--color-ink);border:1px solid var(--color-hairline)}.btn.danger{color:var(--color-danger);margin-top:10px}.ok{color:var(--color-success)}.tracks{gap:8px;margin:0;padding:0;list-style:none;display:grid}.track{background:var(--color-surface-100);border:1px solid var(--color-hairline);border-radius:var(--radius-card);align-items:center;gap:10px;padding:8px 10px 8px 8px;display:flex}.track.cur{border-color:color-mix(in srgb, var(--color-accent-soft) 60%, transparent);background:color-mix(in srgb, var(--color-accent) 10%, var(--color-surface-100))}.track-main{text-align:left;flex:1;align-items:center;gap:12px;min-width:0;display:flex}.track-art{border-radius:var(--radius-control);flex-shrink:0;width:52px;height:52px}.track-text{flex-direction:column;min-width:0;display:flex}.track-title{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.track-sub{color:var(--color-ink-3);flex-wrap:wrap;align-items:center;gap:6px;margin-top:2px;font-size:12px;display:flex}.badge{border:1px solid;border-radius:99px;align-items:center;gap:3px;padding:1px 6px;font-size:10px;display:inline-flex}.badge.ok{color:var(--color-success)}.badge.err{color:var(--color-danger)}.dl{background:var(--color-surface-200);border:1px solid var(--color-hairline);width:40px;height:40px;color:var(--color-ink-2);border-radius:50%;flex-shrink:0;place-items:center;font-size:11px;display:grid}.dl.stored{color:var(--color-ink-3)}.dl.busy{color:var(--color-accent-ink)}.dl.err{color:var(--color-danger)}.icon-btn{width:44px;height:44px;color:var(--color-ink);border-radius:50%;flex-shrink:0;place-items:center;display:grid;position:relative}.icon-btn.on{color:var(--color-accent-ink)}.icon-btn.big{width:56px;height:56px}.badge1{font-size:9px;font-weight:700;position:absolute;top:8px;right:8px}.mini{left:8px;right:8px;bottom:calc(var(--tabs-h) + var(--sab) + 8px);z-index:6;height:var(--mini-h);background:color-mix(in srgb, var(--color-surface-200) 92%, transparent);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-hairline);border-radius:var(--radius-panel);align-items:center;gap:2px;padding:0 6px 0 8px;display:flex;position:fixed;overflow:hidden;box-shadow:0 8px 30px #00000073}.mini-progress{background:var(--brand-grad);height:2px;transition:width .25s linear;position:absolute;bottom:0;left:0}.mini-main{text-align:left;flex:1;align-items:center;gap:10px;min-width:0;display:flex}.mini-art{border-radius:var(--radius-control);width:44px;height:44px}.mini-text{flex-direction:column;min-width:0;display:flex}.mini-title{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.mini-sub{color:var(--color-ink-3);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.play-sm{background:var(--color-ink);color:var(--color-bg);width:40px;height:40px}.tabs{z-index:7;height:calc(var(--tabs-h) + var(--sab));padding-bottom:var(--sab);background:color-mix(in srgb, var(--color-chrome) 94%, transparent);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--color-hairline);display:flex;position:fixed;bottom:0;left:0;right:0}.tabs button{color:var(--color-ink-3);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:10px;display:flex}.tabs button.on{color:var(--color-ink)}.full{z-index:20;padding:calc(var(--sat) + 8px) 20px calc(var(--sab) + 24px);background:radial-gradient(120% 70% at 30% 0%, color-mix(in srgb, var(--color-brand-deep) 85%, transparent), var(--color-bg) 70%), var(--color-bg);animation:.22s ease-out rise;position:fixed;inset:0;overflow-y:auto}@keyframes rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.full-top{justify-content:space-between;align-items:center;display:flex}.full-top-label{color:var(--color-ink-2);font-size:12px}.full-art{aspect-ratio:1;border-radius:var(--radius-panel);width:min(78vw,360px);margin:18px auto 20px;display:block;box-shadow:0 20px 60px #2a0c788c}.full-meta{max-width:420px;margin:0 auto}.full-title{font-family:var(--font-display);font-size:22px;font-weight:700}.full-artist{color:var(--color-ink-2);margin-top:2px}.seek{width:100%;max-width:420px;accent-color:var(--color-accent-soft);height:28px;margin:18px auto 0;display:block}.times{max-width:420px;color:var(--color-ink-3);font-variant-numeric:tabular-nums;justify-content:space-between;margin:0 auto;font-size:12px;display:flex}.controls{justify-content:space-between;align-items:center;max-width:420px;margin:14px auto;display:flex}.play-lg{background:var(--color-ink);width:72px;height:72px;color:var(--color-bg);border-radius:50%;place-items:center;display:grid}.full-status{max-width:420px;color:var(--color-ink-2);margin:8px auto;font-size:12px;line-height:1.6}.full-error{border-radius:var(--radius-control);background:color-mix(in srgb, var(--color-danger) 14%, transparent);max-width:420px;color:var(--color-danger);margin:8px auto;padding:8px 10px;font-size:13px}.dot{background:var(--color-ink-3);border-radius:50%;width:8px;height:8px;margin-right:4px;display:inline-block}.dot.playing{background:var(--color-success)}.dot.buffering,.dot.loading{background:var(--color-warning)}.dot.error{background:var(--color-danger)}.upnext{max-width:420px;margin:18px auto 0}.upnext-row{border-radius:var(--radius-control);text-align:left;gap:10px;width:100%;padding:10px 6px;font-size:14px;display:flex}.upnext-row.cur{background:color-mix(in srgb, var(--color-accent) 18%, transparent);color:var(--color-accent-ink)}.upnext-n{width:18px;color:var(--color-ink-3)}.upnext-d{color:var(--color-ink-3);font-variant-numeric:tabular-nums;margin-left:auto}.group-head{align-items:center;gap:8px;margin-bottom:6px;font-weight:600;display:flex}.group-id{background:var(--brand-grad);color:#fff;border-radius:6px;place-items:center;width:24px;height:24px;font-size:12px;display:inline-grid}.case{border-top:1px solid color-mix(in srgb, var(--color-hairline) 60%, transparent);padding:10px 0}.case-text{font-size:13px;line-height:1.4}.case-res{margin-top:4px;font-size:11px}.case-res.PASS{color:var(--color-success)}.case-res.PARTIAL{color:var(--color-warning)}.case-res.FAIL{color:var(--color-danger)}.case-btns{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.chip{background:var(--color-surface-200);border:1px solid var(--color-hairline);color:var(--color-ink-2);border-radius:99px;padding:6px 10px;font-size:12px}.chip.sel.PASS{background:color-mix(in srgb, var(--color-success) 20%, transparent);color:var(--color-success)}.chip.sel.PARTIAL{background:color-mix(in srgb, var(--color-warning) 20%, transparent);color:var(--color-warning)}.chip.sel.FAIL{background:color-mix(in srgb, var(--color-danger) 20%, transparent);color:var(--color-danger)}.toggle{justify-content:space-between;align-items:center;gap:12px;padding:8px 0;font-size:13px;display:flex}.toggle select{background:var(--color-surface-field);color:var(--color-ink);border:1px solid var(--color-hairline);border-radius:var(--radius-control);max-width:55%;padding:6px;font-size:13px}.toggle input[type=checkbox]{width:22px;height:22px;accent-color:var(--color-accent-soft)}.pre{background:var(--color-surface-field);border-radius:var(--radius-control);margin:0;padding:8px;font-size:11px;overflow-x:auto}.events{max-height:50vh;margin:0;padding:0;font-family:ui-monospace,Menlo,monospace;font-size:10.5px;list-style:none;overflow-y:auto}.events li{border-bottom:1px solid color-mix(in srgb, var(--color-hairline) 40%, transparent);overflow-wrap:anywhere;padding:3px 0}.events li.bad{color:var(--color-danger)}.ev-t{color:var(--color-ink-3)}.ev-d{color:var(--color-ink-2)}
