:root{font-family:Inter,"Segoe UI","Microsoft YaHei",sans-serif;color:#182230;background:#f4f6f9;font-synthesis:none;text-rendering:optimizeLegibility;--ink:#182230;--muted:#707b8c;--line:#e5e9ef;--surface:#fff;--primary:#176b5b;--primary-dark:#105548;--green:#16805d;--amber:#a46512;--red:#ba4040;--shadow:0 8px 24px #2030440a}*{box-sizing:border-box}body{margin:0;min-width:320px;color:var(--ink);background:#f4f6f9;font-size:14px;line-height:1.5}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.56}a{color:inherit;text-decoration:none}.muted{color:var(--muted);margin:5px 0 0}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:#718091;font-size:11px;font-weight:700;margin:0 0 5px}.brand-mark{width:40px;height:40px;background:#dff0ea;color:#176b5b;border-radius:12px;display:grid;place-items:center;font-size:19px;font-weight:800}.button{border:1px solid transparent;border-radius:8px;padding:9px 14px;font-weight:650;transition:background .15s,border-color .15s;color:#283446;white-space:nowrap}.button-primary{background:var(--primary);color:#fff}.button-primary:hover{background:var(--primary-dark)}.button-secondary{background:#fff;border-color:#dce2e9}.button-secondary:hover,.button-quiet:hover{background:#f3f6f8}.button-quiet{background:transparent;color:#526071}.button-small{font-size:12px;padding:6px 10px}.button-wide{width:100%;padding:11px}.text-button{border:0;background:transparent;color:var(--primary);font-weight:700;padding:6px}.icon-button{border:0;background:transparent;color:#778293;font-size:21px;padding:4px 8px}.notice{border-radius:8px;padding:10px 12px;margin:12px 0;font-size:13px;background:#fef0ee;color:#963c34;border:1px solid #f2d3cf}.notice-info{background:#eef6ff;color:#275d86;border-color:#d3e6f6}.notice-warning{background:#fff8e8;color:#80580e;border-color:#f4e3b8}.notice-success{background:#edf8f1;color:#206443;border-color:#d3ebdc}.notice[hidden], [hidden]{display:none!important}.pill,.role-pill{display:inline-flex;align-items:center;border-radius:20px;padding:3px 9px;background:#eef1f5;color:#596575;font-size:11px;font-weight:700}.pill.good,.status-live,.state-enabled{background:#e7f5ed;color:#16744f}.pill.warn,.status-connecting,.state-disabled{background:#fff4df;color:#99610c}.pill.bad,.status-error{background:#ffeded;color:#aa3939}.pill.neutral,.status-offline,.status-unknown,.status-waiting{background:#eef1f5;color:#647183}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at 20% 5%,#e2f2ed 0,transparent 42%),#f5f7fa}.login-wrap{width:min(100% - 32px,420px)}.login-card{background:#fff;border:1px solid #e7ebef;border-radius:16px;padding:34px 36px;box-shadow:0 18px 50px #21344a12}.login-card .brand-mark{margin-bottom:20px}.login-card h1{font-size:25px;letter-spacing:-.03em;margin:0}.login-card form,.dialog form{display:grid;gap:9px;margin-top:22px}.login-card label,.dialog label,.form-panel label,.settings-card label,.filter-grid label{font-weight:650;color:#394657;font-size:13px;margin-top:5px}.login-card input,.dialog input,.form-panel input,.form-panel select,.settings-card input,.filter-grid input,.filter-grid select{width:100%;padding:10px 11px;border:1px solid #dce2e9;border-radius:8px;background:#fff;outline:none;color:var(--ink)}input:focus,select:focus{border-color:#63a898;box-shadow:0 0 0 3px #2b9b8018}.login-card .button{margin-top:10px}.footnote{text-align:center;color:#8993a0;font-size:12px;margin:20px 0 0}.login-wrap footer{text-align:center;color:#9aa3af;font-size:12px;padding:18px}.console-page{background:#f5f7fa}.mock-ribbon{position:fixed;z-index:9;top:0;left:0;right:0;text-align:center;padding:4px;background:#fff1d6;color:#80580e;font-size:11px;font-weight:700}.mock-ribbon:not([hidden])~.app-shell{padding-top:24px}.app-shell{min-height:100vh;display:grid;grid-template-columns:244px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;background:#fff;border-right:1px solid var(--line);padding:21px 15px 14px;display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;gap:11px;padding:1px 8px 22px}.brand strong{display:block;font-size:14px}.brand small{display:block;color:#9099a7;font-size:11px;margin-top:1px}.org-switch-wrap{padding:14px 8px 18px;border-top:1px solid #f0f2f5}.org-switch-wrap label{display:block;color:#8791a0;font-size:11px;font-weight:650;margin-bottom:6px}.org-switch-wrap select{width:100%;padding:9px 28px 9px 10px;border:1px solid var(--line);border-radius:7px;background:#fff;color:#344153}.nav-list{display:grid;gap:4px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;padding:10px 12px;border:0;border-radius:8px;background:transparent;color:#647082;text-align:left;font-weight:600}.nav-item:hover{background:#f6f8fa;color:#263448}.nav-item.active{background:#eaf4f1;color:#176b5b}.nav-icon{font-size:17px;width:18px;text-align:center}.sidebar-foot{margin-top:auto;display:flex;align-items:center;gap:8px;border-top:1px solid #eff1f4;padding:14px 8px 2px;color:#687485;font-size:12px}.sidebar-foot .pill{margin-left:auto}.status-dot{width:7px;height:7px;border-radius:50%;background:#d29b40}.status-dot.good{background:#36a273}.workspace{min-width:0;display:flex;flex-direction:column}.topbar{height:64px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,4vw,48px);position:sticky;top:0;z-index:4}.breadcrumb{display:flex;align-items:center;gap:10px;color:#8993a0;font-size:13px}.breadcrumb strong{color:#344153}.crumb-sep{color:#c1c7cf}.user-tools{display:flex;align-items:center;gap:13px}.user-name{font-weight:650;color:#394657}.role-pill{background:#edf4f2;color:#286a5e}.mobile-menu{display:none}.content{width:min(100%,1380px);padding:31px clamp(20px,4vw,48px);margin:0 auto;flex:1}.view{display:none}.view.active{display:block}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}.page-heading h1{font-size:25px;letter-spacing:-.035em;margin:0}.page-heading .muted{font-size:13px}.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.metric-card,.panel{background:var(--surface);border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow)}.metric-card{padding:16px 18px}.metric-card span{color:#758091;font-size:12px;font-weight:650}.metric-card strong{display:block;font-size:27px;line-height:1.3;margin:7px 0 4px;letter-spacing:-.04em}.metric-card small{color:#959eaa;font-size:11px}.panel{padding:18px 19px;margin-bottom:16px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.panel-heading h2{font-size:15px;margin:0;font-weight:750}.panel-heading p{font-size:12px;color:#8b95a2;margin:3px 0 0}.account-status-list{display:grid}.account-row{display:grid;grid-template-columns:minmax(150px,1.1fr) minmax(100px,.8fr) minmax(110px,.8fr) minmax(150px,1.2fr);gap:12px;align-items:center;padding:12px 0;border-top:1px solid #f0f2f5}.account-row:first-child{border-top:0}.account-main strong,.account-main small{display:block}.account-main small{color:#8a95a3;font-size:11px}.status-cell{display:flex;align-items:center;gap:7px;color:#596575;font-size:12px}.status-cell .status-dot{flex:0 0 auto}.dashboard-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:14px}.compact-list{display:grid}.compact-item{display:flex;align-items:center;justify-content:space-between;padding:9px 0;border-top:1px solid #f0f2f5;gap:10px;font-size:12px}.compact-item:first-child{border-top:0}.compact-item span{color:#788392}.limits-info{display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-top:1px solid #f0f2f5;font-size:13px}.limits-info:first-child{border:0}.form-panel{border-color:#cde1dc}.inline-form,.member-form{display:flex;align-items:flex-end;gap:12px}.inline-form>div,.member-form>div{flex:1;min-width:120px}.inline-form input,.member-form input,.member-form select{margin-top:5px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;min-width:720px}th{font-size:11px;letter-spacing:.025em;text-transform:none;color:#8a95a3;font-weight:700;padding:10px 11px;border-bottom:1px solid #e9edf1;white-space:nowrap}td{padding:12px 11px;border-bottom:1px solid #f0f2f5;color:#475365;font-size:12px;vertical-align:middle}tbody tr:last-child td{border-bottom:0}.account-name{font-weight:700;color:#2a3748}.cell-sub{display:block;color:#929ca8;font-size:11px;margin-top:2px}.state-select,.category-edit,.role-select{border:1px solid #e2e6ec;border-radius:6px;padding:6px 8px;background:#fff;color:#475365;font-size:12px;max-width:150px}.category-edit{width:120px}.toggle-wrap{display:flex;align-items:center;gap:7px;white-space:nowrap}.toggle{appearance:none;width:34px;height:19px;background:#ccd2da;border-radius:20px;position:relative;margin:0;transition:.15s;cursor:pointer}.toggle:before{content:"";position:absolute;left:2px;top:2px;width:15px;height:15px;background:white;border-radius:50%;box-shadow:0 1px 3px #0002;transition:.15s}.toggle:checked{background:#2a9375}.toggle:checked:before{transform:translateX(15px)}.filter-grid{display:grid;grid-template-columns:1.1fr 1.2fr 1.2fr minmax(180px,1.5fr) auto;align-items:end;gap:11px}.filter-grid input,.filter-grid select{margin-top:5px}.comments-table{min-width:780px}.comments-table td:nth-child(4){max-width:450px;white-space:normal;word-break:break-word;color:#303c4d}.pagination{display:flex;justify-content:space-between;align-items:center;padding-top:14px;border-top:1px solid #f0f2f5;color:#7e8998;font-size:12px}.pagination div{display:flex;gap:7px}.empty-state{padding:34px 12px;text-align:center;color:#919ba8;font-size:13px}.role-select{min-width:104px}.member-actions{display:flex;gap:7px}.member-actions .button{font-size:11px;padding:5px 8px}.settings-card{max-width:760px}.secret-input{display:flex;gap:9px;margin-top:6px}.secret-input input{min-width:0}.app-footer{padding:15px clamp(20px,4vw,48px);color:#a1a9b4;font-size:11px;border-top:1px solid #eceff3}.overlay{position:fixed;inset:0;background:#111d2ab8;z-index:20;display:grid;place-items:center;padding:18px}.dialog{background:white;border-radius:15px;padding:27px;width:min(100%,440px);box-shadow:0 24px 70px #0a152b40}.dialog .brand-mark{margin-bottom:16px}.dialog h2{margin:0;font-size:21px}.dialog .button{margin-top:8px}.toast{position:fixed;right:22px;bottom:22px;z-index:30;background:#243445;color:#fff;border-radius:8px;padding:10px 15px;box-shadow:var(--shadow);opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}.toast.error{background:#963c34}.toast.success{background:#206443}@media(max-width:1000px){.app-shell{grid-template-columns:218px minmax(0,1fr)}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-search{grid-column:span 1}.dashboard-grid{grid-template-columns:1fr}.account-row{grid-template-columns:1fr 1fr}.account-row>:nth-child(4){grid-column:span 2}}@media(max-width:700px){.app-shell{display:block}.sidebar{position:fixed;left:0;top:0;bottom:0;height:100dvh;width:260px;transform:translateX(-102%);transition:transform .2s;box-shadow:10px 0 30px #20304420}.sidebar.open{transform:translateX(0)}.topbar{height:58px;padding:0 15px;gap:8px}.mobile-menu{display:block}.breadcrumb{margin-right:auto}.user-tools{gap:7px}.user-name{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-pill{display:none}.user-tools .button{padding:7px 9px}.content{padding:24px 14px}.page-heading{align-items:flex-start}.page-heading h1{font-size:22px}.page-heading .button{font-size:12px;padding:8px 10px}.summary-grid{gap:9px}.metric-card{padding:13px}.metric-card strong{font-size:23px}.metric-card small{font-size:10px}.panel{padding:14px 12px}.account-row{grid-template-columns:1fr 1fr;gap:8px}.account-row>:nth-child(4){grid-column:span 2}.inline-form,.member-form{align-items:stretch;flex-direction:column}.inline-form>div,.member-form>div{width:100%}.inline-form .button,.member-form .button{align-self:flex-start}.filter-grid{grid-template-columns:1fr 1fr}.filter-grid>div:nth-child(4){grid-column:span 2}.filter-grid>.button{grid-column:span 2}.secret-input{flex-direction:column}.secret-input .button{align-self:flex-start}.breadcrumb>span:first-child,.crumb-sep{display:none}.toast{left:14px;right:14px;bottom:14px;text-align:center}}@media(max-width:390px){.summary-grid{grid-template-columns:1fr 1fr}.metric-card span{font-size:11px}.page-heading{gap:8px}.page-heading .muted{font-size:12px}}
.member-recording-field label,.member-recording-toggle{display:flex;align-items:center;gap:7px;white-space:nowrap}.member-recording-field input,.member-recording-toggle input{width:auto;margin:0;accent-color:var(--primary)}

/* Standalone pages share one wide column; the main console keeps its sidebar grid. */
.app-shell.single-column-shell{grid-template-columns:minmax(0,1fr)}
.single-column-shell>.workspace{grid-column:1/-1;min-width:0}
.single-column-shell .content{width:min(100%,1540px)}
.single-column-shell .page-heading{flex-wrap:wrap}
.single-column-shell .page-heading>div,.single-column-shell .panel-heading>div{min-width:0;overflow-wrap:anywhere}
.single-column-shell .page-heading>div{flex:1 1 320px}
.single-column-shell .page-heading .button{white-space:normal}
.single-column-shell .page-heading .button{flex:0 0 auto}
.single-column-shell .page-heading .muted{max-width:92ch;overflow-wrap:anywhere}
/* Recording rows and schedules keep their page-specific responsive layout. */
.recordings-shell .account-status-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;padding:12px 0;border-top:1px solid #f0f2f5}
.recordings-shell .account-status-row:first-child{border-top:0}
.recordings-shell .account-status-row>span:first-child{min-width:0;font-weight:700;color:#2a3748;overflow-wrap:anywhere}
.recordings-shell .account-status-row>span:last-child{display:inline-flex;align-items:center;gap:7px;white-space:nowrap}
.recordings-shell .account-status-row input[type=checkbox]{flex:0 0 auto;margin:0;accent-color:var(--primary)}
.recordings-shell .compact-row{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(150px,1.05fr) minmax(105px,.75fr) auto;align-items:center;gap:12px;padding:12px 0;border-top:1px solid #f0f2f5}
.recordings-shell .compact-row:first-child{border-top:0}
.recordings-shell .compact-row>div{min-width:0}
.recordings-shell .compact-row>div strong,.recordings-shell .compact-row>div small{display:block;overflow-wrap:anywhere}
.recordings-shell .compact-row>div strong{color:#2a3748}
.recordings-shell .compact-row>div small{color:#8a95a3;font-size:11px;margin-top:3px}
.recordings-shell .compact-row>span{min-width:0;overflow-wrap:anywhere}
.recordings-shell .compact-row>button,.recordings-shell .compact-row>a{justify-self:start;white-space:nowrap}
@media(max-width:1000px){.recordings-shell .compact-row{grid-template-columns:minmax(0,1.25fr) minmax(120px,1fr) minmax(90px,.7fr) auto;gap:10px}}
@media(max-width:860px) and (min-width:701px){.recordings-shell .compact-row{grid-template-columns:minmax(0,1fr) minmax(130px,.8fr);gap:8px}.recordings-shell .compact-row>div{grid-column:1/-1}.recordings-shell .compact-row>button,.recordings-shell .compact-row>a{grid-column:1/-1;justify-self:start}}
@media(max-width:700px){.recordings-shell .compact-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px}.recordings-shell .compact-row>div{grid-column:1/-1}.recordings-shell .compact-row>span{align-self:center}.recordings-shell .compact-row>span:nth-child(3){justify-self:end}.recordings-shell .compact-row>button,.recordings-shell .compact-row>a{grid-column:1/-1}.recordings-shell .account-status-row{gap:8px}}

/* Multi-account monitoring and one-time recording schedules */
.account-browser .filter-grid,.schedule-panel{margin-bottom:18px}
.account-browser table{min-width:920px}
.account-browser td{vertical-align:top}
.account-browser td .cell-sub{white-space:normal;overflow-wrap:anywhere}
.priority-select{min-width:105px}
.recordings-shell .recording-account-row{display:grid;grid-template-columns:minmax(260px,1fr) auto auto auto auto;align-items:center;gap:12px}
.recordings-shell .recording-account-main{display:grid;gap:4px;min-width:0;overflow-wrap:anywhere}
.schedule-panel{border-top:1px solid var(--line);margin-top:18px;padding-top:18px}
.recordings-shell .schedule-row{grid-template-columns:minmax(0,1.2fr) minmax(180px,.8fr) minmax(180px,.8fr) auto auto;align-items:start}
.recordings-shell .schedule-row>div{min-width:220px;overflow-wrap:anywhere}
.recordings-shell .schedule-row>div small{display:block;white-space:normal;overflow-wrap:anywhere}
.recordings-shell .schedule-row label{display:grid;gap:4px;min-width:190px}
.recordings-shell .schedule-row input{min-width:0}
@media(max-width:900px){.recordings-shell .recording-account-row{grid-template-columns:minmax(0,1fr) auto auto}.recordings-shell .recording-account-row .recording-account-main{grid-column:1/-1}.recordings-shell .schedule-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.recordings-shell .schedule-row>div{grid-column:1/-1}}
@media(max-width:600px){.recordings-shell .recording-account-row{grid-template-columns:minmax(0,1fr) auto}.recordings-shell .recording-account-row button,.recordings-shell .recording-account-row .text-button{justify-self:start}.recordings-shell .schedule-row{grid-template-columns:minmax(0,1fr)}.recordings-shell .schedule-row label{min-width:0}}

.live-duration-summary{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.compact-item .live-duration-summary{color:var(--muted)}.table-wrap td .live-duration-summary{display:block;font-weight:600}.table-wrap td .cell-sub{white-space:normal;overflow-wrap:anywhere}

/* Dashboard duration column stays aligned on desktop and wraps within each row on small screens. */
.account-row{grid-template-columns:minmax(0,1.25fr) minmax(0,.72fr) minmax(0,1.05fr) minmax(0,.85fr) minmax(0,1.1fr)}
.account-row>:first-child,.account-row>:last-child,.account-row>:nth-child(3){min-width:0;overflow-wrap:anywhere}
.account-row .account-main strong,.account-row .account-main small{overflow-wrap:anywhere;word-break:break-word}
.account-row .status-cell{min-width:0;overflow-wrap:anywhere;align-items:flex-start}
.account-row-heading{padding:3px 0 8px;border-top:0;color:#8792a0;font-size:11px;font-weight:700}
.account-row-heading>:nth-child(2){grid-column:2}
.account-row-heading>:nth-child(3){grid-column:3}
.account-row-heading>:nth-child(4){grid-column:4}
.account-row-heading>:nth-child(5){grid-column:5}
.account-row-heading>:first-child{grid-column:1}
.button-danger{background:#fff;border-color:#efd0cd;color:#a33f37}
.button-danger:hover{background:#fff2f0}
.account-browser table{min-width:1000px}
@media(max-width:1000px){.account-row:not(.account-row-heading){grid-template-columns:repeat(2,minmax(0,1fr))}.account-row-heading{display:none}.account-row:not(.account-row-heading)>.account-main,.account-row:not(.account-row-heading)>:last-child{grid-column:1/-1}.account-row:not(.account-row-heading)>:nth-child(4){grid-column:auto}.account-row:not(.account-row-heading) .status-cell{align-items:flex-start}}
@media(max-width:700px){.account-row:not(.account-row-heading){gap:9px 12px}.account-row:not(.account-row-heading)>[data-label]::before{content:attr(data-label);display:block;color:#8993a0;font-size:10px;font-weight:700;line-height:1.35;margin-bottom:3px}.account-row:not(.account-row-heading)>.account-main{grid-column:1/-1}.account-row:not(.account-row-heading)>.status-cell{display:block}.account-row:not(.account-row-heading)>:last-child{grid-column:1/-1}}
