@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap";:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;--bg:#0d1118;--panel:#151b24;--panel-2:#1b2330;--panel-3:#222c3b;--line:#2d3748;--text:#e7edf5;--muted:#9ca9bb;--subtle:#718097;--accent:#8eafea;--accent-ink:#111d32;--cyan:#78bfd0;--blue:#a1b9e9;--good:#59c68a;--amber:#f2c77c;--coral:#ff927e;--red:#ff6f75;--shadow:0 22px 70px #00000038;font-family:Manrope,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);min-width:320px;color:var(--text);-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.46}::selection{background:#8eafea4d}.app-shell{grid-template-columns:244px minmax(0,1fr);min-height:100dvh;display:grid}.sidebar{z-index:5;background:#0d1118f5;border-right:1px solid #9ca9bb21;flex-direction:column;height:100dvh;padding:25px 15px 18px;display:flex;position:sticky;top:0}.brand-lockup{align-items:center;gap:11px;padding:0 11px 28px;display:flex}.brand-mark{width:34px;height:34px;color:var(--accent-ink);background:var(--accent);border-radius:10px;place-items:center;display:grid}.brand-lockup strong{letter-spacing:.14em;font-size:14px;line-height:1.25;display:block}.brand-lockup span{color:var(--muted);letter-spacing:.15em;margin-top:3px;font:9px DM Mono,monospace;display:block}.sidebar-caption{color:var(--subtle);letter-spacing:.14em;padding:0 12px 10px;font:10px DM Mono,monospace}.nav-list{gap:5px;display:grid}.nav-item{color:#aab6c8;text-align:left;background:0 0;border:1px solid #0000;border-radius:9px;align-items:center;gap:12px;width:100%;padding:11px 12px;font-size:12px;font-weight:650;transition:all .16s;display:flex}.nav-item:hover{color:var(--text);background:#ffffff09}.nav-item.active{color:var(--accent);background:#8eafea17;border-color:#8eafea40}.nav-item svg{flex:none}.nav-indicator{opacity:.8;margin-left:auto;transform:rotate(-90deg)}.sidebar-bottom{color:var(--muted);border-top:1px solid #9ca9bb21;align-items:center;gap:8px;margin-top:auto;padding:18px 10px 3px;font-size:11px;display:flex}.online-dot{background:var(--accent);border-radius:50%;width:7px;height:7px;display:inline-block}.sidebar-refresh{color:var(--muted);background:0 0;border:0;margin-left:auto;padding:4px}.main-area{min-width:0;padding:0 34px 44px}.topbar{border-bottom:1px solid #9ca9bb21;justify-content:space-between;align-items:center;gap:12px;min-height:88px;margin-bottom:30px;display:flex}.eyebrow{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;font:9px DM Mono,monospace}.topbar h1{letter-spacing:-.04em;margin:5px 0 0;font-size:20px}.topbar-actions{align-items:center;gap:10px;display:flex}.theme-select{border:1px solid var(--line);min-height:31px;color:var(--muted);background:var(--panel-2);border-radius:8px;padding:0 9px;font-size:10px}.role-chip,.user-chip,.sync-label{border:1px solid var(--line);min-height:31px;color:var(--muted);background:#ffffff05;border-radius:999px;align-items:center;gap:6px;padding:0 10px;font:10px DM Mono,monospace;display:inline-flex}.role-chip{color:var(--accent);border-color:#8eafea3d}.user-chip{color:var(--text)}.user-avatar{width:19px;height:19px;color:var(--accent-ink);background:var(--accent);border-radius:50%;place-items:center;font:9px DM Mono,monospace;display:grid}.page-stack{gap:19px;max-width:1500px;margin:0 auto;display:grid}.page-intro{justify-content:space-between;align-items:end;gap:16px;margin-bottom:2px;display:flex}.page-intro h2{letter-spacing:-.055em;margin:6px 0 5px;font-size:clamp(24px,3vw,34px)}.page-intro p{color:var(--muted);margin:0;font-size:12px}.hero-panel{border:1px solid var(--line);min-height:190px;box-shadow:var(--shadow);background:linear-gradient(115deg,#192333,#151b24 68%);border-radius:14px;justify-content:space-between;align-items:flex-end;gap:24px;padding:28px 32px;display:flex;position:relative;overflow:hidden}.hero-panel .eyebrow{color:var(--accent)}.hero-panel h2{letter-spacing:-.065em;z-index:1;max-width:650px;margin:12px 0 7px;font-size:clamp(26px,4vw,44px);line-height:1.05;position:relative}.hero-panel h2 em{color:var(--accent);font-style:normal}.hero-panel p{color:#abb8ca;z-index:1;margin:0;font-size:13px;position:relative}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.metric-card{border:1px solid var(--line);background:var(--panel);border-radius:12px;min-height:139px;padding:17px 18px;position:relative;overflow:hidden}.metric-card:after{content:"";opacity:.06;filter:blur(4px);background:currentColor;border-radius:50%;width:90px;height:90px;position:absolute;bottom:-38px;right:-25px}.metric-card.lime{color:var(--accent)}.metric-card.blue{color:var(--blue)}.metric-card.amber{color:var(--amber)}.metric-card.coral{color:var(--coral)}.metric-icon{background:color-mix(in srgb, currentColor 13%, transparent);border-radius:9px;padding:7px;display:inline-flex}.metric-label{color:var(--muted);margin-top:12px;font-size:10px;font-weight:650}.metric-value{color:var(--text);letter-spacing:-.07em;margin-top:1px;font:700 28px DM Mono,monospace}.metric-note{color:var(--subtle);margin-top:2px;font-size:10px}.content-grid{grid-template-columns:minmax(0,1.55fr) minmax(300px,.8fr);gap:16px;display:grid}.panel-card{border:1px solid var(--line);background:var(--panel);border-radius:12px;min-width:0;padding:20px;box-shadow:0 6px 20px #0000001a}.section-heading,.card-heading{justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.section-heading h3,.panel-card h3{letter-spacing:-.035em;margin:4px 0 0;font-size:16px}.muted{color:var(--muted);font:10px DM Mono,monospace}.text-button{color:var(--accent);background:0 0;border:0;align-items:center;gap:4px;font-size:11px;font-weight:700;display:inline-flex}.job-list{display:grid}.job-row{border-top:1px solid #9ca9bb1c;align-items:center;gap:12px;min-height:56px;display:flex}.job-indicator{background:#80958c;border-radius:50%;width:7px;height:7px}.job-indicator.running{background:var(--amber);box-shadow:0 0 12px #f2c77c99}.job-indicator.succeeded{background:var(--accent)}.job-indicator.failed{background:var(--red)}.job-copy{flex:1;gap:4px;min-width:0;display:grid}.job-copy b{white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.job-copy small{color:var(--subtle);font:9px DM Mono,monospace}.last-job-note{color:var(--muted);align-items:center;gap:7px;margin-top:4px;padding-top:13px;font-size:10px;display:flex}.last-job-note svg{color:var(--accent)}.quick-panel{flex-direction:column;display:flex}.quick-action{text-align:left;color:var(--text);background:0 0;border:0;border-top:1px solid #9ca9bb1c;align-items:center;gap:12px;padding:12px 2px;display:flex}.quick-action>span:nth-child(2){flex:1;gap:4px;display:grid}.quick-action b{font-size:11px}.quick-action small{color:var(--muted);font-size:10px}.quick-action>svg:last-child{color:var(--subtle);transform:rotate(-90deg)}.quick-icon{border-radius:9px;place-items:center;width:34px;height:34px;display:grid}.quick-icon.lime{color:var(--accent);background:#8eafea1a}.quick-icon.blue{color:var(--blue);background:#a1b9e91a}.quick-icon.amber{color:var(--amber);background:#f2c77c1a}.footer-note{color:var(--subtle);align-items:center;gap:8px;padding:2px 4px;font-size:10px;display:flex}.button{border:1px solid #0000;border-radius:9px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:0 13px;font-size:11px;font-weight:750;transition:transform .15s,background .15s,border-color .15s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button.primary{color:var(--accent-ink);background:var(--accent)}.button.secondary{color:var(--text);background:var(--panel-3);border-color:var(--line)}.button.ghost{color:var(--muted);border-color:var(--line);background:0 0}.button.danger{color:var(--red);background:#ff6f7517;border-color:#ff6f752e}.button.small{min-height:31px;padding:0 10px;font-size:10px}.button.full{width:100%;margin-top:12px}.icon-button{border:1px solid var(--line);background:var(--panel-2);width:34px;height:34px;color:var(--muted);border-radius:9px;place-items:center;display:grid}.icon-button:hover{color:var(--text);border-color:#52627b}.icon-button.danger:hover{color:var(--red);border-color:var(--red)}.pill{border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:5px 8px;font:9px DM Mono,monospace;display:inline-flex}.pill i{background:currentColor;border-radius:50%;width:5px;height:5px}.pill-succeeded{color:var(--accent);background:#8eafea0e;border-color:#8eafea38}.pill-valid{color:var(--good);border-color:color-mix(in srgb, var(--good) 35%, transparent);background:color-mix(in srgb, var(--good) 8%, transparent)}.pill-expiring{color:var(--amber);background:#f2c77c14;border-color:#f2c77c4d}.pill-running,.pill-queued{color:var(--amber);background:#f2c77c0e;border-color:#f2c77c38}.pill-failed,.pill-expired{color:var(--red);background:#ff6f750e;border-color:#ff6f7538}.pill-no_exp{color:var(--cyan);background:#78bfd014;border-color:#78bfd04d}.sync-label{color:var(--cyan)}.spin{animation:1.1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.fetch-layout{grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);align-items:start;gap:15px;display:grid}.selection-actions{gap:10px;display:flex}.search-box{border:1px solid var(--line);height:38px;color:var(--subtle);background:#101620;border-radius:8px;align-items:center;gap:8px;margin-bottom:12px;padding:0 11px;display:flex}.search-box input{width:100%;color:var(--text);background:0 0;border:0;outline:0;font-size:11px}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-height:390px;padding-right:3px;display:grid;overflow:auto}.category-grid.compact{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));max-height:250px}.category-choice{color:#b8c4d5;cursor:pointer;background:#ffffff06;border:1px solid #0000;border-radius:8px;align-items:center;gap:8px;min-height:34px;padding:0 8px;font-size:10px;display:flex}.category-choice:hover{background:#ffffff0d}.category-choice.checked{color:var(--accent);background:#8eafea12;border-color:#8eafea38}.category-choice input{opacity:0;pointer-events:none;position:absolute}.checkmark{color:#0000;border:1px solid #4b5870;border-radius:4px;place-items:center;width:15px;height:15px;display:grid}.category-choice.checked .checkmark{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.fetch-options{border-top:1px solid var(--line);gap:9px;margin-top:15px;padding-top:14px;display:grid}.fetch-options label,.inline-check{color:var(--muted);align-items:center;gap:8px;font-size:10px;display:flex}input[type=checkbox]{accent-color:var(--accent)}.action-row{flex-wrap:wrap;gap:8px;margin-top:17px;display:flex}.terminal-card{min-width:0}.live-indicator{color:var(--subtle);letter-spacing:.1em;font:9px DM Mono,monospace}.live-indicator.active{color:var(--amber)}.terminal-output{border:1px solid var(--line);color:#b4c1d3;white-space:pre-wrap;word-break:break-word;background:#0b1017;border-radius:8px;min-height:330px;max-height:540px;margin:0;padding:15px;font:10px/1.65 DM Mono,monospace;overflow:auto}.terminal-foot{color:var(--subtle);justify-content:space-between;gap:10px;margin-top:10px;font:9px DM Mono,monospace;display:flex}.segmented{border:1px solid var(--line);background:#101620;border-radius:8px;padding:3px;display:inline-flex}.segmented button{color:var(--muted);background:0 0;border:0;border-radius:7px;padding:8px 11px;font-size:10px}.segmented button.selected{background:var(--panel-3);color:var(--text);box-shadow:0 2px 8px #0003}.playlist-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;display:grid}.playlist-tile{border:1px solid var(--line);background:var(--panel);border-radius:11px;min-height:175px;padding:17px;position:relative}.tile-kind{color:var(--accent);letter-spacing:.12em;background:#8eafea1a;border-radius:5px;padding:4px 7px;font:8px DM Mono,monospace;display:inline-flex}.tile-kind.processed{color:var(--cyan);background:#8bd7cb1a}.playlist-tile h3{margin:14px 0 5px;font-size:15px}.playlist-tile p{color:var(--muted);margin:0 0 3px;font-size:10px}.playlist-tile small{color:var(--subtle);font:9px DM Mono,monospace}.tile-actions{gap:7px;margin-top:16px;display:flex}.table-wrap{border:1px solid var(--line);border-radius:10px;overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;min-width:600px}th{color:var(--subtle);letter-spacing:.1em;text-transform:uppercase;background:#ffffff06;font:9px DM Mono,monospace}th,td{border-bottom:1px solid #9ca9bb1a;padding:11px 13px}td{color:#c5cede;font-size:10px}tr:last-child td{border-bottom:0}td code{color:var(--cyan);font:10px DM Mono,monospace}.truncate-value{white-space:nowrap;text-overflow:ellipsis;max-width:430px;display:block;overflow:hidden}.table-empty{text-align:center;color:var(--muted);padding:28px;font-size:11px}.form-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:13px;display:grid}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid label{color:var(--muted);gap:6px;font-size:10px;display:grid}.form-grid label.inline-check{align-items:center;min-height:38px;display:flex}.form-grid label.wide{grid-column:1/-1}.text-input{border:1px solid var(--line);width:100%;min-height:38px;color:var(--text);background:#101620;border-radius:8px;outline:0;padding:8px 10px;font-size:11px}.text-input:focus{border-color:#8eafeaa6;box-shadow:0 0 0 3px #8eafea1a}.code-input{resize:vertical;font:10px/1.5 DM Mono,monospace}.schedule-group{border:1px solid var(--line);background:#ffffff05;border-radius:11px;margin-top:11px;padding:15px}.schedule-group-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px;display:flex}.schedule-group-head b{font-size:12px;display:block}.schedule-group-head small{color:var(--subtle);margin-top:4px;font:9px DM Mono,monospace;display:block}.helper-note{color:var(--subtle);margin:12px 0 0;font-size:10px;line-height:1.6}.source-card{gap:12px;display:grid}.user-list{margin-top:20px;display:grid}.user-row{border-top:1px solid #9ca9bb1f;align-items:center;gap:11px;padding:11px 2px;display:flex}.user-copy{flex:1;gap:4px;display:grid}.user-copy b{font:11px DM Mono,monospace}.user-copy small{color:var(--muted);font-size:10px}.path-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;display:grid}.path-grid>div{border:1px solid var(--line);background:#101620;border-radius:8px;gap:6px;padding:12px;display:grid}.path-grid span{color:var(--muted);font-size:10px}.path-grid code{color:var(--cyan);overflow-wrap:anywhere;font:9px DM Mono,monospace}.empty-state{min-height:180px;color:var(--subtle);text-align:center;place-content:center;justify-items:center;gap:8px;display:grid}.empty-state strong{color:var(--text);font-size:12px}.empty-state span{max-width:260px;font-size:10px;line-height:1.5}.error-box{color:var(--red);border:1px solid #ff6f754d;border-radius:8px;margin-top:12px;padding:10px;font-size:10px}.toast{z-index:50;border:1px solid var(--line);color:var(--text);box-shadow:var(--shadow);background:#1b2330;border-radius:9px;padding:12px 16px;font-size:11px;position:fixed;bottom:22px;right:22px}.auth-shell{place-items:center;min-height:100dvh;padding:22px;display:grid}.auth-card{border:1px solid var(--line);background:var(--panel);width:min(100%,400px);box-shadow:var(--shadow);border-radius:18px;padding:30px}.brand-mark.large{width:46px;height:46px;margin-bottom:22px}.auth-card h1{letter-spacing:-.06em;margin:7px 0;font-size:26px}.auth-card p{color:var(--muted);margin-bottom:18px;font-size:12px;line-height:1.6}.expiry-groups{gap:10px;display:grid}.expiry-category{border:1px solid var(--line);background:var(--panel);border-radius:11px;overflow:hidden}.expiry-category>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:15px 17px;list-style:none;display:flex}.expiry-category>summary::-webkit-details-marker{display:none}.expiry-category[open]>summary{border-bottom:1px solid var(--line)}.expiry-category-title{gap:5px;min-width:150px;display:grid}.expiry-category-title b{font-size:13px}.expiry-category-title small,.audio-card-heading small{color:var(--muted);font-size:10px}.expiry-category-summary{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.expiry-count{color:var(--muted);font:9px DM Mono,monospace}.expiry-count.valid{color:var(--good)}.expiry-count.expiring{color:var(--amber)}.expiry-count.expired{color:var(--red)}.expiry-count.no-exp{color:var(--cyan)}.expiry-next{color:var(--muted);margin-left:6px;font-size:10px}.expiry-category .table-wrap{margin:0 12px 12px}.audio-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px;display:grid}.audio-card{align-content:start;gap:20px;display:grid}.audio-card-heading{align-items:center;gap:11px;display:flex}.audio-card-heading h3{margin:0 0 4px;font-size:14px}.audio-channel-icon{width:36px;height:36px;color:var(--accent);background:#8eafea1a;border-radius:9px;place-items:center;display:grid}.audio-select-label{color:var(--muted);gap:7px;font-size:10px;display:grid}.audio-error{color:var(--red)}.audio-saving{color:var(--accent)}.warning-note{border-left:3px solid var(--amber);color:var(--muted);background:#f2c77c12;margin:0;padding:9px 11px;font-size:10px;line-height:1.55}.schedule-expiry-toggle{margin-bottom:15px}.source-output-options{align-content:center;gap:12px;display:grid}.permissions-editor{gap:17px;padding:17px 0 4px;display:grid}.permissions-editor section{gap:9px;display:grid}.permissions-editor h4{color:var(--text);margin:0;font-size:11px}.permission-check-list,.permission-category-list{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:9px 14px;display:grid}.permission-category-list{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;max-height:190px;padding:10px;overflow:auto}.permission-add{margin-top:16px}.user-row-permissions{align-items:flex-start}.user-permission-editor{margin-top:8px}.user-permission-editor>summary{color:var(--accent);cursor:pointer;font-size:10px}.user-permission-editor .permissions-editor{padding-top:12px}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f2f4f8;--panel:#fff;--panel-2:#f6f8fb;--panel-3:#e9eef5;--line:#dbe1ea;--text:#1b2638;--muted:#5c687a;--subtle:#7e8999;--accent:#315d9d;--accent-ink:#fff;--cyan:#27728a;--blue:#386ab0;--good:#25824d;--amber:#9a6508;--coral:#a84f32;--red:#b52f3d;--shadow:0 18px 52px #1d304d1a}[data-theme=light] body{background:var(--bg);color:var(--text)}[data-theme=light] .sidebar{border-color:var(--line);background:#fffffff0}[data-theme=light] .nav-item{color:#56657a}[data-theme=light] .nav-item:hover{background:#f0f3f8}[data-theme=light] .nav-item.active{background:#e8eef8}[data-theme=light] .hero-panel{background:linear-gradient(115deg,#fff,#edf2f8 72%)}[data-theme=light] .metric-card,[data-theme=light] .panel-card,[data-theme=light] .expiry-category,[data-theme=light] .playlist-tile{background:var(--panel);box-shadow:0 4px 16px #1d304d09}[data-theme=light] .search-box,[data-theme=light] .segmented,[data-theme=light] .text-input,[data-theme=light] .path-grid>div,[data-theme=light] .theme-select{color:var(--text);background:#f7f9fc}[data-theme=light] .terminal-output{color:#3d4c62;background:#f3f6fa}[data-theme=light] .toast{background:#fff}[data-theme=light] .schedule-group{background:#f9fafc}[data-theme=light] .category-choice{color:#4d5b70}[data-theme=light] .category-choice.checked{color:var(--accent);background:#e8eef8}[data-theme=light] th{background:#f5f7fa}[data-theme=light] td{color:#334157}[data-theme=light] .role-chip,[data-theme=light] .user-chip,[data-theme=light] .sync-label{background:#fff}[data-theme=light] .warning-note{background:#fff7e8}[data-theme=light] .permission-category-list{background:#f7f9fc}[data-theme=light] .user-permission-editor>summary{color:var(--accent)}[data-theme=light] .sidebar{box-shadow:2px 0 18px #1e304d09}@media (width<=1050px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid{grid-template-columns:1fr}}@media (width<=760px){.app-shell{grid-template-columns:1fr;padding-bottom:64px}.sidebar{height:64px;padding:4px 8px calc(4px + env(safe-area-inset-bottom));border-right:0;border-top:1px solid var(--line);background:#0d1118fa;position:fixed;inset:auto 0 0}.brand-lockup,.sidebar-caption,.sidebar-bottom{display:none}.nav-list{justify-content:space-around;gap:2px;height:100%;display:flex}.nav-item{border-radius:7px;flex-direction:column;flex:1;justify-content:center;gap:4px;min-width:0;padding:4px 2px;font-size:8px}.nav-item span{text-overflow:ellipsis;white-space:nowrap;max-width:58px;overflow:hidden}.nav-item svg{width:17px;height:17px}.nav-indicator{display:none}.main-area{padding:0 14px 24px}.topbar{min-height:72px;margin-bottom:18px}.topbar h1{font-size:17px}.user-chip{display:none}.hero-panel{flex-direction:column;align-items:flex-start;min-height:185px;padding:22px 19px}.hero-panel .button{z-index:1;position:relative}.metric-grid{gap:8px}.metric-card{min-height:124px;padding:13px}.metric-value{font-size:24px}.page-intro{flex-direction:column;align-items:flex-start}.fetch-layout{grid-template-columns:1fr}.category-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-height:280px}.form-grid,.form-grid.two{grid-template-columns:1fr}.form-grid label.wide{grid-column:auto}.panel-card{padding:15px}.expiry-category>summary{flex-direction:column;align-items:flex-start}.expiry-category-summary{justify-content:flex-start}.playlist-grid{grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:8px}.playlist-tile{padding:13px}.terminal-output{min-height:260px}.segmented{max-width:100%}.theme-select{max-width:105px}}
