/* CBT Ops: shared application presentation. Print labels retain their own styles. */
@media screen {
:root,:root[data-theme="classic"],:root[data-theme="night"]{color-scheme:dark;--bg:#080808;--surface:#080808;--panel:#161616;--board:#101010;--text:#f5f5f5;--ink:#f5f5f5;--muted:#a7a7ab;--line:#303033;--input:#222225;--input-line:#414145;--hover:#2c2c30;--zone-head:#232326;--carrier:#18181b;--accent:#fe2c55;--brand:#fe2c55;--brand-hover:#df2048;--brand-soft:#fe2c5518;--cyan:#25f4ee;--red:#ee858c;--yellow:#e7c66b;--green:#72bb98;--warning:#e7c66b;background:var(--bg);color:var(--text)}
:root[data-theme="day"]{color-scheme:light;--bg:#f6f6f7;--surface:#f6f6f7;--panel:#fff;--board:#fff;--text:#161823;--ink:#161823;--muted:#65666e;--line:#e5e5e8;--input:#f5f5f6;--input-line:#d5d5db;--hover:#ededf0;--zone-head:#f0f0f3;--carrier:#fafafa;--brand-soft:#fe2c550b;--cyan:#008c8c}
body{background:var(--bg);color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;line-height:1.5;font-size:14px}
body>main{max-width:1600px;margin:0 auto;padding:26px 32px 110px}body>header{background:var(--bg);border-bottom:1px solid var(--line);padding:22px 32px;gap:20px}body>header h1{font-size:24px;font-weight:800;letter-spacing:-.8px}body>header h1 span{font-size:14px;font-weight:500;letter-spacing:0;color:var(--muted)}
.brand-signature{display:none}.wordmark{color:var(--text);font-weight:800}.wordmark span{color:var(--muted);border-color:var(--line)}.eyebrow{color:var(--muted)}
a{color:var(--text)}a:hover{color:var(--brand)}h1,h2,h3,strong{color:inherit}h2{font-size:20px;font-weight:750;letter-spacing:-.4px}.muted{color:var(--muted)}
button,select,input,.upload{border-radius:8px;border-color:var(--input-line);background:var(--input);color:var(--text);min-height:42px}button:hover,.upload:hover{background:var(--hover)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}button:disabled{cursor:default}
button.primary,#plan-save,#print-label,#login button[type=submit],#register button[type=submit]{background:var(--brand);color:#fff;border-color:var(--brand);font-weight:700}button.primary:hover,#plan-save:hover{background:var(--brand-hover)}
.sourcebar{gap:10px;flex-wrap:wrap;margin-bottom:20px}.badge{background:var(--input);color:var(--muted);border:1px solid var(--line);border-radius:5px;font-weight:600}.controls{border-radius:12px;padding:18px;background:var(--panel);border-color:var(--line)}.range-panel{border-color:var(--line);margin-bottom:20px}.range-panel summary{padding:12px 0}
.board,.trend-panel,.hourly-panel,.card,.scan-card,.menu-group,.profile-link{background:var(--panel);border:1px solid var(--line);border-radius:14px;box-shadow:none}.trend-panel{padding:30px;margin-top:20px}.trend-top{font-size:17px}.live-note{font-size:12px;color:var(--muted)}#trend-value{font-size:clamp(42px,5vw,66px);font-weight:800;letter-spacing:-2px;font-variant-numeric:tabular-nums}.trend-switch{gap:8px;margin:22px 0}.trend-switch select{min-height:38px}.plan-caveat,.trend-foot{font-size:12px;color:var(--muted)}.forecast-settings-link{display:inline-block;font-size:13px;color:var(--brand);font-weight:650}.plan-summary{border-top:1px solid var(--line);padding-top:18px;margin:22px 0}.plan-summary strong{font-size:19px}.stats{gap:12px;border:0;background:transparent}.stat{border:1px solid var(--line);border-radius:12px;background:var(--panel);padding:20px}.stat strong{font-size:32px;letter-spacing:-.8px;font-variant-numeric:tabular-nums}.stat p,.stat small{color:var(--muted)}
.zone{border-color:var(--line);border-radius:10px;overflow:hidden}.zonehead{background:var(--zone-head);border-color:var(--line)}.carrier-group{background:var(--carrier);border-color:var(--line);border-radius:8px}.seat{min-height:0}.legend button{min-height:36px;border-radius:7px}.legend button.active{border-color:var(--text);background:var(--hover)}.boardhead{gap:16px;flex-wrap:wrap}.tools{gap:10px;flex-wrap:wrap}.scan-track{background:var(--line)}.rank-row,.rank-detail,.scan-legend{border-color:var(--line)}.scan-dialog,dialog{background:var(--panel);color:var(--text);border-color:var(--line)}.scan-detail-row{border-color:var(--line)}
.account-header{background:transparent;border:0}.profile-link:hover,.menu-row:hover{background:var(--hover)}.menu-row{color:var(--text);background:transparent}.menu-icon,.back-button{color:var(--brand)}.profile-link .avatar{background:var(--hover);color:var(--text)}.menu-row small,#profile-account{color:var(--muted)}#profile-role{color:var(--cyan)}.tool-card{background:var(--input);border-color:var(--line);color:var(--muted)}a.tool-card{background:var(--brand-soft);border-color:var(--brand)}a.tool-card:hover{background:var(--hover)}a.tool-card .tool-status{background:var(--brand);color:#fff;border-color:var(--brand)}.segmented{background:var(--input)}.segmented button{color:var(--muted)}.segmented button.active{background:var(--panel);color:var(--text)}.saved-plan{border-color:var(--line)}.saved-plan button{background:var(--input);color:var(--text)}
.app-dock{background:var(--bg);border-color:var(--line);box-shadow:none;border-radius:16px}.app-dock a{color:var(--muted);font-weight:650}.app-dock a.active{color:var(--brand);background:var(--brand-soft)}.app-dock a:hover{background:var(--hover)}.dock-brand,.dock-caption{display:none}
@media(min-width:1100px){body:has(.app-dock):not(.tv){padding-left:218px;padding-bottom:0!important}.app-dock{top:0;bottom:0;left:0;transform:none;width:218px;border:0;border-right:1px solid var(--line);border-radius:0;flex-direction:column;justify-content:flex-start;padding:28px 16px;gap:8px}.app-dock a{flex:0;flex-direction:row;justify-content:flex-start;gap:15px;padding:13px 16px;min-height:50px;font-size:16px;border-radius:9px}.app-dock svg{width:24px;height:24px}.dock-brand{display:flex;align-items:center;gap:10px;font-size:23px;font-weight:850;letter-spacing:-1px;padding:0 8px 28px;color:var(--text)}.dock-brand img{width:36px;height:36px;border-radius:9px}.dock-caption{display:block;margin-top:auto;padding:24px 12px;color:var(--muted);font-size:11px;border-top:1px solid var(--line)}body:has(.app-dock)>main.label-app,body:has(.app-dock)>main:has(#forecast-app){max-width:1120px}.tv{padding-left:0!important}.tv .app-dock{display:none}}
@media(max-width:760px){body>main{padding:18px 14px 110px}body>header{padding:16px 18px}body>header h1{font-size:21px}.trend-panel{padding:22px 18px;border-radius:14px}.trend-switch{flex-wrap:wrap}.trend-switch select{font-size:12px}.plan-summary{gap:16px}#trend-value{font-size:44px}.stat{padding:16px}.stat strong{font-size:28px}.controls{padding:14px}.app-dock{bottom:0;left:0;transform:none;width:100%;border:0;border-top:1px solid var(--line);border-radius:0;padding:5px 10px calc(6px + env(safe-area-inset-bottom));gap:4px}.app-dock a{min-height:52px;padding:6px;font-size:11px;border-radius:9px}.app-dock a.active{background:transparent}.card{padding:22px}.profile-link{padding:24px 18px}.tool-grid{grid-template-columns:1fr}.label-layout{gap:18px}#capacity-panel{bottom:80px!important}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
}
@media print{.app-dock{display:none!important}}

@media screen{body:has(#enter){background:var(--bg)}body:has(#enter)>main{background:var(--panel);border-color:var(--line);padding:32px;max-width:440px}body:has(#enter) p,body:has(#enter) small{color:var(--muted)}#enter{background:var(--brand);color:white}.tool-card[href] strong{color:var(--text)}}
@media screen{
:root a.tool-card[href]{background:var(--brand-soft);border-color:var(--brand);box-shadow:inset 3px 0 0 var(--brand)}
:root a.tool-card[href] h4{color:var(--text)}:root a.tool-card[href] p{color:var(--muted)}:root a.tool-card[href] .tool-status{background:var(--brand);border-color:var(--brand);color:white}:root a.tool-card[href]:hover{background:var(--hover)}:root a.tool-card[href]:focus-visible{outline-color:var(--cyan)}
}

@media screen{body:has(#trend-chart) .trend-panel{padding:24px;margin-top:12px}body:has(#trend-chart) .trend-switch{margin:14px 0}body:has(#trend-chart) #trend-value{font-size:48px}body:has(#trend-chart) #trend-note,body:has(#trend-chart) #shift-status{font-size:12px;margin:8px 0}body:has(#trend-chart) .plan-summary{margin:14px 0;padding-top:12px}body:has(#trend-chart) .forecast-legend{margin:10px 0}body:has(#trend-chart) #trend-chart svg{max-height:360px}body.tv>main{max-width:none;padding:16px 28px}body.tv .range-panel,body.tv .forecast-explanation,body.tv .hourly-scroll,body.tv .account-link{display:none}body.tv>header{padding:12px 28px}body.tv .ops-kpi strong{font-size:44px}body.tv .ops-grid{grid-template-columns:2fr 1fr}@media(min-width:1200px){body:has(#trend-chart) main{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:18px}body:has(#trend-chart) main>.sourcebar,body:has(#trend-chart) main>.range-panel,body:has(#trend-chart) main>#sorting-analysis,body:has(#trend-chart) main>.board:last-child{grid-column:1/-1}body:has(#trend-chart) main>.sourcebar,body:has(#trend-chart) main>.range-panel{margin-bottom:0}body:has(#trend-chart) .hourly-panel{margin-top:12px;min-width:0}body:has(#trend-chart) .trend-panel{min-width:0}}}
