:root {
  /* ---- Base ---- */
  --black: #0a0a0a;          /* page */
  --black-raised: #121212;   /* cards, alternating sections */
  --black-deep: #0d0d0d;     /* chips floating over raised surfaces */
  --line: #242424;           /* the only hairline in the system */
  --line-hover: #3a3a3a;
  --white: #ffffff;
  --grey-200: #c9c9c9;       /* footer links */
  --grey-400: #9a9a9a;       /* body / muted copy */
  --grey-500: #6a6a6a;       /* form notes */
  --grey-600: #4f4f4f;       /* placeholder text */
  --grey-700: #4a4a4a;       /* slot / empty-state labels */

  /* ---- Lime: the brand ---- */
  --lime: #ccff00;
  --lime-hover: #dfff4d;
  --lime-wash: rgba(204, 255, 0, 0.05);   /* tinted panel fill */
  --lime-glow: rgba(204, 255, 0, 0.13);   /* radial bloom behind hero */
  --lime-border: rgba(204, 255, 0, 0.4);
  --lime-border-soft: rgba(204, 255, 0, 0.18);
  --lime-dim: rgba(204, 255, 0, 0.35);

  /* ---- Campus accents ---- */
  /* Per-school colours, applied through --c on a card. Never used as UI state colours. */
  --school-queens: #b90e31;
  --school-mcgill: #ed1b2f;
  --school-western: #7b3fbf;
  --school-michigan: #ffcb05;
  --school-wake: #c9a227;
  --school-tulane: #1b9e5f;
  --school-syracuse: #f76900;

  /* ---- Semantic aliases ---- */
  --surface-page: var(--black);
  --surface-raised: var(--black-raised);
  --surface-chip: var(--black-deep);
  --surface-accent: var(--lime);
  --surface-accent-wash: var(--lime-wash);

  --text-strong: var(--white);
  --text-body: var(--grey-400);
  --text-muted: var(--grey-500);
  --text-faint: var(--grey-700);
  --text-accent: var(--lime);
  --text-on-accent: var(--black);
  --text-link: var(--white);
  --text-link-hover: var(--lime);

  --border-hairline: var(--line);
  --border-hover: var(--line-hover);
  --border-accent: var(--lime);
  --focus-ring: var(--lime);

  --header-scrim: rgba(10, 10, 10, 0.82); /* @kind other */
  --tile-gradient: linear-gradient(155deg, #161616, #0d0d0d); /* @kind other */
}
