.media-module[data-v-423ecba6]{border:1px solid var(--border);background:var(--surface);border-radius:8px;gap:14px;padding:16px;display:grid}.media-heading[data-v-423ecba6],.sub-heading[data-v-423ecba6]{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}.media-actions[data-v-423ecba6]{align-items:center;gap:8px;display:flex}.media-actions button[data-v-423ecba6],.media-filters button[data-v-423ecba6],.sub-actions button[data-v-423ecba6],.media-pager button[data-v-423ecba6],.gallery-actions button[data-v-423ecba6],.product-actions button[data-v-423ecba6],.video-row>button[data-v-423ecba6]{width:42px;padding:0}.sub-actions[data-v-423ecba6]{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.sub-actions input[type=text][data-v-423ecba6]{width:150px;min-height:42px}.media-message[data-v-423ecba6]{max-width:260px;color:var(--status-live-text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800;overflow:hidden}.media-tabs[data-v-423ecba6]{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.media-tabs button[data-v-423ecba6]{justify-content:space-between}.media-tabs button.active[data-v-423ecba6]{border-color:var(--accent-2);color:var(--accent-2);background:var(--accent-soft)}.media-tabs strong[data-v-423ecba6]{font-size:13px}.media-grid[data-v-423ecba6]{grid-template-columns:minmax(240px,.36fr) minmax(520px,1fr);align-items:start;gap:14px;display:grid}.media-side[data-v-423ecba6],.media-panel[data-v-423ecba6]{border:1px solid var(--border);background:var(--surface);border-radius:8px;align-content:start;gap:12px;min-height:540px;padding:14px;display:grid}.media-side[data-v-423ecba6]{max-height:660px;overflow:auto}.single-panel[data-v-423ecba6]{min-height:560px}.group-pill[data-v-423ecba6]{border-color:var(--border);text-align:left;grid-template-columns:minmax(0,1fr) auto;justify-content:stretch;min-height:44px;display:grid}.group-pill.selected[data-v-423ecba6]{border-color:var(--accent-2);background:var(--accent-soft)}.group-pill span[data-v-423ecba6],h4[data-v-423ecba6],p[data-v-423ecba6],code[data-v-423ecba6]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.group-pill small[data-v-423ecba6]{color:var(--text-muted);font-size:12px;font-weight:800}.media-state[data-v-423ecba6]{border-radius:999px;flex:none;padding:5px 9px;font-size:12px;font-weight:800;line-height:1}.state-loading[data-v-423ecba6]{color:var(--status-loading-text);background:var(--status-loading-bg)}.state-live[data-v-423ecba6]{color:var(--status-live-text);background:var(--status-live-bg)}.state-empty[data-v-423ecba6]{color:var(--status-empty-text);background:var(--status-empty-bg)}.state-error[data-v-423ecba6]{color:var(--status-error-text);background:var(--status-error-bg)}.media-filters[data-v-423ecba6]{grid-template-columns:minmax(0,1fr) auto 42px;align-items:center;gap:8px;display:grid}.media-filters.single-filter[data-v-423ecba6]{grid-template-columns:minmax(0,1fr) 42px}.media-filters.scan-filters[data-v-423ecba6]{grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) auto auto 42px}.media-filters.iwara-sync-tools[data-v-423ecba6]{grid-template-columns:minmax(170px,1fr) auto 42px}.media-filters.iwara-token-tools[data-v-423ecba6]{grid-template-columns:minmax(170px,1fr) 42px}.media-filters input[data-v-423ecba6]:disabled{color:var(--text-faint);background:var(--surface-muted)}.advanced-panel[data-v-423ecba6]{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;gap:10px;padding:10px;display:grid}.advanced-panel summary[data-v-423ecba6]{cursor:pointer;color:var(--text);font-weight:800}.inline-toggle[data-v-423ecba6]{border:1px solid var(--border);min-height:42px;color:var(--text-muted);background:var(--surface);border-radius:8px;align-items:center;gap:8px;padding:0 10px;font-size:13px;font-weight:800;display:inline-flex}.inline-toggle input[data-v-423ecba6]{width:16px;min-height:16px;accent-color:var(--accent-2)}.compact-toggle[data-v-423ecba6]{flex:none}.gallery-list[data-v-423ecba6],.product-grid[data-v-423ecba6],.video-list[data-v-423ecba6]{gap:10px;min-height:0;display:grid}.gallery-list[data-v-423ecba6]{grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.gallery-card[data-v-423ecba6],.product-card[data-v-423ecba6],.video-row[data-v-423ecba6]{border:1px solid var(--border);background:var(--surface);border-radius:8px;min-width:0}.gallery-card[data-v-423ecba6]{grid-template-columns:96px minmax(0,1fr) 42px;align-items:start;gap:10px;min-height:172px;padding:10px;display:grid}.cover-frame[data-v-423ecba6],.product-cover[data-v-423ecba6]{border:1px solid var(--border);color:var(--text-muted);background:var(--surface-muted);border-radius:8px;place-items:center;display:grid;overflow:hidden}.cover-frame[data-v-423ecba6]{width:96px;height:146px}.cover-frame img[data-v-423ecba6],.product-cover img[data-v-423ecba6]{object-fit:cover;width:100%;height:100%}.gallery-body[data-v-423ecba6],.product-body[data-v-423ecba6],.video-row>div[data-v-423ecba6]:last-of-type{gap:7px;min-width:0;display:grid}.gallery-actions[data-v-423ecba6],.product-actions[data-v-423ecba6]{align-content:start;gap:8px;display:grid}.gallery-actions button.active[data-v-423ecba6]{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.gallery-badges[data-v-423ecba6]{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.gallery-badges span[data-v-423ecba6],.gallery-badges small[data-v-423ecba6]{max-width:120px;color:var(--accent-2);background:var(--status-loading-bg);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:4px 7px;font-size:12px;font-weight:800;overflow:hidden}.gallery-badges small[data-v-423ecba6]{color:var(--text-muted);background:var(--surface-muted)}.gallery-badges span.offline[data-v-423ecba6]{color:var(--status-error-text);background:var(--status-error-bg)}.product-badges[data-v-423ecba6]{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.product-badges span[data-v-423ecba6]{max-width:120px;color:var(--status-live-text);background:var(--status-live-bg);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:4px 7px;font-size:12px;font-weight:800;overflow:hidden}.product-badges span.remote[data-v-423ecba6]{color:var(--status-loading-text);background:var(--status-loading-bg)}h4[data-v-423ecba6]{color:var(--text);margin:0;font-size:14px;line-height:1.35}p[data-v-423ecba6]{color:var(--text-muted);margin:0;font-size:13px}.tag-row[data-v-423ecba6]{flex-wrap:wrap;gap:6px;display:flex}.tag-row span[data-v-423ecba6]{max-width:120px;color:var(--accent);background:var(--accent-soft);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:4px 7px;font-size:12px;font-weight:800;overflow:hidden}.product-grid[data-v-423ecba6]{grid-template-columns:repeat(auto-fill,minmax(310px,1fr))}.product-card[data-v-423ecba6]{grid-template-columns:96px minmax(0,1fr) 42px;gap:10px;min-height:168px;padding:10px;display:grid}.product-cover[data-v-423ecba6]{width:96px;height:146px}.video-list[data-v-423ecba6]{align-content:start}.video-row[data-v-423ecba6]{grid-template-columns:44px minmax(0,1fr) 42px 42px;align-items:center;gap:10px;min-height:92px;padding:12px;display:grid}.video-icon[data-v-423ecba6]{width:44px;height:44px;color:var(--accent-2);background:var(--accent-soft);border-radius:8px;place-items:center;display:grid}.media-pager[data-v-423ecba6]{grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:10px;display:grid}.media-pager span[data-v-423ecba6]{color:var(--text-muted);text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.empty-state[data-v-423ecba6]{border:1px dashed var(--border);min-height:120px;color:var(--text-muted);background:var(--surface-muted);border-radius:8px;place-items:center;font-size:14px;display:grid}.error-text[data-v-423ecba6]{color:var(--status-error-text);background:var(--status-error-bg)}@media (width<=1180px){.media-grid[data-v-423ecba6]{grid-template-columns:1fr}.media-side[data-v-423ecba6],.media-panel[data-v-423ecba6]{min-height:420px}}@media (width<=720px){.media-tabs[data-v-423ecba6],.media-filters[data-v-423ecba6],.media-filters.single-filter[data-v-423ecba6],.media-filters.scan-filters[data-v-423ecba6],.media-filters.iwara-sync-tools[data-v-423ecba6],.media-filters.iwara-token-tools[data-v-423ecba6],.gallery-list[data-v-423ecba6],.product-grid[data-v-423ecba6],.gallery-card[data-v-423ecba6],.product-card[data-v-423ecba6],.video-row[data-v-423ecba6],.media-heading[data-v-423ecba6],.sub-heading[data-v-423ecba6]{grid-template-columns:1fr}.media-heading[data-v-423ecba6],.sub-heading[data-v-423ecba6]{display:grid}.sub-actions[data-v-423ecba6]{justify-content:stretch}.sub-actions input[type=text][data-v-423ecba6]{width:100%}.cover-frame[data-v-423ecba6],.product-cover[data-v-423ecba6]{width:100%;height:220px}}:root,:root[data-theme=dark]{--page-bg-base:#06100f;--page-grid:#7dffda0e;--page-grid-strong:#7dffda0b;--page-wash:#2ab5ff1f;--surface:#060e0ff0;--surface-raised:#0f201feb;--surface-soft:#051012c7;--surface-hover:#081c1de6;--surface-muted:#070e109e;--text:#e8fff7;--text-strong:#f6fffb;--text-muted:#daeeeca3;--text-faint:#cde1e575;--border:#7dffda29;--border-strong:#43f5d261;--field:#040d0fd1;--accent:#43f5d2;--accent-soft:#43f5d224;--accent-2:#2ab5ff;--warn:#f7c948;--warn-text:#ffe9a6;--danger:#fb7185;--danger-text:#ffb4c0;--shadow:#00000047;--code-bg:#061419c7;--code-text:#9be7ff;--status-live-bg:#062b27b8;--status-live-border:#5eead447;--status-live-text:#84f7dc;--status-loading-bg:#082434b8;--status-loading-border:#38bdf842;--status-loading-text:#9be7ff;--status-empty-bg:#362708b3;--status-empty-border:#f7c94847;--status-empty-text:#ffe9a6;--status-error-bg:#370e16c7;--status-error-border:#fb718547;--status-error-text:#ffb4c0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--page-bg-base:#f5fbfa;--page-grid:#0e749014;--page-grid-strong:#0d948812;--page-wash:#0d94881a;--surface:#fffffff5;--surface-raised:#f6fdfbfa;--surface-soft:#ffffffe6;--surface-hover:#e8faf7f5;--surface-muted:#eff6f5e6;--text:#17302d;--text-strong:#071512;--text-muted:#526764;--text-faint:#72817f;--border:#0f766e2e;--border-strong:#0d948873;--field:#fff;--accent:#0f766e;--accent-soft:#0d94881f;--accent-2:#2563eb;--warn:#b7791f;--warn-text:#6f4a0b;--danger:#dc2626;--danger-text:#991b1b;--shadow:#0f172a1a;--code-bg:#f1f5f9f2;--code-text:#155e75;--status-live-bg:#dcfce7;--status-live-border:#bbf7d0;--status-live-text:#166534;--status-loading-bg:#e0f2fe;--status-loading-border:#bae6fd;--status-loading-text:#075985;--status-empty-bg:#fef3c7;--status-empty-border:#fde68a;--status-empty-text:#92400e;--status-error-bg:#fee2e2;--status-error-border:#fecaca;--status-error-text:#991b1b;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root{color:var(--text);background:var(--page-bg-base);font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,Segoe UI,Microsoft YaHei,PingFang SC,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px;min-height:100%}body{min-width:320px;min-height:100vh;margin:0}button,a,input,select,textarea{font:inherit}button{border:1px solid var(--border);min-height:40px;color:var(--text);background:var(--surface);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 14px;display:inline-flex}button:hover:not(:disabled){border-color:var(--accent-2);color:var(--accent-2)}button:disabled{color:var(--text-faint);background:var(--surface-muted);cursor:not-allowed}input,select,textarea{border:1px solid var(--border);width:100%;min-width:0;color:var(--text);background:var(--surface);border-radius:8px;outline:none}input,select{min-height:42px;padding:0 12px}textarea{resize:vertical;min-height:78px;padding:10px 12px}code{color:var(--code-text);text-overflow:ellipsis;white-space:nowrap;font-family:Cascadia Code,JetBrains Mono,Consolas,monospace;font-size:12px;display:block;overflow:hidden}.shell{grid-template-columns:240px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{border-right:1px solid var(--border);background:var(--surface);flex-direction:column;gap:28px;min-width:0;height:100vh;padding:24px 18px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;min-height:48px;display:flex}.brand-icon{color:var(--accent-2);flex:none}.brand strong,.brand span{display:block}.brand strong{color:var(--text);font-size:18px;line-height:1.2}.brand span{color:var(--text-muted);font-size:13px}.nav{gap:14px;min-width:0;max-width:100%;padding-right:2px;display:grid;overflow:auto}.nav-group{gap:6px;display:grid}.nav-group-label{color:var(--text-muted);text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;padding:0 12px;font-size:11px;font-weight:800;line-height:1.3;overflow:hidden}.nav-link{min-height:40px;color:var(--text-muted);border-radius:8px;align-items:center;gap:10px;padding:0 12px;text-decoration:none;display:flex}.nav-link:hover,.nav-link.active{color:var(--text);background:var(--accent-soft)}.main{align-content:start;gap:24px;padding:28px;display:grid}.topbar{justify-content:space-between;align-items:center;gap:16px;display:flex}.eyebrow{color:var(--accent-2);text-transform:uppercase;margin:0 0 4px;font-size:12px;font-weight:700}h1,h2,h3,p{margin:0}h1{color:var(--text);font-size:28px;line-height:1.2}h2{color:var(--text);font-size:16px;line-height:1.3}h3{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.35;overflow:hidden}.top-actions{align-items:center;gap:12px;min-width:0;display:flex}.endpoint{border:1px solid var(--border);max-width:min(42vw,420px);color:var(--text-muted);background:var(--surface);text-overflow:ellipsis;white-space:nowrap;border-radius:8px;padding:10px 12px;font-size:13px;display:block;overflow:hidden}.sync-state{border:1px solid var(--status-live-border);min-height:40px;color:var(--status-live-text);background:var(--status-live-bg);white-space:nowrap;border-radius:999px;align-items:center;padding:0 12px;font-size:13px;font-weight:700;display:inline-flex}.sync-state.compact{min-height:30px}.data-loading{color:var(--status-loading-text);background:var(--status-loading-bg);border-color:var(--status-loading-border)}.data-empty{color:var(--status-empty-text);background:var(--status-empty-bg);border-color:var(--status-empty-border)}.data-error{color:var(--status-error-text);background:var(--status-error-bg);border-color:var(--status-error-border)}.metrics{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;display:grid}.metric,.service-card,.runtime-row,.protocol-band,.image-panel,.library-panel,.clash-panel,.admin-auth-panel,.admin-access-panel,.admin-settings-panel,.scheduler-panel,.ops-panel{border:1px solid var(--border);background:var(--surface);border-radius:8px}.metric{gap:8px;min-height:116px;padding:18px;display:grid}.metric-label,.metric small,.service-card small,.service-card p,.runtime-row p,.panel-subtitle,.episode-row p,.episode-row time,.artist-meta,.artist-sources,.image-card-body p,.image-meta,.image-detail p,.similar-row small,.book-meta,.book-stats,.task-row p,.task-meta,.root-row p,.root-row small{color:var(--text-muted);font-size:13px}.metric strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:30px;line-height:1;overflow:hidden}.library-grid{grid-template-columns:minmax(300px,.72fr) minmax(420px,1fr);align-items:start;gap:14px;display:grid}.library-panel{grid-template-rows:auto auto minmax(0,1fr) auto;gap:14px;min-height:620px;padding:16px;display:grid}.library-panel.episodes{grid-template-rows:auto minmax(0,1fr) auto}.image-library-grid{grid-template-columns:minmax(260px,.46fr) minmax(560px,1fr);align-items:start;gap:14px;display:grid}.image-panel{gap:14px;min-height:620px;padding:16px;display:grid}.artist-panel{grid-template-rows:auto auto minmax(0,1fr) auto}.asset-panel{grid-template-rows:auto auto minmax(0,1fr) auto auto}.clash-grid{grid-template-columns:minmax(300px,.62fr) minmax(480px,1fr);align-items:start;gap:14px;display:grid}.clash-grid.single-route-grid{grid-template-columns:minmax(0,1fr)}.scheduler-grid,.admin-settings-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:14px;display:grid}.admin-auth-panel{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-rows:auto auto auto auto auto;gap:14px;min-height:320px;padding:16px;display:grid}.admin-access-panel{grid-template-rows:auto auto auto minmax(0,1fr) auto;gap:14px;min-height:420px;padding:16px;display:grid}.clash-panel{grid-template-rows:auto auto minmax(0,1fr) auto auto;gap:14px;min-height:520px;padding:16px;display:grid}.clash-panel.clash-groups{grid-template-rows:auto minmax(0,1fr) auto}.clash-rules{grid-column:1/-1;min-height:440px}.scheduler-panel{grid-template-rows:auto auto minmax(0,1fr) auto;gap:14px;min-height:420px;padding:16px;display:grid}.admin-settings-panel{grid-template-rows:auto auto minmax(0,1fr) auto;gap:14px;min-height:460px;padding:16px;display:grid}.admin-setting-editor{grid-template-rows:auto auto auto auto}.secret-field-header{color:var(--text-muted);justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;font-size:12px;display:flex}.secret-field-header button{width:40px;min-height:34px;padding:0}.secret-value{-webkit-text-security:disc}.admin-session-card{border:1px solid var(--border);background:var(--surface-muted);border-radius:8px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;padding:12px;display:grid}.admin-session-card svg{color:var(--accent)}.admin-session-card h3,.admin-session-card p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-session-card p{color:var(--text-muted);font-size:13px}.admin-session-meta{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(82px,auto) minmax(130px,auto);gap:8px;display:grid}.admin-session-meta span{border:1px solid var(--border);min-width:0;min-height:36px;color:var(--text-muted);background:var(--surface);text-overflow:ellipsis;white-space:nowrap;border-radius:8px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex;overflow:hidden}.admin-session-meta svg{color:var(--accent);flex:none}.admin-auth-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.admin-auth-form button[type=submit],.admin-auth-form button[type=button]{min-width:0}.scheduler-editor{grid-template-rows:auto auto auto auto}.ops-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:14px;display:grid}.ops-panel{grid-template-rows:auto auto minmax(0,1fr) auto auto;gap:14px;min-height:520px;padding:16px;display:grid}.ops-panel:last-child{grid-template-rows:auto minmax(0,1fr)}.files-panel{grid-template-rows:auto minmax(220px,1fr) auto}.panel-heading{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}.panel-heading>div{min-width:0}.panel-heading h2{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.panel-subtitle{margin-top:4px}.panel-actions{flex:none;align-items:center;gap:8px;display:flex}.panel-actions button{width:40px;padding:0}.library-panel>.panel-heading .panel-actions{flex-wrap:wrap;flex:auto;justify-content:flex-end}.episode-actions{flex-wrap:wrap;justify-content:flex-end}.episode-actions .toggle-field{min-height:40px}.search-bar{grid-template-columns:minmax(0,1fr) auto;gap:10px;display:grid}.library-tools{gap:10px;min-width:0;display:grid}.book-list,.episode-list,.task-list,.artist-list,.clash-subscribe-list,.clash-group-list,.clash-rule-list,.scheduler-job-list,.admin-setting-list,.root-list{align-content:start;gap:8px;min-height:0;padding-right:4px;display:grid;overflow:auto}.clash-subscribe-row{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:minmax(0,1fr) 42px 42px 42px;align-items:stretch;gap:10px;min-height:94px;padding:10px;display:grid}.clash-subscribe-row.selected{border-color:var(--accent-2);background:var(--accent-soft)}.clash-select-button{text-align:left;background:0 0;border:0;place-content:center stretch;gap:5px;min-width:0;min-height:0;padding:0;display:grid}.clash-select-button:hover:not(:disabled){color:inherit;border-color:#0000}.clash-rule-row{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(58px,auto) 42px 42px;align-items:center;gap:10px;min-height:68px;padding:10px;display:grid}.clash-rule-main{text-align:left;background:0 0;border:0;justify-content:stretch;gap:4px;min-width:0;min-height:0;padding:0;display:grid}.clash-rule-main:hover:not(:disabled){color:inherit;border-color:#0000}.scheduler-filters{grid-template-columns:minmax(92px,.7fr) minmax(116px,.7fr) minmax(0,1.2fr) 42px;gap:8px;display:grid}.scheduler-filters button{width:42px;padding:0}.admin-settings-filters{grid-template-columns:minmax(118px,.8fr) minmax(0,1.2fr) 42px;gap:8px;display:grid}.admin-settings-filters button{width:42px;padding:0}.access-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.access-tabs button{justify-content:center;min-width:0}.access-tabs button.active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.access-filters{grid-template-columns:minmax(0,1.2fr) minmax(110px,.7fr) minmax(110px,.7fr) 42px;gap:8px;display:grid}.access-filters button{width:42px;padding:0}.access-check{min-height:42px;color:var(--text-muted);align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.access-check input{width:16px;min-height:16px;accent-color:var(--accent-2);flex:0 0 16px}.access-list{align-content:start;gap:8px;min-height:0;padding-right:4px;display:grid;overflow:auto}.access-row{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:24px minmax(0,1fr) minmax(128px,auto);align-items:center;gap:10px;min-width:0;min-height:68px;padding:10px;display:grid}.access-row svg{color:var(--accent)}.access-row.banned svg{color:var(--danger-text)}.access-row h3,.access-row p,.access-row>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.access-row p,.access-row>span{color:var(--text-muted);font-size:12px}.access-row>span{text-align:right}.scheduler-job-row{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(150px,auto) auto;align-items:center;gap:10px;min-width:0;padding:10px;display:grid}.scheduler-job-row.selected{border-color:var(--accent-2);background:var(--accent-soft)}.admin-setting-row{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(132px,auto);align-items:center;gap:10px;min-width:0;padding:10px;display:grid}.admin-setting-row.selected{border-color:var(--accent);background:var(--accent-soft)}.scheduler-job-main{text-align:left;background:0 0;border:0;grid-template-columns:24px minmax(0,1fr);justify-content:start;min-width:0;min-height:62px;padding:0;display:grid}.scheduler-job-main:hover:not(:disabled){color:inherit;border-color:#0000}.admin-setting-main{text-align:left;background:0 0;border:0;grid-template-columns:24px minmax(0,1fr);justify-content:start;min-width:0;min-height:64px;padding:0;display:grid}.admin-setting-main:hover:not(:disabled){color:inherit;border-color:#0000}.admin-setting-main svg{color:var(--accent)}.scheduler-job-main svg{color:var(--accent-2)}.scheduler-job-main h3,.scheduler-job-main p,.admin-setting-main h3,.admin-setting-main p,.admin-setting-main code{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-setting-main code{color:var(--code-text);margin-top:4px;font-size:12px;display:block}.admin-setting-row>span{color:var(--text-muted);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.scheduler-job-meta{color:var(--text-muted);justify-items:end;gap:8px;font-size:12px;display:grid}.scheduler-job-meta>span:last-child{text-overflow:ellipsis;white-space:nowrap;max-width:170px;overflow:hidden}.scheduler-job-actions{gap:8px;display:flex}.scheduler-job-actions button,.scheduler-editor header button,.admin-setting-editor header button{width:40px;padding:0}.scheduler-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.scheduler-preset-control{grid-template-columns:minmax(0,1fr) 42px;gap:8px;display:grid}.scheduler-preset-control button{width:42px;padding:0}.scheduler-form button[type=submit]{grid-column:1/-1}.admin-setting-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.admin-setting-form textarea{min-height:118px}.admin-setting-form button[type=submit]{grid-column:1/-1}.admin-setting-footnote{color:var(--text-muted);grid-template-columns:18px minmax(0,1fr);align-items:center;gap:8px;font-size:12px;display:grid}.admin-setting-footnote span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.clash-select-button span,.clash-rule-main span{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.clash-select-button small,.clash-rule-main small,.clash-group-row p{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.clash-subscribe-form{border-top:1px solid var(--border);grid-template-columns:minmax(130px,.52fr) minmax(180px,1fr) 42px;gap:8px;padding-top:10px;display:grid}.clash-rule-form{border-top:1px solid var(--border);grid-template-columns:minmax(130px,.52fr) minmax(180px,1fr) minmax(140px,.7fr) minmax(86px,.32fr) 42px;gap:8px;padding-top:10px;display:grid}.clash-form-heading{grid-column:1/-1}.clash-form-heading button,.clash-subscribe-form button[type=submit],.clash-rule-form button[type=submit],.clash-tools button,.clash-subscribe-row>button:not(.clash-select-button),.clash-rule-row>button:not(.clash-rule-main){width:42px;padding:0}.clash-tools{grid-template-columns:minmax(0,1fr) 42px;gap:8px;display:grid}.clash-group-row{border:1px solid var(--border);background:var(--surface);border-radius:8px;gap:10px;min-height:118px;padding:12px;display:grid}.clash-group-heading{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}.clash-group-heading>div{min-width:0}.clash-node-list{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.clash-node-list button{border:1px solid var(--border-strong);max-width:180px;min-height:30px;color:var(--accent);background:var(--accent-soft);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:12px;font-weight:800;overflow:hidden}.clash-node-list button.selected{border-color:var(--accent-2);color:var(--accent-2);background:var(--status-loading-bg)}.book-row{border-color:var(--border);text-align:left;grid-template-columns:minmax(0,1fr) auto;justify-content:stretch;align-items:center;gap:6px 12px;min-height:78px;padding:12px;display:grid}.book-row.selected{border-color:var(--accent-2);background:var(--accent-soft)}.book-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.book-meta{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.book-stats{background:var(--surface-muted);white-space:nowrap;border-radius:999px;grid-area:1/2/span 2;align-self:center;padding:5px 9px}.book-stats.offline{color:var(--status-error-text);background:var(--status-error-bg)}.book-editor{border-top:1px solid var(--border);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:10px;display:grid}.book-editor-heading,.book-editor .field.full{grid-column:1/-1}.book-editor-heading button{width:40px;padding:0}.book-offline-toggle{justify-self:start}.book-editor-actions{grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:8px;display:grid}.book-editor-actions button{width:42px;padding:0}.artist-list{align-content:start}.artist-row{border-color:var(--border);text-align:left;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 10px;min-height:72px;padding:11px;display:grid}.artist-row.selected{border-color:var(--accent);background:var(--accent-soft)}.artist-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.artist-meta{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.artist-sources{background:var(--surface-muted);white-space:nowrap;border-radius:999px;grid-area:1/2/span 2;align-self:center;padding:5px 9px}.artist-editor{border-top:1px solid var(--border);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;padding-top:10px;display:grid}.artist-editor-heading,.artist-editor .root-message{grid-column:1/-1}.artist-editor-heading button{width:40px;padding:0}.artist-editor-actions{grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:8px;display:grid}.artist-editor-actions button{width:42px;padding:0}.image-filters{grid-template-columns:minmax(180px,1fr) minmax(128px,.36fr) auto 42px;align-items:center;gap:10px;display:grid}.image-tools{grid-template-columns:minmax(180px,1fr) auto 42px;align-items:center;gap:10px;display:grid}.image-filters button,.image-tools button{width:42px;padding:0}.toggle-field{border:1px solid var(--border);min-height:42px;color:var(--text-muted);background:var(--surface);white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 12px;font-size:13px;font-weight:800;display:inline-flex}.toggle-field input{width:16px;min-height:16px;accent-color:var(--accent-2)}.image-card-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));align-content:start;gap:10px;min-height:0;padding-right:4px;display:grid;overflow:auto}.image-card{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:92px minmax(0,1fr);gap:10px;min-width:0;min-height:152px;padding:10px;display:grid}.image-card.selected{border-color:var(--accent-2);background:var(--accent-soft)}.image-preview{border-color:var(--border);width:92px;min-height:132px;color:var(--text-muted);background:var(--surface-muted);grid-row:1/span 2;align-self:stretch;padding:0;font-size:12px;font-weight:800;overflow:hidden}.image-preview img{object-fit:cover;width:100%;height:100%}.image-card-body{align-content:start;gap:6px;min-width:0;display:grid}.image-card-body p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.image-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.image-meta span{background:var(--surface-muted);text-align:center;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:4px 7px;overflow:hidden}.image-actions{gap:8px;display:flex}.image-actions button{width:40px;min-height:38px;padding:0}.image-detail{border-top:1px solid var(--border);gap:10px;padding-top:14px;display:grid}.image-detail .subpanel-heading{align-items:flex-start}.image-detail .subpanel-heading>div{min-width:0}.similar-list{gap:8px;max-height:220px;padding-right:4px;display:grid;overflow:auto}.similar-row{border-color:var(--border);text-align:left;align-content:center;gap:4px;min-height:54px;padding:8px 10px;display:grid}.similar-row span,.similar-row small,.image-detail h3,.image-detail p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.compact-empty{min-height:70px}.episode-row{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:64px minmax(0,1fr) 92px 42px 42px;align-items:center;gap:12px;min-height:68px;padding:10px 12px;display:grid}.episode-no{min-width:48px;min-height:34px;color:var(--accent);background:var(--accent-soft);border-radius:999px;justify-content:center;align-items:center;font-size:13px;font-weight:800;display:inline-flex}.episode-row p{text-overflow:ellipsis;white-space:nowrap;margin-top:4px;overflow:hidden}.episode-row time{white-space:nowrap;justify-self:end}.episode-row button{width:42px;padding:0}.download-create-form{border:1px solid var(--border);background:var(--surface-muted);border-radius:8px;grid-template-columns:minmax(160px,1.4fr) repeat(3,minmax(92px,.8fr));align-items:end;gap:10px;padding:12px;display:grid}.download-url-field{grid-column:span 2}.download-create-form textarea{resize:vertical;min-height:70px}.download-toggle{align-self:end;min-height:42px}.download-create-actions{grid-column:1/-1;grid-template-columns:minmax(0,1fr) 42px;align-items:center;gap:8px;display:grid}.download-create-actions button{justify-self:end;width:42px;padding:0}.task-row{border:1px solid var(--border);background:var(--surface);border-radius:8px;gap:10px;min-height:132px;padding:12px;display:grid}.task-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}.task-heading>div{min-width:0}.task-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.task-actions button{width:40px;padding:0}.task-state,.root-driver{white-space:nowrap;border-radius:999px;flex:none;padding:5px 9px;font-size:12px;font-weight:800;line-height:1}.task-active{color:var(--status-loading-text);background:var(--status-loading-bg)}.task-done{color:var(--status-live-text);background:var(--status-live-bg)}.task-paused,.task-unknown{color:var(--text-muted);background:var(--surface-muted)}.task-failed{color:var(--status-error-text);background:var(--status-error-bg)}.progress-track{background:var(--border);border-radius:999px;width:100%;height:8px;overflow:hidden}.progress-track span{border-radius:inherit;background:var(--accent-2);height:100%;display:block}.task-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.task-meta span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.root-row{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:28px minmax(0,1fr) auto auto;align-items:center;gap:10px 12px;min-height:92px;padding:12px;display:grid}.root-row svg{color:var(--accent)}.root-row h3,.root-row p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.root-row small{grid-column:2/5}.root-driver{color:var(--accent);background:var(--accent-soft)}.root-actions{gap:8px;display:flex}.root-actions button{width:40px;padding:0}.root-editor{border-top:1px solid var(--border);gap:12px;padding-top:14px;display:grid}.root-editor-heading{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.root-editor-heading>div{gap:8px;display:flex}.root-editor-heading button{width:40px;padding:0}.root-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.ftp-fields{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0;display:grid}.field{gap:6px;min-width:0;display:grid}.field.full{grid-column:1/-1}.field span,.check-grid span{color:var(--text-muted);font-size:12px;font-weight:700}.check-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:8px;display:grid}.check-grid label,.ftp-checks label{align-items:center;gap:8px;min-height:42px;display:flex}.check-grid input,.ftp-checks input{width:16px;min-height:16px;accent-color:var(--accent-2);flex:0 0 16px}.ftp-checks{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:8px;display:grid}.root-probe{grid-template-columns:minmax(0,1fr) 42px minmax(80px,auto);align-items:center;gap:8px;display:grid}.root-probe button{width:42px;padding:0}.root-probe span,.root-scan-result,.root-claim-result,.root-message{color:var(--status-live-text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.root-scan{grid-template-columns:minmax(0,1fr) 92px 42px;align-items:center;gap:8px;display:grid}.root-scan button{width:42px;padding:0}.root-scan-limit{gap:4px;display:grid}.root-scan-limit span,.root-scan-options span{color:var(--text-muted);font-size:12px;font-weight:700}.root-scan-options{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,auto));gap:8px;display:grid}.root-scan-options label{align-items:center;gap:8px;min-height:42px;display:flex}.root-scan-options input{width:16px;min-height:16px;accent-color:var(--accent-2);flex:0 0 16px}.root-scan-result{grid-column:1/-1}.root-claim{grid-template-columns:minmax(0,.7fr) minmax(0,1fr) minmax(0,.7fr) 42px;align-items:center;gap:8px;display:grid}.root-claim input[name=root-claim-path],.root-claim-result{grid-column:1/-1}.root-claim button{grid-area:2/4;width:42px;padding:0}.root-claim-options{flex-wrap:wrap;grid-column:1/-1;gap:8px 14px;min-width:0;display:flex}.root-claim label{align-items:center;gap:8px;min-width:0;min-height:42px;display:flex}.root-claim label span{color:var(--text-muted);font-size:12px;font-weight:700}.root-claim input[type=checkbox]{width:16px;min-height:16px;accent-color:var(--accent-2);flex:0 0 16px}.file-browser{border-top:1px solid var(--border);gap:10px;padding-top:14px;display:grid}.subpanel-heading{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.subpanel-heading h3{margin-top:2px}.subpanel-heading button{width:40px;padding:0}.file-browser-controls{grid-template-columns:minmax(92px,.7fr) minmax(0,1fr) minmax(0,1fr) 42px;gap:8px;display:grid}.file-browser-controls button{width:42px;padding:0}.claim-controls{grid-template-columns:minmax(92px,.8fr) minmax(0,1fr) 42px}.file-entry-list,.file-claim-list{gap:8px;display:grid}.file-entry-row,.file-claim-row{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:24px minmax(0,1fr) 40px 40px 40px;align-items:center;gap:10px;min-width:0;padding:10px;display:grid}.file-claim-row{grid-template-columns:24px minmax(0,1fr)}.file-entry-row svg,.file-claim-row svg{color:var(--accent)}.file-entry-row h4,.file-claim-row h4,.file-entry-row p,.file-claim-row p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.file-entry-row button{width:40px;padding:0}.file-preview{border-top:1px solid var(--border);gap:10px;min-width:0;padding-top:12px;display:grid}.file-preview .subpanel-heading{align-items:flex-start}.file-preview .subpanel-heading>div{min-width:0}.file-preview .subpanel-heading p:not(.eyebrow){color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.file-preview pre{border:1px solid var(--border);max-height:280px;color:var(--text);background:var(--surface-muted);white-space:pre-wrap;word-break:break-word;border-radius:8px;margin:0;padding:12px;font-family:Cascadia Code,JetBrains Mono,Consolas,monospace;font-size:12px;line-height:1.5;overflow:auto}.compact-pager{min-height:42px;padding:0}.watch-card{border:1px solid var(--border);background:var(--surface-muted);border-radius:8px;gap:10px;min-height:136px;padding:12px;display:grid}.watch-card button{justify-self:start}.watch-card h3,.watch-card p{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.watch-card p{color:var(--text-muted);font-size:13px}.inline-error{border-radius:8px;padding:8px;font-size:13px}.empty-state{border:1px dashed var(--border);min-height:120px;color:var(--text-muted);background:var(--surface-muted);border-radius:8px;place-items:center;font-size:14px;display:grid}.error-text{color:var(--status-error-text);background:var(--status-error-bg)}.pager{grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:10px;display:grid}.pager button{width:42px;padding:0}.pager span{color:var(--text-muted);text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.admin-settings-summary{grid-template-columns:1fr}.service-grid{grid-template-columns:repeat(3,minmax(220px,1fr));gap:14px;display:grid}.service-card{gap:14px;min-height:152px;padding:16px;display:grid}.service-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.state,.runtime-state{white-space:nowrap;border-radius:999px;flex:none;padding:4px 9px;font-size:12px;font-weight:700;line-height:1}.state-ready,.runtime-connected{color:var(--status-live-text);background:var(--status-live-bg)}.state-stub,.runtime-pending{color:var(--status-loading-text);background:var(--status-loading-bg)}.state-planned,.runtime-later{color:var(--status-empty-text);background:var(--status-empty-bg)}.runtime-grid{grid-template-columns:repeat(2,minmax(240px,1fr));gap:14px;display:grid}.runtime-row{grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:88px;padding:16px;display:grid}.runtime-row svg{color:var(--accent)}.protocol-band{grid-template-columns:28px minmax(0,1fr) 28px;align-items:center;gap:14px;min-height:88px;padding:18px;display:grid}.protocol-band svg:first-child{color:var(--accent-2)}.protocol-band svg:last-child{color:var(--status-live-text)}.protocol-band p{color:var(--text-muted);font-size:14px}@media (width<=1320px){.image-library-grid,.library-grid,.clash-grid,.admin-settings-grid,.scheduler-grid,.ops-grid{grid-template-columns:1fr}.image-panel,.library-panel,.clash-panel,.admin-auth-panel,.admin-access-panel,.admin-settings-panel,.scheduler-panel,.ops-panel{min-height:520px}}@media (width<=1040px){.shell{grid-template-columns:minmax(0,1fr);overflow-x:hidden}.sidebar{flex-direction:row;justify-content:space-between;align-items:center;width:100%;max-width:100%;height:auto;position:static;overflow:hidden}.nav{flex:1 1 0;grid-auto-flow:column;max-width:100%;overflow-x:auto}.metrics,.service-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}}@media (width<=720px){.sidebar,.topbar,.top-actions{flex-direction:column;align-items:stretch}.main{padding:20px}.endpoint{max-width:none}.nav{width:100%}.metrics,.service-grid,.runtime-grid,.search-bar,.book-editor,.artist-editor,.clash-subscribe-form,.clash-rule-form,.clash-tools,.image-filters,.image-tools,.image-card,.image-meta,.download-create-form,.download-create-actions,.episode-row,.task-heading,.task-meta,.clash-subscribe-row,.clash-rule-row,.clash-group-heading,.admin-session-card,.admin-session-meta,.admin-auth-form,.access-filters,.access-row,.admin-settings-filters,.admin-setting-row,.admin-setting-form,.scheduler-filters,.scheduler-job-row,.scheduler-form,.root-form-grid,.ftp-fields,.ftp-checks,.check-grid,.root-probe,.root-scan,.root-claim,.file-browser-controls,.claim-controls,.file-entry-row,.file-claim-row,.root-row,.runtime-row,.protocol-band{grid-template-columns:1fr}.episode-no,.image-preview,.download-url-field,.book-stats,.episode-row time,.root-row small{grid-column:1}.book-row{grid-template-columns:1fr}.book-stats{grid-row:auto;justify-self:start}.image-preview{grid-row:auto;width:100%;min-height:180px}.artist-sources{grid-area:auto/1;justify-self:start}.root-driver,.task-actions,.download-create-actions button,.book-editor-actions button,.artist-editor-actions button,.clash-form-heading button,.clash-subscribe-form button[type=submit],.clash-rule-form button[type=submit],.clash-rule-row>button:not(.clash-rule-main),.clash-tools button,.image-filters button,.image-tools button,.file-entry-row button,.episode-row button{justify-self:start}.task-actions{flex:100%;justify-content:flex-start;width:100%}.episode-actions{justify-content:flex-start}.runtime-state,.protocol-band svg:last-child{grid-column:1}.root-claim button{grid-area:auto/1;justify-self:start}.root-claim-options{grid-column:1}}:root{color:var(--text);background:var(--page-bg-base);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:Inter,Segoe UI,Microsoft YaHei,PingFang SC,Arial,sans-serif}button{border-color:var(--border-strong);color:var(--text);background:linear-gradient(180deg, var(--surface-raised), var(--surface));box-shadow:inset 0 1px 0 color-mix(in srgb, var(--text-strong) 6%, transparent)}.auth-screen{grid-template-columns:minmax(280px,.84fr) minmax(360px,520px);align-items:center;gap:40px;min-height:100vh;padding:clamp(24px,5vw,72px);display:grid}.auth-loading{grid-template-columns:minmax(280px,560px);justify-content:center}.auth-intro{gap:16px;min-width:0;display:grid}.auth-logo{color:var(--accent);filter:drop-shadow(0 0 18px var(--accent-soft))}.auth-intro h1{color:var(--text-strong);font-size:clamp(42px,7vw,92px);line-height:.95}.auth-intro p:not(.eyebrow){max-width:520px;color:var(--text-muted);font-size:17px;line-height:1.6}.auth-signal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;max-width:520px;margin-top:12px;display:grid}.auth-signal-grid span{border:1px solid var(--border);background:linear-gradient(135deg, var(--accent-soft), transparent 62%), var(--surface-soft);border-radius:8px;min-height:48px}.auth-card{min-height:auto;box-shadow:0 28px 80px var(--shadow)}.brand-icon,.runtime-row svg,.root-row svg,.file-entry-row svg,.file-claim-row svg,.admin-session-meta svg,.admin-session-card svg,.admin-setting-main svg{color:var(--accent)}.brand strong,h1,h2,h3{color:var(--text-strong)}.brand span,.metric-label,.metric small,.service-card small,.service-card p,.runtime-row p,.panel-subtitle,.episode-row p,.episode-row time,.artist-meta,.artist-sources,.image-card-body p,.image-meta,.image-detail p,.similar-row small,.book-meta,.book-stats,.task-row p,.task-meta,.root-row p,.root-row small,.admin-session-card p,.admin-setting-row>span,.scheduler-job-meta,.field span,.check-grid span,.access-check,.pager span,.protocol-band p,.file-preview .subpanel-heading p:not(.eyebrow),.watch-card p,.root-scan-limit span,.root-scan-options span,.root-claim label span{color:var(--text-muted)}.editor-drawer-backdrop,.confirm-backdrop{z-index:80;background:color-mix(in srgb, var(--page-bg-base) 48%, transparent);display:grid;position:fixed;inset:0}.editor-drawer-backdrop{justify-content:end}.editor-drawer{border-left:1px solid var(--border);width:min(560px,100vw);max-height:100vh;color:var(--text);background:var(--surface);box-shadow:-24px 0 70px var(--shadow);grid-template-rows:auto minmax(0,1fr) auto;gap:16px;padding:20px;display:grid;overflow:auto}.editor-drawer-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:16px;min-width:0;padding-bottom:14px;display:flex}.editor-drawer-header>div{min-width:0}.editor-drawer-header button{flex:none;width:42px;padding:0}.editor-drawer-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:10px;padding-top:12px;display:flex}.field-help{color:var(--text-muted);margin-top:4px;font-size:12px;line-height:1.45;display:block}.confirm-backdrop{place-items:center;padding:20px}.confirm-dialog{border:1px solid var(--border);width:min(420px,100%);color:var(--text);background:var(--surface);box-shadow:0 24px 80px var(--shadow);border-radius:8px;gap:16px;padding:18px;display:grid}.confirm-dialog>p{color:var(--text-muted);line-height:1.55}.confirm-dialog footer{justify-content:flex-end;gap:10px;display:flex}.status-badge{border:1px solid var(--border);min-height:28px;color:var(--text-muted);background:var(--surface-soft);border-radius:8px;align-items:center;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.status-live,.status-success{border-color:var(--status-live-border);color:var(--status-live-text);background:var(--status-live-bg)}.status-loading{border-color:var(--status-loading-border);color:var(--status-loading-text);background:var(--status-loading-bg)}.status-empty,.status-warning{border-color:var(--status-empty-border);color:var(--status-empty-text);background:var(--status-empty-bg)}.status-error{border-color:var(--status-error-border);color:var(--status-error-text);background:var(--status-error-bg)}.eyebrow{color:var(--accent);letter-spacing:0}.nav-link{color:var(--text-muted);border:1px solid #0000;position:relative}.nav-link.active:before{background:var(--accent);width:3px;box-shadow:0 0 16px var(--accent);content:"";border-radius:8px;position:absolute;inset:9px auto 9px 0}.main{gap:22px;padding:30px}.topbar,.module-header{border:1px solid var(--border);background:linear-gradient(135deg, var(--accent-soft), transparent 56%), var(--surface-soft);min-width:0;box-shadow:0 18px 60px var(--shadow);border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:18px;display:flex}.module-header>svg{color:var(--warn);flex:none}.module-header>div{flex:auto;min-width:0}.module-header p:not(.eyebrow){color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.metric{position:relative;overflow:hidden}.metric:after{background:linear-gradient(90deg, var(--accent), var(--accent-2), var(--warn));content:"";height:2px;position:absolute;inset:auto 16px 12px}.metric strong{color:var(--text-strong)}.panel-heading,.subpanel-heading,.root-editor-heading,.task-heading,.service-heading,.clash-group-heading{border-bottom-color:var(--border)}.admin-session-card,.admin-session-meta span,.download-create-form,.watch-card,.file-preview pre,.empty-state,.toggle-field,.book-row,.episode-row,.image-card,.similar-row,.artist-row,.clash-subscribe-row,.clash-rule-row,.clash-group-row,.access-row,.scheduler-job-row,.admin-setting-row,.task-row,.root-row,.file-entry-row,.file-claim-row{border-color:var(--border);color:var(--text);background:var(--surface-soft)}.access-row.banned{border-color:color-mix(in srgb, var(--danger) 36%, transparent);background:color-mix(in srgb, var(--danger) 12%, var(--surface))}.clash-select-button,.clash-rule-main,.scheduler-job-main,.admin-setting-main{color:inherit;background:0 0}.data-error,.task-failed,.error-text{border-color:var(--status-error-border);color:var(--status-error-text);background:var(--status-error-bg)}.danger-action{color:var(--status-error-text)}.danger-action:hover:not(:disabled){border-color:var(--danger);color:var(--danger-text)}.progress-track span{background:linear-gradient(90deg, var(--accent), var(--accent-2));box-shadow:0 0 18px var(--accent-soft)}.image-meta span,.episode-no,.task-state,.root-driver,.state,.runtime-state{border-radius:8px}@media (width<=1040px){.sidebar{border-right:0;border-bottom:1px solid var(--border)}.nav-link{min-width:136px}}@media (width<=720px){.auth-screen{grid-template-columns:1fr;gap:24px;padding:22px}.auth-intro h1{font-size:42px}.auth-signal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.topbar,.module-header{flex-direction:column;align-items:stretch}.module-header p:not(.eyebrow){white-space:normal}.main{padding:18px}}body{color:var(--text);background:linear-gradient(var(--page-grid) 1px, transparent 1px), linear-gradient(90deg, var(--page-grid-strong) 1px, transparent 1px), linear-gradient(120deg, var(--page-wash), transparent 38%), var(--page-bg-base);background-size:36px 36px,36px 36px,auto,auto}button{border-color:var(--border);color:var(--text);background:linear-gradient(180deg, var(--surface-raised), var(--surface))}button:hover:not(:disabled){border-color:var(--border-strong);color:var(--accent);background:var(--surface-hover);box-shadow:0 0 0 3px var(--accent-soft)}button:disabled{border-color:var(--border);color:var(--text-faint);background:var(--surface-muted)}input,select,textarea{border-color:var(--border);color:var(--text);background:var(--field)}input::placeholder,textarea::placeholder{color:var(--text-faint)}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}select option{color:var(--text);background:var(--surface)}code{color:var(--code-text);background:var(--code-bg)}.global-controls{z-index:5;align-items:center;gap:8px;min-width:0;display:flex}.global-controls button,.console-controls button{min-width:0;min-height:36px;padding:0 10px;font-size:12px;font-weight:800}.auth-global-controls{position:fixed;top:18px;right:18px}.console-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.console-controls button{justify-content:center}.auth-logo,.brand-icon,.runtime-row svg,.root-row svg,.file-entry-row svg,.file-claim-row svg,.admin-session-meta svg,.admin-session-card svg,.admin-setting-main svg{color:var(--accent)}.auth-intro h1,.brand strong,h1,h2,h3,.metric strong{color:var(--text-strong)}.auth-intro p:not(.eyebrow),.brand span,.metric-label,.metric small,.service-card small,.service-card p,.runtime-row p,.panel-subtitle,.episode-row p,.episode-row time,.artist-meta,.artist-sources,.image-card-body p,.image-meta,.image-detail p,.similar-row small,.book-meta,.book-stats,.task-row p,.task-meta,.root-row p,.root-row small,.admin-session-card p,.admin-setting-row>span,.scheduler-job-meta,.field span,.check-grid span,.access-check,.pager span,.protocol-band p,.file-preview .subpanel-heading p:not(.eyebrow),.watch-card p,.root-scan-limit span,.root-scan-options span,.root-claim label span{color:var(--text-muted)}.eyebrow{color:var(--accent)}.shell{background:linear-gradient(135deg, color-mix(in srgb, var(--surface) 66%, transparent), var(--page-bg-base))}.sidebar{border-right-color:var(--border);background:linear-gradient(180deg, var(--surface-raised), var(--surface)), linear-gradient(90deg, var(--accent-soft), transparent);box-shadow:12px 0 44px var(--shadow)}.nav-link{color:var(--text-muted)}.nav-link:hover,.nav-link.active{border-color:var(--border-strong);color:var(--text-strong);background:linear-gradient(90deg, var(--accent-soft), color-mix(in srgb, var(--accent-2) 10%, transparent)), var(--surface-soft)}.nav-link.active:before{background:var(--accent);box-shadow:0 0 16px var(--accent)}.topbar,.module-header{border-color:var(--border);background:linear-gradient(135deg, var(--accent-soft), transparent 56%), var(--surface-soft);box-shadow:0 18px 60px var(--shadow)}.module-header>svg{color:var(--warn)}.module-header p:not(.eyebrow){color:var(--text-muted)}.endpoint{border-color:color-mix(in srgb, var(--warn) 34%, transparent);color:var(--warn-text);background:color-mix(in srgb, var(--warn) 12%, var(--surface))}.metric,.service-card,.runtime-row,.protocol-band,.image-panel,.library-panel,.clash-panel,.admin-auth-panel,.admin-access-panel,.admin-settings-panel,.scheduler-panel,.ops-panel{border-color:var(--border);background:linear-gradient(180deg, var(--surface-raised), var(--surface));box-shadow:0 18px 42px var(--shadow)}.auth-signal-grid span,.admin-session-card,.admin-session-meta span,.download-create-form,.watch-card,.file-preview pre,.empty-state,.toggle-field,.book-row,.episode-row,.image-card,.similar-row,.artist-row,.clash-subscribe-row,.clash-rule-row,.clash-group-row,.access-row,.scheduler-job-row,.admin-setting-row,.task-row,.root-row,.file-entry-row,.file-claim-row{border-color:var(--border);color:var(--text);background:var(--surface-soft)}.book-row:hover,.artist-row:hover,.image-card:hover,.similar-row:hover,.clash-subscribe-row:hover,.clash-rule-row:hover,.access-row:hover,.scheduler-job-row:hover,.admin-setting-row:hover,.root-row:hover,.file-entry-row:hover,.file-claim-row:hover{border-color:var(--border-strong);background:var(--surface-hover)}.book-row.selected,.artist-row.selected,.image-card.selected,.clash-subscribe-row.selected,.scheduler-job-row.selected,.admin-setting-row.selected{border-color:var(--accent);background:linear-gradient(135deg, var(--accent-soft), color-mix(in srgb, var(--accent-2) 8%, transparent))}.access-row.banned,.error-text{border-color:color-mix(in srgb, var(--danger) 36%, transparent);color:var(--danger-text);background:color-mix(in srgb, var(--danger) 10%, var(--surface))}.root-row.muted{background:var(--surface-muted)}.sync-state,.state-ready,.runtime-connected,.task-done,.root-driver{border:1px solid color-mix(in srgb, var(--accent) 32%, transparent);color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, var(--surface))}.data-loading,.state-stub,.runtime-pending,.task-active{border-color:color-mix(in srgb, var(--accent-2) 28%, transparent);color:var(--accent-2);background:color-mix(in srgb, var(--accent-2) 10%, var(--surface))}.data-empty,.state-planned,.runtime-later,.task-paused,.task-unknown{border-color:color-mix(in srgb, var(--warn) 32%, transparent);color:var(--warn-text);background:color-mix(in srgb, var(--warn) 12%, var(--surface))}.data-error,.task-failed,.danger-action{border-color:color-mix(in srgb, var(--danger) 32%, transparent);color:var(--danger-text);background:color-mix(in srgb, var(--danger) 10%, var(--surface))}.progress-track{background:color-mix(in srgb, var(--text-muted) 16%, transparent)}.progress-track span,.metric:after{background:linear-gradient(90deg, var(--accent), var(--accent-2), var(--warn))}.file-browser,.file-preview,.image-detail,.root-editor{border-top-color:var(--border)}.root-probe span,.root-scan-result,.root-claim-result,.root-message{color:var(--accent)}.file-preview pre{color:var(--text);background:var(--code-bg)}@media (width<=1040px){.sidebar{border-right:0;border-bottom:1px solid var(--border)}}@media (width<=720px){.auth-global-controls{flex-wrap:wrap;grid-column:1;place-self:start;position:static}.console-controls{width:100%}}
