:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#17202a;background:#f4f6f8;letter-spacing:0}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}[hidden]{display:none!important}.app-shell{min-height:100vh;display:grid;grid-template-columns:232px 1fr}aside{position:fixed;inset:0 auto 0 0;width:232px;background:#16212b;color:#fff;padding:22px 14px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;padding:0 8px 26px;font-size:18px}.brand-logo{width:38px;height:38px;flex:none;border-radius:7px;object-fit:contain;background:#fff;padding:2px;box-shadow:0 1px 4px #0002}.brand-logo-login{width:86px;height:86px;border-radius:10px;padding:4px;justify-self:start}.brand+.brand-logo{flex:none}nav{display:grid;gap:4px}nav button{border:0;background:transparent;color:#aebbc5;text-align:left;padding:11px 12px;border-radius:6px;display:flex;gap:12px;align-items:center}nav button span{width:18px;text-align:center;font-size:17px}nav button:hover,nav button.active{background:#253541;color:#fff}.aside-foot{margin-top:auto;border-top:1px solid #32414c;padding:18px 8px 0;color:#aebbc5;font-size:13px;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:8px}.health-dot{width:8px;height:8px;background:#22c88a;border-radius:50%}.text-button{grid-column:1/-1;border:0;background:transparent;color:#dbe3e8;text-align:left;padding:8px 0}.app-shell>main{grid-column:2;min-width:0;padding:0 28px 36px}.app-shell header{height:86px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dde2e6;margin-bottom:26px}h1,h2,p{margin:0}header h1{font-size:23px}header p,.panel-head p{color:#687681;font-size:13px;margin-top:4px}.page{display:grid;gap:20px}.panel{background:#fff;border:1px solid #dce2e6;border-radius:7px}.panel-head{min-height:68px;padding:15px 18px;border-bottom:1px solid #e5e9ec;display:flex;align-items:center;justify-content:space-between;gap:16px}.panel-head h2,.dialog-head h2{font-size:16px}.icon-button{width:38px;height:38px;border:1px solid #cfd7dc;background:#fff;border-radius:6px;font-size:20px;color:#34434e}.primary{border:1px solid #118a67;background:#118a67;color:#fff;border-radius:6px;min-height:38px;padding:0 14px;font-weight:600}.metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.metric{background:#fff;border:1px solid #dce2e6;border-radius:7px;padding:17px}.metric span{color:#687681;font-size:12px;text-transform:uppercase;font-weight:700}.metric strong{display:block;font-size:25px;margin-top:9px}.overview-grid{padding:18px;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.overview-item{border-left:3px solid #18a77c;padding-left:12px}.overview-item span{display:block;color:#687681;font-size:13px}.overview-item strong{display:block;margin-top:5px}.library-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px}.folders-panel,.videos-panel{min-width:0}.search-row,.filters{padding:12px;border-bottom:1px solid #e5e9ec}.filters{display:flex;gap:10px}.filters input{flex:1}.filters select{width:160px}input,select{min-height:38px;border:1px solid #cbd4da;border-radius:5px;background:#fff;padding:8px 10px;min-width:0}input:focus,select:focus{outline:2px solid #a7dfcf;border-color:#118a67}.folder-list{min-height:420px}.folder-item{width:100%;border:0;border-bottom:1px solid #edf0f2;background:#fff;padding:12px 16px;text-align:left;display:flex;justify-content:space-between;align-items:center}.folder-item:hover,.folder-item.active{background:#eef9f5}.folder-item strong{display:block;font-size:14px}.folder-item small{color:#77848d}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%}th,td{padding:13px 16px;text-align:left;border-bottom:1px solid #e8ecef;vertical-align:middle}th{font-size:11px;text-transform:uppercase;color:#73808a;background:#fafbfb}td{font-size:13px}.video-name strong,.job-name strong{display:block}.video-name small,.job-name small{color:#78858e}.badge{display:inline-flex;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700;background:#edf0f2;color:#596771}.badge.complete{background:#dcf5eb;color:#087353}.badge.running,.badge.transcoding{background:#dcecfb;color:#236592}.badge.failed{background:#fce2e1;color:#a82c27}.badge.queued{background:#fff0cf;color:#8a5a00}.actions{display:flex;justify-content:flex-end;gap:5px}.actions button,.connection-field button{border:1px solid #cbd4da;background:#fff;border-radius:5px;min-height:31px;padding:0 9px}.danger{color:#b52b2b!important}.pager{padding:12px 16px;display:flex;justify-content:flex-end;align-items:center;gap:8px;color:#687681;font-size:13px}.pager button{width:32px;height:32px;border:1px solid #cbd4da;background:#fff;border-radius:5px}.pager button:disabled{opacity:.4}.form-grid{padding:22px;display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid label,dialog label{display:grid;gap:7px;font-size:13px;font-weight:650}.form-grid label span,dialog label span{font-weight:400;color:#7b8790}.span-2{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-end;gap:8px}.form-actions button:not(.primary){border:1px solid #cbd4da;background:#fff;border-radius:6px;padding:0 14px;min-height:38px}.upload-panel{max-width:820px}.upload-progress{border-top:1px solid #e5e9ec;padding:22px}.progress-head,.progress-meta{display:flex;justify-content:space-between}.progress-track{height:9px;background:#e5e9ec;border-radius:5px;margin:12px 0;overflow:hidden}.progress-track div{height:100%;width:0;background:#18a77c}.progress-meta,.upload-progress p{font-size:12px;color:#6d7982}.upload-progress p{margin-top:14px}.live-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:18px}.connection-field{padding:18px;display:grid;grid-template-columns:1fr auto;gap:8px}.connection-field span{grid-column:1/-1;font-size:12px;color:#687681}.connection-field code{background:#f2f5f6;border:1px solid #dce2e6;padding:10px;border-radius:5px;overflow-wrap:anywhere}.callout{margin:0 18px 18px;padding:13px;background:#edf8f5;border-left:3px solid #18a77c;font-size:13px;line-height:1.5}.key-list,.live-list{padding:0 18px}.key-row,.live-row{display:grid;grid-template-columns:minmax(130px,1fr) minmax(180px,1.5fr) auto;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid #e8ecef}.key-row code{overflow:hidden;text-overflow:ellipsis}.empty{padding:35px 18px;text-align:center;color:#74818a}.progress-mini{width:130px;height:7px;background:#e6eaed;border-radius:4px;overflow:hidden}.progress-mini div{height:100%;background:#18a77c}.notice{position:fixed;right:22px;top:20px;z-index:10;background:#16212b;color:#fff;padding:12px 16px;border-radius:6px;box-shadow:0 8px 25px #0003}.notice.error{background:#a82c27}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:#eef2f3}.login-panel{width:min(390px,100%);background:#fff;border:1px solid #d8e0e4;border-radius:8px;padding:30px;display:grid;gap:18px;box-shadow:0 12px 40px #26343e12}.login-panel h1{font-size:23px}.login-panel p{color:#6e7b84;font-size:13px;margin-top:5px}.login-panel label{display:grid;gap:7px;font-size:13px;font-weight:650}.full{width:100%}.form-error{color:#b52b2b!important;min-height:18px}dialog{width:min(450px,calc(100% - 30px));border:0;border-radius:7px;padding:0;box-shadow:0 20px 60px #0004}dialog::backdrop{background:#16212b99}dialog form{padding:20px;display:grid;gap:18px}.dialog-head{display:flex;justify-content:space-between;align-items:center}.dialog-head .icon-button{border:0}button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:1050px){.metrics{grid-template-columns:repeat(3,1fr)}.library-layout,.live-grid{grid-template-columns:1fr}.folder-list{min-height:0;max-height:280px;overflow:auto}}
@media(max-width:720px){.app-shell{display:block}.app-shell>main{padding:0 14px 28px}aside{position:static;width:100%;padding:12px}.brand{padding:0 5px 10px}nav{display:flex;overflow:auto}nav button{white-space:nowrap}.aside-foot{display:none}.app-shell header{height:74px;margin-bottom:16px}.metrics{grid-template-columns:1fr 1fr}.overview-grid,.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.filters{flex-direction:column}.filters select{width:100%}.key-row,.live-row{grid-template-columns:1fr}.actions{justify-content:flex-start}}
.drop-zone{width:100%;min-height:150px;border:2px dashed #b8c5cc;border-radius:7px;background:#f8fafb;color:#24333e;display:grid;place-content:center;gap:7px;text-align:center}.drop-zone:hover,.drop-zone.dragging{border-color:#118a67;background:#eef9f5}.drop-zone strong{font-size:15px}.drop-zone span{color:#6d7982;font-size:13px}.upload-queue{display:grid;border:1px solid #e0e6e9;border-radius:6px;overflow:hidden}.upload-queue:empty{display:none}.upload-row{display:grid;grid-template-columns:minmax(180px,1fr) 110px minmax(130px,220px) 40px;gap:12px;align-items:center;padding:12px 14px;border-bottom:1px solid #e8ecef}.upload-row:last-child{border-bottom:0}.upload-row-name{min-width:0}.upload-row-name strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.upload-row-name small,.upload-row-status{color:#71808a;font-size:12px}.upload-row .progress-track{margin:0}.remove-upload{border:0;background:transparent;color:#a82c27;font-size:18px}.upload-note{padding:0 22px 22px;color:#6d7982;font-size:12px}.upload-row.failed .upload-row-status{color:#a82c27}.upload-row.complete .upload-row-status{color:#087353}
@media(max-width:720px){.upload-row{grid-template-columns:1fr auto}.upload-row>.progress-track{grid-column:1/-1}.upload-row-status{grid-column:1}.remove-upload{grid-column:2;grid-row:1}}
