/* AgentX brand system 1.0 — architecture v1.2, 2026-10-03.
   Source: original AgentX_ Lila Falkenmarke.png. See architecture §43.
   Font: Manrope, SIL OFL 1.1; license in assets/fonts/OFL-Manrope.txt. */
@font-face {
  font-family: "Manrope";
  src: url("fonts/Manrope-Variable.ttf") format("truetype");
  font-weight: 200 800;
  font-style: normal;
  font-display: swap;
}

:root {
  --ax-brand-primary: #8734ED;
  --ax-brand-strong: #5E2CC1;
  --ax-brand-lilac: #DCBDFC;
  --ax-ink-primary: #1A1C2D;
  --ax-ink-secondary: #616272;
  --ax-surface-base: #FFFFFF;
  /* Lowest RGB channel in the original logo's opaque outer background.
     Darken blending on this surface removes its 253–255 edge texture. */
  --ax-logo-surface: #FDFDFD;
  --ax-surface-subtle: #F8F5FC;
  --ax-border-subtle: #E8E0F1;
  --ax-border-control: #616272;
  --ax-font-ui: "Manrope", system-ui, sans-serif;
  --ax-font-code: ui-monospace, "Cascadia Code", Consolas, monospace;
  --ax-space-1: 4px;
  --ax-space-2: 8px;
  --ax-space-3: 12px;
  --ax-space-4: 16px;
  --ax-space-6: 24px;
  --ax-space-8: 32px;
  --ax-space-12: 48px;
  --ax-radius-control: 8px;
  --ax-radius-card: 12px;
  --ax-shadow-panel: 0 8px 32px rgb(26 28 45 / 4%);
  --ax-motion-fast: 150ms;
  --ax-text-body: 15px;
  --ax-text-small: 13px;
  --ax-text-title: 32px;
  --ax-line-height: 1.55;
  color-scheme: light;
}

/* Semantic states share the brand palette. Icons and labels are required. */
.ax-status {
  display: inline-flex;
  align-items: center;
  gap: var(--ax-space-2);
  color: var(--ax-ink-primary);
  font-size: var(--ax-text-small);
  font-weight: 600;
}
.ax-status[data-state="pending"] { color: var(--ax-brand-strong); }
.ax-status[data-state="blocked"] {
  border: 1px solid var(--ax-ink-primary);
  border-radius: var(--ax-radius-control);
  padding: var(--ax-space-1) var(--ax-space-2);
}
.ax-numeral { font-variant-numeric: tabular-nums; }
:focus-visible {
  outline: 3px solid var(--ax-brand-primary);
  outline-offset: 3px;
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}
