*{box-sizing:border-box}html{height:var(--app-height,100dvh);touch-action:manipulation}html,body{overflow:hidden}:root{--app-height:100dvh;--accent-color:#6264a7;--bg-app:#1f1f1f;--bg-surface:#292929;--bg-elevated:#323232;--bg-input:#252525;--border:#3d3d3d;--border-subtle:#333;--text-primary:#fff;--text-secondary:#adadad;--text-muted:#8a8a8a;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--ui-row-h:48px;--section-bar-h:var(--ui-row-h);--chrome-bottom:calc(var(--section-bar-h) + var(--safe-bottom));--action-icon-size:var(--ui-row-h);--action-row-visible-icons:5;--player-dock-row-h:var(--ui-row-h);--player-toggle-w:var(--ui-row-h);--player-tile-size:var(--ui-row-h);--player-dock-gap:0px;--player-dock-bg:var(--bg-surface);--player-dock-border:var(--border);--player-dock-collapsed-h:var(--player-dock-row-h);--player-dock-top-collapsed-h:calc(var(--player-dock-row-h) + var(--safe-top));--player-dock-expanded-h:calc(3 * var(--player-dock-row-h) + 2 * var(--player-dock-gap));--player-dock-top-expanded-h:calc(var(--player-dock-expanded-h) + var(--safe-top));--list-hover-bg:#101828;--list-selected-bg:#121a32;--list-focus-bg:#121a32;--btn-accent-bg:#1a2448;--btn-accent-border:#3f4f8f;--btn-accent-hover-bg:#243060;--btn-hover-bg:#3a3a3a;--btn-hover-border:#4a4a4a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=daytime]{--bg-app:#eef0f4;--bg-surface:#fff;--bg-elevated:#f5f6fa;--bg-input:#fff;--border:#c8ccd4;--border-subtle:#dde1e8;--text-primary:#141820;--text-secondary:#4a5160;--text-muted:#6b7280;--player-dock-bg:var(--bg-surface);--list-hover-bg:#eef1f7;--list-selected-bg:color-mix(in srgb, var(--accent-color) 14%, #fff);--list-focus-bg:color-mix(in srgb, var(--accent-color) 10%, #fff);--btn-accent-bg:var(--bg-elevated);--btn-accent-border:var(--border);--btn-accent-hover-bg:color-mix(in srgb, var(--accent-color) 10%, var(--bg-elevated));--btn-hover-bg:#e8ebf2;--btn-hover-border:var(--border);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-theme=mono]{--bg-app:#000;--bg-surface:#0a0a0a;--bg-elevated:#121212;--bg-input:#080808;--border:#2e2e2e;--border-subtle:#1a1a1a;--text-primary:#fff;--text-secondary:#bdbdbd;--text-muted:#8a8a8a;--player-dock-bg:var(--bg-surface);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-theme=mono] img,html[data-theme=mono] .player-cover{filter:grayscale()}body{height:var(--app-height,100dvh);min-height:var(--app-height,100dvh);overscroll-behavior:none;background:var(--bg-app);color:var(--text-primary);flex-direction:column;margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;display:flex}body.player-dock-at-top.player-dock-collapsed{padding-top:var(--player-dock-top-collapsed-h)}body.player-dock-at-top.player-dock-expanded{padding-top:var(--player-dock-top-expanded-h)}#app{padding:0 var(--safe-right) 0 var(--safe-left);flex-direction:column;flex:1 1 0;width:100%;min-width:0;max-width:none;min-height:0;margin:0;display:flex;overflow:hidden}.player-dock{z-index:300;width:100%;color:var(--text-primary);background:var(--player-dock-bg);transition:top .2s,bottom .2s;position:fixed;left:0;right:0}.player-dock.dock-corner-top-right,.player-dock.dock-corner-top-left{padding-top:var(--safe-top);padding-left:0;padding-right:0;top:0;bottom:auto}.player-dock.dock-corner-top-right .player-row-status,.player-dock.dock-corner-top-left .player-row-status{box-sizing:border-box}.player-dock.dock-corner-top-right .player-row-status{padding-left:var(--safe-left)}.player-dock.dock-corner-top-left .player-row-status{padding-right:var(--safe-right)}.player-dock.dock-corner-bottom-right,.player-dock.dock-corner-bottom-left{top:auto;bottom:calc(var(--chrome-bottom) - 1px);padding-left:var(--safe-left);padding-right:var(--safe-right);transition:none}.player-dock.is-collapsed{height:var(--player-dock-collapsed-h);box-shadow:none}.player-dock.is-collapsed.dock-corner-top-right,.player-dock.is-collapsed.dock-corner-top-left{height:var(--player-dock-top-collapsed-h);border:none}.player-dock.is-collapsed.dock-corner-bottom-right,.player-dock.is-collapsed.dock-corner-bottom-left{height:var(--player-dock-collapsed-h);border:none;flex-direction:column;justify-content:flex-end;display:flex}.player-dock.is-collapsed.dock-corner-bottom-right .player-row-status,.player-dock.is-collapsed.dock-corner-bottom-left .player-row-status{flex-shrink:0}.player-dock.is-collapsed .player-row-scrub,.player-dock.is-collapsed .player-row-controls,.player-dock.is-collapsed audio{display:none}.player-dock:not(.is-collapsed){border:1px solid var(--player-dock-border);gap:var(--player-dock-gap);flex-direction:column;display:flex;box-shadow:0 4px 20px #00000073}.player-dock:not(.is-collapsed).dock-corner-top-right,.player-dock:not(.is-collapsed).dock-corner-top-left{border:none;border-bottom:1px solid var(--player-dock-border);padding-bottom:var(--player-dock-gap)}.player-dock:not(.is-collapsed).dock-corner-bottom-right,.player-dock:not(.is-collapsed).dock-corner-bottom-left{grid-template-rows:repeat(3, var(--player-dock-row-h));box-shadow:inset 0 1px 0 var(--player-dock-border);height:var(--player-dock-expanded-h);background:var(--player-dock-bg);border:none;gap:0;padding:0;display:grid}.player-dock:not(.is-collapsed).dock-corner-bottom-right .player-row-controls,.player-dock:not(.is-collapsed).dock-corner-bottom-left .player-row-controls{grid-row:1}.player-dock:not(.is-collapsed).dock-corner-bottom-right .player-row-scrub,.player-dock:not(.is-collapsed).dock-corner-bottom-left .player-row-scrub{grid-row:2}.player-dock:not(.is-collapsed).dock-corner-bottom-right .player-row-status,.player-dock:not(.is-collapsed).dock-corner-bottom-left .player-row-status{grid-row:3}.player-dock:not(.is-collapsed).dock-corner-bottom-right .player-row-controls,.player-dock:not(.is-collapsed).dock-corner-bottom-left .player-row-controls{justify-self:stretch}.player-dock:not(.is-collapsed) audio{display:none}.player-row-status{width:100%;height:var(--player-dock-row-h);flex-shrink:0;position:relative;overflow:hidden}.player-cover{width:var(--player-tile-size);height:var(--player-dock-row-h);object-fit:cover;z-index:1;pointer-events:none;border-radius:0;flex-shrink:0;position:absolute;top:0}.player-dock.dock-corner-top-right .player-cover,.player-dock.dock-corner-bottom-right .player-cover{left:0}.player-dock.dock-corner-top-left .player-cover,.player-dock.dock-corner-bottom-left .player-cover{right:0}.player-cover[hidden]{display:none}.player-status-track{height:var(--player-dock-row-h);z-index:1;scrollbar-width:none;-ms-overflow-style:none;letter-spacing:-.06em;pointer-events:none;box-sizing:border-box;justify-content:flex-start;align-items:center;font-family:ui-monospace,Cascadia Code,SF Mono,Menlo,Consolas,monospace;font-size:.82rem;line-height:1;display:flex;position:absolute;top:0;left:0;right:0;overflow:auto hidden}.player-status-track::-webkit-scrollbar{display:none}.player-dock.dock-corner-top-right .player-status-track,.player-dock.dock-corner-bottom-right .player-status-track{padding-left:8px;padding-right:calc(var(--player-toggle-w) + 4px)}.player-dock.dock-corner-top-left .player-status-track,.player-dock.dock-corner-bottom-left .player-status-track{padding-left:calc(var(--player-toggle-w) + 8px);padding-right:8px}.player-dock.dock-corner-top-right .player-toggle,.player-dock.dock-corner-bottom-right .player-toggle{z-index:2;position:absolute;top:0;right:0}.player-dock.dock-corner-top-left .player-toggle,.player-dock.dock-corner-bottom-left .player-toggle{z-index:2;position:absolute;top:0;left:0}.player-row-scrub{min-height:var(--player-dock-row-h);height:var(--player-dock-row-h);box-sizing:border-box;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;width:100%;padding:0 10px;display:grid}.player-row-controls{min-height:var(--player-dock-row-h);height:var(--player-dock-row-h);box-sizing:border-box;flex-wrap:nowrap;justify-content:flex-end;align-items:stretch;gap:0;width:100%;max-width:100%;padding:0;display:flex;position:relative;overflow:hidden}.player-now-playing{z-index:1;pointer-events:none;align-items:center;gap:8px;min-width:0;display:flex;position:absolute;top:0;bottom:0;overflow:hidden}.player-dock.dock-corner-top-right .player-now-playing,.player-dock.dock-corner-bottom-right .player-now-playing{left:var(--player-tile-size);flex-direction:row;justify-content:flex-start;padding-left:8px;padding-right:0;right:0}.player-dock.dock-corner-top-left .player-now-playing,.player-dock.dock-corner-bottom-left .player-now-playing{left:0;right:var(--player-tile-size);flex-direction:row;justify-content:flex-end;padding-left:0;padding-right:8px}.player-controls-cluster{z-index:2;background:var(--player-dock-bg);flex-wrap:nowrap;flex-shrink:0;align-items:stretch;gap:0;display:flex;position:relative}.player-dock.dock-corner-top-right .player-controls-cluster,.player-dock.dock-corner-bottom-right .player-controls-cluster{box-shadow:-10px 0 14px 4px var(--player-dock-bg);flex-direction:row-reverse;margin-left:auto}.player-dock.dock-corner-top-left .player-controls-cluster,.player-dock.dock-corner-bottom-left .player-controls-cluster{box-shadow:10px 0 14px 4px var(--player-dock-bg);flex-direction:row;margin-left:0;margin-right:auto}.player-dock.dock-corner-top-left .player-row-controls,.player-dock.dock-corner-bottom-left .player-row-controls{flex-direction:row;justify-content:flex-start}.player-track-title{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;max-width:100%;font-size:.82rem;line-height:1.2;overflow:hidden}.player-dock.dock-corner-top-right .player-track-title,.player-dock.dock-corner-bottom-right .player-track-title{text-align:left}.player-dock.dock-corner-top-left .player-track-title,.player-dock.dock-corner-bottom-left .player-track-title{text-align:right}:is(.player-dock.dock-corner-top-right .player-row-controls:not(:has(.player-cover:not([hidden]))) .player-now-playing,.player-dock.dock-corner-bottom-right .player-row-controls:not(:has(.player-cover:not([hidden]))) .player-now-playing){padding-left:10px;left:0}:is(.player-dock.dock-corner-top-left .player-row-controls:not(:has(.player-cover:not([hidden]))) .player-now-playing,.player-dock.dock-corner-bottom-left .player-row-controls:not(:has(.player-cover:not([hidden]))) .player-now-playing){padding-right:10px;right:0}.player-track-title[hidden]{display:none}.player-icon-btn:not(.player-toggle){width:var(--player-tile-size);height:var(--player-dock-row-h);min-width:var(--player-tile-size);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex}.player-icon-btn:not(.player-toggle):hover:not(:disabled){background:var(--bg-elevated);color:var(--text-primary);border:none}.player-icon-btn.library-cache-btn.cached,.player-icon-btn.ram-cached .player-svg,.library-item-now-playing .list-row-title{color:var(--accent-color)}.player-icon-btn:disabled{opacity:.38;cursor:not-allowed}.player-icon-btn.is-active{color:var(--accent-color);background:color-mix(in srgb, var(--accent-color) 16%, transparent);border:none}.player-svg{pointer-events:none;width:24px;height:24px;display:block}.player-glyph{color:#fff;text-align:center;pointer-events:none;transform-origin:50%;width:.62em;font-family:ui-monospace,Cascadia Code,SF Mono,Menlo,Consolas,monospace;font-size:1.2rem;font-weight:700;line-height:1;display:inline-block;transform:scaleX(1)}.player-dock.dock-corner-top-right .player-toggle[aria-expanded=true] .player-glyph,.player-dock.dock-corner-bottom-right .player-toggle[aria-expanded=true] .player-glyph,.player-dock.dock-corner-top-left .player-toggle .player-glyph,.player-dock.dock-corner-bottom-left .player-toggle .player-glyph{transform:scaleX(-1)}.player-dock.dock-corner-top-left .player-toggle[aria-expanded=true] .player-glyph,.player-dock.dock-corner-bottom-left .player-toggle[aria-expanded=true] .player-glyph{transform:scaleX(1)}.player-icon-btn.player-toggle{width:var(--player-toggle-w);height:var(--player-dock-row-h);min-width:var(--player-toggle-w);cursor:pointer;-webkit-tap-highlight-color:transparent;border:1px solid #0000;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex}.player-icon-btn.player-toggle.conn-connected{background:#167a4a;border-color:#167a4a}.player-icon-btn.player-toggle.conn-connecting{background:#9a6b00;border-color:#9a6b00}.player-icon-btn.player-toggle.conn-disconnected{background:#9b2333;border-color:#9b2333}.player-icon-btn.player-toggle.conn-offline{background:#6264a7;border-color:#6264a7}.player-icon-btn.player-toggle.conn-connected:hover:not(:disabled),.player-icon-btn.player-toggle.conn-connecting:hover:not(:disabled),.player-icon-btn.player-toggle.conn-disconnected:hover:not(:disabled),.player-icon-btn.player-toggle.conn-offline:hover:not(:disabled),.player-icon-btn.player-toggle.conn-connected:active:not(:disabled),.player-icon-btn.player-toggle.conn-connecting:active:not(:disabled),.player-icon-btn.player-toggle.conn-disconnected:active:not(:disabled),.player-icon-btn.player-toggle.conn-offline:active:not(:disabled),.player-icon-btn.player-toggle:focus-visible{background:var(--accent-color);border-color:var(--accent-color)}.player-icon-btn.player-toggle .player-glyph{color:#fff}.player-toggle:focus,.player-toggle:focus-visible{outline:none}.player-dock.is-collapsed .player-toggle,.player-dock:not(.is-collapsed) .player-toggle{box-sizing:border-box;border-top:none;border-bottom:none;border-radius:0}.player-dock.is-collapsed.dock-corner-top-right .player-toggle,.player-dock:not(.is-collapsed).dock-corner-top-right .player-toggle,.player-dock.is-collapsed.dock-corner-bottom-right .player-toggle,.player-dock:not(.is-collapsed).dock-corner-bottom-right .player-toggle,.player-dock.is-collapsed.dock-corner-top-left .player-toggle,.player-dock:not(.is-collapsed).dock-corner-top-left .player-toggle,.player-dock.is-collapsed.dock-corner-bottom-left .player-toggle,.player-dock:not(.is-collapsed).dock-corner-bottom-left .player-toggle{width:var(--player-toggle-w);height:var(--player-dock-row-h);border-left:none;border-right:none}.player-time{font-variant-numeric:tabular-nums;opacity:.9;flex-shrink:0;min-width:2.5rem;font-size:.8rem}.player-time-elapsed,#player-elapsed{text-align:left}.player-time-remaining,#player-remaining{text-align:right;min-width:3rem}.player-waveform-wrap{width:100%;min-width:0;height:36px;box-shadow:none;background:0 0;outline:none;align-items:center;display:flex;position:relative;border:none!important}.player-waveform-canvas{pointer-events:none;width:100%;height:100%;box-shadow:none;background:0 0;border:none;outline:none;display:none;position:absolute;inset:0}.player-waveform-playhead{width:1px;box-shadow:none;pointer-events:none;z-index:2;background:#ffffffeb;margin-left:-.5px;display:none;position:absolute;top:0;bottom:0}.player-waveform-wrap.is-ready .player-waveform-canvas,.player-waveform-wrap.is-ready .player-waveform-playhead{display:block}.player-waveform-wrap.is-ready .player-seek{z-index:3;accent-color:#0000;appearance:none;width:100%;height:100%;margin:0;padding:0;position:absolute;inset:0;box-shadow:none!important;background:0 0!important;border:none!important;outline:none!important}.player-waveform-wrap.is-ready .player-seek:focus,.player-waveform-wrap.is-ready .player-seek:focus-visible{box-shadow:none!important;outline:none!important}.player-waveform-wrap.is-ready .player-seek::-webkit-slider-runnable-track{height:100%;box-shadow:none;background:0 0;border:none}.player-waveform-wrap.is-ready .player-seek::-webkit-slider-thumb{appearance:none;width:12px;height:100%;box-shadow:none;cursor:pointer;background:0 0;border:none}.player-waveform-wrap.is-ready .player-seek::-moz-range-track{height:100%;box-shadow:none;background:0 0;border:none}.player-waveform-wrap.is-ready .player-seek::-moz-range-progress{background:0 0}.player-waveform-wrap.is-ready .player-seek::-moz-range-thumb{width:12px;height:100%;box-shadow:none;cursor:pointer;background:0 0;border:none!important}.player-seek{width:100%;min-width:0;height:8px;accent-color:var(--accent-color);cursor:pointer;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;margin:0}.player-media-nav{align-items:stretch;gap:0;display:flex}.player-position-wrap{width:var(--player-tile-size);z-index:1;flex-shrink:0;position:relative}.player-position-wrap:has(.player-position-picker.is-open){z-index:10}.player-dock:not(.is-collapsed) .player-row-controls{z-index:2;overflow:visible}.player-dock:has(.player-position-picker.is-open){z-index:350;overflow:visible}.player-dock:not(.is-collapsed).dock-corner-bottom-right .player-row-controls,.player-dock:not(.is-collapsed).dock-corner-bottom-left .player-row-controls{z-index:2;overflow:visible}.player-position-picker{z-index:500;grid-template-columns:var(--player-tile-size) var(--player-tile-size);grid-template-rows:var(--player-tile-size) var(--player-tile-size);width:calc(2 * var(--player-tile-size));background:var(--bg-surface);border:1px solid var(--border);border-radius:0;grid-template-areas:"tl tr""bl br";gap:0;padding:0;display:none;position:absolute;box-shadow:0 6px 24px #00000080}.player-position-picker.is-open{display:grid}.player-position-picker[hidden]{display:none!important}.player-corner-target[data-corner=top-left]{grid-area:tl}.player-corner-target[data-corner=top-right]{grid-area:tr}.player-corner-target[data-corner=bottom-left]{grid-area:bl}.player-corner-target[data-corner=bottom-right]{grid-area:br}.player-audio-wrap{position:relative}.player-audio-picker{z-index:500;background:var(--bg-surface);border:1px solid var(--border);flex-direction:column;gap:8px;min-width:14rem;max-width:18rem;padding:8px;display:flex;position:absolute;box-shadow:0 6px 24px #00000080}.player-audio-picker[hidden]{display:none!important}.player-audio-field{flex-direction:column;gap:4px;font-size:.75rem;display:flex}.player-audio-field select{width:100%}.player-audio-exclusive{flex-direction:row;align-items:center;gap:6px}.player-audio-hint{opacity:.75;margin:0;font-size:.68rem;line-height:1.35}.player-audio-choose{width:100%;font-size:.75rem}.player-dock.dock-corner-top-right .player-audio-picker,.player-dock.dock-corner-top-left .player-audio-picker{top:100%;right:0}.player-dock.dock-corner-bottom-right .player-audio-picker,.player-dock.dock-corner-bottom-left .player-audio-picker{bottom:100%;right:0}.player-dock.dock-corner-top-right .player-position-picker,.player-dock.dock-corner-top-left .player-position-picker{top:100%;bottom:auto}.player-dock.dock-corner-bottom-right .player-position-picker,.player-dock.dock-corner-bottom-left .player-position-picker{top:auto;bottom:100%}.player-dock.dock-corner-top-right .player-position-picker,.player-dock.dock-corner-bottom-right .player-position-picker{left:auto;right:0}.player-dock.dock-corner-top-left .player-position-picker,.player-dock.dock-corner-bottom-left .player-position-picker{left:0;right:auto}.player-video-preview{z-index:299;border:1px solid var(--player-dock-border);pointer-events:auto;background:#000;flex-direction:column;width:min(440px,84vw);display:flex;position:fixed;overflow:hidden;box-shadow:0 8px 28px #0000008c}.player-video-preview-bar{height:calc(var(--player-dock-row-h) * .55);background:color-mix(in srgb, var(--player-dock-bg) 88%, #000);border-bottom:1px solid var(--player-dock-border);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;flex:none;align-items:center;gap:2px;min-height:22px;padding:0 2px;display:flex}.player-video-preview-bar:active{cursor:grabbing}.player-video-preview-grab{background:color-mix(in srgb, var(--text-secondary) 45%, transparent);border-radius:999px;flex:auto;height:4px;margin:0 6px}.player-video-nudge{width:calc(var(--player-dock-row-h) * .55);min-width:22px;height:calc(var(--player-dock-row-h) * .55);flex:none;min-height:22px;padding:0}.player-video-nudge .player-svg{width:14px;height:14px}.player-video-preview[hidden]{display:none!important}.player-video-preview:fullscreen{aspect-ratio:auto;border:none;flex-direction:column;width:100vw;max-width:none;height:100vh}.player-video-preview:fullscreen .player-video-preview-bar{display:none}.player-video-preview:fullscreen .player-video{object-fit:contain;width:100%;height:100%}.player-video{aspect-ratio:16/9;object-fit:cover;background:#000;width:100%;display:block}.player-video-fullscreen[hidden]{display:none!important}.player-video-fullscreen.is-active,#player-position.is-active,.player-corner-target.is-current{color:var(--accent-color);background:color-mix(in srgb, var(--accent-color) 16%, transparent)}h1{margin:0 0 12px}.site-prompt{height:var(--player-dock-row-h);z-index:3;letter-spacing:-.06em;color:#c8d4f0;background:var(--player-dock-bg);pointer-events:none;align-items:center;padding:0 10px;font-family:ui-monospace,Cascadia Code,SF Mono,Menlo,Consolas,monospace;font-size:.82rem;font-weight:600;line-height:1;display:flex;position:absolute;top:0}.site-status{white-space:nowrap;color:#9aa8c9;font-weight:400}.connect-form{margin-bottom:10px}.connect-form label input{min-width:12rem}h2{margin:0 0 10px;font-size:1.1rem}main{flex-direction:column;flex:1 1 0;gap:0;width:100%;min-width:0;min-height:0;display:flex;overflow:hidden}body.player-dock-at-bottom.player-dock-collapsed main{padding-bottom:var(--player-dock-collapsed-h)}body.player-dock-at-bottom.player-dock-expanded main{padding-bottom:var(--player-dock-expanded-h)}section{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;min-width:0;padding:12px}.row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}input,button,select,textarea{border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-primary);border-radius:8px;padding:8px 10px}select,select option{background:var(--bg-input);color:var(--text-primary)}@media (hover:none) and (pointer:coarse){input:not([type=checkbox]):not([type=radio]):not([type=color]):not([type=range]),select,textarea{font-size:16px}}button{cursor:pointer;background:var(--bg-elevated);border-color:var(--border)}button:hover:not(.player-icon-btn):not(.action-icon-btn):not(.section-tab):not(.catalog-open){background:var(--btn-hover-bg);border-color:var(--btn-hover-border)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}label{flex-direction:column;gap:4px;font-size:.9rem;display:flex}pre{background:var(--bg-input);white-space:pre-wrap;border:1px solid #26325f;border-radius:8px;max-height:180px;margin:0;padding:10px;font-size:12px;overflow:auto}.tab-header{background:var(--bg-app);border-bottom:1px solid var(--border-subtle);z-index:110;flex-shrink:0;width:100%;min-width:0;position:relative}body.player-dock-at-bottom .tab-header{padding-top:var(--safe-top)}body.player-dock-at-top .tab-header{padding-top:0}body.player-dock-at-top.player-dock-expanded .tab-toolbar{display:none}.tab-toolbar{flex-direction:column;width:100%;min-width:0;display:flex}.tab-status-row{width:100%;min-width:0;min-height:var(--ui-row-h);border-bottom:1px solid var(--border-subtle);background:var(--bg-app);align-items:center;padding:0 12px;transition:min-height .2s,opacity .2s,padding .2s;display:flex;overflow:hidden}.tab-status-row[hidden]{display:none}.tab-status-row.collapsed{opacity:0;border-bottom-color:#0000;min-height:0;padding:0 12px}.tab-status-text{opacity:.85;white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;overflow:hidden}.tab-toolbar-filter{width:100%;min-width:0;height:var(--ui-row-h);border-bottom:1px solid var(--border-subtle);background:var(--bg-input);flex-wrap:nowrap;align-items:stretch;padding:0;display:flex}.tab-toolbar-filter:not(:has(.tab-search:not([hidden]))){display:none}.tab-search-addon[hidden]{display:none!important}.provider-multiselect{flex:none;align-self:stretch;align-items:stretch;width:min(11rem,38vw);min-width:6.5rem;display:flex;position:relative}.provider-multiselect-trigger{text-align:left;cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background-image:linear-gradient(45deg,#0000 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,#0000 50%);background-position:calc(100% - 16px) calc(50% - 2px),calc(100% - 11px) calc(50% - 2px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;width:100%;padding-right:28px;overflow:hidden}.provider-multiselect-menu{z-index:30;background:#2c2c2e;border-radius:8px;max-height:240px;margin:0;padding:4px 0;list-style:none;position:absolute;top:calc(100% - 1px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #00000059}.provider-multiselect-menu[hidden]{display:none!important}.provider-multiselect-option{cursor:pointer;color:#fff;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:7px 12px;font-size:.9rem;display:flex}.provider-multiselect-option:hover{background:#ffffff14}.provider-multiselect-option.selected{background:var(--accent-color);color:#fff}.provider-multiselect-check{opacity:0;flex-shrink:0;width:1rem}.provider-multiselect-option.selected .provider-multiselect-check{opacity:1}.library-create-inline,.playlist-create-inline{flex-shrink:0;align-items:center;gap:4px;display:inline-flex}.library-create-inline[hidden],.playlist-create-inline[hidden]{display:none!important}.catalog-create-name{width:min(10rem,32vw);height:var(--player-dock-row-h);flex-shrink:1;min-width:5rem}.library-toolbar-actions{flex-shrink:0;align-items:center;display:inline-flex}.library-playlist-select{min-width:8rem;max-width:16rem;height:var(--player-dock-row-h);background:var(--bg-app);border:1px solid var(--border);color:inherit;border-radius:6px;flex:auto;margin:0 4px;padding:0 8px;font-size:.85rem}.library-playlist-select[hidden]{display:none!important}.visibility-picker.active{color:var(--accent-color)}.tab-chrome-rows[hidden]{display:none}.tab-chrome-row{width:100%;min-height:var(--ui-row-h);border-bottom:1px solid var(--border-subtle);background:var(--bg-app);align-items:center;gap:8px;padding:0 12px;display:flex}.tab-chrome-row-split{flex-wrap:wrap}.tab-chrome-input{background:var(--bg-input);border:1px solid var(--border);width:100%;height:36px;color:inherit;border-radius:6px;padding:0 12px;font-size:.95rem}.tab-chrome-field{color:var(--text-secondary);flex-direction:column;flex:8rem;gap:2px;min-width:0;font-size:.8rem;display:flex}.tab-chrome-field input{height:32px;padding:0 8px;font-size:.9rem}.tab-chrome-upload-picker{flex:1 1 0;align-items:center;gap:8px;min-width:0;display:flex}.tab-toolbar-actions{width:100%;min-width:0;height:var(--ui-row-h);border-bottom:1px solid var(--border-subtle);background:var(--bg-app);display:flex;overflow:hidden}.tab-toolbar-actions.is-empty{display:none}.tab-toolbar-group{min-width:0;min-height:var(--ui-row-h);flex:auto;align-items:stretch;display:flex}.tab-toolbar-group[hidden]{display:none}.tab-toolbar-pinned{flex-shrink:0;align-items:center;display:flex}.tab-toolbar-scroll{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex:auto;justify-content:flex-start;align-items:center;min-width:0;display:flex;overflow:auto hidden}.tab-toolbar-scroll::-webkit-scrollbar{display:none}.toolbar-user-form{min-height:var(--ui-row-h);flex-wrap:nowrap;align-items:center;gap:8px;margin:0;padding:0 8px;display:flex}.toolbar-user-form input{background:var(--bg-input);border-color:var(--border);min-width:7rem;height:36px;padding:0 10px}.action-text-btn{background:var(--accent-color);border-color:var(--accent-color);color:#fff;flex-shrink:0;height:36px;padding:0 14px}.action-text-btn:hover{filter:brightness(1.08)}.action-icon-btn{width:var(--action-icon-size);height:var(--action-icon-size);min-width:var(--action-icon-size);color:var(--text-secondary);background:0 0;border:none;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.action-icon-btn:hover:not(:disabled){background:var(--bg-elevated);color:var(--text-primary)}.action-icon-btn[disabled]{opacity:.38;cursor:not-allowed}.action-icon-btn.active,.library-kind-filter.active{color:var(--accent-color);background:color-mix(in srgb, var(--accent-color) 16%, transparent)}.action-svg,.section-svg{width:24px;height:24px;display:block}.tab-search{width:100%;height:var(--ui-row-h);box-sizing:border-box;color:inherit;background:0 0;border:none;border-radius:0;padding:0 12px;font-size:.95rem}.tab-search[hidden]{display:none}.tab-toolbar-filter .tab-search:not([hidden]){flex:auto;min-width:0}.tab-search:focus{background:var(--bg-app);outline:none}.tab-search.invalid{background:#2a1520}.section-bar{width:calc(100% + var(--safe-left) + var(--safe-right));margin-left:calc(-1 * var(--safe-left));margin-right:calc(-1 * var(--safe-right));padding-left:var(--safe-left);padding-right:var(--safe-right);padding-bottom:var(--safe-bottom);background:var(--bg-surface);border-top:1px solid var(--border-subtle);box-sizing:border-box;z-index:110;flex-shrink:0}body.player-dock-at-bottom .section-bar{box-shadow:none;border-top:none}.section-bar-inner{width:100%;height:var(--section-bar-h);flex-shrink:0;align-items:stretch;display:flex}.section-tab{min-width:0;height:var(--section-bar-h);color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:0;flex:1 1 0;justify-content:center;align-items:center;padding:0;display:inline-flex}.section-tab:hover{background:0 0}.section-tab:hover .section-svg{color:var(--text-secondary)}.section-tab.active{background:0 0}.section-tab.active .section-svg{color:var(--accent-color)}.section-tab .section-svg{width:26px;height:26px;color:var(--text-muted)}.admin-section-title{margin:1.25rem 0 .35rem;font-size:1.05rem}.admin-panel{min-width:0;max-width:100%}.admin-panel.admin-readonly .admin-settings-form input:not([type=checkbox]),.admin-panel.admin-readonly .admin-settings-form select{pointer-events:none;color:var(--text-primary);opacity:.95;background:0 0;border-color:#0000;padding-left:0}.admin-panel.admin-readonly .admin-settings-form input[type=checkbox]{pointer-events:none;opacity:.85}.admin-panel.admin-readonly .admin-settings-form input[type=color]{width:2rem;height:1.5rem;padding:0}.admin-panel:not(.admin-readonly) .admin-settings-form input:not([type=checkbox]),.admin-panel:not(.admin-readonly) .admin-settings-form select,.admin-panel:not(.admin-readonly) .admin-settings-form textarea{pointer-events:auto;border-color:var(--border);background:var(--bg-input);padding-left:8px}.admin-kv-section{margin-bottom:.25rem}.admin-kv-section[hidden]{display:none}.admin-kv-section-header{justify-content:space-between;align-items:center;gap:12px;min-width:0;margin:.85rem 0 0;display:flex}.admin-kv-section-header .admin-kv-heading{margin:0}.admin-kv-section-actions{flex-shrink:0}.admin-kv-section-actions button{border:1px solid var(--btn-accent-border);background:var(--btn-accent-bg);color:var(--text-primary);cursor:pointer;border-radius:8px;padding:6px 14px;font-size:.9rem}.admin-kv-section-actions button:hover{border-color:var(--accent-color);background:var(--btn-accent-hover-bg)}.admin-kv-heading{letter-spacing:.02em;text-transform:lowercase;color:var(--text-secondary);font-size:.85rem;font-weight:600}.admin-kv-divider{border:none;border-top:1px solid #26325f;margin:.35rem 0 .55rem}.admin-kv-divider-major{margin:1.25rem 0}.admin-kv-list{margin:0;padding:0}.admin-kv-row{border-bottom:1px solid #1a2448;grid-template-columns:minmax(10rem,42%) 1fr;align-items:center;gap:10px 16px;padding:7px 0;display:grid}.admin-kv-row[hidden]{display:none}.admin-kv-row:last-child{border-bottom:none}.admin-kv-row dt{opacity:.88;margin:0;font-size:.9rem}.admin-kv-row dd{min-width:0;margin:0}.admin-kv-row dd input[type=number],.admin-kv-row dd input[type=text],.admin-kv-row dd input[type=password],.admin-kv-row dd select{box-sizing:border-box;background:var(--bg-input);border:1px solid var(--border);width:100%;color:var(--text-primary);border-radius:8px;padding:8px 10px;font-size:.95rem}.admin-kv-row dd input[type=checkbox]{width:1.1rem;height:1.1rem;accent-color:var(--accent-color)}.admin-kv-row dd input[type=color]{background:var(--bg-surface);cursor:pointer;border:1px solid #3f4f8f;border-radius:8px;width:100%;max-width:5rem;height:2rem;padding:2px}.admin-filter-empty{opacity:.75;margin:1rem 0 0;font-size:.9rem}.admin-divider{border:none;border-top:1px solid #26325f;margin:1.25rem 0}.admin-subtitle{color:var(--text-secondary);margin:0 0 .5rem;font-size:.95rem}.admin-secondary-btn{margin-top:1rem}.storage-panel{background:var(--bg-input);border:1px solid #26325f;border-radius:8px;margin-top:1.25rem;padding:1rem}.storage-panel-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:.75rem;display:flex}.storage-panel-header .admin-section-title{margin:0}.storage-panel-add{flex-shrink:0}.storage-backend-table-wrap{overflow-x:auto}.storage-backend-table{border-collapse:collapse;width:100%;font-size:.92rem}.storage-backend-table th,.storage-backend-table td{text-align:left;vertical-align:top;border-bottom:1px solid #1a2448;padding:8px 10px}.storage-backend-table th{color:var(--text-secondary);font-weight:600}.storage-backend-row-default{background:#385dd814}.storage-backend-row-disabled{opacity:.55}.storage-backend-details{color:#c8d0f0;word-break:break-all;max-width:280px}.storage-backend-actions{white-space:nowrap}.storage-row-edit{padding:4px 10px;font-size:.85rem}.storage-backend-form{border-top:1px solid #26325f;margin-top:1rem;padding-top:1rem}.storage-type-fields[hidden]{display:none}.storage-backend-form-actions{flex-wrap:wrap;gap:8px;margin-top:.75rem;display:flex}.library-kind-filter{min-width:4.5rem}.library-kind-filter:not(.active){opacity:.55}.tab-panels{flex:1 1 0;min-width:0;min-height:0;position:relative;overflow:hidden}.tab-panel{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;scrollbar-width:none;-ms-overflow-style:none;pointer-events:none;z-index:0;min-width:0;max-width:100%;padding:0 0 12px;display:none;position:absolute;inset:0;overflow:hidden auto}.tab-panel::-webkit-scrollbar{display:none}.tab-panel.active{pointer-events:auto;z-index:1;display:block}.tab-panel>section{margin-top:0}.tab-hint{opacity:.8;margin:0;padding:10px 12px;font-size:.85rem;line-height:1.4}.playlist-item.waiting .playlist-sync-label{color:#9aa3b8}.playlist-item.idle .playlist-sync-label{color:#8b93a8}.library-list,.playlist-list,.catalog-list,.catalog-track-list{margin:0;padding:0;list-style:none;display:block}.playlist-list[hidden],#playlist-detail-tracks[hidden],.playlist-list>li[hidden],.library-list>li[hidden],.catalog-list>li[hidden],.catalog-track-list>li[hidden]{display:none!important}.list-row{background:var(--bg-input);border-bottom:1px solid var(--border-subtle);outline:none;min-width:0;max-width:100%;min-height:72px;display:block}.list-row:focus-visible,.catalog-open:focus-visible{background:var(--list-focus-bg);box-shadow:inset 0 0 0 2px var(--accent-color)}.catalog-open:hover{background:var(--list-hover-bg)}.list-row-reveal-actions{background:0 0;flex-shrink:0;align-items:stretch;gap:0;margin-left:auto;padding:0;display:flex}.list-row-reveal-actions .player-icon-btn:not(.player-toggle){width:var(--player-tile-size);min-width:var(--player-tile-size);height:var(--player-dock-row-h);min-height:var(--player-dock-row-h);align-self:stretch}.list-row-reveal-actions button[disabled]{opacity:.38;cursor:not-allowed}.list-row-has-actions .list-row-swipe{align-items:stretch;display:flex;overflow:visible}.list-row-has-actions .list-row-slide{background:var(--bg-input);flex:1;min-width:0}.list-row-reveal-actions{visibility:visible;pointer-events:auto;align-self:stretch;padding:0}.list-row-body{flex-direction:column;flex:1;justify-content:center;gap:4px;min-width:0;padding:8px 12px;display:flex}.catalog-item.list-row{padding:0}.catalog-item .catalog-open{width:100%;min-height:72px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:0;padding:8px 12px}.list-row-top{grid-template-columns:2rem minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr) auto;align-items:baseline;gap:8px;min-width:0;font-size:.85rem;line-height:1.25;display:grid}.list-row-top-library{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr)}.list-row-top-library.list-row-top-has-status{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr) auto}.external-import-row.pending .list-row-status{color:#8aa4ff}.external-import-row.finalized .list-row-status{color:#6ee7a0}.external-import-row.failed .list-row-status{color:#f87171}.list-row-top-catalog,.catalog-item .list-row-top{grid-template-columns:minmax(0,1fr) auto}.list-row-pos{font-variant-numeric:tabular-nums;opacity:.85;text-align:right;flex-shrink:0;min-width:2rem}.list-row-format{text-transform:uppercase;letter-spacing:.03em}.list-row-codec{opacity:.85;text-transform:uppercase;margin-left:.35em}.list-row-meta{opacity:.85;text-transform:none;letter-spacing:normal;margin-left:.35em}.list-row-created{opacity:.85;font-variant-numeric:tabular-nums;flex-shrink:0;margin-left:.35em}.list-row-title,.list-row-release,.list-row-artist{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.list-row-title{font-weight:500}.list-row-release,.list-row-artist{opacity:.8}.list-row-status{text-transform:uppercase;letter-spacing:.04em;opacity:.85;text-align:right;flex-shrink:0;font-size:.7rem}.list-row-status-empty{visibility:hidden}.list-row-sync{border-radius:999px;height:6px;overflow:hidden}.list-row-sync-empty{visibility:hidden;pointer-events:none}.list-row-sync-track{background:#1a2448;border-radius:999px;height:100%;overflow:hidden}.list-row-sync-fill{background:linear-gradient(90deg, var(--accent-color), color-mix(in srgb, var(--accent-color) 70%, white));border-radius:999px;width:0%;height:100%;transition:width 50ms linear}.list-row-bottom{opacity:.75;align-items:center;gap:12px;min-width:0;font-size:.75rem;display:flex}.list-row-size,.list-row-format,.list-row-duration{white-space:nowrap}.list-row-duration{margin-left:auto}.list-row-bottom-meta{flex-shrink:0;justify-content:flex-end;align-items:center;gap:12px;margin-left:auto;display:flex}.list-row-bottom-meta .list-row-duration{margin-left:0}.library-item{cursor:pointer;-webkit-user-select:none;user-select:none}.library-item:hover .list-row-slide,.library-item:hover .list-row-body{background:var(--list-hover-bg)}.library-item.selected .list-row-slide,.library-item.selected .list-row-body{background:var(--list-selected-bg);box-shadow:inset 3px 0 0 var(--accent-color)}.library-item-missing .list-row-bottom{color:#c9a227}.library-item.ready .list-row-sync-fill,.library-item.syncing .list-row-sync-fill{opacity:1}.library-item.idle .list-row-status{opacity:.7}.library-item.ready .list-row-sync-fill{background:linear-gradient(90deg,#2d6b4a,#3dd68c)}.playlist-item.waiting .list-row-status{color:#9aa3b8}.playlist-item.idle .list-row-status{color:#8b93a8}.playlist-item.ready .list-row-status{color:#6ee7a0}.playlist-item.syncing .list-row-status{color:#8aa4ff}.playlist-item.ready .list-row-sync-fill{background:linear-gradient(90deg,#2d6b4a,#3dd68c)}.playlist-item.playlist-item-now-playing .list-row-slide,.playlist-item.playlist-item-now-playing .list-row-body{background:var(--list-selected-bg);box-shadow:inset 3px 0 0 var(--accent-color)}.catalog-cache-fill{background:linear-gradient(90deg, #3f4f8f, var(--accent-color))}.catalog-badge{text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:4px;font-size:.68rem;display:inline-flex}.catalog-kind-icons{align-items:center;gap:2px;display:inline-flex}.catalog-kind-svg{opacity:.9;width:14px;height:14px}.library-empty{opacity:.75;padding:12px;font-size:.9rem}.user-list{gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.user-item{background:var(--bg-input);border:1px solid #26325f;border-radius:8px;padding:10px 12px;font-size:.95rem}.user-empty,.playlist-empty{opacity:.75;padding:12px;font-size:.9rem;list-style:none}.upload-form{gap:12px;margin-bottom:12px;display:grid}.upload-metadata{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;display:grid}.upload-metadata label{flex-direction:column;gap:4px;display:flex}.upload-field{flex-direction:column;gap:4px;max-width:220px;font-size:.9rem;display:flex}.upload-pickers{gap:12px;display:grid}.upload-picker{grid-template-columns:auto auto 1fr;align-items:center;gap:10px;display:grid}.upload-picker-label{min-width:4.5rem;font-size:.9rem}.upload-input-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.upload-choose-btn{background:var(--btn-accent-bg);border-color:var(--btn-accent-border);color:var(--text-primary);white-space:nowrap}.upload-choose-btn:hover{background:var(--btn-accent-hover-bg);border-color:var(--accent-color)}.upload-selection-label{opacity:.8;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.85rem;overflow:hidden}.upload-summary{color:#8aa4ff;min-height:1.25em;margin:0 0 10px;font-size:.9rem}.upload-summary.tab-chrome-summary{min-height:var(--ui-row-h);border-top:1px solid var(--border-subtle);align-items:center;margin:0;padding:0 12px;font-size:.85rem;display:flex}.upload-history{min-width:0;margin:0;padding:0;list-style:none;display:block}.upload-empty{opacity:.75;padding:12px;font-size:.9rem}.upload-item{background:var(--bg-input);border-bottom:1px solid var(--border-subtle);outline:none;min-width:0;max-width:100%;padding:10px 12px;overflow:hidden}.upload-item:focus-visible{box-shadow:inset 0 0 0 2px var(--accent-color);background:#121a32}.upload-item-header{justify-content:space-between;align-items:baseline;gap:10px;min-width:0;margin-bottom:6px;display:flex}.upload-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.95rem;overflow:hidden}.upload-state{text-transform:uppercase;letter-spacing:.04em;opacity:.85;flex-shrink:0;font-size:.75rem}.upload-item.upload-finalized .upload-state{color:#6ee7a0}.upload-item.upload-pending .upload-state{color:#8aa4ff}.upload-item.upload-failed .upload-state{color:#f0a0a0}.upload-progress-track{background:#1a2448;border-radius:999px;height:6px;margin-bottom:4px;overflow:hidden}.upload-progress-fill{background:linear-gradient(90deg, var(--accent-color), color-mix(in srgb, var(--accent-color) 70%, white));border-radius:999px;width:0%;height:100%;transition:width 80ms linear}.upload-item.upload-finalized .upload-progress-fill{background:linear-gradient(90deg,#2d6b4a,#3dd68c)}.upload-bytes{opacity:.75;overflow-wrap:anywhere;word-break:break-word;min-width:0;max-width:100%;font-size:.8rem;display:block}@media (width<=640px){.list-row-top-catalog{grid-template-columns:minmax(0,1fr) auto}.list-row-top:not(.list-row-top-library):not(.list-row-top-catalog){grid-template-columns:1.75rem minmax(0,1fr) 0 0 auto}.list-row-top-library{grid-template-columns:minmax(0,1fr) minmax(0,.85fr)}.list-row-top-library.list-row-top-has-status{grid-template-columns:minmax(0,1fr) minmax(0,.85fr) auto}.list-row-top-library .list-row-release,.list-row-top:not(.list-row-top-library) .list-row-release,.list-row-top:not(.list-row-top-library) .list-row-artist,.list-row-top:not(.list-row-top-library) .list-row-status{display:none}.list-row-title{font-weight:600}.upload-item-header{flex-wrap:wrap;align-items:flex-start;gap:6px}.upload-name{white-space:normal;overflow-wrap:anywhere;word-break:break-word}}.admin-form label select{background:var(--bg-surface);color:#e9eef8;border:1px solid #3f4f8f;border-radius:8px;margin-top:4px;padding:8px 10px}.catalog-list,.catalog-track-list{margin:0;padding:0;list-style:none}.catalog-item{margin:0;padding:0}.catalog-open{cursor:pointer}.catalog-empty{opacity:.75;padding:8px 4px}.catalog-detail-title{margin:0 0 8px;font-weight:600}.catalog-track-item{list-style:none}.user-panel-heading{margin:0 0 12px;font-size:1.1rem}.offline-panel{border-top:1px solid var(--border-color,#333);margin-top:1.25rem;padding-top:1rem}.offline-toggle-label{cursor:pointer;align-items:center;gap:.5rem;margin:.5rem 0;display:flex}.offline-storage-summary{margin:.25rem 0 .75rem}.offline-actions{flex-wrap:wrap;gap:.5rem;display:flex}.profile-form{flex-direction:column;gap:10px;max-width:28rem;display:flex}.profile-form label{flex-direction:column;gap:4px;display:flex}.profile-panel.profile-readonly .profile-form input{pointer-events:none;background:0 0;border-color:#0000}.profile-panel:not(.profile-readonly) .profile-form input{background:var(--bg-input,var(--bg-surface));border:1px solid var(--border);pointer-events:auto}.profile-settings{border-top:1px solid var(--border-subtle);margin-top:1.25rem;padding-top:1rem}.profile-section-heading{margin:0 0 .75rem;font-size:.95rem;font-weight:600}.profile-theme-group{border:0;margin:0 0 1rem;padding:0}.profile-theme-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.profile-theme-option{border:1px solid var(--border);background:var(--bg-elevated);cursor:pointer;text-align:center;flex-direction:column;align-items:stretch;gap:6px;padding:8px;font-size:.78rem;display:flex}.profile-theme-option:has(input:checked){border-color:var(--accent-color);box-shadow:inset 0 0 0 1px var(--accent-color)}.profile-theme-option input{margin:0 auto}.profile-theme-swatch{border:1px solid var(--border-subtle);height:28px}.profile-theme-swatch-evening{background:linear-gradient(135deg, #1f1f1f 50%, var(--accent-color) 50%)}.profile-theme-swatch-daytime{background:linear-gradient(135deg, #fff 50%, var(--accent-color) 50%)}.profile-theme-swatch-mono{background:linear-gradient(135deg, #000 50%, var(--accent-color) 50%)}.profile-client-form{flex-direction:column;gap:10px;max-width:28rem;display:flex}.profile-client-form label{flex-direction:column;gap:4px;display:flex}.profile-checkbox{align-items:center;gap:8px;flex-direction:row!important}.profile-checkbox input{width:auto}.profile-panel.profile-readonly .profile-settings input,.profile-panel.profile-readonly .profile-settings select{pointer-events:auto;opacity:1;background:var(--bg-input);border:1px solid var(--border);color:var(--text-primary)}.profile-client-form select{width:100%;max-width:28rem}.user-item{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.user-issue-login{background:var(--bg-surface);color:inherit;cursor:pointer;border:1px solid #3f4f8f;border-radius:8px;padding:6px 10px}.user-qr-panel{border:1px solid #3a4258;border-radius:12px;margin-top:16px;padding:12px}.user-qr-url{word-break:break-all;opacity:.85;font-size:.75rem}.section-tab[hidden]{display:none}.login-banner{background:color-mix(in srgb, var(--accent-color) 14%, var(--bg-elevated));color:var(--text-secondary);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin:0 12px 8px;padding:10px 14px;font-size:.9rem;display:flex}.login-banner-btn{background:var(--bg-surface);color:inherit;cursor:pointer;white-space:nowrap;border:1px solid #3f4f8f;border-radius:8px;padding:6px 12px}.unauthorized-view{z-index:120;background:color-mix(in srgb, var(--bg-base) 88%, transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);justify-content:center;align-items:center;padding:24px 16px 96px;display:flex;position:fixed;inset:0}.unauthorized-view[hidden]{display:none}.unauthorized-card{background:var(--bg-elevated);border:1px solid #3a4258;border-radius:16px;width:min(520px,100%);max-height:calc(100vh - 120px);padding:20px;overflow:auto;box-shadow:0 12px 40px #00000059}.login-token-input{background:var(--bg-surface);width:100%;min-height:84px;color:inherit;font:inherit;resize:vertical;border:1px solid #3a4258;border-radius:10px;margin-top:6px;padding:10px 12px}main.app-locked .tab-panels,main.app-locked .tab-header{visibility:hidden}.user-item-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.user-item-actions{flex-wrap:wrap;gap:6px;display:flex}.user-login-details{background:color-mix(in srgb, var(--bg-surface) 80%, transparent);border:1px solid #3a4258;border-radius:12px;margin-top:12px;padding:12px}.user-login-details[hidden]{display:none}.user-login-token-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.user-login-token{word-break:break-all;opacity:.9;flex:200px;font-size:.75rem}.user-login-token.masked{letter-spacing:.08em}.user-toggle-login,.user-reveal-token,.user-copy-token{background:var(--bg-surface);color:inherit;cursor:pointer;border:1px solid #3f4f8f;border-radius:8px;padding:6px 10px}.login-banner[hidden]{display:none}#login-panel .login-actions{flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0;display:flex}.login-qr-video{background:#000;border-radius:8px;max-width:220px}.login-paste-label{margin:12px 0 8px;display:block}.user-edit-panel{border:1px solid #3a4258;border-radius:12px;margin-top:16px;padding:12px}.user-edit-overrides{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;margin-top:10px;display:grid}.upload-item.upload-stuck .upload-state{color:#e6a700}.upload-retry-btn{margin-top:8px;font-size:.85rem}
