/*
 * AV DS 4 consumer token bridge for Qaz Support.
 *
 * Source: /Users/belilovsky/Documents/Codex/2026-04-28/codex-deep-audit-prompt-av-design/avds-4-freeze
 * Source SHA: c9e9587329653026dab1d93ad4cdc19bdefcd868
 * Public showcase: https://avds.digital/ · 4.5.1
 *
 * This file carries the stable token vocabulary and responsive aliases into
 * the existing FastAPI/Jinja consumer. It is intentionally not a local
 * component library: routing, content, safety language and markup remain
 * owned by Qaz Support.
 */
:root {
  color-scheme: light;

  /* Canonical AV DS 4 primitive vocabulary from the current freeze source. */
  --av-color-blue-500: #3b82f6;
  --av-color-blue-600: #2563eb;
  --av-color-blue-700: #1d4ed8;
  --av-color-slate-50: #f8fafc;
  --av-color-slate-100: #f1f5f9;
  --av-color-slate-200: #e2e8f0;
  --av-color-slate-300: #cbd5e1;
  --av-color-slate-400: #94a3b8;
  --av-color-slate-500: #64748b;
  --av-color-slate-700: #334155;
  --av-color-slate-800: #1e293b;
  --av-color-slate-900: #0f172a;
  --av-color-slate-950: #020617;
  --av-color-red-100: #fee2e2;
  --av-color-red-600: #dc2626;
  --av-color-amber-100: #fef3c7;
  --av-color-amber-700: #b45309;
  --av-color-amber-800: #92400e;
  --av-color-green-100: #dcfce7;
  --av-color-green-700: #15803d;
  --av-color-orange-100: #ffedd5;
  --av-color-orange-600: #ea580c;
  --av-color-cyan-500: #06b6d4;
  --av-color-cyan-950: #083344;
  --av-color-violet-600: #7c3aed;
  --av-color-teal-500: #14b8a6;
  --av-color-teal-950: #042f2e;
  --av-color-white: #ffffff;

  --av-spacing-0: 0px;
  --av-spacing-1: 4px;
  --av-spacing-2: 8px;
  --av-spacing-3: 12px;
  --av-spacing-4: 16px;
  --av-spacing-5: 20px;
  --av-spacing-6: 24px;
  --av-spacing-8: 32px;
  --av-spacing-10: 40px;
  --av-spacing-12: 48px;

  --av-radius-sm: 4px;
  --av-radius-md: 8px;
  --av-radius-lg: 12px;
  --av-radius-xl: 16px;
  --av-radius-full: 999px;

  --av-duration-instant: 80ms;
  --av-duration-fast: 120ms;
  --av-duration-base: 180ms;
  --av-duration-slow: 280ms;
  --av-easing-standard: .2, 0, 0, 1;
  --av-easing-emphasized: .2, 0, .1, 1;
  --av-z-dropdown: 1000;
  --av-z-modal: 1300;
  --av-z-tooltip: 1400;
  --av-z-toast: 1500;
  --av-opacity-disabled: .48;
  --av-opacity-scrim: .64;
  --av-shadow-sm: 0 1px 2px 0 rgb(15 23 42 / .12);
  --av-shadow-lg: 0 16px 32px -12px rgb(15 23 42 / .18);

  --av-text-body-font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --av-text-body-font-size: 16px;
  --av-text-body-font-weight: 400;
  --av-text-body-line-height: 24px;
  --av-text-body-letter-spacing: 0;
  --av-text-body: var(--av-text-body-font-weight) var(--av-text-body-font-size)/var(--av-text-body-line-height) var(--av-text-body-font-family);
  --av-text-heading-font-family: "IBM Plex Serif", Georgia, serif;
  --av-text-heading-font-size: 32px;
  --av-text-heading-font-weight: 600;
  --av-text-heading-line-height: 40px;
  --av-text-heading-letter-spacing: 0;
  --av-text-heading: var(--av-text-heading-font-weight) var(--av-text-heading-font-size)/var(--av-text-heading-line-height) var(--av-text-heading-font-family);
  --av-text-code-font-family: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
  --av-text-code-font-size: 13px;
  --av-text-code-font-weight: 400;
  --av-text-code-line-height: 20px;
  --av-text-code-letter-spacing: 0;
  --av-text-code: var(--av-text-code-font-weight) var(--av-text-code-font-size)/var(--av-text-code-line-height) var(--av-text-code-font-family);

  --avds-shell-gutter: clamp(1rem, 4vw, 2rem);
  --avds-shell-max: 80rem;
  --avds-header-max: 90rem;
  --avds-reading-max: 76ch;
  --avds-layout-gap: clamp(1rem, 2vw, 1.5rem);

  --qaz-ink: #172126;
  --qaz-muted: #647178;
  --qaz-paper: #f7f8f5;
  --qaz-panel: #ffffff;
  --qaz-line: #dbe2de;
  --qaz-accent: #146c68;
  --qaz-accent-soft: #dff0eb;
  --qaz-danger: #8d3036;
  --qaz-danger-soft: #fff6f5;
  --qaz-danger-line: #e5b8ba;
  --qaz-accent-strong: #105a57;
  --qaz-note-surface: #f8faf7;
  --qaz-note-ink: #365351;
  --qaz-bar-surface: #e4edeb;
  --qaz-focus-ring: #146c68;
}

html[data-av-theme="qaz-monster"] {
  --av-color-background: var(--qaz-paper);
  --av-color-foreground: var(--qaz-ink);
  --av-color-surface: var(--qaz-panel);
  --av-color-muted: #eef3f1;
  --av-color-muted-foreground: var(--qaz-muted);
  --av-color-border: var(--qaz-line);
  --av-color-primary: var(--qaz-accent);
  --av-color-primary-foreground: #ffffff;
  --av-color-danger: var(--qaz-danger);
}
