/* ============================================
   CampusConnect — Design Tokens
   "Desk-lamp on campus at night": deep indigo/navy
   base with a warm amber accent for actions & focus.
   ============================================ */

:root {
  /* ---- Brand Colors ---- */
  --color-primary: #312e81;        /* deep indigo */
  --color-primary-dark: #1e1b4b;
  --color-primary-light: #4338ca;
  --color-accent: #f59e0b;         /* warm amber */
  --color-accent-dark: #d97706;
  --color-accent-light: #fbbf24;

  /* ---- Status Colors ---- */
  --color-success: #16a34a;
  --color-success-bg: #dcfce7;
  --color-warning: #f59e0b;
  --color-warning-bg: #fef3c7;
  --color-danger: #dc2626;
  --color-danger-bg: #fee2e2;
  --color-info: #2563eb;
  --color-info-bg: #dbeafe;

  /* ---- Priority Colors ---- */
  --priority-low: #16a34a;
  --priority-low-bg: #dcfce7;
  --priority-medium: #f59e0b;
  --priority-medium-bg: #fef3c7;
  --priority-high: #dc2626;
  --priority-high-bg: #fee2e2;

  /* ---- Neutral / Surface (Light mode) ---- */
  --bg-body: #f4f5f9;
  --bg-surface: #ffffff;
  --bg-surface-alt: #f8f9fc;
  --bg-sidebar: #1e1b4b;
  --border-color: #e2e4ed;
  --border-color-strong: #cbd0e0;

  /* ---- Text (Light mode) ---- */
  --text-primary: #1a1b2e;
  --text-secondary: #5b5f78;
  --text-muted: #8b8fa3;
  --text-inverse: #f4f5f9;
  --text-on-primary: #ffffff;

  /* ---- Typography ---- */
  --font-display: "Poppins", "Inter", "Segoe UI", sans-serif;
  --font-body: "Inter", "Segoe UI", Roboto, sans-serif;
  --font-mono: "JetBrains Mono", "Courier New", monospace;

  --fs-xs: 0.75rem;
  --fs-sm: 0.875rem;
  --fs-base: 1rem;
  --fs-md: 1.125rem;
  --fs-lg: 1.375rem;
  --fs-xl: 1.75rem;
  --fs-2xl: 2.25rem;
  --fs-3xl: 3rem;
  --fs-4xl: 3.75rem;

  /* ---- Spacing Scale ---- */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.5rem;
  --space-6: 2rem;
  --space-7: 2.5rem;
  --space-8: 3rem;
  --space-10: 4rem;
  --space-12: 6rem;

  /* ---- Radius ---- */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-full: 999px;

  /* ---- Shadows ---- */
  --shadow-sm: 0 1px 2px rgba(30, 27, 75, 0.06);
  --shadow-md: 0 4px 12px rgba(30, 27, 75, 0.08);
  --shadow-lg: 0 12px 32px rgba(30, 27, 75, 0.12);
  --shadow-focus: 0 0 0 3px rgba(245, 158, 11, 0.35);

  /* ---- Transitions ---- */
  --transition-fast: 150ms ease;
  --transition-base: 250ms ease;
  --transition-slow: 400ms cubic-bezier(0.22, 1, 0.36, 1);

  /* ---- Layout ---- */
  --sidebar-width: 260px;
  --sidebar-width-collapsed: 76px;
  --topbar-height: 72px;
  --max-content-width: 1280px;
}

/* ============================================
   Dark Mode Overrides
   Applied when <html data-theme="dark">
   ============================================ */
[data-theme="dark"] {
  --bg-body: #12131f;
  --bg-surface: #1a1c2e;
  --bg-surface-alt: #20223a;
  --bg-sidebar: #0e0f1a;
  --border-color: #2b2d45;
  --border-color-strong: #3a3d5c;

  --text-primary: #f1f2f8;
  --text-secondary: #b3b6cc;
  --text-muted: #7d80a0;
  --text-inverse: #1a1b2e;

  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.3);
  --shadow-md: 0 4px 16px rgba(0, 0, 0, 0.35);
  --shadow-lg: 0 16px 40px rgba(0, 0, 0, 0.45);
}
