:root {
  --bg: #0b1020;
  --panel: #121a2e;
  --panel-2: #17213a;
  --panel-3: #0f172b;
  --line: #263452;
  --text: #eef3ff;
  --muted: #8f9bb7;
  --cyan: #55d6c2;
  --blue: #76a8ff;
  --amber: #f8c76d;
  --rose: #ff8a9b;
  --green: #63d99a;
  --shadow: 0 18px 48px rgba(0,0,0,.24);
  --radius-panel: 12px;
  --radius-control: 10px;
}
body.light {
  --bg: #fffdf9;
  --panel: #ffffff;
  --panel-2: #fff4e8;
  --panel-3: #fffaf4;
  --line: #ecdccf;
  --text: #2c211c;
  --muted: #78665b;
  --cyan: #c95720;
  --blue: #d99a24;
  --amber: #b96f0c;
  --rose: #c94f45;
  --green: #2f865d;
  --shadow: 0 10px 28px rgba(91,52,28,.08);
}
body.light .sidebar { background: #ffffff; }
body.light .topbar { background: rgba(255,253,249,.96); }
body.light .nav button:hover, body.light .nav button.active { background: #fff0e4; color:#6f3216; }
body.light .memo { background: #fffaf5; }
body.light .filters input, body.light .filters select, body.light .field input, body.light .field textarea, body.light .field select { background: #ffffff; }
body.light .work-table td, body.light .activity-row { border-bottom-color: #e5ebf2; }
body.light .login { background: #ffffff; }
body.light .login-card { background:#ffffff; }
body.light .status-chip { background:#e7f5ef; }
body.light .tag { background:#f5eee8; color:#705f54; }
body.light .tag.green { background:#e5f5ec; color:#178b57; }
body.light .tag.gold { background:#fff0cf; color:#8a5607; }
body.light .tag.red { background:#fce8ec; color:#b53e55; }
body.light .three-caption { background:rgba(255,255,255,.9); }
body.light .progress { background:#f1e4d9; }
body.light .activity-dot { box-shadow:0 0 0 4px rgba(201,87,32,.12); }
body.light .primary-btn { background:#c95720; color:#fff; box-shadow:0 6px 16px rgba(201,87,32,.22); }
body.light .ghost-btn:hover,body.light .icon-btn:hover { border-color:#d59b78; color:#8c3f1c; background:#fff8f2; }
#themeBtn { display: none; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--text); font-family: Nunito, "Microsoft YaHei UI", "Microsoft YaHei", ui-rounded, system-ui, sans-serif; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
button:disabled { cursor:not-allowed; opacity:.45; filter:none; }
.shell { min-height: 100vh; display: grid; grid-template-columns: 244px minmax(0,1fr); }
.sidebar { background: #0e1528; border-right: 1px solid var(--line); padding: 22px 16px; display: flex; flex-direction: column; gap: 22px; }
.brand { display: flex; align-items: center; gap: 11px; padding: 4px 10px 18px; border-bottom: 1px solid var(--line); }
.brand-mark { width: 32px; height: 32px; border-radius: 9px; background: linear-gradient(135deg, var(--cyan), var(--blue)); display: grid; place-items: center; color: #07101e; font-weight: 800; }
.brand-title { font-weight: 800; letter-spacing: .02em; }
.brand-sub { font-size: 11px; color: var(--muted); margin-top: 2px; }
.nav-label { font: 11px 'DM Mono', monospace; color: #667392; text-transform: uppercase; letter-spacing: .12em; padding: 0 10px; }
.nav { display: grid; gap: 5px; }
.nav button { border: 0; color: var(--muted); background: transparent; text-align: left; padding: 11px 12px; border-radius: 8px; display:flex; gap: 12px; align-items:center; font-weight: 600; }
.nav button:hover, .nav button.active { background: #1b2845; color: var(--text); }
.nav-icon { width:28px; height:28px; flex:0 0 28px; display:grid; place-items:center; text-align:center; color:var(--cyan); font-size:22px; line-height:1; }
.side-footer { margin-top: auto; padding: 12px 10px; border-top: 1px solid var(--line); color: var(--muted); font-size: 12px; line-height: 1.6; }
.side-footer strong { color: var(--text); display: block; }
.main { min-width: 0; display: flex; flex-direction: column; }
.topbar { height: 68px; display:flex; justify-content:space-between; align-items:center; padding: 0 30px; border-bottom:1px solid var(--line); background: rgba(11,16,32,.92); position: sticky; top:0; z-index: 4; backdrop-filter: blur(14px); }
.crumb { color: var(--muted); font-size: 13px; }.crumb b { color: var(--text); }
.top-actions { display:flex; gap: 10px; align-items:center; }
.icon-btn, .ghost-btn { background: transparent; color: var(--muted); border: 1px solid var(--line); border-radius: 7px; height: 34px; padding: 0 11px; }
.icon-btn:hover, .ghost-btn:hover { color: var(--text); border-color: #3b4f77; }
.profile { display:flex; gap: 9px; align-items:center; padding-left: 10px; border-left:1px solid var(--line); }
.avatar { width: 30px; height:30px; border-radius:50%; background: #264b64; display:grid; place-items:center; color: var(--cyan); font-size:12px; font-weight:800; }
.profile-name { font-size: 12px; font-weight: 700; }.profile-role { font-size: 10px; color: var(--muted); }
.content { padding: 28px 30px 44px; max-width: 1680px; width: 100%; margin: 0 auto; }
.page-head { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom: 22px; gap: 16px; }.eyebrow { color: var(--cyan); font: 11px 'DM Mono', monospace; text-transform: uppercase; letter-spacing:.14em; }.page-head h1 { margin: 7px 0 4px; font-size: 28px; letter-spacing:0; font-weight:800; }.page-head p { margin:0; color:var(--muted); font-size:13px; }
.head-actions { display:flex; gap: 8px; }.primary-btn { border:0; background: var(--cyan); color:#07101e; font-weight:800; border-radius:var(--radius-control); min-height:40px; padding: 0 17px; box-shadow:0 5px 14px rgba(7,143,130,.16); }.primary-btn:hover { filter: brightness(1.06); transform:translateY(-1px); }
.metric-grid { display:grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px; margin-bottom: 14px; }
.metric { background: var(--panel); border:1px solid var(--line); padding:16px; min-height:116px; box-shadow: var(--shadow); }.metric-top { display:flex; justify-content:space-between; color:var(--muted); font-size:12px; }.metric-icon { color:var(--cyan); font-size:20px; line-height:1; }.metric-value { font-size:28px; font-weight:800; margin:12px 0 4px; letter-spacing:0; }.metric-foot { color:var(--muted); font-size:11px; }.up { color:var(--green); }.warn { color:var(--amber); }
.grid-2 { display:grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap:14px; }.grid-3 { display:grid; grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr) minmax(0, 1fr); gap:14px; }
.panel { background: var(--panel); border:1px solid var(--line); border-radius:var(--radius-panel); box-shadow: var(--shadow); min-width:0; overflow:hidden; }.panel-head { padding:18px 20px 12px; display:flex; justify-content:space-between; align-items:flex-start; gap:10px; }.panel-head h2 { margin:0; font-size:16px; }.panel-head p { margin:5px 0 0; color:var(--muted); font-size:12px; }.panel-body { padding:0 20px 20px; }.chart { width:100%; height:280px; }.chart.tall { height:330px; }
.status-chip { display:inline-flex; align-items:center; gap:5px; padding: 4px 8px; background:#102b2b; color:var(--green); font-size:10px; border-radius:99px; font-family:'DM Mono',monospace; }.status-chip.status-idle { color:var(--muted); background:var(--soft); }.status-dot { width:6px; height:6px; border-radius:50%; background:currentColor; }
.activity { display:grid; gap:0; }.activity-row { display:grid; grid-template-columns: 28px 1fr auto; align-items:center; gap:10px; padding:12px 0; border-bottom:1px solid #202d48; }.activity-row:last-child { border-bottom:0; }.activity-dot { width:8px; height:8px; border-radius:50%; background:var(--cyan); box-shadow:0 0 0 4px rgba(85,214,194,.1); }.activity-copy strong { display:block; font-size:12px; }.activity-copy span { color:var(--muted); font-size:11px; }.activity-time { color:var(--muted); font:11px 'DM Mono',monospace; }
.work-table { width:100%; border-collapse:collapse; font-size:12px; }.work-table th { color:var(--muted); font-size:10px; letter-spacing:.08em; text-transform:uppercase; text-align:left; padding: 9px 8px; border-bottom:1px solid var(--line); }.work-table td { padding: 12px 8px; border-bottom:1px solid #202d48; }.work-table tr:last-child td { border-bottom:0; }.monitor-empty-cell { color:var(--muted); text-align:center; padding:28px 12px !important; }.user-cell { display:flex; gap:8px; align-items:center; }.mini-avatar { width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#263859;color:var(--blue);font-size:10px;font-weight:800; }.progress { width:100px; height:5px; background:#23304b; border-radius:99px; overflow:hidden; }.progress i { display:block; height:100%; background:var(--cyan); border-radius:inherit; }
.tag { display:inline-flex; padding:4px 7px; border-radius:5px; font-size:10px; background:#1f2941; color:var(--muted); }.tag.red { background:#382433; color:var(--rose); }.tag.gold { background:#3b3120; color:var(--amber); }.tag.green { background:#19352e; color:var(--green); }
.three-wrap { position:relative; min-height:330px; overflow:hidden; }.three-wrap canvas { width:100%; height:330px; display:block; }.three-caption { position:absolute; left:18px; bottom:16px; z-index:2; color:var(--muted); font-size:11px; background:rgba(18,26,46,.8); padding:7px 9px; border:1px solid var(--line); }
.section-gap { margin-top:14px; }.filters { display:flex; gap:8px; flex-wrap:wrap; }.filters input, .filters select, .field input, .field textarea, .field select { background:#0d1528; color:var(--text); border:1px solid var(--line); border-radius:6px; padding:9px 10px; outline:none; }.filters input:focus, .field input:focus, .field textarea:focus { border-color:var(--cyan); }.field { display:grid; gap:6px; margin-bottom:12px; }.field label { color:var(--muted); font-size:11px; }.field textarea { min-height:100px; resize:vertical; }
.memo-list { display:grid; gap:8px; }.memo { border:1px solid var(--line); padding:12px; display:flex; justify-content:space-between; gap:10px; background:#111a2e; }.memo h3 { margin:0 0 4px; font-size:12px; }.memo p { margin:0; font-size:11px; color:var(--muted); line-height:1.5; }.memo-meta { display:flex; gap:6px; align-items:flex-start; }.danger-note { border-left:3px solid var(--rose); }.important-note { border-left:3px solid var(--amber); }
.modal-backdrop { position:fixed; inset:0; background:rgba(5,8,16,.7); display:none; place-items:center; z-index:100; padding:20px; }.modal-backdrop.show { display:grid; }.modal { width:min(540px,100%); max-height:calc(100vh - 40px); overflow:auto; background:var(--panel); border:1px solid var(--line); box-shadow:var(--shadow); padding:20px; }.modal-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:18px; }.modal-head h2 { margin:0; font-size:16px; }.close { background:transparent; color:var(--muted); border:0; font-size:20px; }.modal-actions { display:flex; justify-content:flex-end; gap:8px; margin-top:18px; }
.choice-buttons { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.choice-button { min-height:42px; padding:8px 14px; color:var(--text); background:var(--panel-3); border:1px solid var(--line); border-radius:8px; font-weight:800; text-align:center; }
.choice-button:hover { border-color:#7f98ad; background:#edf3f7; }
.choice-button.active { color:#fff; background:#405d78; border-color:#405d78; box-shadow:0 5px 14px rgba(44,74,99,.18); }
.deposit-choice-buttons { grid-template-columns:repeat(3,minmax(0,1fr)); }
.field[hidden] { display:none!important; }
body:not(.light) .choice-button:hover { background:#1b2845; }
body:not(.light) .choice-button.active { background:#4f7fa8; border-color:#4f7fa8; }
.login { min-height:100vh; display:grid; place-items:center; padding:24px; background:radial-gradient(circle at 15% 15%, #1b3851 0, transparent 32%), var(--bg); }.login-card { width:min(430px,100%); background:var(--panel); border:1px solid var(--line); padding:32px; box-shadow:var(--shadow); }.login-card h1 { margin:20px 0 6px; font-size:26px; }.login-card p { color:var(--muted); font-size:12px; margin:0 0 24px; }.login-card .field input { width:100%; padding:12px; }.login-card .primary-btn { width:100%; height:42px; margin-top:8px; }.login-hint { margin-top:14px!important; font-size:11px!important; color:#6c7893!important; display:grid; gap:4px; }.login-hint span { display:block; }.error { color:var(--rose)!important; margin-top:10px!important; }
.login-switch { width:100%; margin-top:8px; }
.login-pending { display:grid; gap:10px; padding:14px; color:#405d78; background:#f1f6fa; border:1px solid #ccd9e4; border-radius:10px; }
.login-pending strong { color:#243b53; font-size:15px; }.login-pending span { color:#667388; font-size:12px; line-height:1.5; }
.account-review-panel { margin-bottom:16px; }.account-request-list { display:grid; gap:8px; padding:0 18px 18px; }
.account-request { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:12px; padding:12px 14px; border:1px solid #d7e0e8; background:#fff; border-left:4px solid #cbd4dd; border-radius:10px; }
.account-request.pending { border-left-color:#d28b2d; background:#fffaf0; }.account-request.approved { border-left-color:#4f8c68; background:#f4faf6; }.account-request.rejected { border-left-color:#a45e59; background:#fff6f5; }
.account-request strong,.account-request span,.account-request time { display:block; }.account-request strong { color:#243b53; font-size:14px; }.account-request span,.account-request time,.account-request small { color:#667388; font-size:11px; margin-top:4px; }.account-request-status { font-weight:800; white-space:nowrap; }.account-request-actions { display:flex; gap:6px; }.account-request-actions button { min-height:32px; padding:0 10px; }.account-request-empty { padding:18px; color:#667388; text-align:center; border:1px dashed #ccd5df; }
.visually-hidden { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.sr-only { position:fixed; left:-10000px; width:1px; height:1px; overflow:hidden; }
.compact { height:30px; padding:0 10px; font-size:11px; }
.secondary { background:#172235; color:#fff; }
.command-head { display:flex; justify-content:space-between; align-items:flex-end; gap:24px; margin-bottom:18px; }
.command-head h1 { margin:7px 0 4px; font-size:30px; letter-spacing:0; }
.command-head p { margin:0; color:var(--muted); font-size:13px; }
.command-date { display:flex; align-items:center; gap:10px; color:var(--muted); font-size:11px; }
.command-alerts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-bottom:14px; }
.command-alert { min-height:78px; display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:10px; padding:12px 14px; text-align:left; color:var(--text); background:var(--panel); border:1px solid var(--line); border-left:3px solid var(--line); box-shadow:var(--shadow); }
.command-alert:hover { border-color:var(--cyan); transform:translateY(-1px); }
.command-alert b { font-size:22px; line-height:1; }
.command-alert span { display:grid; gap:3px; font-size:12px; font-weight:800; }
.command-alert small { color:var(--muted); font-size:10px; font-weight:500; }
.command-alert i { color:var(--muted); font-style:normal; font-size:18px; }
.command-alert.urgent { border-left-color:var(--rose); }.command-alert.warning { border-left-color:var(--amber); }.command-alert.monitor { border-left-color:var(--cyan); }.command-alert.neutral { border-left-color:var(--blue); }
.command-main { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(300px,.75fr); gap:14px; }
.command-primary,.command-side { background:var(--panel); border:1px solid var(--line); box-shadow:var(--shadow); min-width:0; }
.command-panel-title { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; padding:16px 18px 8px; }
.command-panel-title span { display:block; color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.command-panel-title h2 { margin:4px 0 0; font-size:15px; }
.command-panel-title > strong { font-size:12px; color:var(--cyan); }
.command-trend { height:250px; padding:0 8px; }
.command-kpis { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; padding:0 18px 16px; }
.command-kpis .metric { min-height:84px; padding:11px; box-shadow:none; background:var(--panel-3); }
.command-kpis .metric-value { margin:7px 0 2px; font-size:21px; }
.priority-list { display:grid; padding:4px 18px 16px; }
.priority-list button { display:grid; grid-template-columns:8px minmax(0,1fr) auto; align-items:center; gap:10px; padding:13px 0; border:0; border-bottom:1px solid var(--line); text-align:left; color:var(--text); background:transparent; }
.priority-list button:last-child { border-bottom:0; }.priority-list button:hover b { color:var(--cyan); }
.priority-list span { display:grid; gap:3px; }.priority-list b { font-size:12px; }.priority-list small { color:var(--muted); font-size:10px; }.priority-list strong { color:var(--muted); font-size:10px; font-weight:600; }
.priority-mark { width:8px; height:8px; border-radius:50%; background:var(--cyan); }.priority-mark.rose{background:var(--rose)}.priority-mark.amber{background:var(--amber)}.priority-mark.blue{background:var(--blue)}
.command-bottom { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr); gap:14px; margin-top:14px; }
.command-bottom .panel { min-width:0; }.command-insight,.command-monitor-link { min-height:300px; }
.command-mix { height:238px; }
.command-monitor-link { padding:18px; display:flex; flex-direction:column; justify-content:center; background:linear-gradient(145deg,#eff9f7,#fff); }
.command-monitor-link > div { display:flex; align-items:center; gap:6px; color:var(--cyan); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.monitor-pulse { width:7px; height:7px; border-radius:50%; background:var(--green); box-shadow:0 0 0 5px rgba(23,139,87,.1); }
.command-monitor-link h2 { margin:14px 0 6px; font-size:18px; }.command-monitor-link p { margin:0 0 18px; color:var(--muted); font-size:11px; line-height:1.6; }.command-monitor-link .primary-btn { align-self:flex-start; }
.employee-queue { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:14px; }
.employee-task { min-height:126px; display:grid; grid-template-columns:48px minmax(0,1fr) auto; align-items:center; gap:12px; padding:16px; text-align:left; color:var(--text); background:var(--panel); border:1px solid var(--line); box-shadow:var(--shadow); }
.employee-task:hover { border-color:var(--cyan); transform:translateY(-1px); }.employee-task-icon { width:44px; height:44px; display:grid; place-items:center; border-radius:10px; font-size:22px; }.employee-task-icon.cyan{background:#e6f7f4;color:var(--cyan)}.employee-task-icon.amber{background:#fff3dc;color:var(--amber)}.employee-task-icon.blue{background:#eaf0fc;color:var(--blue)}
.employee-task small { color:var(--muted); font-size:10px; }.employee-task h2 { margin:3px 0; font-size:14px; }.employee-task p { margin:0; color:var(--muted); font-size:10px; }.employee-task > b { color:var(--cyan); font-size:20px; }
.employee-main { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr); gap:14px; }.employee-flow,.employee-note { background:var(--panel); border:1px solid var(--line); box-shadow:var(--shadow); }
.employee-progress-label { color:var(--cyan); }.employee-progress { height:8px; margin:6px 18px 16px; background:var(--panel-2); border-radius:99px; overflow:hidden; }.employee-progress i { display:block; height:100%; border-radius:inherit; background:var(--cyan); }
.employee-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; padding:0 18px 18px; }.employee-steps > div { display:grid; gap:4px; padding:12px; border:1px solid var(--line); background:var(--panel-3); }.employee-steps span { color:var(--cyan); font:10px 'DM Mono',monospace; }.employee-steps b { font-size:12px; }.employee-steps small { color:var(--muted); font-size:10px; }
.employee-note-item { margin:0 18px 10px; padding:12px; border:1px solid var(--line); background:var(--panel-3); }.employee-note-item b { font-size:12px; }.employee-note-item p { margin:5px 0 0; color:var(--muted); font-size:10px; line-height:1.5; }.employee-note-item.important-note{border-left:3px solid var(--amber)}.employee-note-item.danger-note{border-left:3px solid var(--rose)}
.mobile-nav, .mobile-more, .mobile-record-list { display:none; }
.toast-host { position:fixed; right:22px; top:82px; z-index:30; pointer-events:none; }
.toast { max-width:360px; background:#16372f; color:#eafff7; border:1px solid #2c7d68; padding:11px 14px; border-radius:7px; box-shadow:var(--shadow); font-size:12px; animation:toast-in .18s ease-out; }
.toast.error { background:#45232b; color:#fff0f3; border-color:#a84e61; }
@keyframes toast-in { from { opacity:0; transform:translateY(-6px); } }
.status-error { color:var(--rose); background:rgba(199,73,97,.1); }
.ocr-workbench .panel-body { padding:18px; }
.ocr-dropzone { min-height:220px; border:1px dashed #8ba0b8; background:#f8fbfd; display:grid; place-items:center; align-content:center; text-align:center; padding:26px; transition:border-color .18s, background .18s, box-shadow .18s; outline:none; }
.ocr-dropzone:hover, .ocr-dropzone:focus-visible, .ocr-dropzone.dragging { border-color:var(--cyan); background:#eef9f7; box-shadow:inset 0 0 0 1px var(--cyan); }
.scan-mark { width:48px; height:48px; display:grid; place-items:center; border:1px solid #aac5c1; color:var(--cyan); font-size:24px; margin-bottom:12px; }
.ocr-dropzone strong { font-size:18px; }.ocr-dropzone p { color:var(--muted); font-size:12px; margin:7px 0 16px; }
.ocr-source-actions { display:flex; gap:8px; }
.ocr-toolbar { display:flex; justify-content:space-between; align-items:center; gap:16px; padding:16px 0 12px; border-bottom:1px solid var(--line); }
.ocr-toolbar > div { display:flex; gap:8px; align-items:center; }.ocr-toolbar > div:first-child { display:grid; gap:2px; }.ocr-toolbar strong { font-size:13px; }.ocr-toolbar span { color:var(--muted); font-size:11px; }
.ocr-queue { display:grid; gap:10px; padding-top:12px; }
.ocr-empty { min-height:150px; display:grid; place-items:center; align-content:center; color:var(--muted); border:1px solid var(--line); background:var(--panel-3); }.ocr-empty span { color:var(--text); font-weight:700; font-size:13px; }.ocr-empty p { margin:5px 0 0; font-size:11px; }
.ocr-item { display:grid; grid-template-columns:132px minmax(0,1fr); gap:14px; border:1px solid var(--line); padding:12px; background:var(--panel); }
.ocr-item.review { border-left:3px solid var(--amber); }.ocr-item.failed { border-left:3px solid var(--rose); }.ocr-item.saved { border-left:3px solid var(--green); }
.ocr-preview { width:132px; aspect-ratio:4/3; background:#e8edf2; overflow:hidden; }.ocr-preview img { width:100%; height:100%; object-fit:cover; display:block; }
.ocr-item-main { min-width:0; display:grid; gap:9px; }.ocr-item-head { display:flex; justify-content:space-between; gap:10px; }.ocr-item-head strong { display:block; font-size:12px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.ocr-item-head span:not(.tag) { display:block; color:var(--muted); font-size:10px; margin-top:3px; }
.ocr-fields { display:grid; grid-template-columns:1.5fr 1fr 1fr; gap:8px; }.ocr-fields label { color:var(--muted); font-size:10px; }.ocr-fields input { width:100%; margin-top:4px; border:1px solid var(--line); background:var(--panel-3); color:var(--text); padding:8px; border-radius:5px; }.ocr-fields input:focus { outline:2px solid rgba(7,143,130,.2); border-color:var(--cyan); }
.ocr-confidence { color:var(--muted); font:10px 'DM Mono',monospace; }.ocr-error { margin:0; color:var(--rose); font-size:11px; }.ocr-item-actions { display:flex; justify-content:flex-end; gap:7px; align-items:center; }
.ocr-mode-switch { width:max-content; display:grid; grid-template-columns:1fr 1fr; gap:3px; margin:0 0 12px; padding:3px; background:#edf2f6; border:1px solid var(--line); border-radius:6px; }
.ocr-mode-switch button { min-width:112px; height:34px; border:0; border-radius:4px; background:transparent; color:var(--muted); font-weight:700; }
.ocr-mode-switch button.active { background:#fff; color:var(--text); box-shadow:0 1px 5px rgba(37,55,80,.12); }
.ocr-item.roster { grid-template-columns:260px minmax(0,1fr); align-items:start; }.ocr-item.roster .ocr-preview { width:260px; aspect-ratio:1/1; position:sticky; top:82px; }.ocr-item.roster .ocr-preview img { object-fit:contain; background:#eef2f5; }
.roster-review { display:grid; gap:10px; }.roster-session { display:grid; grid-template-columns:90px minmax(0,280px); align-items:center; gap:8px; color:var(--muted); font-size:11px; }.roster-session input { height:34px; padding:0 9px; border:1px solid var(--line); background:#fff; color:var(--text); border-radius:4px; }
.roster-review-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }.roster-review-grid section { border:1px solid var(--line); background:var(--panel-3); }.roster-review-grid h3 { margin:0; padding:9px 10px; border-bottom:1px solid var(--line); font-size:12px; display:flex; justify-content:space-between; }.roster-review-grid h3 span { color:var(--muted); font-size:9px; font-weight:500; }
.roster-player-row { display:grid; grid-template-columns:24px minmax(0,1.15fr) minmax(0,1fr) 36px; align-items:end; gap:6px; padding:7px; border-bottom:1px solid var(--line); }.roster-player-row:last-child { border-bottom:0; }.roster-player-row > b { align-self:center; width:22px; height:22px; display:grid; place-items:center; background:#e7eef5; color:var(--muted); font-size:10px; border-radius:3px; }.roster-player-row label { min-width:0; color:var(--muted); font-size:9px; }.roster-player-row input { width:100%; height:30px; margin-top:3px; padding:0 7px; border:1px solid var(--line); background:#fff; color:var(--text); border-radius:3px; font-size:11px; }.roster-player-row > span { align-self:center; color:var(--muted); font:9px 'DM Mono',monospace; }.roster-player-row.needs-review { background:#fff7e7; }.roster-player-row.needs-review input { border-color:#dba745; }
.mobile-record { display:flex; justify-content:space-between; gap:10px; padding:12px 14px; border-bottom:1px solid var(--line); }.mobile-record:last-child { border-bottom:0; }.mobile-record > div { display:grid; gap:5px; min-width:0; }.mobile-record > div:last-child { justify-items:end; }.mobile-record strong { font-size:12px; }.mobile-record span:not(.tag), .mobile-record small { color:var(--muted); font-size:10px; }.mobile-record b { font-size:13px; }
.screen-share-btn.active { color:#fff; background:#c74961; border-color:#c74961; }
.screen-share-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.screen-empty { grid-column:1/-1; min-height:150px; display:grid; place-items:center; align-content:center; text-align:center; background:var(--panel-3); border:1px solid var(--line); }.screen-empty strong { font-size:13px; }.screen-empty p { margin:5px 0 0; color:var(--muted); font-size:11px; }
.screen-share-card { display:grid; grid-template-columns:96px minmax(0,1fr) auto; gap:12px; align-items:center; padding:12px; border:1px solid var(--line); background:var(--panel-3); }
.screen-share-thumb { height:62px; background:#172235; color:#fff; display:grid; place-items:center; position:relative; }.screen-share-thumb b { font-size:24px; }.screen-share-thumb span { position:absolute; left:6px; top:6px; background:#c74961; padding:2px 5px; font:8px 'DM Mono',monospace; }
.screen-share-card strong { font-size:13px; }.screen-share-card p { margin:5px 0 0; color:var(--muted); font-size:10px; }.screen-share-actions { display:grid; gap:6px; }
.screen-viewer-modal { width:min(1180px,96vw); background:#0b1020; border:1px solid #31405d; box-shadow:0 24px 70px rgba(0,0,0,.42); }
.screen-viewer-head { height:58px; padding:0 16px; display:flex; align-items:center; justify-content:space-between; color:#fff; }.screen-viewer-head strong { display:block; font-size:13px; }.screen-viewer-head span { color:#9aa7c0; font-size:10px; }.screen-viewer-head button { border:0; background:transparent; color:#fff; font-size:24px; }
.screen-video-stage { position:relative; aspect-ratio:16/9; background:#05070d; overflow:hidden; }.screen-video-stage video { width:100%; height:100%; object-fit:contain; display:block; }.screen-live-mark { position:absolute; left:12px; top:12px; background:#c74961; color:#fff; padding:5px 8px; font:10px 'DM Mono',monospace; }
body.light .toast { background:#e7f5ef; color:#145b43; border-color:#a9dac7; } body.light .toast.error { background:#fce8ec; color:#9e3349; border-color:#e5a9b5; }
body.light .secondary { background:#172235; color:#fff; }
.attendance-loading .panel-body { min-height:240px; display:grid; place-items:center; align-content:center; gap:14px; color:var(--muted); }
.attendance-head { align-items:center; }
.attendance-kpis { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; margin-bottom:14px; }
.attendance-kpis > div { min-height:102px; padding:16px 18px; display:grid; align-content:center; gap:6px; background:var(--panel); border:1px solid var(--line); box-shadow:var(--shadow); }
.attendance-kpis span { color:var(--muted); font-size:13px; }.attendance-kpis strong { font-size:28px; }.attendance-kpis .warning strong { color:var(--amber); }.attendance-kpis .danger strong { color:var(--rose); }
.attendance-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:14px; }
.attendance-hero { min-height:320px; display:grid; grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr); background:var(--panel); border:1px solid var(--line); box-shadow:var(--shadow); }
.attendance-clock { padding:34px; display:flex; flex-direction:column; justify-content:center; background:#eef8f6; border-right:1px solid var(--line); }
.attendance-clock span { color:var(--cyan); font-size:13px; font-weight:800; }.attendance-clock strong { margin:10px 0 8px; font-size:48px; line-height:1; }.attendance-clock small { color:var(--muted); font-size:14px; }
.attendance-today { padding:30px 34px; display:grid; align-content:center; gap:24px; }.attendance-today > div:first-child { display:flex; align-items:center; justify-content:space-between; gap:14px; }.attendance-today > div:first-child > span { color:var(--muted); font-size:13px; }
.attendance-status { font-size:22px; }.attendance-status.green { color:var(--green); }.attendance-status.gold { color:var(--amber); }.attendance-status.red { color:var(--rose); }
.attendance-timeline { display:grid; grid-template-columns:12px minmax(0,1fr) 12px minmax(0,1fr); align-items:center; gap:12px; }.attendance-timeline i { width:12px; height:12px; border-radius:50%; background:var(--line); box-shadow:0 0 0 5px var(--panel-2); }.attendance-timeline i.done,.attendance-timeline i:first-child { background:var(--cyan); }.attendance-timeline span { display:block; color:var(--muted); font-size:12px; }.attendance-timeline strong { display:block; margin:3px 0; font-size:22px; }.attendance-timeline small { color:var(--muted); font-size:12px; }
.attendance-punch { width:100%; height:46px; font-size:15px; }
.attendance-list { display:grid; }.attendance-list article { min-height:66px; display:flex; justify-content:space-between; align-items:center; gap:12px; padding:12px 0; border-bottom:1px solid var(--line); }.attendance-list article:last-child { border-bottom:0; }.attendance-list article > div:first-child { min-width:0; }.attendance-list strong { display:block; font-size:14px; }.attendance-list article span:not(.tag) { display:block; margin-top:4px; color:var(--muted); font-size:12px; }
.attendance-row-actions { display:flex; gap:7px; flex:0 0 auto; }.attendance-empty { min-height:140px; display:grid; place-items:center; align-content:center; text-align:center; color:var(--muted); }.attendance-empty strong { color:var(--text); }.attendance-empty p { margin:6px 0 0; font-size:12px; }
.attendance-shift-form { display:grid; grid-template-columns:1.2fr repeat(3,1fr); gap:12px; align-items:end; }.attendance-shift-form > label { display:grid; gap:6px; color:var(--muted); font-size:12px; }.attendance-shift-form > label input { min-width:0; width:100%; height:40px; padding:0 10px; border:1px solid var(--line); background:var(--panel-3); color:var(--text); border-radius:6px; }.attendance-shift-form fieldset { grid-column:1/-1; margin:2px 0 0; padding:12px; border:1px solid var(--line); }.attendance-shift-form legend { color:var(--muted); font-size:12px; padding:0 5px; }
.weekday-options { display:flex; gap:8px; flex-wrap:wrap; }.weekday-options label { cursor:pointer; }.weekday-options input { position:absolute; opacity:0; pointer-events:none; }.weekday-options span { width:44px; height:34px; display:grid; place-items:center; border:1px solid var(--line); border-radius:5px; color:var(--muted); background:var(--panel-3); }.weekday-options input:checked + span { border-color:var(--cyan); color:var(--cyan); background:#e6f7f4; font-weight:800; }
@media (max-width: 1100px) { .metric-grid { grid-template-columns:repeat(2,1fr); }.grid-3 { grid-template-columns:1fr 1fr; }.grid-3 > :first-child { grid-column:1/-1; } }
@media (max-width: 760px) { .shell { grid-template-columns:minmax(0,1fr); width:100%; overflow:hidden; }.sidebar { min-width:0; width:100%; position:static; padding:10px 14px; border-right:0; border-bottom:1px solid var(--line); overflow:hidden; }.main { width:100%; min-width:0; }.brand { padding:0; border-bottom:0; }.nav, .nav-label, .side-footer { display:none; }.topbar { width:100%; padding:0 14px; height:54px; top:0; }.top-actions { gap:5px; }.profile-name, .profile-role, #quickMemo { display:none; }.screen-share-btn { max-width:110px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; padding:0 8px; }.content { width:100%; min-width:0; padding:18px 12px 94px; overflow:hidden; }.page-head { display:block; }.page-head h1 { font-size:24px; }.head-actions { margin-top:14px; }.metric-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }.metric { min-width:0; padding:12px; min-height:100px; }.metric-value { font-size:22px; }.grid-2, .grid-3 { grid-template-columns:minmax(0,1fr); }.grid-3 > :first-child { grid-column:auto; }.panel-head { padding:14px 14px 8px; }.panel-body { padding:0 14px 14px; }.chart { height:240px; }.chart.tall { height:280px; }.desktop-table { display:none; }.mobile-record-list { display:block; }.three-wrap canvas { height:260px; }.mobile-nav { position:fixed; display:grid; grid-template-columns:repeat(5,1fr); left:0; right:0; bottom:0; z-index:20; min-height:66px; padding:6px max(8px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left)); background:rgba(255,255,255,.96); border-top:1px solid var(--line); box-shadow:0 -8px 24px rgba(37,55,80,.08); }.mobile-nav button { border:0; background:transparent; color:var(--muted); display:grid; place-items:center; gap:2px; min-width:0; }.mobile-nav button span { font-size:15px; }.mobile-nav button small { font-size:9px; white-space:nowrap; }.mobile-nav button.active { color:var(--cyan); }.mobile-more { position:fixed; inset:0; z-index:25; background:rgba(15,24,38,.28); padding:20px 12px calc(78px + env(safe-area-inset-bottom)); align-items:end; }.mobile-more.show { display:grid; }.mobile-more-sheet { background:var(--panel); border:1px solid var(--line); padding:14px; box-shadow:var(--shadow); display:grid; grid-template-columns:repeat(2,1fr); gap:8px; }.mobile-more-head { grid-column:1/-1; display:flex; justify-content:space-between; align-items:center; margin-bottom:4px; }.mobile-more-head button { border:0; background:transparent; font-size:22px; color:var(--muted); }.mobile-more-sheet > button { border:1px solid var(--line); background:var(--panel-3); color:var(--text); padding:12px; text-align:left; display:flex; gap:8px; }.ocr-workbench .panel-body { padding:12px; }.ocr-dropzone { min-height:210px; padding:22px 14px; }.ocr-source-actions { width:100%; display:grid; grid-template-columns:1fr 1fr; }.ocr-source-actions button { padding:0 8px; }.ocr-toolbar { align-items:flex-start; }.ocr-toolbar > div:last-child { display:grid; grid-template-columns:repeat(2,1fr); }.ocr-toolbar #confirmAllOcr { grid-column:1/-1; }.ocr-item { grid-template-columns:86px minmax(0,1fr); padding:9px; gap:10px; }.ocr-preview { width:86px; }.ocr-fields { grid-template-columns:1fr; }.ocr-item-head { align-items:flex-start; }.toast-host { left:12px; right:12px; top:auto; bottom:82px; }.toast { max-width:none; }.monitor-card .progress { width:130px; }.screen-share-list { grid-template-columns:1fr; }.screen-share-card { grid-template-columns:72px minmax(0,1fr); }.screen-share-thumb { width:72px; }.screen-share-actions { grid-column:1/-1; grid-template-columns:1fr 1fr; }.screen-viewer-modal { width:100vw; }.screen-viewer-head { height:52px; }.screen-video-stage { aspect-ratio:9/16; } }

@media (max-width: 1100px) {
  .command-alerts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .command-bottom { grid-template-columns:1fr 1fr; }
  .command-monitor-link { grid-column:auto; min-height:220px; }
}
@media (max-width: 760px) {
  .command-head { display:block; }.command-date { margin-top:14px; justify-content:space-between; }
  .command-alerts { grid-template-columns:1fr 1fr; gap:8px; }.command-alert { min-height:92px; padding:10px; grid-template-columns:auto minmax(0,1fr); }.command-alert i { display:none; }.command-alert b { font-size:20px; }.command-alert span { font-size:11px; }
  .command-main,.employee-main { grid-template-columns:1fr; }.command-kpis { padding:0 14px 14px; }.command-trend { height:220px; }.command-bottom { grid-template-columns:1fr; }.command-monitor-link { grid-column:auto; min-height:190px; }.command-mix { height:230px; }
  .employee-queue { grid-template-columns:1fr; }.employee-task { min-height:100px; }.employee-steps { grid-template-columns:1fr; }
  .attendance-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }.attendance-kpis > div:last-child { grid-column:1/-1; }.attendance-layout,.attendance-hero { grid-template-columns:1fr; }.attendance-clock { min-height:190px; padding:24px; border-right:0; border-bottom:1px solid var(--line); }.attendance-clock strong { font-size:40px; }.attendance-today { padding:22px; }.attendance-shift-form { grid-template-columns:1fr 1fr; }.attendance-shift-form fieldset,.attendance-shift-form button { grid-column:1/-1; }
}

/* Desktop command-center type scale: the dashboard is meant for long scanning sessions. */
@media (min-width: 761px) {
  body { font-size: 14px; }
  .sidebar { padding-top: 26px; }
  .brand-title { font-size: 15px; }
  .brand-sub, .nav-label { font-size: 12px; }
  .nav button { padding: 12px; font-size: 14px; }
  .side-footer { font-size: 13px; }
  .topbar { height: 72px; }
  .crumb { font-size: 14px; }
  .profile-name { font-size: 14px; }
  .profile-role { font-size: 12px; }
  .content { padding-top: 34px; }
  .command-head { margin-bottom: 22px; }
  .command-head h1 { font-size: 34px; }
  .command-head p { font-size: 15px; }
  .command-date { font-size: 13px; }
  .command-alert { min-height: 92px; padding: 15px 17px; }
  .command-alert b { font-size: 25px; }
  .command-alert span { font-size: 14px; }
  .command-alert small { font-size: 12px; }
  .command-alert i { font-size: 20px; }
  .command-panel-title { padding: 19px 21px 10px; }
  .command-panel-title span { font-size: 12px; }
  .command-panel-title h2 { font-size: 18px; }
  .command-panel-title > strong { font-size: 13px; }
  .command-trend { height: 270px; }
  .command-kpis { padding: 0 21px 20px; gap: 10px; }
  .command-kpis .metric { min-height: 96px; padding: 14px; }
  .command-kpis .metric-top { font-size: 13px; }
  .command-kpis .metric-value { font-size: 25px; }
  .command-kpis .metric-foot { font-size: 12px; }
  .priority-list { padding: 6px 21px 20px; }
  .priority-list button { padding: 15px 0; }
  .priority-list b { font-size: 14px; }
  .priority-list small, .priority-list strong { font-size: 12px; }
  .command-bottom { gap: 16px; margin-top: 16px; }
  .command-insight, .command-monitor-link { min-height: 330px; }
  .command-mix { height: 264px; }
  .command-monitor-link { padding: 23px; }
  .command-monitor-link > div { font-size: 12px; }
  .command-monitor-link h2 { font-size: 22px; }
  .command-monitor-link p { font-size: 13px; }
  .employee-task h2 { font-size: 16px; }
  .employee-task p, .employee-task small { font-size: 12px; }
  .panel-head h2 { font-size: 16px; }
  .panel-head p { font-size: 12px; }
  .work-table { font-size: 13px; }
  .work-table th { font-size: 11px; }
  .activity-copy strong { font-size: 14px; }
  .activity-copy span, .activity-time { font-size: 12px; }
  .tag { font-size: 11px; }
  .status-chip { font-size: 11px; }
}

/* Enterprise cockpit: BOSS desktop overview */
.nav { gap: 0; }
.nav-group + .nav-group { margin-top: 12px; }
.nav-group .nav-label { margin-bottom: 4px; color:#8a94a3; font-family:inherit; font-size:11px; font-weight:800; letter-spacing:0; text-transform:none; }
.nav-group button { width:100%; min-height:40px; padding:8px 10px; border-radius:6px; }
.nav-group button > span:last-child { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
body.light .nav-group button.active { background:#fff0e4; color:#8a3f1c; }
body.light .nav-group button.active .nav-icon { color:#c95720; }
.cockpit-head { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; min-width:0; }
.cockpit-head h1 { margin:5px 0 3px; font-size:25px; line-height:1.15; }
.cockpit-head p { margin:0; color:var(--muted); font-size:12px; }
.cockpit-head-actions { display:flex; gap:8px; flex:0 0 auto; }
.cockpit-kpis { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); background:#fff; border:1px solid var(--line); border-radius:7px; overflow:hidden; }
.cockpit-kpi { min-width:0; padding:11px 15px; display:grid; grid-template-columns:minmax(0,1fr) auto; grid-template-rows:auto 1fr; align-items:center; gap:2px 8px; color:var(--text); background:transparent; border:0; border-right:1px solid var(--line); text-align:left; }
.cockpit-kpi:last-child { border-right:0; }
.cockpit-kpi:hover { background:#f7faff; }
.cockpit-kpi > span { color:var(--muted); font-size:11px; font-weight:700; }
.cockpit-kpi > strong { grid-row:1/3; grid-column:2; font-size:24px; line-height:1; }
.cockpit-kpi > small { color:#188657; font-size:10px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cockpit-kpi.warning > strong,.cockpit-kpi.warning > small { color:#b9780d; }
.cockpit-kpi.danger > strong,.cockpit-kpi.danger > small { color:#c74961; }
.cockpit-workspace { display:grid; grid-template-columns:minmax(0,1.95fr) minmax(300px,.78fr); gap:14px; min-height:0; }
.cockpit-monitor-panel { display:grid; grid-template-rows:48px minmax(280px,1fr) 112px; min-width:0; min-height:0; overflow:hidden; border-radius:7px; box-shadow:none; }
.cockpit-panel-head,.cockpit-rail-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:0 14px; border-bottom:1px solid var(--line); }
.cockpit-panel-head > div:first-child span,.cockpit-rail-head span { display:block; color:var(--muted); font-size:9px; font-weight:800; text-transform:uppercase; }
.cockpit-panel-head h2,.cockpit-rail-head h2 { margin:2px 0 0; font-size:14px; }
.cockpit-panel-head > div:last-child { display:flex; align-items:center; gap:7px; }
.cockpit-desktop-stage { min-height:0; padding:12px; background:#e8edf3; overflow:hidden; }
.cockpit-live-frame { position:relative; width:100%; height:100%; min-height:250px; display:grid; place-items:center; overflow:hidden; padding:0; color:#fff; background:#111827; border:1px solid #bac4d0; border-radius:6px; text-align:center; box-shadow:0 8px 24px rgba(34,48,68,.14); }
.cockpit-live-frame > img { width:100%; height:100%; min-height:0; object-fit:contain; display:block; }
.cockpit-live-frame > span { display:grid; gap:5px; color:#aeb8c6; font-size:12px; }
.cockpit-live-frame > span b { color:#fff; font-size:16px; }
.cockpit-frame-caption { position:absolute; left:10px; bottom:10px; max-width:calc(100% - 20px); display:grid; gap:2px; padding:7px 9px; color:#fff; background:rgba(16,24,40,.82); border:1px solid rgba(255,255,255,.16); border-radius:5px; text-align:left; }
.cockpit-frame-caption strong { font-size:11px; }.cockpit-frame-caption span { color:#ccd4df; font-size:9px; }
.cockpit-monitor-empty,.cockpit-strip-empty { width:100%; height:100%; min-height:0; display:grid; place-items:center; align-content:center; gap:6px; color:var(--muted); text-align:center; }
.cockpit-monitor-empty strong { color:var(--text); font-size:15px; }.cockpit-monitor-empty p { margin:0 0 8px; font-size:11px; }
.cockpit-desktop-strip { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; padding:10px 12px; border-top:1px solid var(--line); background:#fbfcfd; overflow:hidden; }
.cockpit-desk { min-width:0; padding:6px; display:grid; grid-template-columns:42px minmax(0,1fr); gap:7px; color:var(--text); background:#fff; border:1px solid var(--line); border-radius:5px; text-align:left; }
.cockpit-desk:hover,.cockpit-desk.selected { border-color:#1769e0; background:#f6faff; box-shadow:inset 0 0 0 1px #1769e0; }
.cockpit-desk-preview { height:52px; display:grid; place-items:center; border-radius:3px; background:#e7ebf0; color:#8b96a4; font-size:8px; font-weight:900; }
.cockpit-desk > span:last-child { min-width:0; display:flex; flex-direction:column; justify-content:center; }
.cockpit-desk strong,.cockpit-desk small,.cockpit-desk em { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cockpit-desk strong { font-size:10px; }.cockpit-desk small { margin-top:3px; color:var(--muted); font-size:8px; font-style:normal; }.cockpit-desk small.online { color:#188657; }.cockpit-desk em { margin-top:6px; color:#929cab; font-size:8px; font-style:normal; }
.cockpit-decision-rail { display:grid; grid-template-rows:minmax(0,1.1fr) minmax(0,.9fr); gap:14px; min-width:0; min-height:0; }
.cockpit-alert-panel,.cockpit-summary-panel { min-height:0; display:grid; grid-template-rows:48px minmax(0,1fr); overflow:hidden; border-radius:7px; box-shadow:none; }
.cockpit-rail-head > b { min-width:23px; height:23px; display:grid; place-items:center; color:#b53e55; background:#fce8ec; border-radius:99px; font-size:10px; }
.cockpit-alert-list { min-height:0; overflow:auto; padding:4px 14px 8px; }
.cockpit-alert-list button { padding:10px 0; }
.cockpit-activity-list { min-height:0; overflow:auto; padding:4px 14px 8px; }
.cockpit-activity-list button { width:100%; display:grid; grid-template-columns:24px minmax(0,1fr) auto; align-items:center; gap:8px; padding:9px 0; color:var(--text); background:transparent; border:0; border-bottom:1px solid var(--line); text-align:left; }
.cockpit-activity-list button:last-child { border-bottom:0; }
.cockpit-event-icon { width:22px; height:22px; display:grid; place-items:center; color:#8c97a6; background:#edf1f5; border-radius:5px; font-size:9px; }.cockpit-event-icon.online { color:#188657; background:#e7f5ef; }
.cockpit-activity-list button > span:nth-child(2) { min-width:0; display:grid; gap:2px; }.cockpit-activity-list b { font-size:11px; }.cockpit-activity-list small { color:var(--muted); font-size:9px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.cockpit-activity-list em { color:#929cab; font-size:9px; font-style:normal; }
@media (min-width:901px) {
  .shell { grid-template-columns:224px minmax(0,1fr); }
  .sidebar { padding:18px 14px; gap:12px; }
  .brand { padding:2px 8px 14px; }
  .content:has(.cockpit-workspace) { height:calc(100vh - 72px); max-width:none; padding:17px 20px 18px; display:grid; grid-template-rows:auto 82px minmax(0,1fr); gap:12px; overflow:hidden; }
}
@media (max-width:1100px) and (min-width:901px) {
  .cockpit-workspace { grid-template-columns:minmax(0,1.5fr) minmax(280px,.85fr); }
  .cockpit-desktop-strip { grid-template-columns:repeat(3,minmax(0,1fr)); overflow:auto; }
  .cockpit-desk:nth-child(n+4) { display:none; }
}
@media (max-width:900px) {
  .cockpit-head { align-items:flex-start; }
  .cockpit-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cockpit-kpi { min-height:76px; border-bottom:1px solid var(--line); }
  .cockpit-kpi:nth-child(2n) { border-right:0; }
  .cockpit-kpi:last-child { grid-column:1/-1; }
  .cockpit-workspace { grid-template-columns:minmax(0,1fr); }
  .cockpit-monitor-panel { min-height:620px; }
  .cockpit-decision-rail { grid-template-columns:minmax(0,1fr) minmax(0,1fr); grid-template-rows:360px; }
  .cockpit-desktop-strip { overflow-x:auto; grid-template-columns:repeat(5,minmax(150px,1fr)); }
}
@media (max-width:760px) {
  .cockpit-head { display:block; }.cockpit-head-actions { margin-top:12px; }
  .cockpit-kpi { padding:10px; }.cockpit-kpi > strong { font-size:20px; }
  .cockpit-monitor-panel { grid-template-rows:48px 300px 108px; min-height:456px; }
  .cockpit-live-frame { min-height:0; }
  .cockpit-decision-rail { grid-template-columns:1fr; grid-template-rows:340px 300px; }
}

/* Server-backed session workbooks */
.session-list { display:grid; gap:10px; }
.session-row { min-height:92px; padding:14px 16px; display:grid; grid-template-columns:46px minmax(0,1fr) auto; align-items:center; gap:14px; box-shadow:none; }
.session-row-icon { width:46px; height:46px; display:grid; place-items:center; border-radius:6px; color:#fff; background:#188657; font-size:12px; font-weight:900; }
.session-row > div:nth-child(2) { min-width:0; }.session-row strong { display:block; font-size:15px; }.session-row p { margin:4px 0 2px; color:var(--muted); font-size:12px; }.session-row span { color:var(--muted); font-size:10px; }
.session-row > div:last-child { display:flex; align-items:center; gap:10px; }.session-row > div:last-child .tag { color:inherit; }
.workbook-empty,.workbook-error { min-height:180px; display:grid; place-items:center; align-content:center; gap:7px; padding:24px; text-align:center; color:var(--muted); }.workbook-empty strong,.workbook-error strong { color:var(--text); font-size:16px; }.workbook-empty p { margin:0; font-size:12px; }
.session-editor { min-width:0; height:100%; display:grid; grid-template-rows:auto auto 42px auto minmax(0,1fr); overflow:hidden; color:#172033; background:#fff; border:1px solid var(--line); border-radius:7px; }
.session-editor-head { min-height:72px; padding:10px 14px; display:flex; align-items:center; justify-content:space-between; gap:14px; border-bottom:1px solid #d9e0e8; }.session-editor-head h1 { margin:2px 0; font-size:19px; }.session-editor-head p { margin:0; color:#667388; font-size:10px; }.back-link { padding:0; color:#1769e0; background:transparent; border:0; font-size:10px; font-weight:800; }
.sync-dot { display:inline-block; width:7px; height:7px; margin-right:5px; border-radius:50%; background:#188657; box-shadow:0 0 0 3px #dff2e9; }.sync-dot.offline { background:#c74961; box-shadow:0 0 0 3px #f9e4e8; }
.workbook-commandbar { min-width:0; min-height:48px; display:grid; grid-template-columns:auto minmax(300px,1fr) auto; align-items:center; gap:8px; padding:6px 10px; border-bottom:1px solid #d9e0e8; background:#f7f9fc; }.workbook-undo,.workbook-format-tools { display:flex; align-items:center; gap:4px; }.workbook-commandbar .icon-btn { width:32px; height:32px; border-radius:4px; }
.workbook-formula { min-width:0; height:34px; display:grid; grid-template-columns:82px 28px minmax(0,1fr); align-items:center; background:#fff; border:1px solid #ccd5e0; border-radius:4px; overflow:hidden; }.workbook-formula > span { height:100%; display:grid; place-items:center; color:#526075; border-right:1px solid #d9e0e8; font-size:10px; font-weight:800; }.workbook-formula > b { text-align:center; color:#188657; font-family:Georgia,serif; font-style:italic; }.workbook-formula input { min-width:0; height:100%; padding:0 9px; color:#172033; background:#fff; border:0; border-left:1px solid #e1e6ed; border-radius:0; font-family:'DM Mono',monospace; font-size:11px; outline:0; }
.workbook-format-tools select { height:32px; max-width:86px; padding:0 5px; color:#344054; background:#fff; border:1px solid #ccd5e0; border-radius:4px; font-size:10px; }.color-tool { position:relative; width:32px; height:32px; display:grid; place-items:center; border:1px solid #ccd5e0; border-radius:4px; background:#fff; font-size:12px; font-weight:900; overflow:hidden; }.color-tool::after { content:''; position:absolute; left:6px; right:6px; bottom:4px; height:3px; background:#172033; }.color-tool.fill::after { background:#9fc8ff; }.color-tool input { position:absolute; inset:0; opacity:0; cursor:pointer; }
.session-workbook-tabs { display:flex; align-items:end; gap:0; padding:0 12px; border-bottom:1px solid #bfc9d5; background:#edf2f7; overflow-x:auto; }.session-workbook-tabs button { min-width:78px; height:34px; padding:0 12px; color:#536176; background:transparent; border:0; border-right:1px solid #d4dce5; font-size:11px; font-weight:800; white-space:nowrap; }.session-workbook-tabs button.active { color:#1769e0; background:#fff; border-top:2px solid #1769e0; }
.workbook-bossbar { min-height:46px; padding:6px 10px; display:flex; justify-content:space-between; align-items:center; gap:12px; border-bottom:1px solid #d9e0e8; background:#fff; }.workbook-bossbar label { display:flex; align-items:center; gap:6px; color:#667388; font-size:10px; font-weight:700; }.workbook-bossbar input:not([type='checkbox']),.workbook-bossbar select { height:30px; padding:0 7px; color:#344054; background:#fff; border:1px solid #ccd5e0; border-radius:4px; font-size:10px; }.workbook-bossbar .ghost-btn { height:30px; padding:0 9px; font-size:10px; }
.workbook-canvas { min-width:0; min-height:0; overflow:auto; background:#eef2f6; }.workbook-grid-wrap { min-width:0; height:100%; overflow:auto; padding:12px; }
.session-workbook-grid { width:100%; min-width:820px; table-layout:fixed; border-collapse:separate; border-spacing:0; color:#172033; background:#fff; border-left:1px solid #9daabd; border-top:1px solid #9daabd; font-size:12px; }.session-workbook-grid th,.session-workbook-grid td { height:34px; padding:0; border-right:1px solid #aab5c4; border-bottom:1px solid #aab5c4; }.session-workbook-grid thead th { position:sticky; top:0; z-index:3; color:#fff; background:#1769e0; font-size:11px; text-align:center; }.session-workbook-grid .row-number { width:42px; position:sticky; left:0; z-index:2; color:#677489; background:#edf1f5; text-align:center; font-size:10px; }.session-workbook-grid thead .row-number { z-index:4; color:#fff; background:#155bbf; }.session-workbook-grid th:nth-child(2) { width:24%; }.session-workbook-grid th:nth-child(n+3):nth-child(-n+5) { width:17%; }.session-workbook-grid th:nth-child(6) { width:25%; }
.session-workbook-grid td input { width:100%; height:100%; padding:0 9px; color:inherit; background:transparent; border:0; border-radius:0; outline:0; font:inherit; text-align:inherit; }.session-workbook-grid td input:focus { box-shadow:inset 0 0 0 2px #1769e0; background:#fff; }.session-workbook-grid td input[readonly] { color:#5f6b7d; cursor:not-allowed; }.session-workbook-grid td.calculated { background:#eaf4ff; font-weight:800; }.session-workbook-grid td.formula-warning { background:#fff1d7; }.session-workbook-grid td.formula-warning input { color:#9b6200; }.session-workbook-grid .workbook-total th,.session-workbook-grid .workbook-total td { position:sticky; bottom:0; z-index:2; height:38px; padding:0 9px; background:#d8e8fb; font-weight:900; }.session-workbook-grid .workbook-total .row-number { z-index:3; }
.workbook-summary-cards { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; padding:14px; }.workbook-summary-cards article { min-width:0; padding:14px; background:#fff; border:1px solid #d9e0e8; border-top:3px solid #1769e0; border-radius:6px; }.workbook-summary-cards span,.workbook-summary-cards small { display:block; color:#667388; font-size:10px; }.workbook-summary-cards strong { display:block; margin:8px 0 5px; font-size:21px; }.workbook-summary-table { margin:0 14px 14px; overflow:auto; background:#fff; border:1px solid #d9e0e8; }.workbook-summary-table table { width:100%; min-width:700px; border-collapse:collapse; }.workbook-summary-table th,.workbook-summary-table td { padding:11px 13px; border-bottom:1px solid #e2e7ed; text-align:right; font-size:11px; }.workbook-summary-table th:first-child,.workbook-summary-table td:last-child { text-align:left; }.workbook-summary-table thead th { color:#667388; background:#f7f9fc; font-size:10px; }.workbook-memo-sheet { padding:14px; display:grid; gap:8px; }.workbook-memo-sheet article { display:grid; grid-template-columns:38px minmax(0,1fr); gap:12px; padding:12px; background:#fff; border:1px solid #d9e0e8; }.workbook-memo-sheet article > span { color:#1769e0; font-weight:900; }.workbook-memo-sheet p { margin:4px 0 0; color:#667388; font-size:11px; }
.workbook-summary-intro { margin:14px 14px 0; padding:12px 14px; display:flex; align-items:center; justify-content:space-between; gap:16px; background:#fff; border:1px solid #d9e0e8; }.workbook-summary-intro strong,.workbook-summary-intro span { display:block; }.workbook-summary-intro strong { font-size:14px; }.workbook-summary-intro span { margin-top:3px; color:#667388; font-size:11px; }.workbook-summary-cards article button,.workbook-summary-table button { margin-top:10px; padding:0; color:#1769e0; background:none; border:0; font-size:11px; font-weight:800; cursor:pointer; }.workbook-summary-table td:last-child { text-align:right; }.workbook-summary-table td:last-child button { margin:0; }
.workbook-history { margin:0 14px 18px; }.workbook-history-head { padding:10px 2px; display:flex; align-items:end; justify-content:space-between; }.workbook-history-head strong,.workbook-history-head span { display:block; }.workbook-history-head strong { font-size:14px; }.workbook-history-head span { margin-top:2px; color:#667388; font-size:10px; }.workbook-history-head > b { color:#667388; font-size:11px; }.workbook-history-list { display:grid; gap:6px; }.workbook-history-item { width:100%; min-width:0; min-height:42px; padding:9px 12px; display:grid; grid-template-columns:54px minmax(100px,.7fr) minmax(150px,1.3fr) 84px 170px; align-items:center; gap:10px; border:1px solid transparent; color:#263448; font-size:11px; }.workbook-history-item.history-write { background:#e8f7ee; border-color:#c5e7d2; }.workbook-history-item.history-clear { background:#fdecec; border-color:#f2cccc; }.workbook-history-item .history-status { font-weight:900; }.workbook-history-item.history-write .history-status { color:#157347; }.workbook-history-item.history-clear .history-status { color:#b13a3a; }.workbook-history-item time { text-align:right; color:#59677a; }.workbook-history-empty { padding:18px; display:flex; justify-content:center; gap:8px; color:#667388; background:#fff; border:1px dashed #cfd8e3; font-size:11px; }
.ocr-workbook-target { margin-top:12px; padding:10px 12px; display:flex; align-items:center; gap:12px; background:#f3f8fc; border:1px solid #d7e2ec; border-left:3px solid #078f82; }.ocr-workbook-target > div { min-width:0; flex:1; }.ocr-workbook-target strong,.ocr-workbook-target span { display:block; }.ocr-workbook-target strong { font-size:12px; }.ocr-workbook-target span { margin-top:2px; color:var(--muted); font-size:10px; }.ocr-workbook-target label { display:flex; align-items:center; gap:6px; color:var(--muted); font-size:10px; white-space:nowrap; }.ocr-workbook-target select { max-width:220px; height:32px; padding:0 7px; color:var(--text); background:#fff; border:1px solid var(--line); border-radius:4px; font-size:11px; }
@media (min-width:901px) { .content:has(.session-editor) { max-width:none; height:calc(100vh - 72px); padding:16px 20px 18px; overflow:hidden; } }
@media (max-width:1100px) { .workbook-commandbar { grid-template-columns:auto minmax(280px,1fr); }.workbook-format-tools { grid-column:1/-1; padding-left:78px; }.workbook-bossbar { align-items:flex-start; flex-direction:column; }.workbook-summary-cards { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:760px) { .session-row { grid-template-columns:40px minmax(0,1fr); }.session-row-icon { width:40px; height:40px; }.session-row > div:last-child { grid-column:1/-1; justify-content:space-between; }.session-editor { height:auto; min-height:calc(100vh - 168px); grid-template-rows:auto auto 42px auto minmax(460px,1fr); border-radius:0; }.session-editor-head { align-items:flex-start; flex-direction:column; padding:10px; }.session-editor-head .head-actions { width:100%; display:grid; grid-template-columns:1fr 1fr; }.workbook-commandbar { grid-template-columns:auto minmax(230px,1fr); overflow-x:auto; }.workbook-format-tools { grid-column:1/-1; padding-left:0; }.workbook-formula { grid-template-columns:68px 26px minmax(160px,1fr); }.workbook-bossbar label { width:100%; flex-wrap:wrap; }.snapshot-policy { border-top:1px solid #e1e6ed; padding-top:6px; }.workbook-summary-intro { margin:10px 10px 0; align-items:flex-start; }.workbook-summary-cards { grid-template-columns:1fr 1fr; padding:10px; }.workbook-summary-cards strong { font-size:17px; }.workbook-history { margin:0 10px 14px; }.workbook-history-item { grid-template-columns:48px minmax(0,1fr) auto; gap:4px 8px; }.workbook-history-item > span:nth-of-type(2) { grid-column:2/4; }.workbook-history-item time { grid-column:2/4; text-align:left; }.workbook-grid-wrap { padding:8px; }.session-workbook-grid { min-width:760px; }.workbook-canvas { min-height:460px; }.ocr-workbook-target { align-items:flex-start; flex-wrap:wrap; }.ocr-workbook-target > div { flex-basis:100%; }.ocr-workbook-target label { flex:1; display:grid; }.ocr-workbook-target select { width:100%; max-width:none; } }
@media (max-width:760px) { .account-request { grid-template-columns:1fr auto; }.account-request-status { grid-column:2; grid-row:1; }.account-request-actions { grid-column:1/-1; }.account-request-actions button { flex:1; } }
@media (max-width:760px) { .ocr-mode-switch { width:100%; }.ocr-mode-switch button { min-width:0; }.ocr-item.roster { grid-template-columns:1fr; }.ocr-item.roster .ocr-preview { position:static; width:100%; aspect-ratio:16/10; }.roster-session { grid-template-columns:1fr; }.roster-review-grid { grid-template-columns:1fr; }.roster-player-row { grid-template-columns:24px minmax(0,1fr) 34px; }.roster-player-row label:nth-of-type(2) { grid-column:2/4; }.roster-player-row > span { grid-column:3; grid-row:1; } }

/* Rounded, high-visibility enterprise surface */
.icon-btn,.ghost-btn { min-height:38px; border-radius:var(--radius-control); }.icon-btn { min-width:40px; font-size:17px; }
.filters input,.filters select,.field input,.field textarea,.field select { min-height:40px; border-radius:var(--radius-control); padding-inline:12px; }
.metric,.memo,.employee-task,.employee-flow,.employee-note,.command-primary,.command-side,.command-alert,.session-row,.ocr-item,.ocr-empty,.workbook-summary-intro,.workbook-summary-cards article { border-radius:var(--radius-panel); }
.session-editor,.login-card,.modal,.mobile-more-sheet { border-radius:14px; }
.nav button { min-height:46px; border-radius:var(--radius-control); font-size:14px; }
.tag { border-radius:8px; padding:5px 9px; font-weight:700; }

.automation-panel { overflow:visible; }
.automation-live { display:inline-flex; align-items:center; gap:7px; padding:7px 10px; color:#157347; background:#e8f7ee; border-radius:9px; font-size:11px; font-weight:800; }
.automation-live i { width:7px; height:7px; border-radius:50%; background:#1c9b5f; box-shadow:0 0 0 4px rgba(28,155,95,.12); }
.automation-builder { display:grid; grid-template-columns:minmax(180px,1fr) 150px 190px minmax(170px,1fr) minmax(240px,1.4fr) auto; align-items:end; gap:10px; padding:6px 20px 18px; }
.automation-builder .field { margin:0; }
.automation-builder .primary-btn { white-space:nowrap; }
.automation-list { display:grid; gap:8px; padding:14px 20px 20px; border-top:1px solid var(--line); background:#f7fafc; }
.automation-item { width:100%; min-width:0; padding:13px 14px; display:grid; grid-template-columns:76px minmax(0,1fr) auto; align-items:center; gap:14px; background:#fff; border:1px solid #dbe5ed; border-radius:var(--radius-panel); box-shadow:0 4px 12px rgba(37,55,80,.04); }
.automation-time { min-height:50px; display:grid; place-items:center; align-content:center; background:#eaf7f4; border-radius:10px; color:#08796f; }
.automation-time b { font-size:18px; }.automation-time span { font-size:10px; }
.automation-copy { min-width:0; }.automation-copy > div { display:flex; align-items:center; gap:8px; }.automation-copy strong { font-size:14px; }.automation-copy p { margin:5px 0 0; color:var(--muted); font-size:11px; }.automation-error { display:block; margin-top:4px; color:var(--rose); }
.automation-actions { display:flex; align-items:center; gap:8px; }.automation-switch { display:flex; align-items:center; gap:6px; color:var(--muted); font-size:11px; }.automation-switch input { width:17px; height:17px; accent-color:var(--cyan); }
.automation-empty { min-height:82px; display:grid; place-items:center; align-content:center; text-align:center; color:var(--muted); background:#fff; border:1px dashed #ccd8e3; border-radius:var(--radius-panel); }.automation-empty strong { color:var(--text); font-size:13px; }.automation-empty p { margin:5px 0 0; font-size:11px; }
@media (max-width:1450px) { .automation-builder { grid-template-columns:repeat(3,minmax(0,1fr)); }.automation-builder .wide { grid-column:span 2; } }
@media (max-width:760px) { .automation-builder { grid-template-columns:1fr; padding:4px 14px 14px; }.automation-builder .wide { grid-column:1; }.automation-builder .primary-btn { width:100%; }.automation-list { padding:12px 14px 16px; }.automation-item { grid-template-columns:64px minmax(0,1fr); }.automation-actions { grid-column:1/-1; justify-content:flex-end; flex-wrap:wrap; }.automation-live { display:none; } }

/* Warm white light theme */
body.light .content { background:#fffdf9; }
body.light .brand-mark { background:linear-gradient(135deg,#c95720,#e4aa37); color:#fff; box-shadow:0 5px 14px rgba(201,87,32,.2); }
body.light .avatar { background:#fff0e4; color:#a9471a; }
body.light .panel,body.light .metric,body.light .command-primary,body.light .command-side,body.light .employee-flow,body.light .employee-note { border-color:#ecdccf; }
body.light .metric-icon,body.light .eyebrow,body.light .nav-icon,body.light .command-panel-title > strong { color:#c95720; }
body.light .metric-value { color:#38251c; }
body.light .command-alert.monitor { border-left-color:#c95720; }
body.light .command-alert.neutral { border-left-color:#d99a24; }
body.light .command-monitor-link { background:#fff8f1; }
body.light .priority-mark,body.light .monitor-pulse { background:#c95720; }
body.light .priority-mark.blue { background:#d99a24; }
body.light .employee-task-icon.cyan { background:#fff0e4; color:#c95720; }
body.light .employee-task-icon.blue { background:#fff5dc; color:#a96d08; }
body.light .employee-progress i,body.light .progress i { background:#c95720; }
body.light .mobile-nav button.active { color:#c95720; }
body.light .ocr-dropzone:hover,body.light .ocr-dropzone:focus-visible,body.light .ocr-dropzone.dragging { border-color:#c95720; background:#fff7ef; box-shadow:inset 0 0 0 1px #c95720; }
body.light .scan-mark { border-color:#e5b89d; color:#c95720; background:#fff8f2; }
body.light .ocr-mode-switch { background:#f8eee6; }
body.light .ocr-workbook-target { background:#fff8f1; border-color:#ead7c8; border-left-color:#c95720; }
body.light .session-row-icon { background:#c95720; }
body.light .session-workbook-tabs { background:#fff5eb; border-bottom-color:#ddc8b9; }
body.light .session-workbook-tabs button { border-right-color:#ead7c8; }
body.light .session-workbook-tabs button.active { color:#9a4017; border-top-color:#c95720; border-bottom-color:#c95720; background:#fffaf5; }
body.light .workbook-commandbar { background:#fffaf5; border-bottom-color:#ead7c8; }
body.light .workbook-bossbar { border-bottom-color:#ead7c8; }
body.light .workbook-canvas { background:#f8f0e8; }
body.light .back-link { color:#ad4719; }
body.light .session-workbook-grid { border-left-color:#bcaea5; border-top-color:#bcaea5; }
body.light .session-workbook-grid th,body.light .session-workbook-grid td { border-right-color:#bcaea5; border-bottom-color:#bcaea5; }
body.light .session-workbook-grid .row-number { background:#f3ece6; color:#6d5d53; }
body.light .session-workbook-grid thead th { background:#c95720; }
body.light .session-workbook-grid thead .row-number { background:#a94318; }
body.light .session-workbook-grid td input:focus { box-shadow:inset 0 0 0 2px #c95720; }
body.light .session-workbook-grid td.calculated { background:#fff4e8; }
body.light .session-workbook-grid .workbook-total th,body.light .session-workbook-grid .workbook-total td { background:#f9dfc9; }
body.light .workbook-summary-cards article { border-top-color:#c95720; }
body.light .workbook-summary-cards article button,body.light .workbook-summary-table button { color:#ad4719; }
body.light .automation-list { background:#fff8f1; }
body.light .automation-time { background:#fff0e4; color:#a94318; }
body.light .automation-item { border-color:#ead7c8; box-shadow:0 4px 12px rgba(91,52,28,.05); }
body.light .cockpit-desktop-stage { background:#f5eee7; }
body.light .cockpit-desktop-strip { background:#fff9f3; }
@media (max-width:760px) { .mobile-nav button span { font-size:20px; line-height:1; } }

/* Readable operational type scale */
body { font-size:15px; }
button,input,select,textarea { font-size:15px; }

.page-head h1 { font-size:32px; }
.page-head p { font-size:15px; }
.eyebrow { font-size:12px; }

.panel-head h2 { font-size:18px; }
.panel-head p { font-size:14px; }

.nav button { font-size:15px; }
.nav-label,.brand-sub { font-size:13px; }
.crumb,.profile-name { font-size:14px; }
.profile-role { font-size:12px; }

.primary-btn,.ghost-btn { font-size:14px; }
.tag,.status-chip { font-size:12px; }

.field label,.filters label { font-size:13px; }
.field input,.field textarea,.field select,
.filters input,.filters select { font-size:15px; }

.work-table { font-size:14px; }
.work-table th { font-size:12px; }

.ocr-dropzone strong { font-size:20px; }
.ocr-dropzone p { font-size:14px; }
.ocr-item-head strong { font-size:14px; }
.ocr-item-head span:not(.tag) { font-size:12px; }
.ocr-fields label { font-size:12px; }
.ocr-fields input { font-size:14px; }
.ocr-confidence,.ocr-error { font-size:12px; }
.ocr-toolbar strong { font-size:15px; }
.ocr-toolbar span { font-size:13px; }

.session-workbook-grid { font-size:13px; }
.session-workbook-grid thead th { font-size:12px; }
.session-workbook-grid .row-number { font-size:11px; }
.session-workbook-tabs button { font-size:13px; }
.workbook-bossbar label { font-size:12px; }
.workbook-summary-cards span,
.workbook-summary-cards small { font-size:12px; }
.workbook-summary-table th,
.workbook-summary-table td { font-size:13px; }

.automation-copy strong { font-size:15px; }
.automation-copy p,
.automation-switch { font-size:13px; }

@media (max-width:760px) {
  body { font-size:15px; }
  .page-head h1 { font-size:28px; }
  .mobile-nav button small { font-size:12px; }
}

/* Lift legacy microcopy to a comfortable minimum size. */
.side-footer,.metric-foot,.activity-copy span,.activity-time,
.three-caption,.memo p,.compact,.command-date { font-size:13px; }
.activity-copy strong,.memo h3,.mini-avatar { font-size:13px; }

.command-alert small,.command-panel-title span,
.priority-list small,.priority-list strong,
.command-monitor-link > div,.command-monitor-link p { font-size:12px; }
.priority-list b { font-size:14px; }

.employee-task small,.employee-task p,
.employee-steps span,.employee-steps small,
.employee-note-item p { font-size:12px; }
.employee-task h2,.employee-steps b,.employee-note-item b { font-size:14px; }

.ocr-empty p,.roster-session { font-size:13px; }
.roster-player-row > b,.roster-player-row label,
.roster-player-row > span { font-size:12px; }
.roster-player-row input { font-size:13px; }
.mobile-record strong { font-size:14px; }
.mobile-record span:not(.tag),.mobile-record small { font-size:12px; }

.screen-empty p,.screen-share-card p,
.screen-viewer-head span { font-size:12px; }
.screen-empty strong,.screen-share-card strong,
.screen-viewer-head strong { font-size:14px; }

.cockpit-kpi > span,.cockpit-kpi > small,
.cockpit-frame-caption strong,.cockpit-frame-caption span,
.cockpit-monitor-empty p,.cockpit-desk strong,
.cockpit-desk small,.cockpit-desk em,
.cockpit-activity-list small,.cockpit-activity-list em { font-size:12px; }
.cockpit-activity-list b { font-size:13px; }

.session-row span,.session-editor-head p,.back-link { font-size:12px; }
.workbook-formula > span,.workbook-formula input,
.workbook-format-tools select,.workbook-bossbar input:not([type='checkbox']),
.workbook-bossbar select,.workbook-bossbar .ghost-btn { font-size:12px; }
.workbook-summary-table thead th,.workbook-memo-sheet p,
.workbook-summary-intro span,.workbook-summary-cards article button,
.workbook-summary-table button,.workbook-history-head span,
.workbook-history-head > b,.workbook-history-item,
.workbook-history-empty { font-size:12px; }

.ocr-workbook-target span,.ocr-workbook-target label,
.ocr-workbook-target select,.automation-live,
.automation-time span,.automation-empty p { font-size:12px; }
.ocr-workbook-target strong,.automation-empty strong { font-size:14px; }
.login-hint { font-size:13px!important; }

/* Calm monochrome light theme */
body.light {
  --bg:#f5f5f5;
  --panel:#ffffff;
  --panel-2:#eeeeee;
  --panel-3:#fafafa;
  --line:#d8d8d8;
  --text:#202020;
  --muted:#666666;
  --cyan:#242424;
  --blue:#555555;
  --amber:#666666;
  --rose:#555555;
  --green:#333333;
  --shadow:0 8px 24px rgba(0,0,0,.06);
}
body.light .sidebar,
body.light .topbar,
body.light .login,
body.light .login-card { background:#ffffff; }
body.light .topbar { background:rgba(255,255,255,.96); }
body.light .nav button:hover,
body.light .nav button.active,
body.light .nav-group button.active { background:#ededed; color:#202020; }
body.light .nav-label,.light .nav-label { color:#707070; }
body.light .brand-mark { background:#242424; color:#fff; box-shadow:none; }
body.light .avatar { background:#eeeeee; color:#242424; }
body.light .primary-btn { background:#242424; color:#fff; box-shadow:0 5px 12px rgba(0,0,0,.12); }
body.light .ghost-btn:hover,
body.light .icon-btn:hover { border-color:#777; color:#202020; background:#f1f1f1; }
body.light .status-chip { background:#eeeeee; color:#303030; }
body.light .tag,
body.light .tag.red,
body.light .tag.gold,
body.light .tag.green { background:#eeeeee; color:#404040; }
body.light .three-caption { background:rgba(255,255,255,.94); }
body.light .progress { background:#e5e5e5; }
body.light .activity-dot { box-shadow:0 0 0 4px rgba(0,0,0,.08); }
body.light .metric-icon,
body.light .eyebrow,
body.light .nav-icon,
body.light .command-panel-title > strong { color:#242424; }
body.light .metric-value { color:#202020; }
body.light .command-alert.urgent,
body.light .command-alert.warning,
body.light .command-alert.monitor,
body.light .command-alert.neutral { border-left-color:#555; }
body.light .command-monitor-link { background:#f1f1f1; }
body.light .priority-mark,
body.light .priority-mark.rose,
body.light .priority-mark.amber,
body.light .priority-mark.blue,
body.light .monitor-pulse { background:#444; }
body.light .employee-task-icon.cyan,
body.light .employee-task-icon.amber,
body.light .employee-task-icon.blue { background:#eeeeee; color:#242424; }
body.light .employee-progress i,
body.light .progress i { background:#333; }
body.light .mobile-nav button.active { color:#242424; }
body.light .ocr-dropzone,
body.light .ocr-empty { background:#fafafa; }
body.light .ocr-dropzone:hover,
body.light .ocr-dropzone:focus-visible,
body.light .ocr-dropzone.dragging { border-color:#333; background:#f0f0f0; box-shadow:inset 0 0 0 1px #333; }
body.light .scan-mark { border-color:#bdbdbd; color:#242424; background:#f2f2f2; }
body.light .ocr-mode-switch { background:#eeeeee; }
body.light .ocr-workbook-target { background:#f4f4f4; border-color:#d4d4d4; border-left-color:#333; }
body.light .session-row-icon { background:#333; }
body.light .session-workbook-tabs { background:#f0f0f0; border-bottom-color:#cfcfcf; }
body.light .session-workbook-tabs button { border-right-color:#d7d7d7; }
body.light .session-workbook-tabs button.active { color:#202020; border-top-color:#333; border-bottom-color:#333; background:#fff; }
body.light .workbook-commandbar { background:#f7f7f7; border-bottom-color:#d5d5d5; }
body.light .workbook-bossbar { border-bottom-color:#d5d5d5; }
body.light .workbook-canvas { background:#f1f1f1; }
body.light .back-link { color:#333; }
body.light .session-workbook-grid { border-left-color:#aaa; border-top-color:#aaa; }
body.light .session-workbook-grid th,
body.light .session-workbook-grid td { border-right-color:#aaa; border-bottom-color:#aaa; }
body.light .session-workbook-grid .row-number { background:#ededed; color:#555; }
body.light .session-workbook-grid thead th { background:#333333; }
body.light .session-workbook-grid thead .row-number { background:#222; }
body.light .session-workbook-grid td input:focus { box-shadow:inset 0 0 0 2px #333; }
body.light .session-workbook-grid td.calculated { background:#f0f0f0; }
body.light .session-workbook-grid .workbook-total th,
body.light .session-workbook-grid .workbook-total td { background:#e2e2e2; }
body.light .workbook-summary-cards article { border-top-color:#333; }
body.light .workbook-summary-cards article button,
body.light .workbook-summary-table button { color:#333; }
body.light .automation-list { background:#f4f4f4; }
body.light .automation-time { background:#ebebeb; color:#333; }
body.light .automation-item { border-color:#d8d8d8; box-shadow:0 4px 12px rgba(0,0,0,.04); }
body.light .cockpit-desktop-stage { background:#ededed; }
body.light .cockpit-desktop-strip { background:#f8f8f8; }
body.light .content { background:#f5f5f5; }
body.light .panel,
body.light .metric,
body.light .command-primary,
body.light .command-side,
body.light .employee-flow,
body.light .employee-note { border-color:#d8d8d8; }
body.light .nav-group button.active .nav-icon { color:#242424; }
body.light .screen-share-btn.active { background:#242424; border-color:#242424; color:#fff; }
body.light .screen-share-thumb,
body.light .screen-viewer-modal,
body.light .screen-video-stage { background:#171717; border-color:#444; }
body.light .screen-share-thumb span,
body.light .screen-live-mark { background:#333; }
body.light .mini-avatar { background:#e7e7e7; color:#333; }
body.light .cockpit-kpi > small,
body.light .cockpit-kpi.warning > strong,
body.light .cockpit-kpi.warning > small,
body.light .cockpit-kpi.danger > strong,
body.light .cockpit-kpi.danger > small { color:#555; }
body.light .cockpit-live-frame { background:#171717; border-color:#bdbdbd; box-shadow:0 8px 24px rgba(0,0,0,.12); }
body.light .cockpit-desk:hover,
body.light .cockpit-desk.selected { border-color:#555; background:#f0f0f0; box-shadow:inset 0 0 0 1px #555; }
body.light .cockpit-desk-preview,
body.light .cockpit-event-icon,
body.light .cockpit-event-icon.online { background:#e8e8e8; color:#555; }
body.light .cockpit-desk small.online { color:#444; }
body.light .cockpit-rail-head > b { background:#ededed; color:#444; }
body.light .roster-player-row.needs-review,
body.light .session-workbook-grid td.formula-warning { background:#eeeeee; }
body.light .roster-player-row.needs-review input { border-color:#777; }
body.light .session-workbook-grid td.formula-warning input { color:#444; }
body.light .ocr-dropzone { border-color:#a8a8a8; }

/* Soft graphite and mist-blue light theme */
body.light {
  --bg:#f4f6f8;
  --panel:#ffffff;
  --panel-2:#edf1f4;
  --panel-3:#f8fafb;
  --line:#d8dee5;
  --text:#1f2933;
  --muted:#66717f;
  --cyan:#4f6f8f;
  --blue:#8da0b3;
  --amber:#9a7440;
  --rose:#9a5e65;
  --green:#557b64;
  --shadow:0 10px 28px rgba(31,41,51,.07);
}
body.light .content { background:#f4f6f8; }
body.light .sidebar { background:#fbfcfd; }
body.light .topbar { background:rgba(255,255,255,.96); }
body.light .brand-mark { background:#405d78; color:#fff; box-shadow:0 5px 14px rgba(64,93,120,.18); }
body.light .avatar { background:#edf2f6; color:#405d78; }
body.light .nav button:hover,
body.light .nav button.active,
body.light .nav-group button.active { background:#e7edf3; color:#2e475f; }
body.light .nav-group button.active .nav-icon { color:#4f6f8f; }
body.light .nav-label,.light .nav-label { color:#768391; }
body.light .primary-btn { background:#405d78; color:#fff; box-shadow:0 6px 16px rgba(64,93,120,.2); }
body.light .ghost-btn:hover,
body.light .icon-btn:hover { border-color:#9babb9; color:#344c62; background:#f0f4f7; }
body.light .panel,
body.light .metric,
body.light .command-primary,
body.light .command-side,
body.light .employee-flow,
body.light .employee-note { border-color:#d8dee5; }
body.light .status-chip { background:#edf2f5; color:#405d78; }
body.light .tag { background:#edf1f4; color:#536273; }
body.light .tag.green { background:#e8f1ec; color:#4f765e; }
body.light .tag.gold { background:#f3eee5; color:#886d44; }
body.light .tag.red { background:#f3e9ea; color:#89575e; }
body.light .metric-icon,
body.light .eyebrow,
body.light .nav-icon,
body.light .command-panel-title > strong { color:#4f6f8f; }
body.light .metric-value { color:#25313d; }
body.light .progress { background:#e3e8ed; }
body.light .employee-progress i,
body.light .progress i { background:#5c7893; }
body.light .activity-dot { background:#5c7893; box-shadow:0 0 0 4px rgba(79,111,143,.12); }
body.light .command-alert.urgent { border-left-color:#9a5e65; }
body.light .command-alert.warning { border-left-color:#9a7440; }
body.light .command-alert.monitor { border-left-color:#4f6f8f; }
body.light .command-alert.neutral { border-left-color:#8da0b3; }
body.light .command-monitor-link { background:#eef3f7; }
body.light .priority-mark,
body.light .priority-mark.blue,
body.light .monitor-pulse { background:#4f6f8f; }
body.light .priority-mark.rose { background:#9a5e65; }
body.light .priority-mark.amber { background:#9a7440; }
body.light .employee-task-icon.cyan,
body.light .employee-task-icon.blue { background:#eaf0f5; color:#4f6f8f; }
body.light .employee-task-icon.amber { background:#f3eee5; color:#8b7047; }
body.light .mobile-nav button.active { color:#405d78; }
body.light .ocr-dropzone { border-color:#b9c5d0; background:#f9fbfc; }
body.light .ocr-dropzone:hover,
body.light .ocr-dropzone:focus-visible,
body.light .ocr-dropzone.dragging { border-color:#5d7b97; background:#eef3f7; box-shadow:inset 0 0 0 1px #5d7b97; }
body.light .scan-mark { border-color:#b8c6d2; color:#4f6f8f; background:#edf2f6; }
body.light .ocr-mode-switch { background:#e9eef3; }
body.light .ocr-workbook-target { background:#f0f4f7; border-color:#d7e0e7; border-left-color:#4f6f8f; }
body.light .roster-player-row.needs-review,
body.light .session-workbook-grid td.formula-warning { background:#f4efe7; }
body.light .roster-player-row.needs-review input { border-color:#a98a59; }
body.light .session-workbook-grid td.formula-warning input { color:#80663d; }
body.light .session-row-icon { background:#4f6f8f; }
body.light .session-workbook-tabs { background:#edf1f4; border-bottom-color:#cbd4dd; }
body.light .session-workbook-tabs button { border-right-color:#d4dce4; }
body.light .session-workbook-tabs button.active { color:#334d64; border-top-color:#4f6f8f; border-bottom-color:#4f6f8f; background:#fff; }
body.light .workbook-commandbar { background:#f7f9fb; border-bottom-color:#d7dee5; }
body.light .workbook-bossbar { border-bottom-color:#d7dee5; }
body.light .workbook-canvas { background:#edf1f4; }
body.light .back-link { color:#405d78; }
body.light .session-workbook-grid { border-left-color:#aeb9c4; border-top-color:#aeb9c4; }
body.light .session-workbook-grid th,
body.light .session-workbook-grid td { border-right-color:#aeb9c4; border-bottom-color:#aeb9c4; }
body.light .session-workbook-grid .row-number { background:#edf1f4; color:#5f6d7b; }
body.light .session-workbook-grid thead th { background:#405d78; }
body.light .session-workbook-grid thead .row-number { background:#334c63; }
body.light .session-workbook-grid td input:focus { box-shadow:inset 0 0 0 2px #4f6f8f; }
body.light .session-workbook-grid td.calculated { background:#edf4f8; }
body.light .session-workbook-grid .workbook-total th,
body.light .session-workbook-grid .workbook-total td { background:#dfe8ef; }
body.light .workbook-summary-cards article { border-top-color:#4f6f8f; }
body.light .workbook-summary-cards article button,
body.light .workbook-summary-table button { color:#405d78; }

body.light .automation-list { background:#f0f4f7; }
body.light .automation-time { background:#e7eef4; color:#405d78; }
body.light .automation-item { border-color:#d8e0e7; box-shadow:0 4px 12px rgba(31,41,51,.04); }
body.light .screen-share-btn.active { background:#405d78; border-color:#405d78; color:#fff; }
body.light .screen-share-thumb,
body.light .screen-viewer-modal,
body.light .screen-video-stage { background:#17212a; border-color:#3f4f5d; }
body.light .screen-share-thumb span,
body.light .screen-live-mark { background:#5f7386; }
body.light .mini-avatar { background:#e6edf3; color:#405d78; }
body.light .cockpit-desktop-stage { background:#e7ebef; }
body.light .cockpit-desktop-strip { background:#f7f9fa; }
body.light .cockpit-live-frame { background:#17212a; border-color:#aebbc7; box-shadow:0 8px 24px rgba(31,41,51,.14); }
body.light .cockpit-desk:hover,
body.light .cockpit-desk.selected { border-color:#607f9c; background:#edf3f7; box-shadow:inset 0 0 0 1px #607f9c; }
body.light .cockpit-desk-preview,
body.light .cockpit-event-icon { background:#e8edf2; color:#657687; }
body.light .cockpit-event-icon.online { background:#e6f0e9; color:#557b64; }
body.light .cockpit-desk small.online { color:#557b64; }
body.light .cockpit-rail-head > b { background:#f1e7e9; color:#8d5a61; }
body.light .cockpit-kpi > small { color:#557b64; }
body.light .cockpit-kpi.warning > strong,
body.light .cockpit-kpi.warning > small { color:#8d6d3f; }
body.light .cockpit-kpi.danger > strong,
body.light .cockpit-kpi.danger > small { color:#8d5a61; }

/* Member identity highlights */
.member-tone-blue { --member-accent:#6f91b2; --member-bg:#edf3f8; }
.member-tone-teal { --member-accent:#6f9a91; --member-bg:#edf5f2; }
.member-tone-amber { --member-accent:#aa8c5d; --member-bg:#f7f2e8; }
.member-tone-violet { --member-accent:#8b7ca8; --member-bg:#f2eff7; }
.member-tone-rose { --member-accent:#a97982; --member-bg:#f7eef0; }

.work-table tbody tr[class*="member-tone-"] td { background:var(--member-bg); }
.work-table tbody tr[class*="member-tone-"] td:first-child { border-left:4px solid var(--member-accent); }
.work-table tbody tr[class*="member-tone-"] .mini-avatar { background:var(--member-accent); color:#fff; }
.work-table tbody tr[class*="member-tone-"]:hover td { filter:brightness(.985); }

.mobile-record[class*="member-tone-"],
.site-session-card[class*="member-tone-"],
.desktop-session-card[class*="member-tone-"] { background:var(--member-bg); border-left:4px solid var(--member-accent); }
.site-session-card[class*="member-tone-"] .site-session-state { background:var(--member-accent); }
.mobile-record[class*="member-tone-"] strong,
.site-session-card[class*="member-tone-"] strong,
.desktop-session-card[class*="member-tone-"] strong { color:#283744; }

.cockpit-desk[class*="member-tone-"] { border-left:4px solid var(--member-accent); background:var(--member-bg); }
.cockpit-desk[class*="member-tone-"] .cockpit-desk-preview { background:var(--member-accent); color:#fff; }
.cockpit-desk.selected[class*="member-tone-"] { border-color:var(--member-accent); background:var(--member-bg); box-shadow:inset 0 0 0 1px var(--member-accent); }

/* Vivid member identity highlights */
.member-tone-blue { --member-accent:#4f7fa8; --member-bg:#e8f1f8; }
.member-tone-teal { --member-accent:#4f9d92; --member-bg:#e8f5f2; }
.member-tone-amber { --member-accent:#c4954d; --member-bg:#fbf1df; }
.member-tone-violet { --member-accent:#8a72b5; --member-bg:#f1ecfa; }
.member-tone-rose { --member-accent:#c46e7b; --member-bg:#fae9ed; }
body.light .metric-icon,
body.light .eyebrow,
body.light .nav-icon,
body.light .command-panel-title > strong { color:#4f7fa8; }
body.light .primary-btn { background:#3f6f98; box-shadow:0 6px 16px rgba(63,111,152,.22); }
body.light .nav-group button.active .nav-icon { color:#4f7fa8; }
body.light .mobile-nav button.active { color:#3f6f98; }
body.light .progress i,
body.light .employee-progress i { background:#4f7fa8; }
body.light .ocr-dropzone:hover,
body.light .ocr-dropzone:focus-visible,
body.light .ocr-dropzone.dragging { border-color:#4f7fa8; background:#eaf2f8; box-shadow:inset 0 0 0 1px #4f7fa8; }
body.light .session-workbook-grid thead th { background:#3f6f98; }
body.light .session-workbook-tabs button.active { border-top-color:#4f7fa8; border-bottom-color:#4f7fa8; }
body.light .session-row-icon { background:#4f7fa8; }
body.light .screen-share-btn.active { background:#3f6f98; border-color:#3f6f98; }
body.light .cockpit-desk[class*="member-tone-"] .cockpit-desk-preview { color:#fff; }

/* Extra-vivid member identity highlights */
.member-tone-blue { --member-accent:#2f80b7; --member-bg:#e3f0fa; }
.member-tone-teal { --member-accent:#249b8f; --member-bg:#e3f6f1; }
.member-tone-amber { --member-accent:#d28b28; --member-bg:#fff0d1; }
.member-tone-violet { --member-accent:#7d5ec1; --member-bg:#eee8fb; }
.member-tone-rose { --member-accent:#d64f68; --member-bg:#fde6eb; }
body.light .primary-btn { background:#2f6f9f; box-shadow:0 6px 16px rgba(47,111,159,.24); }
body.light .metric-icon,
body.light .eyebrow,
body.light .nav-icon,
body.light .command-panel-title > strong { color:#2f80b7; }
body.light .nav-group button.active .nav-icon,
body.light .mobile-nav button.active { color:#2f6f9f; }
body.light .progress i,
body.light .employee-progress i { background:#2f80b7; }
body.light .ocr-dropzone:hover,
body.light .ocr-dropzone:focus-visible,
body.light .ocr-dropzone.dragging { border-color:#2f80b7; background:#e5f1f9; box-shadow:inset 0 0 0 1px #2f80b7; }
body.light .session-workbook-grid thead th { background:#2f6f9f; }
/* Online workbook polish */
.session-editor { display:flex; flex-direction:column; }
.session-editor > .workbook-canvas { flex:1 1 auto; }
.workbook-toolbar-main,.workbook-toolbar-format { min-width:0; display:flex; align-items:center; gap:10px; padding:8px 12px; border-bottom:1px solid #d9e0e8; background:#f7f9fc; }
.workbook-toolbar-main { min-height:48px; }
.workbook-toolbar-format { min-height:42px; justify-content:space-between; background:#fbfcfe; }
.workbook-toolbar-main .workbook-formula { flex:1; }
.workbook-revision,.workbook-toolbar-hint { color:#667388; font-size:11px; white-space:nowrap; }
.workbook-toolbar-hint { overflow:hidden; text-overflow:ellipsis; }
.workbook-toolbar-format { flex:0 0 auto; align-items:stretch; justify-content:flex-start; gap:8px; flex-wrap:wrap; }
.workbook-tool-group { min-width:0; display:flex; flex-direction:column; gap:4px; padding:0 8px; border-left:1px solid #dce3eb; }
.workbook-tool-group:first-child { padding-left:0; border-left:0; }
.workbook-tool-label { color:#718096; font-size:10px; font-weight:800; line-height:1; letter-spacing:.02em; white-space:nowrap; }
.workbook-tool-items { min-width:0; display:flex; align-items:center; gap:4px; }
.workbook-tool-btn,.workbook-color-btn { min-width:58px; height:32px; display:inline-flex; align-items:center; justify-content:center; gap:4px; padding:0 8px; color:#344054; background:#fff; border:1px solid #cbd5e1; border-radius:5px; font:700 11px/1 inherit; cursor:pointer; white-space:nowrap; }
.workbook-tool-btn:hover,.workbook-color-btn:hover { color:#1e5f92; border-color:#79a8cc; background:#f3f8fc; }
.workbook-tool-btn:disabled { opacity:.45; cursor:not-allowed; }
.workbook-tool-btn.danger { color:#9b3c35; }
.workbook-tool-btn > b { font-size:16px; line-height:1; }
.workbook-color-btn { position:relative; overflow:hidden; }
.workbook-color-btn > span { font-weight:700; }
.workbook-color-btn::after { content:''; position:absolute; left:8px; right:8px; bottom:3px; height:3px; background:#172033; pointer-events:none; }
.workbook-color-btn.fill::after { background:#9fc8ff; }
.workbook-color-btn input { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; }
.workbook-tool-group-number select { min-width:82px; height:32px; padding:0 8px; color:#344054; background:#fff; border:1px solid #cbd5e1; border-radius:5px; font-size:11px; font-weight:700; }
.workbook-tool-group-structure { flex:1 1 auto; }
.workbook-toolbar-format .workbook-toolbar-hint { flex:1 1 100%; order:10; display:block; min-height:22px; padding:4px 2px 2px; overflow:visible; font-size:10px; line-height:16px; text-overflow:clip; }
.workbook-sync-state { display:inline-flex; align-items:center; min-height:28px; padding:0 9px; border:1px solid #cbd8e6; border-radius:999px; color:#31516d; background:#f1f6fb; font-size:11px; font-weight:800; white-space:nowrap; }
.workbook-sync-state.saving { color:#8a5a13; border-color:#efd6a5; background:#fff6df; }
.workbook-sync-state.synced { color:#216943; border-color:#bfe2cd; background:#edf9f1; }
.workbook-sync-state.error,.workbook-sync-state.conflict { color:#9b3c35; border-color:#edc2bd; background:#fff0ee; }
.workbook-sync-state.offline { color:#6b5b55; border-color:#d7cbc6; background:#f6f1ef; }
.workbook-conflict { display:flex; align-items:center; gap:10px; flex-wrap:wrap; padding:10px 12px; color:#6e392d; background:#fff3ef; border-bottom:1px solid #efc9bf; font-size:12px; }
.workbook-conflict strong { color:#9b3c35; }
.workbook-conflict span { flex:1; min-width:220px; }
.workbook-conflict > div { display:flex; gap:6px; }
.session-workbook-grid td.selected { outline:2px solid #1769e0; outline-offset:-2px; position:relative; z-index:1; }
.session-workbook-grid .row-number { padding:0; }
.workbook-row-selector { width:100%; min-width:44px; height:100%; min-height:34px; padding:0 8px; color:inherit; background:transparent; border:0; border-radius:0; font:800 11px/1 inherit; cursor:pointer; }
.workbook-row-selector:hover,.workbook-row-selector.selected { color:#fff; background:#3f6f98; }
.session-workbook-grid tr.row-selected > td { background:#e8f2fb!important; box-shadow:inset 0 1px #9fc1de,inset 0 -1px #9fc1de; }
.session-workbook-grid tr.row-selected > td input { background:transparent; }
.session-workbook-grid tr.row-selected .row-action { background:#e8f2fb!important; }
.session-workbook-tabs { flex:0 0 auto; margin-top:0; }
.onlyoffice-editor-shell { height:calc(100vh - 92px); min-height:620px; display:grid; grid-template-rows:auto minmax(0,1fr); overflow:hidden; background:#fff; border:1px solid var(--line); border-radius:8px; }
.onlyoffice-editor-head { min-height:72px; padding:10px 14px; display:flex; align-items:center; justify-content:space-between; gap:16px; border-bottom:1px solid var(--line); background:#fff; }
.onlyoffice-editor-head h1 { margin:2px 0; font-size:20px; }
.onlyoffice-editor-head p { margin:0; color:var(--muted); font-size:12px; }
.onlyoffice-editor-frame { width:100%; height:100%; min-height:560px; background:#fff; }
.univer-editor-shell { height:calc(100vh - 92px); min-height:620px; display:grid; grid-template-rows:auto minmax(0,1fr); overflow:hidden; background:#fff; border:1px solid var(--line); border-radius:8px; }
.univer-editor-head { min-height:72px; padding:10px 14px; display:flex; align-items:center; justify-content:space-between; gap:14px; border-bottom:1px solid #d9e0e8; background:#fff; }
.univer-editor-head h1 { margin:2px 0; font-size:19px; }.univer-editor-head p { margin:0; color:#667388; font-size:11px; }.univer-editor-head .head-actions { display:flex; align-items:center; gap:7px; }
.univer-editor-frame { width:100%; height:100%; min-height:560px; overflow:hidden; background:#fff; }
.univer-lock-toolbar { min-height:48px; padding:7px 12px; display:flex; align-items:center; gap:9px; border-bottom:1px solid #d9e0e8; background:#f7f9fc; color:#3b4658; font-size:12px; }.univer-lock-toolbar span:first-child { font-weight:800; margin-right:auto; }.univer-lock-count { color:#69768a; }.univer-lock-toolbar button { min-height:32px; }
.univer-error { min-height:360px; display:grid; place-items:center; align-content:center; gap:10px; padding:32px; color:var(--muted); text-align:center; }
.univer-error strong { color:var(--text); font-size:18px; }.univer-error div { display:flex; gap:8px; }
.onlyoffice-error { min-height:420px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; padding:30px; color:var(--muted); text-align:center; }
.onlyoffice-error strong { color:var(--text); font-size:20px; }
@media(max-width:760px){.onlyoffice-editor-shell{height:calc(100dvh - 78px);min-height:540px;border-radius:0}.onlyoffice-editor-head{align-items:flex-start;flex-direction:column}.onlyoffice-editor-head .head-actions{width:100%;overflow-x:auto}.onlyoffice-editor-frame{min-height:500px}}
@media(max-width:760px){.univer-editor-shell{height:calc(100dvh - 78px);min-height:540px;border-radius:0}.univer-editor-head{align-items:flex-start;flex-direction:column}.univer-editor-head .head-actions{width:100%;overflow-x:auto}.univer-editor-frame{min-height:500px}}
.workbook-tool-group-columns { min-width:260px; max-width:520px; }.workbook-column-choices { display:flex; align-items:center; gap:5px; max-width:300px; overflow-x:auto; padding:1px; }.workbook-column-choice { flex:0 0 auto; min-height:30px; max-width:120px; padding:5px 9px; overflow:hidden; color:#445066; background:#fff; border:1px solid #c9d3df; border-radius:4px; font-size:11px; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }.workbook-column-choice.active { color:#fff; background:#1769e0; border-color:#1769e0; }.workbook-column-header { width:100%; padding:4px 6px; color:inherit; background:transparent; border:0; font:inherit; font-weight:800; text-align:left; }.session-workbook-grid th.column-selected,.session-workbook-grid td.column-selected { box-shadow:inset 0 0 0 2px rgba(23,105,224,.48); }.session-workbook-grid th.column-selected { background:#dcecff; }
@media(max-width:760px){.workbook-tool-group-columns{min-width:230px}.workbook-column-choices{max-width:210px}}
.session-workbook-grid td[data-formula-error]::after { content:attr(data-formula-error); position:absolute; right:2px; top:2px; width:0; height:0; border-top:7px solid #d25a32; border-left:7px solid transparent; font-size:0; }
.session-workbook-grid td.formula-warning { position:relative; }
.session-workbook-grid td input::selection { color:#172033; background:#cfe3ff; }
body.light .workbook-toolbar-main,body.light .workbook-toolbar-format { background:#f7f9fb; border-color:#d7dee5; }
body.light .workbook-sync-state { color:#405d78; border-color:#cbd4dd; background:#eef4f8; }
body.light .workbook-sync-state.saving { color:#80663d; border-color:#e6d3aa; background:#fff8e9; }
body.light .workbook-sync-state.synced { color:#35644a; border-color:#c4dccb; background:#f0f8f2; }
body.light .workbook-sync-state.error,body.light .workbook-sync-state.conflict { color:#8b4038; border-color:#e2c2bd; background:#fff3f0; }
body.light .workbook-conflict { color:#6e5148; background:#fff6f2; border-color:#ead4cc; }
body.light .session-workbook-grid td.selected { outline-color:#3f6f98; }
@media (max-width:760px) {
  .workbook-toolbar-main,.workbook-toolbar-format { align-items:flex-start; flex-wrap:wrap; padding:8px; }
  .workbook-toolbar-main .workbook-formula { order:2; flex-basis:100%; }
  .workbook-toolbar-format { gap:8px; overflow-x:auto; }
  .workbook-tool-group { padding:0 6px; }
  .workbook-tool-group-structure { flex-basis:100%; }
  .workbook-tool-btn,.workbook-color-btn { min-width:54px; padding:0 6px; }
  .workbook-toolbar-hint { flex-basis:100%; font-size:10px; }
  .workbook-revision { margin-left:auto; }
  .workbook-conflict { align-items:flex-start; }
  .workbook-conflict > div { width:100%; }
  .workbook-conflict > div button { flex:1; min-height:34px; }
}
body.light .session-row-icon { background:#2f80b7; }
body.light .screen-share-btn.active { background:#2f6f9f; border-color:#2f6f9f; }

/* Remote parity data-management surfaces */
.settings-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:20px}
.settings-grid .primary-btn{align-self:end}
.settings-check{display:flex;align-items:center;gap:10px;min-height:42px;font-weight:700;color:var(--text)}
.settings-check input{width:18px;height:18px;accent-color:var(--cyan)}
.report-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}
.report-kpis article{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);padding:18px 20px;box-shadow:var(--shadow)}
.report-kpis span,.report-kpis small{display:block;color:var(--muted);font-size:13px}
.report-kpis strong{display:block;font-size:30px;line-height:1.1;margin:10px 0 6px;color:var(--text)}
.date-range{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px}
.date-range input{min-height:40px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius-control);background:var(--panel);color:var(--text)}
.record-tabs{display:flex;gap:6px;padding:16px 20px 0;border-bottom:1px solid var(--border)}
.record-tabs button{border:0;background:transparent;color:var(--muted);font-weight:800;padding:10px 16px;border-bottom:3px solid transparent;cursor:pointer}
.record-history-filters{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 14px;border-bottom:1px solid var(--line);background:var(--panel-3);color:var(--muted);font-size:12px}.record-history-filters input{height:34px;padding:0 8px;border:1px solid var(--line);border-radius:6px;background:var(--panel);color:var(--text)}
.record-tabs button.active{color:var(--cyan);border-bottom-color:var(--cyan)}
.member-daily-matrix,.maintenance-panel{margin-bottom:16px}
.member-daily-matrix .work-table th,.member-daily-matrix .work-table td{text-align:center;white-space:nowrap}
.member-daily-matrix .work-table th:first-child,.member-daily-matrix .work-table td:first-child{text-align:left;position:sticky;left:0;background:var(--panel);z-index:1}
.legacy-session-group{border-bottom:1px solid var(--border)}
.legacy-session-group:last-child{border-bottom:0}
.legacy-session-group>header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:color-mix(in srgb,var(--panel) 84%,var(--bg));color:var(--muted)}
.legacy-session-group>header strong{color:var(--text);font-size:14px}
.row-actions{white-space:nowrap;display:flex;flex-wrap:nowrap;gap:6px;align-items:center;min-width:max-content}
.deposit-actions{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
.deposit-actions .compact{min-width:54px!important;padding:4px 8px!important}
.deposit-action-add{color:#2f7d59!important;border-color:#b9d9c6!important;background:#f2faf5!important}
.deposit-action-deduct{color:#a34f4a!important;border-color:#e2c1bd!important;background:#fff7f5!important}
.deposit-action-transfer{color:#2f648f!important;border-color:#b9d2e5!important;background:#f3f8fc!important}
.deposit-actions button:hover{filter:brightness(.97);transform:translateY(-1px)}
.players-with-deposit{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:14px;align-items:start}.players-list-panel{min-width:0}.deposit-sidebar{position:sticky;top:84px;overflow:hidden}.deposit-sidebar-head{display:flex;justify-content:space-between;align-items:flex-start;padding:16px 16px 10px;border-bottom:1px solid var(--line)}.deposit-sidebar-head span{color:var(--cyan);font-size:11px;font-weight:800}.deposit-sidebar-head h2{margin:4px 0 0;font-size:17px}.deposit-balance-card{margin:14px;padding:14px;display:grid;gap:5px;background:var(--panel-3);border:1px solid var(--line);border-radius:10px}.deposit-balance-card span,.deposit-balance-card small{color:var(--muted);font-size:11px}.deposit-balance-card strong{font-size:28px}.deposit-balance-card small:not(.negative){color:var(--green)}.deposit-balance-card small.negative{color:var(--rose)}.deposit-sidebar-list{display:grid;padding:0 14px}.deposit-flow-item{width:100%;display:grid;grid-template-columns:9px minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px 0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);text-align:left}.deposit-flow-item:hover{color:var(--cyan)}.deposit-flow-item span{min-width:0}.deposit-flow-item b,.deposit-flow-item small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deposit-flow-item b{font-size:12px}.deposit-flow-item small{margin-top:3px;color:var(--muted);font-size:10px}.deposit-flow-item strong{font-size:12px;white-space:nowrap}.deposit-flow-item strong.green{color:var(--green)}.deposit-flow-item strong.red{color:var(--rose)}.deposit-flow-item strong.amber{color:var(--amber)}.deposit-flow-dot{width:8px;height:8px;border-radius:50%}.deposit-flow-dot.green{background:var(--green)}.deposit-flow-dot.red{background:var(--rose)}.deposit-flow-dot.amber{background:var(--amber)}.deposit-sidebar-empty{padding:24px 0;text-align:center;color:var(--muted);font-size:12px}.deposit-view-all{width:calc(100% - 28px);margin:14px}
@media(max-width:900px){.players-with-deposit{grid-template-columns:1fr}.deposit-sidebar{position:static}.deposit-sidebar-list{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px}.deposit-flow-item:nth-child(odd){border-right:1px solid var(--line);padding-right:10px}}@media(max-width:600px){.deposit-sidebar-list{grid-template-columns:1fr}.deposit-flow-item:nth-child(odd){border-right:0;padding-right:0}}
.pagination{display:flex;align-items:center;justify-content:center;gap:14px;padding:16px;border-top:1px solid var(--border);color:var(--muted);font-size:13px}
.compact{min-height:32px!important;padding:4px 10px!important;font-size:12px!important}
@media (max-width:900px){.settings-grid,.report-kpis{grid-template-columns:1fr 1fr}.date-range{flex-wrap:wrap}.row-actions{flex-wrap:nowrap}}
@media (max-width:600px){.settings-grid,.report-kpis{grid-template-columns:1fr}.date-range{width:100%}.date-range input{flex:1;min-width:0}}

/* Real-data BOSS cockpit: quiet surfaces, explicit data categories */
.cockpit-kpis { grid-template-columns:repeat(6,minmax(0,1fr)); border-radius:var(--radius-panel); }
.cockpit-kpi { position:relative; min-height:76px; padding:13px 15px; }
.cockpit-kpi::before { content:""; position:absolute; inset:0 auto 0 0; width:3px; background:#9aa8b5; opacity:.7; }
.cockpit-kpi:nth-child(1)::before,.cockpit-kpi:nth-child(4)::before { background:#2f80b7; }
.cockpit-kpi:nth-child(2)::before { background:#249b8f; }
.cockpit-kpi:nth-child(3)::before,.cockpit-kpi:nth-child(5)::before { background:#7d5ec1; }
.cockpit-kpi.danger::before { background:#d64f68; opacity:1; }
.cockpit-kpi > strong { font-size:25px; }
.cockpit-workspace { grid-template-columns:minmax(0,1.65fr) minmax(380px,.95fr); }
.cockpit-monitor-panel { grid-template-rows:52px minmax(260px,1fr) 96px; border-radius:var(--radius-panel); }
.cockpit-desktop-strip { padding:8px 10px; }
.cockpit-desk-preview { height:42px; }
.dashboard-data-rail { min-width:0; min-height:0; display:grid; grid-template-rows:minmax(0,1.08fr) minmax(0,1fr) minmax(0,.86fr); gap:12px; }
.dashboard-data-panel { position:relative; min-height:0; display:grid; grid-template-rows:52px minmax(0,1fr); overflow:hidden; border-radius:var(--radius-panel); box-shadow:none; }
.dashboard-data-panel::before { content:""; position:absolute; inset:0 0 auto; height:3px; background:#2f80b7; z-index:1; }
.dashboard-data-panel.funds::before { background:#249b8f; }
.dashboard-data-panel.members::before { background:#7d5ec1; }
.dashboard-data-head { min-width:0; padding:0 14px; display:flex; align-items:center; justify-content:space-between; gap:12px; border-bottom:1px solid var(--line); }
.dashboard-data-head span { display:block; color:var(--muted); font-size:11px; font-weight:800; }
.dashboard-data-head h2 { margin:2px 0 0; font-size:15px; }
.dashboard-data-head > strong { color:#249b8f; font-size:17px; }
.dashboard-data-head > strong.negative { color:#d64f68; }
.dashboard-data-tabs { display:inline-grid; grid-template-columns:1fr 1fr; padding:3px; background:#edf1f4; border-radius:8px; }
.dashboard-data-tabs button { min-width:48px; height:28px; padding:0 8px; color:var(--muted); background:transparent; border:0; border-radius:6px; font-size:12px; font-weight:800; }
.dashboard-data-tabs button.active { color:#fff; background:#405d78; box-shadow:0 2px 6px rgba(31,41,51,.14); }
.dashboard-mini-chart { width:100%; min-height:138px; }
.dashboard-data-panel.funds { grid-template-rows:52px minmax(88px,1fr) auto; }
.dashboard-data-panel.members { grid-template-rows:52px minmax(0,1fr) auto; }
.dashboard-funds-chart { width:100%; min-height:88px; }
.dashboard-fund-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--line); }
.dashboard-fund-summary span { min-width:0; padding:8px 10px; display:grid; grid-template-columns:8px minmax(0,1fr); gap:2px 6px; color:var(--muted); font-size:11px; }
.dashboard-fund-summary i { width:7px; height:7px; margin-top:4px; border-radius:2px; background:#249b8f; }
.dashboard-fund-summary i.out { background:#d64f68; }
.dashboard-fund-summary i.transfer { background:#d28b28; }
.dashboard-fund-summary b { grid-column:2; overflow:hidden; color:var(--text); font-size:12px; text-overflow:ellipsis; }
.dashboard-member-list { min-height:0; padding:5px 12px 8px; overflow:auto; }
.dashboard-member-row { min-width:0; min-height:27px; padding:2px 7px; display:grid; grid-template-columns:22px minmax(80px,.8fr) minmax(100px,1fr) auto; align-items:center; gap:7px; border-bottom:1px solid var(--line); border-left:3px solid var(--member-accent); }
.dashboard-member-row:last-child { border-bottom:0; }
.dashboard-member-row > span { width:20px; height:20px; display:grid; place-items:center; color:#fff; background:var(--member-accent); border-radius:5px; font-size:10px; font-weight:900; }
.dashboard-member-row strong,.dashboard-member-row small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.dashboard-member-row strong { font-size:12px; }
.dashboard-member-row small { color:var(--muted); font-size:11px; }
.dashboard-member-row b { color:var(--member-accent); font-size:11px; white-space:nowrap; }
.dashboard-data-empty { min-height:70px; display:grid; place-items:center; color:var(--muted); font-size:12px; }
body.light .dashboard-data-panel { border-color:#d8dee5; }

@media (max-width:1280px) and (min-width:901px) {
  .cockpit-workspace { grid-template-columns:minmax(0,1.45fr) minmax(340px,1fr); }
  .cockpit-kpi { padding:11px; }
  .cockpit-kpi > strong { font-size:21px; }
  .cockpit-kpi > small { display:none; }
}
@media (max-width:900px) {
  .cockpit-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cockpit-kpi:last-child { grid-column:auto; }
  .cockpit-workspace { grid-template-columns:1fr; }
  .dashboard-data-rail { grid-template-rows:280px 250px auto; }
  .dashboard-data-panel.members { min-height:250px; }
}
@media (max-width:600px) {
  .cockpit-kpis { grid-template-columns:1fr 1fr; }
  .cockpit-kpi > strong { font-size:20px; }
  .dashboard-data-head { padding:0 11px; }
  .dashboard-member-row { grid-template-columns:22px minmax(0,1fr) auto; }
  .dashboard-member-row small { grid-column:2; }
  .dashboard-member-row b { grid-column:3; grid-row:1/3; }
}

/* Refined action language and compact operational signals */
button { transition:transform .16s ease, box-shadow .16s ease, background-color .16s ease, border-color .16s ease; }
button:focus-visible { outline:3px solid rgba(47,128,183,.22); outline-offset:2px; }
button:active { transform:translateY(1px); }
.onboarding-overlay { position:fixed; inset:0; z-index:90; pointer-events:none; color:#172033; }
.onboarding-shade { position:fixed; background:rgba(9,16,27,.58); pointer-events:auto; }
.onboarding-spotlight { position:fixed; border:2px solid #ffffff; border-radius:12px; box-shadow:0 0 0 3px rgba(47,128,183,.72), 0 12px 35px rgba(8,20,34,.3); pointer-events:none; transition:top .18s ease,left .18s ease,width .18s ease,height .18s ease; }
.onboarding-card { position:fixed; z-index:92; padding:20px; border:1px solid #d6e0e9; border-radius:14px; background:#fff; box-shadow:0 18px 55px rgba(13,28,45,.24); pointer-events:auto; transition:top .18s ease,left .18s ease; }
.onboarding-kicker { color:#4f7fa8; font-size:12px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.onboarding-card h2 { margin:8px 0 7px; font-size:22px; line-height:1.25; }
.onboarding-card p { margin:0; color:#536176; font-size:14px; line-height:1.65; }
.onboarding-progress { display:grid; gap:7px; margin-top:16px; color:#768391; font-size:12px; }
.onboarding-progress i { display:block; height:5px; overflow:hidden; border-radius:99px; background:#e8eef3; }
.onboarding-progress i b { display:block; height:100%; border-radius:inherit; background:#4f7fa8; transition:width .2s ease; }
.onboarding-remember { display:flex; align-items:center; gap:8px; margin-top:15px; color:#536176; font-size:13px; cursor:pointer; }
.onboarding-remember input { width:16px; height:16px; accent-color:#4f7fa8; }
.onboarding-actions { display:grid; grid-template-columns:auto 1fr auto auto; gap:8px; align-items:center; margin-top:18px; }
.onboarding-actions .primary-btn,.onboarding-actions .ghost-btn { min-height:38px; }
.notification-wrap { position:relative; }
.notification-btn { position:relative; min-width:38px; min-height:38px; padding:0; }
.notification-btn > span { font-size:21px; line-height:1; }
.notification-btn.has-alert { color:#b54a32; }
.notification-btn b { position:absolute; top:-4px; right:-4px; min-width:17px; height:17px; padding:0 4px; border-radius:99px; background:#c8543d; color:#fff; font-size:10px; line-height:17px; }
.notification-panel { position:absolute; top:48px; right:0; z-index:30; display:none; width:min(360px,calc(100vw - 28px)); border:1px solid #d9e2e9; border-radius:12px; background:#fff; box-shadow:0 18px 50px rgba(19,34,52,.2); overflow:hidden; }
.notification-panel.show { display:block; }
.notification-head { display:flex; justify-content:space-between; align-items:center; padding:14px 16px; border-bottom:1px solid #e5ebf0; }
.notification-head strong,.notification-head small { display:block; }
.notification-head small { margin-top:3px; color:#758392; font-size:11px; }
.notification-list { max-height:360px; overflow:auto; }
.notification-item { display:grid; grid-template-columns:28px minmax(0,1fr); gap:10px; width:100%; padding:13px 16px; border:0; border-bottom:1px solid #edf1f4; background:#fff; text-align:left; color:#26384b; }
.notification-item:hover { background:#f5f8fa; }
.notification-item > span:last-child { min-width:0; }
.notification-item strong,.notification-item small,.notification-item em { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.notification-item strong { font-size:13px; }
.notification-item small { margin-top:3px; color:#607184; font-size:12px; }
.notification-item em { margin-top:5px; color:#98a4ae; font-size:10px; font-style:normal; }
.notification-mark { display:grid; place-items:center; width:26px; height:26px; border-radius:8px; background:#edf3f7; color:#477496; font-weight:800; }
.notification-item.warning .notification-mark { background:#fff0d9; color:#ad6a16; }.notification-item.danger .notification-mark { background:#fde7e4; color:#b54a32; }
.notification-empty { display:grid; gap:6px; padding:24px 18px; text-align:center; }.notification-empty strong { font-size:13px; }.notification-empty span { color:#778797; font-size:12px; line-height:1.5; }
.audit-panel .panel-body { padding-top:0; }.audit-panel .filters { align-items:center; }.audit-panel .filters input { min-width:150px; }
.backup-panel { margin-top:18px; }.backup-list { display:grid; gap:8px; }.backup-item { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:13px 0; border-bottom:1px solid var(--line); }.backup-item:last-child { border-bottom:0; }.backup-item strong,.backup-item span { display:block; }.backup-item strong { font-size:14px; }.backup-item span { margin-top:4px; color:var(--muted); font-size:12px; }.backup-item > div:last-child { display:flex; gap:8px; flex-shrink:0; }.backup-item a { text-decoration:none; }.backup-empty { display:grid; gap:6px; padding:18px 0; color:var(--muted); }.backup-empty strong { color:var(--text); }
@media (max-width:760px) { .onboarding-card { padding:16px; }.onboarding-card h2 { font-size:20px; }.onboarding-card p { font-size:13px; }.onboarding-actions { grid-template-columns:auto 1fr auto; }.onboarding-actions #onboardingPrev { grid-column:3; }.onboarding-actions #onboardingNext { grid-column:2/4; grid-row:2; }.onboarding-actions span { display:none; } }
.button-glyph { width:22px; height:22px; display:inline-grid; place-items:center; margin-right:7px; border-radius:6px; font-size:12px; line-height:1; }
.cockpit-head-actions { gap:10px; }
.cockpit-head-actions .ghost-btn,
.cockpit-head-actions .primary-btn { min-height:42px; padding:0 14px; display:inline-flex; align-items:center; gap:0; border-radius:11px; font-weight:900; letter-spacing:.01em; }
.cockpit-head-actions .ghost-btn { color:#405d78; background:#fff; border:1px solid #cbd7e2; box-shadow:0 3px 9px rgba(31,41,51,.05); }
.cockpit-head-actions .ghost-btn:hover { color:#2f6f9f; border-color:#8fa9be; background:#f6f9fb; box-shadow:0 6px 14px rgba(47,111,159,.12); transform:translateY(-1px); }
.cockpit-head-actions .ghost-btn .button-glyph { color:#2f6f9f; background:#e8f1f8; }
.cockpit-head-actions .primary-btn { color:#fff; background:#2f6f9f; border:1px solid #2f6f9f; box-shadow:0 7px 16px rgba(47,111,159,.22), inset 0 1px 0 rgba(255,255,255,.2); }
.cockpit-head-actions .primary-btn::after { content:'→'; margin-left:8px; color:#dff1ff; font-size:15px; opacity:.8; }
.cockpit-head-actions .primary-btn:hover { background:#245d87; border-color:#245d87; box-shadow:0 9px 20px rgba(47,111,159,.28), inset 0 1px 0 rgba(255,255,255,.22); transform:translateY(-1px); }
.cockpit-head-actions .primary-btn .button-glyph { color:#dff1ff; background:rgba(255,255,255,.16); }
.cockpit-panel-head .icon-btn,
.dashboard-data-head .icon-btn { width:36px; min-width:36px; padding:0; color:#55738d; background:#f4f8fb; border-color:#cbd8e3; border-radius:10px; font-weight:900; }
.cockpit-panel-head .icon-btn:hover,
.dashboard-data-head .icon-btn:hover { color:#fff; background:#2f6f9f; border-color:#2f6f9f; box-shadow:0 5px 12px rgba(47,111,159,.2); transform:translateY(-1px); }
.dashboard-signal-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; padding:7px 12px 9px; border-top:1px solid var(--line); background:#fafcfd; }
.dashboard-signal { min-width:0; min-height:43px; padding:6px; display:grid; grid-template-columns:24px minmax(0,1fr); align-items:center; gap:6px; color:var(--text); background:#fff; border:1px solid #dbe4eb; border-radius:9px; text-align:left; }
.dashboard-signal:hover { border-color:#8fa9be; background:#f5f9fc; box-shadow:0 4px 10px rgba(31,41,51,.08); transform:translateY(-1px); }
.dashboard-signal.is-alert { border-color:#edc5cc; background:#fff8f9; }
.signal-icon { width:24px; height:24px; display:grid; place-items:center; border-radius:7px; font-size:13px; font-weight:900; }
.signal-icon.blue { color:#2f6f9f; background:#e6f0f8; }.signal-icon.red { color:#c84d61; background:#fde8ec; }.signal-icon.teal { color:#208b80; background:#e4f5f1; }.signal-icon.violet { color:#7655b0; background:#eee9fa; }
.dashboard-signal span:last-child { min-width:0; display:grid; gap:1px; }
.dashboard-signal small { overflow:hidden; color:var(--muted); font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.dashboard-signal b { color:var(--text); font-size:14px; line-height:1.1; }
body.light .dashboard-signal-grid { background:#f8fafb; }
@media (max-width:1280px) and (min-width:901px) { .dashboard-signal-grid { gap:4px; padding-inline:8px; }.dashboard-signal { grid-template-columns:20px minmax(0,1fr); padding:5px; }.signal-icon { width:20px; height:20px; }.dashboard-signal small { font-size:9px; }.dashboard-signal b { font-size:12px; } }
@media (max-width:600px) { .dashboard-signal-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.cockpit-head-actions .ghost-btn,.cockpit-head-actions .primary-btn { flex:1; justify-content:center; }.button-glyph { margin-right:5px; } }

/* BOSS dashboard layout editor */
.dashboard-layout-intro { margin:0 0 14px; color:var(--muted); font-size:12px; line-height:1.6; }
.dashboard-layout-list { display:grid; gap:7px; }
.dashboard-layout-item[draggable="true"] { min-height:56px; padding:9px 10px; display:grid; grid-template-columns:26px minmax(0,1fr) auto; align-items:center; gap:9px; background:#f8fafc; border:1px solid #dbe4eb; border-radius:10px; cursor:grab; }
.dashboard-layout-item[draggable="true"]:hover { border-color:#8fa9be; background:#f1f6fa; }
.dashboard-layout-item.dragging { opacity:.55; border-style:dashed; }
.layout-drag-handle { color:#6f879b; font-size:20px; line-height:1; text-align:center; cursor:grab; }
.layout-copy { min-width:0; display:grid; gap:2px; }.layout-copy b { font-size:13px; }.layout-copy small { color:var(--muted); font-size:11px; }
.layout-switch { display:inline-flex; align-items:center; gap:6px; color:var(--muted); font-size:11px; white-space:nowrap; cursor:pointer; }.layout-switch input { width:16px; height:16px; accent-color:#2f6f9f; }
.dashboard-layout-reset { margin-top:12px; min-height:34px; color:#55738d; background:#f5f8fa; border-color:#cbd8e3; }
body.light .dashboard-layout-item[draggable="true"] { background:#f8fafb; border-color:#d8e1e8; }
body.light .dashboard-layout-item[draggable="true"]:hover { background:#eef4f8; }
@media (max-width:600px) { .dashboard-layout-item[draggable="true"] { grid-template-columns:24px minmax(0,1fr) auto; } }
.custom-center-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.custom-center-card { min-width:0; }
.custom-center-card .panel-head { align-items:flex-start; }
.custom-center-card .panel-head p { max-width:42em; }
.custom-center-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:0 16px 14px; }
.custom-center-wide { grid-column:1/-1; }
.custom-center-wide textarea { min-height:84px; resize:vertical; }
.custom-center-fields .settings-check { align-self:end; min-height:42px; }
.custom-center-card > .primary-btn,.custom-center-card > .ghost-btn { margin:0 16px 16px; }
.custom-center-actions { display:flex; flex-wrap:wrap; gap:10px; padding:0 16px 16px; }
@media (max-width:760px) { .custom-center-grid { grid-template-columns:1fr; gap:12px; }.custom-center-fields { grid-template-columns:1fr; }.custom-center-actions { display:grid; grid-template-columns:1fr; } }

/* Interaction feedback: keep every actionable control easy to hit and visibly responsive. */
button, [role="button"] { touch-action: manipulation; }
button.is-pressed { transform: translateY(1px) scale(.985); }
button.is-loading { position:relative; cursor:wait; pointer-events:none; opacity:.72; }
button.is-loading::after { content:''; width:13px; height:13px; margin-left:8px; display:inline-block; vertical-align:-2px; border:2px solid currentColor; border-right-color:transparent; border-radius:50%; animation:button-spin .65s linear infinite; }
@keyframes button-spin { to { transform:rotate(360deg); } }
.primary-btn, .ghost-btn, .icon-btn { min-height:42px; }
.icon-btn { min-width:42px; }
.compact { min-height:36px; }
.nav button { min-height:46px; }
@media (max-width:760px) {
  .primary-btn, .ghost-btn, .icon-btn { min-height:44px; }
  .compact { min-height:40px; }
  .top-actions .icon-btn, .top-actions .ghost-btn { min-height:40px; }
}
/* Managed sessions result workbench */
.managed-session-layout{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:16px;align-items:start}.managed-session-list,.managed-session-detail{min-width:0}.managed-session-list>.panel-head{display:block}.managed-session-list>.panel-head .filters{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.managed-session-list>.panel-head .filters input,.managed-session-list>.panel-head .filters select{width:100%;min-width:0}.managed-session-items{display:grid;gap:8px;padding:0 14px 14px;max-height:calc(100vh - 250px);overflow:auto}.managed-session-item{width:100%;min-height:76px;padding:12px 14px;display:grid;gap:4px;text-align:left;border:1px solid var(--line);border-radius:10px;background:var(--panel);color:var(--text);cursor:pointer}.managed-session-item:hover,.managed-session-item.selected{border-color:var(--cyan);background:color-mix(in srgb,var(--cyan) 8%,var(--panel))}.managed-session-item strong,.managed-session-item span,.managed-session-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.managed-session-item span,.managed-session-item small{color:var(--muted);font-size:12px}.managed-session-detail{min-height:360px}.managed-empty-detail{min-height:320px;display:grid;place-content:center;gap:8px;text-align:center;color:var(--muted)}.managed-empty-detail strong{color:var(--text);font-size:18px}.managed-result-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 20px 18px}.managed-result-summary>div{padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2,var(--panel))}.managed-result-summary span{display:block;color:var(--muted);font-size:12px}.managed-result-summary strong{display:block;margin-top:4px;font-size:21px}.managed-participants{display:grid;gap:8px;padding:0 20px 18px}.managed-participants article{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:9px}.managed-participants article> b{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--cyan);color:#fff}.managed-participants article div{min-width:0;display:grid;gap:3px}.managed-participants article span{color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.managed-detail-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:0 20px 20px}.managed-dashboard-panel{margin-top:16px}.managed-dashboard-categories{display:flex;flex-wrap:wrap;gap:8px;padding:0 12px 12px}.managed-dashboard-categories span{padding:7px 10px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:12px}.managed-dashboard-categories b{color:var(--text);margin-left:4px}.ocr-managed-target{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 14px;margin-bottom:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2,var(--panel))}.ocr-managed-target label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:13px}.ocr-managed-target select{min-width:190px}@media(max-width:760px){.managed-session-layout{grid-template-columns:1fr}.managed-session-items{max-height:320px}.managed-result-summary{grid-template-columns:1fr;padding-inline:14px}.managed-participants,.managed-detail-actions{padding-inline:14px}.ocr-managed-target{align-items:flex-start;flex-direction:column}}
.managed-editor-form{display:grid;gap:14px;max-height:65vh;overflow:auto}.managed-editor-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,220px) auto;align-items:end;gap:10px}.managed-editor-top .field{min-width:0}.managed-editor-top .field input,.managed-editor-top .field select{width:100%;min-width:0}.managed-tag-choices{display:flex;flex-wrap:wrap;gap:8px}.managed-tag-option{display:flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid var(--line);border-radius:8px}.managed-players-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.managed-player-cards{display:grid;gap:10px}.managed-player-card{padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--panel-2,var(--panel))}.managed-player-card header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.managed-player-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.managed-player-fields label{display:grid;gap:4px;font-size:12px;color:var(--muted)}.managed-player-fields input{min-width:0}.managed-player-wide{grid-column:span 2}.readonly-value{display:flex;align-items:center;min-height:38px;padding:0 10px;border:1px solid var(--line);border-radius:7px;background:rgba(128,128,128,.08);color:var(--text)}.managed-editor-hint{margin:0;color:var(--muted);font-size:12px}.taxonomy-manager{display:grid;gap:12px}.taxonomy-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.taxonomy-add{display:flex;gap:8px}.taxonomy-add input{flex:1}.taxonomy-manager h3{margin:0}.taxonomy-manager p{margin:0;color:var(--muted);font-size:12px}@media(max-width:760px){.managed-editor-top{grid-template-columns:1fr}.managed-player-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.managed-player-wide{grid-column:span 2}}
:root{--ocr-cost-bg:#eef5fb;--ocr-cost-border:#9bb8d3}
.ocr-cost-strip{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin:0 0 16px;padding:12px 16px;background:var(--ocr-cost-bg);border:1px solid var(--ocr-cost-border);border-radius:8px;font-size:14px}.ocr-cost-strip b{font-size:16px}.ocr-cost-strip.is-warning{border-color:#d97706;background:#fff7ed}.ocr-cost-strip strong{color:#b45309;margin-left:auto}

/* Feature introduction is a real destination, while the sidebar stays focused on navigation. */
.nav-feature-bar { display:grid; gap:6px; margin:0 0 2px; padding:10px; border:1px solid color-mix(in srgb,var(--cyan) 26%,var(--line)); border-radius:10px; background:color-mix(in srgb,var(--cyan) 7%,var(--panel)); }
.nav-feature-label { color:var(--cyan); font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.nav-feature-link { width:100%; min-height:52px; display:grid; grid-template-columns:28px minmax(0,1fr) auto; gap:9px; align-items:center; padding:7px 8px; border:1px solid transparent; border-radius:7px; background:transparent; color:var(--text); text-align:left; }
.nav-feature-link:hover,.nav-feature-link.active { border-color:color-mix(in srgb,var(--cyan) 40%,var(--line)); background:var(--panel); }
.nav-feature-link .nav-icon { color:var(--cyan); }
.nav-feature-link span:nth-child(2) { min-width:0; display:grid; gap:2px; }
.nav-feature-link b { font-size:13px; }
.nav-feature-link small { color:var(--muted); font-size:10px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.nav-feature-link em { color:var(--cyan); font-style:normal; font-size:18px; }
.feature-overview-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.feature-overview-section { min-width:0; overflow:hidden; }
.feature-overview-section .panel-head { padding-bottom:12px; }
.feature-overview-list { display:grid; gap:0; padding:0 18px 8px; }
.feature-overview-list article { display:grid; grid-template-columns:34px minmax(0,1fr); gap:11px; align-items:start; padding:13px 0; border-bottom:1px solid var(--line); }
.feature-overview-list article:last-child { border-bottom:0; }
.feature-overview-mark { width:30px; height:30px; display:grid; place-items:center; border-radius:8px; color:var(--cyan); background:color-mix(in srgb,var(--cyan) 12%,var(--panel)); font-size:13px; font-weight:800; }
.feature-overview-list h3 { margin:0; font-size:14px; }
.feature-overview-list p { margin:4px 0 0; color:var(--muted); font-size:12px; line-height:1.55; }
@media (max-width:760px) { .feature-overview-grid { grid-template-columns:1fr; gap:12px; }.feature-overview-list { padding-inline:14px; } }

@media (max-width:760px) {
  .crumb { min-width:0; max-width:112px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .top-actions { flex:0 0 auto; }
  #onboardingOpen { display:none; }
  .topbar { gap:8px; }
}

/* Feature usage center: scenario cards mirror the BOSS customization workspace. */
.feature-center-head { align-items:flex-end; }
.feature-center-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.feature-case-card { min-width:0; padding:20px; display:grid; gap:14px; }
.feature-case-card.boss-only { border-top:3px solid var(--amber); }
.feature-case-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.feature-case-kicker { color:var(--cyan); font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.feature-case-head h2 { margin:5px 0 0; font-size:19px; }
.feature-case-index { color:var(--muted); font:700 22px 'DM Mono',monospace; line-height:1; }
.feature-case-body { margin:0; color:var(--muted); font-size:13px; line-height:1.6; }
.feature-case-steps { padding:12px 14px; background:var(--panel-3); border:1px solid var(--line); }
.feature-case-steps > span { color:var(--text); font-size:12px; font-weight:800; }
.feature-case-steps ol { margin:8px 0 0; padding-left:22px; color:var(--muted); font-size:12px; line-height:1.7; }
.feature-case-steps li::marker { color:var(--cyan); font-weight:800; }
.feature-case-foot { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.feature-case-result { min-width:0; color:var(--muted); font-size:11px; line-height:1.45; }
.feature-case-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px; flex:0 0 auto; }
.feature-case-actions .primary-btn, .feature-case-actions .ghost-btn { min-height:40px; padding-inline:13px; }
@media (max-width:900px) { .feature-center-grid { grid-template-columns:1fr; } }
@media (max-width:760px) { .feature-center-head { display:block; }.feature-case-card { padding:16px; }.feature-case-head h2 { font-size:18px; }.feature-case-foot { align-items:flex-start; flex-direction:column; }.feature-case-actions { width:100%; justify-content:stretch; }.feature-case-actions .primary-btn, .feature-case-actions .ghost-btn { flex:1 1 100%; width:100%; } }

/* Keep the expanded desktop sidebar self-contained when the feature guide is present. */
@media (min-width: 761px) {
  .sidebar { position: sticky; top: 0; height: 100vh; min-height: 0; align-self: start; overflow-y: auto; scrollbar-width: thin; }
}
/* OCR server job progress and speed control */
.ocr-job-progress{margin:0 0 18px;padding:16px 18px;border:1px solid var(--line,#27324d);border-radius:8px;background:var(--panel,#121a2e);display:grid;gap:10px}.ocr-job-progress.is-empty{color:var(--muted,#8f9bb7);font-size:13px}.ocr-job-progress-head,.ocr-job-progress-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.ocr-job-progress-head strong{display:block;font-size:16px}.ocr-job-progress-head span,.ocr-job-progress-meta{color:var(--muted,#8f9bb7);font-size:12px}.ocr-job-speed{color:var(--accent,#55d6c2)!important;font-weight:700}.ocr-progress-track,.ocr-item-progress{position:relative;height:8px;overflow:hidden;border-radius:4px;background:var(--line,#27324d)}.ocr-progress-track i,.ocr-item-progress i{display:block;height:100%;border-radius:inherit;background:var(--accent,#55d6c2);transition:width .25s ease}.ocr-item-progress{height:6px;margin:10px 0}.ocr-item-progress span{position:absolute;top:10px;right:0;color:var(--muted,#8f9bb7);font-size:11px}.ocr-speed-control{display:grid;gap:7px;margin-top:3px}.ocr-speed-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.ocr-speed-title strong{color:var(--accent,#55d6c2);font-size:14px}.ocr-speed-control label{font-size:12px;color:var(--muted,#8f9bb7)}.ocr-speed-control input[type=range]{width:100%;accent-color:var(--accent,#55d6c2)}.ocr-speed-control p{margin:0;color:var(--muted,#8f9bb7);font-size:11px}.ocr-speed-labels{display:grid;grid-template-columns:repeat(4,1fr);font-size:11px;color:var(--muted,#8f9bb7)}.ocr-speed-labels span{text-align:center}.ocr-speed-labels span:first-child{text-align:left}.ocr-speed-labels span:last-child{text-align:right}.ocr-speed-labels .active{color:var(--accent,#55d6c2);font-weight:700}.ocr-job-actions{display:flex;justify-content:flex-end;gap:8px}.ocr-job-progress.failed{border-color:#9c5555}.ocr-job-progress.cancelled{opacity:.8}@media(max-width:680px){.ocr-job-progress{padding:13px}.ocr-job-progress-head,.ocr-job-progress-meta{align-items:flex-start;flex-direction:column;gap:5px}.ocr-speed-labels{font-size:10px}.ocr-job-actions{justify-content:stretch}.ocr-job-actions button{width:100%}}
