/* ============================================================================
   NotreOS Design Tokens  [FOUNDATION — presentation layer]
   Direction: Linear/Stripe/Notion — calm, minimal, dense, light-mode-first.
   Every value future modules use lives here. Change a token, change the system.
   ========================================================================= */
:root {
  /* --- Color: neutral-forward, one restrained accent (a deep architectural indigo,
     nodding to Notre's building-world without cliché). Grays are cool-neutral. --- */
  --c-bg:            #fbfbfa;   /* app background — warm paper white */
  --c-surface:       #ffffff;   /* cards, panels */
  --c-surface-2:     #f6f7f8;   /* subtle fills, hover, table stripes */
  --c-border:        #eceef0;   /* hairline borders */
  --c-border-strong: #e0e3e6;
  --c-ink:           #16181d;   /* primary text — near-black, not pure */
  --c-ink-2:         #5b6270;   /* secondary text */
  --c-ink-3:         #8a909c;   /* tertiary / captions */
  --c-accent:        #3549b5;   /* indigo — primary actions, focus */
  --c-accent-hover:  #2c3d9c;
  --c-accent-weak:   #eef1fb;   /* accent-tinted surface */
  --c-success:       #1f7a4d; --c-success-weak:#e6f4ec;
  --c-warn:          #9a6b00;  --c-warn-weak:  #fbf1da;
  --c-danger:        #b3402f;  --c-danger-weak:#fbe9e6;

  /* --- Typography: Inter for UI (grotesque, dense-friendly), with tabular numerals.
     A single family, many weights — the Linear/Stripe move. Mono for data/IDs. --- */
  --font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;
  --fs-11: 11px; --fs-12: 12px; --fs-13: 13px; --fs-14: 14px;
  --fs-16: 16px; --fs-18: 18px; --fs-22: 22px; --fs-28: 28px;
  --lh-tight: 1.25; --lh: 1.5;
  --fw-normal: 440; --fw-medium: 530; --fw-semibold: 620;

  /* --- Spacing: 4px base, consistent scale --- */
  --s-1: 4px; --s-2: 8px; --s-3: 12px; --s-4: 16px; --s-5: 20px;
  --s-6: 24px; --s-8: 32px; --s-10: 40px; --s-12: 48px; --s-16: 64px;

  /* --- Radius, shadow, motion --- */
  --r-sm: 6px; --r-md: 8px; --r-lg: 12px; --r-full: 999px;
  --shadow-sm: 0 1px 2px rgba(20,24,32,.04);
  --shadow-md: 0 1px 3px rgba(20,24,32,.06), 0 4px 12px rgba(20,24,32,.05);
  --shadow-lg: 0 8px 28px rgba(20,24,32,.10);
  --ease: cubic-bezier(.2,.6,.35,1);
  --dur: 140ms;

  --sidebar-w: 230px;
  --topbar-h: 52px;
}
@media (prefers-reduced-motion: reduce) { * { animation: none !important; transition: none !important; } }
