/* Scoped cockpit: compact sections inside the existing fixed mobile shell. */
.manager-ui .mobile-overview { --ov-muted:#526a7b; font-size:12px; }
.mobile-overview *, .ov-drill-context * { min-width:0; box-sizing:border-box; }
.mobile-overview button { font:inherit; color:var(--ink); cursor:pointer; }
.mobile-overview button:focus-visible, .mobile-overview select:focus-visible,
.mobile-overview summary:focus-visible, .ov-drill-context button:focus-visible { outline:2px solid var(--brand); outline-offset:2px; }
.mobile-overview button:hover { background-color:#edf5f9; }
.mobile-overview h2 { font-size:14px; margin:0; line-height:1.4; }
.mobile-overview p { margin:4px 0; }
.mobile-overview b, .mobile-overview strong { font-variant-numeric:tabular-nums; }
.mobile-overview .ov-caption { font-size:11px; color:var(--ov-muted); line-height:1.6; margin:4px 0; }
.ov-intro { display:flex; justify-content:space-between; align-items:center; gap:8px; margin-bottom:8px; }
.ov-intro h2 { font-size:17px; }
.ov-intro p { color:var(--ov-muted); font-size:11px; }
.ov-role { color:var(--brand); font-size:11px; text-align:right; }
.ov-role > span, .ov-role > b { display:block; line-height:1.6; }
.ov-status { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; margin:6px 0 10px; }
.ov-state { border:1px solid var(--line); border-radius:6px; background:white; padding:8px 4px; text-align:left; }
.ov-state > span,.ov-state > b,.ov-state > small { display:block; }
.ov-state > b { font-size:25px; line-height:1.25; }
.ov-state > small { font-size:10px; color:var(--ov-muted); }
.ov-state > small i { font-style:normal; }
.ov-status .ov-attention { grid-column:1/-1; display:flex; gap:8px; align-items:center; padding:6px 10px; min-height:44px; background:#fff5f3; border-color:#eac7c1; }
.ov-status .ov-attention > b { font-size:22px; color:#a83236; }
.ov-status .ov-attention > small { margin-left:auto; color:#99414a; }
.ov-panel { background:white; border:1px solid var(--line); border-radius:8px; padding:10px; margin:0 0 10px; }
.ov-period { display:flex; align-items:center; gap:8px; border-bottom:1px solid var(--line); padding-bottom:8px; }
.ov-period label { display:flex; align-items:center; gap:4px; color:var(--ov-muted); font-size:11px; }
.ov-period select { font:inherit; min-height:40px; padding:4px; border:1px solid var(--line); border-radius:4px; color:var(--ink); background:white; }
.ov-period button { margin-left:auto; background:none; border:0; color:var(--brand); min-height:44px; padding:4px; font-size:11px; }
.ov-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.ov-metric { background:none; border:0; text-align:left; padding:10px 4px; }
.ov-metric:nth-child(n+4) { border-top:1px solid var(--line); }
.ov-metric > span,.ov-metric > b,.ov-metric > small { display:block; }
.ov-metric > span { font-size:11px; color:var(--ov-muted); }
.ov-metric > b { font-size:22px; line-height:1.5; }
.ov-metric > small { font-size:10px; color:var(--ov-muted); overflow-wrap:anywhere; }
.ov-scope { border-top:1px solid var(--line); color:var(--ov-muted); font-size:11px; line-height:1.6; }
.ov-scope summary { cursor:pointer; padding:8px 0; min-height:36px; }
.ov-scope p { margin:0 0 8px; }
.ov-heading { display:flex; align-items:center; justify-content:space-between; gap:4px; min-height:32px; }
.ov-heading .ov-link { padding:4px 0 4px 8px; min-height:36px; background:none; border:0; color:var(--brand); font-size:11px; flex-shrink:0; }
.ov-trend { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:4px; padding:8px 0 0; }
.ov-trend-column { text-align:center; font-size:10px; color:var(--ov-muted); }
.ov-trend-column > b { font-weight:500; }
.ov-trend-column > span { display:flex; align-items:flex-end; justify-content:center; height:64px; border-bottom:1px solid var(--line); margin:3px 0; }
.ov-trend-column i { display:block; background:#b0ccd9; width:70%; border-radius:2px 2px 0 0; }
.ov-trend-column.selected i { background:var(--brand); }
.ov-trend-column.selected { color:var(--brand); font-weight:700; }
.ov-stack { display:flex; height:8px; background:#edf3f6; margin:8px 0; border-radius:3px; overflow:hidden; }
.ov-stack i,.ov-dot { background:var(--brand); }
.ov-stack .ov-waiting,.ov-dot.ov-waiting { background:#bb7519; }
.ov-stack .ov-working,.ov-dot.ov-working { background:#219069; }
.ov-stack .ov-done,.ov-dot.ov-done { background:#667d90; }
.ov-stack .ov-attention,.ov-dot.ov-attention { background:#c73c47; }
.ov-distribution { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:12px; }
.ov-distribution-row { display:flex; align-items:center; justify-content:space-between; gap:4px; background:none; border:0; padding:4px 0; min-height:40px; font-size:11px !important; }
.ov-distribution-row > span { display:flex; align-items:center; gap:4px; }
.ov-distribution-row small { margin-left:4px; color:var(--ov-muted); font-size:10px; font-weight:400; }
.ov-distribution-row:last-child { grid-column:1/-1; }
.ov-dot { width:6px; height:6px; border-radius:2px; flex:none; }
.ov-load-row { width:100%; display:grid; grid-template-columns:minmax(0,1fr) 48px 54px; align-items:center; gap:8px; padding:9px 0; border:0; border-bottom:1px solid var(--line); background:none; text-align:right; }
.ov-load-row:last-child { border-bottom:0; }
.ov-load-row b { font-size:14px; }
.ov-load-row small { display:block; font-size:10px; color:var(--ov-muted); margin-top:2px; }
.ov-driver { text-align:left; }
.ov-driver > b { display:flex; align-items:center; gap:8px; font-size:12px; }
.ov-driver b small { margin:0; font-weight:400; }
.ov-meter { display:block; height:4px; background:#e8eef2; border-radius:2px; overflow:hidden; }
.ov-meter i { display:block; height:100%; background:var(--brand); }
.ov-driver .ov-meter { margin-top:6px; }
.ov-more summary { min-height:40px; padding:12px 0 4px; color:var(--brand); font-size:11px; cursor:pointer; }
.ov-task-row { display:block; width:100%; padding:10px 0; background:none; border:0; border-bottom:1px solid var(--line); text-align:left; line-height:1.5; }
.ov-task-title { display:flex; justify-content:space-between; gap:8px; align-items:center; }
.ov-task-title b { font-size:12px; overflow-wrap:anywhere; }
.ov-task-title strong { flex:none; color:var(--brand); font-size:11px; }
.ov-task-route { display:block; font-size:11px; margin:4px 0; overflow-wrap:anywhere; }
.ov-task-meta { display:block; font-size:10px; color:var(--ov-muted); overflow-wrap:anywhere; }
.ov-task-progress { display:flex; align-items:center; gap:8px; margin-top:6px; }
.ov-task-progress .ov-meter { flex:1; }
.ov-task-progress > small { color:var(--ov-muted); font-size:10px; }
.ov-alerts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 12px; }
.ov-alert { display:flex; align-items:center; justify-content:space-between; gap:4px; background:none; border:0; border-bottom:1px solid var(--line); padding:10px 0; text-align:left; }
.ov-alert b { display:block; font-size:11px; }
.ov-alert small { display:block; font-size:10px; color:var(--ov-muted); margin-top:4px; }
.ov-alert strong { font-size:18px; }
.ov-alert.has-alert strong { color:#a83236; }
.ov-shortcuts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; margin-top:6px; }
.ov-shortcuts button { min-height:44px; font-size:11px; background:#f3f7f9; border:1px solid var(--line); border-radius:4px; padding:4px; }
.ov-empty { color:var(--ov-muted); padding:16px 0; text-align:center; font-size:12px; }
.ov-drill-context { padding:8px 10px; margin-bottom:12px; background:#edf5f9; border:1px solid #c4dce8; border-radius:6px; }
.ov-drill-context strong { display:block; font-size:12px; overflow-wrap:anywhere; }
.ov-drill-context p { margin:4px 0 0; font-size:11px; color:#526a7b; }
.ov-drill-context > div { display:flex; gap:12px; }
.ov-drill-context button { min-height:36px; border:0; background:none; color:var(--brand); font:inherit; font-size:12px; padding:0; }
@media (max-width:360px) {
  .mobile-overview .ov-panel { padding:8px; }
  .mobile-overview .ov-period { gap:5px; }
  .mobile-overview .ov-period label { gap:2px; }
  .mobile-overview .ov-metric { padding:8px 2px; }
  .mobile-overview .ov-metric > b { font-size:20px; }
  .mobile-overview .ov-role { max-width:88px; }
}
