:root{--bg:#090b0d;--surface:#14171a;--surface-strong:#1d2226;--ink:#f4f0e8;--muted:#a9b0ae;--line:#30383d;--green:#31d879;--green-strong:#76f2ac;--violet:#7c5cff;--rose:#ff7b9a;--blue:#7cb8ff;--on-accent:#07100b;--on-cool:#f8f5ff;--shadow:0 20px 70px #0000006b}*{box-sizing:border-box}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;min-height:100%}body{background:radial-gradient(circle at top right, #31d87924, transparent 32rem), linear-gradient(90deg, #7cb8ff14, transparent 34%), var(--bg);min-height:100vh;color:var(--ink);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit;text-decoration:none}.app-shell{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--line);background:#0c0f11db;padding:24px 18px}.brand{grid-template-columns:42px 1fr;align-items:center;gap:12px;min-height:46px;margin-bottom:28px;display:grid}.brand-mark,.icon-button{justify-content:center;align-items:center;display:inline-flex}.brand-mark{background:var(--violet);width:42px;height:42px;color:var(--on-cool);border:1px solid #7c5cffc7;border-radius:8px;box-shadow:0 10px 24px #7c5cff38}.brand-name,.brand-detail{display:block}.brand-name{font-size:1.04rem;font-weight:800}.brand-detail{color:var(--muted);font-size:.82rem}.nav-list{gap:8px;display:grid}.nav-link{min-height:42px;color:var(--muted);border-radius:8px;align-items:center;gap:10px;padding:0 12px;font-weight:700;display:flex}.nav-link:hover{color:var(--ink);background:#1f8a571a}.main-surface{align-content:start;gap:24px;padding:28px;display:grid}.topbar,.status-band,.toolbar-band,.panel-header,.status-actions,.empty-row,.search-box,.setting-control span,.setting-toggle span{align-items:center;display:flex}.topbar,.status-band,.toolbar-band,.panel-header{justify-content:space-between;gap:16px}.topbar h1,.status-band h2,.panel h2{letter-spacing:0;margin:0}.topbar h1{font-size:2.4rem;line-height:1}.eyebrow{color:var(--green-strong);letter-spacing:0;text-transform:uppercase;margin:0 0 8px;font-size:.76rem;font-weight:850}.icon-button{border:1px solid var(--line);background:var(--surface-strong);border-radius:8px;width:42px;height:42px}.page-stack{gap:18px;display:grid}.status-band,.toolbar-band,.panel,.metric-tile,.filter-strip{border:1px solid var(--line);background:var(--surface);border-radius:8px}.status-band{box-shadow:var(--shadow);padding:22px}.notice-band{color:var(--ink);background:#7cb8ff1c;border:1px solid #7cb8ff6b;border-radius:8px;align-items:center;gap:10px;padding:12px 14px;font-weight:720;display:flex}.status-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px}.primary-action,.secondary-action,.filter-chip{border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 14px;font-weight:800;display:inline-flex}.primary-action{border:1px solid var(--green-strong);background:var(--green);color:var(--on-accent)}.secondary-action,.filter-chip{border:1px solid var(--line);background:var(--surface-strong);color:var(--ink)}.split-grid{grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:18px;display:grid}.side-stack{align-content:start;gap:18px;display:grid}.panel{padding:20px}.panel h2{font-size:1.25rem}.status-pill{min-height:28px;color:var(--blue);text-transform:capitalize;background:#276fbf1f;border-radius:8px;align-items:center;gap:7px;padding:0 10px;font-size:.8rem;font-weight:850;display:inline-flex}.status-pill.idle{color:var(--muted);background:#6c665c1f}.status-pill.playing{color:var(--green-strong);background:#1f8a5724}.status-pill.paused,.status-pill.polling{color:#f5d878;background:#f2c94c2e}.status-pill.error{color:var(--rose);background:#d85c7a24}.status-pill.stale{color:#f5d878;background:#f2c94c2e}.empty-state,.table-empty{min-height:180px;color:var(--muted);text-align:center;place-items:center;display:grid}.empty-state{gap:10px}.playback-now{grid-template-columns:96px minmax(0,1fr);align-items:center;gap:16px;margin:20px 0;display:grid}.album-art{aspect-ratio:1;border:1px solid var(--line);object-fit:cover;background:var(--surface-strong);border-radius:8px;width:96px}.album-art.placeholder{color:var(--muted);place-items:center;display:grid}.playback-copy{min-width:0}.track-title{margin:0;font-size:1.22rem;font-weight:850}.track-meta{color:var(--muted);margin:6px 0 0;font-weight:700}.progress-shell{gap:8px;margin-bottom:18px;display:grid}.progress-bar{border:1px solid var(--line);background:var(--surface-strong);border-radius:8px;height:10px;overflow:hidden}.progress-bar span{background:var(--green);border-radius:8px;height:100%;display:block}.progress-labels{color:var(--muted);justify-content:space-between;font-size:.82rem;font-weight:800;display:flex}.detail-list{border:1px solid var(--line);border-radius:8px;gap:1px;margin:0;display:grid;overflow:hidden}.panel-header+.detail-list{margin-top:16px}.detail-list div{background:var(--surface-strong);grid-template-columns:145px minmax(0,1fr);gap:14px;padding:12px;display:grid}.detail-list.large div{grid-template-columns:minmax(120px,.7fr) minmax(0,1fr)}dt{color:var(--muted);font-weight:700}dd{overflow-wrap:anywhere;min-width:0;margin:0;font-weight:800}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.metric-tile{gap:12px;min-height:114px;padding:16px;display:grid}.metric-tile span{color:var(--muted);font-size:.86rem;font-weight:800}.metric-tile strong{font-size:2.2rem;line-height:1}.empty-row{border-top:1px solid var(--line);min-height:64px;color:var(--muted);gap:10px;margin-top:18px}.subtle-text{color:var(--muted);margin:8px 0 0;font-weight:700}.inline-form{margin:0}.decision-list{border:1px solid var(--line);border-radius:8px;gap:1px;margin-top:18px;display:grid;overflow:hidden}.decision-row{background:var(--surface-strong);grid-template-columns:28px minmax(0,1fr);align-items:center;gap:10px;padding:12px;display:grid}.muted-row{color:var(--muted);margin-top:4px;font-size:.84rem;font-weight:700;display:block}.toolbar-band{padding:12px}.search-box{border:1px solid var(--line);background:var(--surface-strong);border-radius:8px;flex:1;gap:10px;min-width:240px;min-height:42px;padding:0 12px}.toolbar-band .secondary-action{flex:none}.search-box input{width:100%;color:var(--ink);background:0 0;border:0;outline:0}.filter-strip{flex-wrap:wrap;gap:8px;padding:12px;display:flex}.filter-chip.active{border-color:var(--green-strong);background:var(--green);color:var(--on-accent)}.table-shell{margin-top:18px;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:1120px}.library-table{min-width:1320px}.track-session-table{min-width:840px}th,td{border-top:1px solid var(--line);text-align:left;padding:14px 10px}th{color:var(--muted);text-transform:uppercase;font-size:.78rem}.table-empty{gap:10px;min-height:180px}.track-cell{grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;min-width:260px;display:grid}.history-artwork{aspect-ratio:1;border:1px solid var(--line);object-fit:cover;background:var(--surface-strong);border-radius:8px;width:44px}.history-artwork.placeholder{color:var(--muted);place-items:center;display:grid}.history-status{border:1px solid var(--line);background:var(--surface-strong);white-space:nowrap;border-radius:8px;align-items:center;min-height:28px;padding:0 9px;font-size:.8rem;font-weight:850;display:inline-flex}.history-status.auto_kept,.history-status.manually_kept{color:var(--green-strong);border-color:#76f2ac61}.history-status.played_through{color:var(--blue);border-color:#7cb8ff61}.history-status.skipped{color:var(--rose);border-color:#ff7b9a5c}.table-link{color:var(--green-strong);white-space:nowrap;align-items:center;gap:6px;font-weight:850;display:inline-flex}.row-actions{flex-wrap:wrap;gap:6px;min-width:190px;display:flex}.row-actions form{margin:0}.table-action{border:1px solid var(--line);background:var(--surface-strong);min-height:30px;color:var(--ink);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:5px;padding:0 8px;font-size:.78rem;font-weight:850;display:inline-flex}.compact-action{min-height:34px;padding:0 11px;font-size:.84rem}.track-review-band{align-items:flex-start}.review-track{grid-template-columns:112px minmax(0,1fr);align-items:center;gap:18px;min-width:0;display:grid}.review-track h2{margin:0;font-size:1.6rem;line-height:1.15}.review-artwork{aspect-ratio:1;border:1px solid var(--line);object-fit:cover;background:var(--surface-strong);border-radius:8px;width:112px}.review-artwork.placeholder{color:var(--muted);place-items:center;display:grid}.review-meta-row{flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px;display:flex}.review-actions{justify-content:flex-end;min-width:236px}.metric-date{font-size:1rem;line-height:1.25}.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px;display:grid}.setting-control,.setting-toggle{border:1px solid var(--line);background:var(--surface-strong);border-radius:8px;gap:10px;padding:14px;font-weight:800;display:grid}.setting-control span,.setting-toggle span{gap:8px}.setting-control.wide{grid-column:1/-1}.setting-control input{border:1px solid var(--line);background:var(--surface);width:100%;min-height:42px;color:var(--ink);border-radius:8px;padding:0 12px}input::placeholder{color:var(--muted);opacity:.78}.setting-toggle{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;align-items:center}.setting-toggle input{width:22px;height:22px;accent-color:var(--green)}@media (max-width:900px){.app-shell,.split-grid,.side-stack,.metric-grid,.settings-grid{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--line)}.nav-list{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:640px){.main-surface,.sidebar{padding:18px}.topbar,.status-band,.toolbar-band{flex-direction:column;align-items:stretch}.status-actions,.inline-form,.primary-action,.secondary-action,.search-box{width:100%}.detail-list div,.detail-list.large div{grid-template-columns:1fr}.playback-now,.review-track{grid-template-columns:72px minmax(0,1fr)}.album-art,.review-artwork{width:72px}.review-actions{justify-content:flex-start;min-width:0}.nav-link{justify-content:center;padding:0 8px}.nav-list{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar h1{font-size:1.8rem}}
