/* SHAAN Ops replica design tokens. Generated from replica/design/tokens.json + tokens.dark.json.
   Edit the JSON, then regenerate; components use the role names (--c-*) or the app's older aliases.
   Loaded AFTER style.css so these values win. */
:root {
  --c-bg: #F6F6F4;
  --c-surface: #FFFFFF;
  --c-surface-2: #FAFAF9;
  --c-border: #E5E5E2;
  --c-border-strong: #D4D4CF;
  --c-border-input: #8A8F8A;
  --c-text: #1F2420;
  --c-text-muted: #656B67;
  --c-nav-text: #3A403B;
  --c-nav-active: #F1F3EF;
  --c-primary: #4B6743;
  --c-on-primary: #FFFFFF;
  --c-accent: #E66E3E;
  --c-accent-text: #B8461A;
  --c-accent-soft: #FDEEE7;
  --c-on-accent: #FFFFFF;
  --c-navy: #21387F;
  --c-success: #16A34A;
  --c-success-text: #13783A;
  --c-success-soft: #E8F6EC;
  --c-warning: #D97706;
  --c-warning-text: #B45309;
  --c-warning-soft: #FEF3E2;
  --c-danger: #DC2626;
  --c-danger-text: #B91C1C;
  --c-danger-soft: #FDECEC;
  --c-late: #B3261E;
  --bg: var(--c-bg);
  --card: var(--c-surface);
  --card-2: var(--c-surface-2);
  --border: var(--c-border);
  --border-strong: var(--c-border-strong);
  --ink: var(--c-text);
  --muted: var(--c-text-muted);
  --nav-ink: var(--c-nav-text);
  --nav-active: var(--c-nav-active);
  --green: var(--c-primary);
  --accent: var(--c-accent);
  --accent-soft: var(--c-accent-soft);
  --navy: var(--c-navy);
  --ok: var(--c-success);
  --ok-soft: var(--c-success-soft);
  --warn: var(--c-warning);
  --warn-soft: var(--c-warning-soft);
  --bad: var(--c-danger);
  --bad-soft: var(--c-danger-soft);
  --font-sans: "IBM Plex Sans Arabic", system-ui, sans-serif;
  --fs-xs: 12px; --lh-xs: 16px; --fw-xs: 500;
  --fs-sm: 13px; --lh-sm: 18px; --fw-sm: 400;
  --fs-base: 14px; --lh-base: 22px; --fw-base: 400;
  --fs-lg: 18px; --lh-lg: 26px; --fw-lg: 600;
  --fs-xl: 22px; --lh-xl: 30px; --fw-xl: 700;
  --fs-display: 28px; --lh-display: 34px; --fw-display: 700;
  --sp-0: 0px;
  --sp-1: 2px;
  --sp-2: 4px;
  --sp-3: 6px;
  --sp-4: 8px;
  --sp-5: 10px;
  --sp-6: 12px;
  --sp-7: 16px;
  --sp-8: 24px;
  --sp-9: 32px;
  --radius-sm: 6px; --radius: 10px; --radius-xl: 14px; --radius-pill: 999px;
  --shadow: 0 1px 2px rgba(20,24,20,.04), 0 1px 1px rgba(20,24,20,.03); --shadow-lg: 0 10px 30px rgba(20,24,20,.10);
  --motion-fast: 120ms; --motion: 200ms; --ease: cubic-bezier(.2,.8,.2,1);
  --fs: var(--fs-base);
}
:root[data-theme="dark"] {
  --c-bg: #0E100F;
  --c-surface: #17191A;
  --c-surface-2: #1C1F1E;
  --c-border: #2A2E2C;
  --c-border-strong: #3A3F3C;
  --c-border-input: #6B726E;
  --c-text: #ECEEEC;
  --c-text-muted: #9AA19C;
  --c-nav-text: #C9CEC9;
  --c-nav-active: #212624;
  --c-primary: #7FA673;
  --c-on-primary: #0E100F;
  --c-accent: #E66E3E;
  --c-accent-text: #F29A74;
  --c-accent-soft: #3A2318;
  --c-on-accent: #0E100F;
  --c-navy: #8EA3E6;
  --c-success: #4ADE80;
  --c-success-text: #4ADE80;
  --c-success-soft: #13261A;
  --c-warning: #FBBF24;
  --c-warning-text: #FBBF24;
  --c-warning-soft: #2C2212;
  --c-danger: #F87171;
  --c-danger-text: #F87171;
  --c-danger-soft: #2E1616;
  --c-late: #F87171;
  --bg: var(--c-bg);
  --card: var(--c-surface);
  --card-2: var(--c-surface-2);
  --border: var(--c-border);
  --border-strong: var(--c-border-strong);
  --ink: var(--c-text);
  --muted: var(--c-text-muted);
  --nav-ink: var(--c-nav-text);
  --nav-active: var(--c-nav-active);
  --green: var(--c-primary);
  --accent: var(--c-accent);
  --accent-soft: var(--c-accent-soft);
  --navy: var(--c-navy);
  --ok: var(--c-success);
  --ok-soft: var(--c-success-soft);
  --warn: var(--c-warning);
  --warn-soft: var(--c-warning-soft);
  --bad: var(--c-danger);
  --bad-soft: var(--c-danger-soft);
  --shadow: 0 1px 2px rgba(0,0,0,.4); --shadow-lg: 0 12px 32px rgba(0,0,0,.5);
  color-scheme: dark;
}
