/* AQELYN — design system. Instrument-console aesthetic: precise, evidence-forward,
   monospace for every measured value. Navy identity retained; palette deepened and the
   accent sharpened. Dark-first (an operations surface lives in the dark), light kept whole. */

:root{
  /* brand + semantic (light values; dark overrides below) */
  --navy:#0a3866; --navy-2:#072a4e; --blue:#0b6fc4; --blue-d:#075a9c; --accent:#0b8ce0;
  --teal:#00a19f; --green:#1e9e46; --amber:#e08a00; --purple:#6d54f0;
  --blue-t:#e8f3fd; --green-t:#e6f7ec; --amber-t:#fdf2e0; --purple-t:#efeafe;
  --crit:#c62828; --crit-t:#fdeceb;
  /* neutrals, cool and chosen */
  --ground:#eef3f9; --surface:#ffffff; --surface-2:#eef3fa; --line:#d9e2ee; --hair:rgba(9,30,60,.06);
  --ink:#0c1a2e; --ink-2:#41546e; --ink-3:#657790; --ink-4:#93a3ba;
  --sans:system-ui,-apple-system,"Segoe UI",Roboto,Arial,Helvetica,sans-serif;
  --mono:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;
  --shadow:0 1px 0 rgba(9,30,60,.04), 0 14px 34px -22px rgba(9,30,60,.42);
  --glow-a:rgba(11,140,224,.5);
  --r:7px; --r-lg:11px;
  color-scheme:light;
}

@media (prefers-color-scheme:dark){
  :root{
    color-scheme:dark;
    --navy:#0b2440; --navy-2:#071a30; --blue:#4aa6ee; --blue-d:#2f8bd6; --accent:#57b6ff;
    --teal:#2ec9c6; --green:#3fc169; --amber:#eeae4a; --purple:#9b86ff;
    --blue-t:#0f2942; --green-t:#0d2a1a; --amber-t:#2c2410; --purple-t:#201b3c;
    --crit:#ff8072; --crit-t:#331615;
    --ground:#060b15; --surface:#0d1626; --surface-2:#131f34;
    --line:#1e2f49; --hair:rgba(255,255,255,.05);
    --ink:#e7eef8; --ink-2:#aab9d0; --ink-3:#7e8fa8; --ink-4:#54657f;
    --shadow:0 1px 0 rgba(255,255,255,.03), 0 18px 40px -24px rgba(0,0,0,.85);
    --glow-a:rgba(11,140,224,.42);
  }
}
:root[data-theme="dark"]{
  color-scheme:dark;
  --navy:#0b2440; --navy-2:#071a30; --blue:#4aa6ee; --blue-d:#2f8bd6; --accent:#57b6ff;
  --teal:#2ec9c6; --green:#3fc169; --amber:#eeae4a; --purple:#9b86ff;
  --blue-t:#0f2942; --green-t:#0d2a1a; --amber-t:#2c2410; --purple-t:#201b3c;
  --crit:#ff8072; --crit-t:#331615;
  --ground:#060b15; --surface:#0d1626; --surface-2:#131f34;
  --line:#1e2f49; --hair:rgba(255,255,255,.05);
  --ink:#e7eef8; --ink-2:#aab9d0; --ink-3:#7e8fa8; --ink-4:#54657f;
  --shadow:0 1px 0 rgba(255,255,255,.03), 0 18px 40px -24px rgba(0,0,0,.85);
  --glow-a:rgba(11,140,224,.42);
}
:root[data-theme="light"]{
  color-scheme:light;
  --navy:#0a3866; --navy-2:#072a4e; --blue:#0b6fc4; --blue-d:#075a9c; --accent:#0b8ce0;
  --teal:#00a19f; --green:#1e9e46; --amber:#e08a00; --purple:#6d54f0;
  --blue-t:#e8f3fd; --green-t:#e6f7ec; --amber-t:#fdf2e0; --purple-t:#efeafe;
  --crit:#c62828; --crit-t:#fdeceb;
  --ground:#eef3f9; --surface:#ffffff; --surface-2:#eef3fa; --line:#d9e2ee; --hair:rgba(9,30,60,.06);
  --ink:#0c1a2e; --ink-2:#41546e; --ink-3:#657790; --ink-4:#93a3ba;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto} *{animation:none!important;transition:none!important}}
body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--sans);
     font-size:15px;line-height:1.58;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
/* the "signal line": a thin spectral seam pinned to the top of every page */
body::before{content:"";position:fixed;inset:0 0 auto 0;height:2px;z-index:100;
     background:linear-gradient(90deg,var(--teal),var(--accent) 45%,var(--purple));opacity:.9}
a{color:var(--blue);text-decoration:none;transition:color .15s}
a:hover{text-decoration:underline}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}
h1,h2,h3,h4{text-wrap:balance}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}
.num{font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-feature-settings:"tnum" 1}

/* ---------- brand chrome ---------- */
.shield{flex:none;filter:drop-shadow(0 2px 6px rgba(0,0,0,.25))}
.wordmark{font-weight:800;letter-spacing:.14em;font-size:19px;line-height:1}
.tagline{font-size:10px;letter-spacing:.19em;text-transform:uppercase;margin-top:3px;opacity:.72}

/* ---------- chips ---------- */
.chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:100px;
      font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;line-height:1.7}
.chip .dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex:none;
      box-shadow:0 0 0 3px color-mix(in srgb,currentColor 22%,transparent)}
.c-blue{background:var(--blue-t);color:var(--blue-d)}
.c-green{background:var(--green-t);color:var(--green)}
.c-amber{background:var(--amber-t);color:#9a5f00}
.c-purple{background:var(--purple-t);color:var(--purple)}
.c-crit{background:var(--crit-t);color:var(--crit)}
.c-grey{background:var(--surface-2);color:var(--ink-3)}
.c-out{border:1px solid rgba(255,255,255,.28);color:#d3e6f7;background:rgba(255,255,255,.04)}
:root[data-theme="dark"] .c-amber{color:var(--amber)}
@media (prefers-color-scheme:dark){.c-amber{color:var(--amber)}}

/* ---------- panels ---------- */
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);
       box-shadow:var(--shadow);position:relative;overflow:hidden}
.panel::before{content:"";position:absolute;inset:0 0 auto 0;height:1px;background:var(--hair)}
.panel > h2, .panel > h3{margin:0;font-size:11.5px;letter-spacing:.11em;text-transform:uppercase;
   font-weight:700;color:var(--ink-2);padding:13px 16px;border-bottom:1px solid var(--line);
   display:flex;align-items:center;gap:10px;background:linear-gradient(var(--hair),transparent)}
.panel .body{padding:16px}
.n{width:20px;height:20px;border-radius:5px;background:var(--blue);color:#fff;font-size:11px;
   display:inline-flex;align-items:center;justify-content:center;font-weight:800;flex:none;font-family:var(--mono)}
.hint{font-size:12px;color:var(--ink-3);margin:0;line-height:1.55}
.scroll{overflow-x:auto}

/* ---------- tables ---------- */
table{width:100%;border-collapse:collapse;font-size:13.5px;min-width:640px}
th{text-align:left;font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--ink-3);
   padding:0 12px 9px;font-weight:700;white-space:nowrap}
td{padding:11px 12px;border-top:1px solid var(--line);vertical-align:top}
tbody tr{transition:background .12s}
tbody tr:hover td{background:var(--surface-2)}
