/* XMNZ Testing System — Shared tokens */
:root {
  /* Type */
  --font-sans: "Inter Tight", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --font-mono: "JetBrains Mono", "IBM Plex Mono", ui-monospace, Menlo, monospace;

  /* Neutrals (warm off-white, light) */
  --bg:        #F6F4EF;
  --bg-alt:    #EFEBE3;
  --surface:   #FFFFFF;
  --ink:       #16140F;
  --ink-2:     #3B372E;
  --ink-3:     #6B665A;
  --ink-4:     #9A9487;
  --line:      #D9D3C5;
  --line-2:    #E8E3D7;

  /* Status — desaturated industrial */
  --ok:        #1F7A4B;
  --ok-bg:     #E3F1E7;
  --ok-ink:    #0F3D25;

  --warn:      #B47307;
  --warn-bg:   #FAEFD3;
  --warn-ink:  #5A3900;

  --fail:      #B5341C;
  --fail-bg:   #F7DDD3;
  --fail-ink:  #591306;

  --info:      #1F5B96;
  --info-bg:   #DDE8F3;
  --info-ink:  #0E2C4C;

  --pending:   #6B665A;
  --pending-bg:#EBE7DC;

  --packaged:  #2A2720;
  --packaged-bg:#E1DCCD;

  /* Radii & spacing */
  --r-xs: 2px;
  --r-sm: 4px;
  --r-md: 8px;
  --r-lg: 12px;

  /* Shadows (subtle industrial) */
  --shadow-1: 0 1px 0 rgba(22,20,15,0.04), 0 1px 2px rgba(22,20,15,0.06);
  --shadow-2: 0 2px 0 rgba(22,20,15,0.04), 0 4px 12px rgba(22,20,15,0.08);
}

[data-theme="dark"] {
  --bg:        #14130F;
  --bg-alt:    #1C1A15;
  --surface:   #23201A;
  --ink:       #F3EFE4;
  --ink-2:     #CBC4B2;
  --ink-3:     #8F8876;
  --ink-4:     #5F5A4C;
  --line:      #36322A;
  --line-2:    #2A2720;

  --ok-bg:     #1A2E21;
  --ok-ink:    #8FD3A5;
  --warn-bg:   #33260B;
  --warn-ink:  #F2C670;
  --fail-bg:   #38170E;
  --fail-ink:  #F29B85;
  --info-bg:   #162537;
  --info-ink:  #8CB8E6;
  --pending-bg:#2A2720;
  --packaged-bg:#1F1D17;
}

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
  font-family: var(--font-sans);
  background: var(--bg);
  color: var(--ink);
  font-feature-settings: "ss01", "cv11";
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.mono { font-family: var(--font-mono); font-feature-settings: "zero", "ss01"; }

/* Utility */
.pill {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 3px 8px;
  border-radius: 2px;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  white-space: nowrap;
}

.dot {
  width: 8px; height: 8px; border-radius: 50%;
  display: inline-block; flex: none;
}

/* Status pills */
.pill.s-in_progress   { background: var(--info-bg);     color: var(--info-ink); }
.pill.s-passed        { background: var(--ok-bg);       color: var(--ok-ink); }
.pill.s-failed        { background: var(--fail-bg);     color: var(--fail-ink); }
.pill.s-ready_for_ota { background: var(--warn-bg);     color: var(--warn-ink); }
.pill.s-verified      { background: #DDF0F5;            color: #0B3B48; }
.pill.s-ready_pack    { background: var(--pending-bg);  color: var(--ink-2); }
.pill.s-packaged      { background: var(--packaged-bg); color: var(--packaged); }

[data-theme="dark"] .pill.s-verified { background: #0F3140; color: #8FD0E0; }
