/* cockpit.css — layout skeleton only.
   Tokens (--c-*, --radius, etc.) come from tokens.css.
   Component classes (.card .kpi .hub-tile .ribbon .eyebrow .muted) come from ui.css.
   This file provides only cockpit-specific page layout. */

*,*::before,*::after{box-sizing:border-box;}
body{margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;background:var(--c-cream);
  color:var(--c-dark);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;}
a{color:inherit;text-decoration:none;}

/* ── Page scaffold ── */
.work{padding:18px 22px;max-width:1280px;margin:0 auto;}

/* ── Home two-column layout ── */
.grid{display:grid;grid-template-columns:1fr 320px;gap:16px;align-items:start;}
.rail{display:flex;flex-direction:column;gap:16px;}

/* ── Board summary counts (partials/board.html) ── */
.board-counts{display:flex;flex-wrap:wrap;gap:18px;margin-top:4px;}
.board-counts div{display:flex;flex-direction:column;}
.board-counts b{font-size:22px;font-weight:600;}
.board-counts span{font-size:12px;color:var(--c-brown);}

/* ── Shift + alerts lists (partials/shift.html, partials/alerts.html) ── */
.shift,.alerts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.shift li{display:flex;align-items:center;gap:10px;}
.alerts li{font-size:13px;padding-left:10px;border-left:3px solid var(--c-gold);border-radius:0;}
.alerts li.al-stale{border-left-color:var(--c-brown);}
.alerts li.al-ofd{border-left-color:#B23B3B;font-weight:600;}

/* ── Hub section wrapper ── */
.hub{margin-top:18px;}
.hub-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;}
.hub-tile--soon{opacity:.6;}

/* ── Footer ── */
.footer{padding:14px 22px;color:var(--c-brown);font-size:12px;border-top:.5px solid var(--c-line);margin-top:24px;}

@media(max-width:760px){.grid{grid-template-columns:1fr;}}

/* ── Floor-map drawer: restore floor.css geometry that ui.css .drawer would stomp.
   ui.css .drawer sets width:min(440px,92vw) and z-index:100; the floor panel uses
   width:320px / z-index:50. We restore those values via id specificity so the
   floor map keeps working. This override is intentionally temporary — the floor
   map restyle batch will migrate to the panel skeleton properly.           ── */
#drawer.drawer {
  width: 320px; max-width: 88vw; z-index: 50;
  background: var(--c-cream); border-left: 1px solid var(--c-line);
  padding: 18px; overflow: auto; box-shadow: -4px 0 16px rgba(0,0,0,.10);
  border-radius: 0;
}
