:root {
  font-family: Arial, Helvetica, sans-serif;
  color-scheme: light dark;
  --bg: #f4f7fb;
  --surface: #ffffff;
  --text: #162033;
  --muted: #526078;
  --accent: #2548a8;
  --accent-strong: #17317a;
  --border: #c8d2e3;
  --good: #14733d;
  --warn: #8a5700;
  --danger: #a11b1b;
  --shadow: 0 0.5rem 1.5rem rgba(28, 43, 75, 0.12);
}
@media (prefers-color-scheme: dark) {
  :root { --bg:#101725; --surface:#192235; --text:#f5f7fb; --muted:#bec9da; --accent:#9db5ff; --accent-strong:#c8d5ff; --border:#43506a; --good:#71d69b; --warn:#f5c76d; --danger:#ff9c9c; --shadow:none; }
}
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--text); line-height:1.55; }
a { color:var(--accent); font-weight:700; }
button, input, select { font:inherit; }
button { min-height:44px; border:2px solid var(--accent); border-radius:.55rem; padding:.55rem .9rem; background:var(--accent); color:#fff; font-weight:700; cursor:pointer; }
button:hover, button:focus-visible { background:var(--accent-strong); }
button[aria-pressed="true"] { outline:4px solid var(--warn); }
input, select { width:100%; min-height:44px; border:2px solid var(--border); border-radius:.45rem; padding:.5rem; background:var(--surface); color:var(--text); }
:focus-visible { outline:4px solid #ffbf47; outline-offset:3px; }
.skip-link { position:absolute; left:.5rem; top:-5rem; background:#000; color:#fff; padding:.75rem; z-index:20; }
.skip-link:focus { top:.5rem; }
.site-header { display:flex; justify-content:space-between; gap:2rem; align-items:flex-start; padding:1.5rem clamp(1rem,4vw,3.5rem); background:var(--surface); border-bottom:1px solid var(--border); }
.site-header h1 { margin:.1rem 0; font-size:clamp(2rem,5vw,3.4rem); }
.site-header nav { display:flex; gap:1rem; flex-wrap:wrap; padding-top:.75rem; }
main { max-width:1400px; margin:auto; padding:1.5rem clamp(1rem,4vw,3.5rem) 4rem; }
section { margin:1.5rem 0 2.25rem; }
.eyebrow { text-transform:uppercase; letter-spacing:.12em; font-size:.82rem; font-weight:800; color:var(--accent); margin:0; }
.notice { background:var(--surface); border-left:.5rem solid var(--warn); padding:1rem 1.25rem; box-shadow:var(--shadow); }
.notice h2 { margin-top:0; }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:1rem; margin-bottom:1rem; }
.section-heading h2 { margin:.1rem 0 0; font-size:clamp(1.55rem,3vw,2.25rem); }
.toolbar { display:flex; gap:.75rem; flex-wrap:wrap; }
.metrics { display:grid; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); gap:1rem; }
.metrics article, .capacity-card, .tool-grid article { background:var(--surface); border:1px solid var(--border); border-radius:.8rem; padding:1rem 1.1rem; box-shadow:var(--shadow); }
.metrics h3, .capacity-card h3 { margin:.1rem 0; font-size:1rem; }
.metrics p { margin:.2rem 0; font-size:2.25rem; font-weight:800; }
.metrics small { color:var(--muted); }
.capacity-grid, .tool-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:1rem; }
meter { width:100%; height:1.5rem; }
.filters { display:grid; grid-template-columns:2fr 1fr 1fr auto; gap:1rem; align-items:end; background:var(--surface); padding:1rem; border:1px solid var(--border); border-radius:.8rem; }
.filters label { font-weight:700; display:block; margin-bottom:.3rem; }
.filter-actions { display:flex; gap:.5rem; }
.table-wrap { overflow:auto; background:var(--surface); border:1px solid var(--border); border-radius:.8rem; }
table { width:100%; border-collapse:collapse; min-width:900px; }
caption { text-align:left; font-weight:800; padding:1rem; font-size:1.1rem; }
th, td { padding:.75rem; border-top:1px solid var(--border); text-align:left; vertical-align:top; }
th { background:color-mix(in srgb, var(--surface) 80%, var(--accent) 20%); }
.status-pill { display:inline-block; border-radius:999px; padding:.15rem .55rem; font-weight:800; border:1px solid currentColor; }
.status-active { color:var(--good); }
.status-waiting { color:var(--warn); }
.status-closed { color:var(--muted); }
.action-group { display:flex; gap:.4rem; flex-wrap:wrap; }
.action-group button { min-height:38px; padding:.35rem .55rem; font-size:.92rem; }
.danger { border-color:var(--danger); background:var(--danger); }
.activity-feed { background:var(--surface); border:1px solid var(--border); border-radius:.8rem; padding:1rem 1rem 1rem 2.5rem; max-height:22rem; overflow:auto; }
.activity-feed li { margin:.55rem 0; }
dialog { width:min(680px,92vw); border:2px solid var(--accent); border-radius:.8rem; background:var(--surface); color:var(--text); }
dialog::backdrop { background:rgba(0,0,0,.68); }
.dialog-content dl { display:grid; grid-template-columns:minmax(120px,1fr) 2fr; gap:.5rem 1rem; }
.dialog-content dt { font-weight:800; }
.sr-only { 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; }
@media (max-width:850px) {
  .site-header, .section-heading { display:block; }
  .site-header nav, .toolbar { margin-top:1rem; }
  .filters { grid-template-columns:1fr; }
  .filter-actions { flex-wrap:wrap; }
}
@media (forced-colors:active) { button, input, select, .metrics article, .capacity-card, .tool-grid article { border:2px solid CanvasText; } }
