/* Varsity design tokens — generated from tokens.json. Themes: light, dark (default: light).
   Switch theme with <html data-theme="dark">. */
:root, [data-theme="light"] {
  --field: #f3ead6;
  --felt: #fffaee;
  --felt-sunk: #e7dcc4;
  --line: #857a66;
  --ink: #14213d;
  --ink-soft: #4e5870;
  --navy: #1c2b52;
  --cardinal: #a91f2e;
  --gold: #e9b53b;
  --green: #2c6a3e;
  --on-team: #fff8e6;
  --on-gold: #14213d;
  --signal: #a91f2e;
  --focus: #1f4fbf;
  --felt-ambient: 0 8px 16px -10px #14213d66;
  --felt-lift: 0 18px 30px -14px #14213d80;
  --felt-inset: inset 0 2px 0 #14213d1f;
  --felt-nap: inset 0 -3px 0 #0000001a;
  color-scheme: light;
}
[data-theme="dark"] {
  --field: #0d1630;
  --felt: #17234a;
  --felt-sunk: #08102a;
  --line: #7c87a8;
  --ink: #f6eedb;
  --ink-soft: #bcc2d4;
  --navy: #2e4486;
  --cardinal: #c42c3c;
  --gold: #f2c24f;
  --green: #2f7a47;
  --on-team: #fff8e6;
  --on-gold: #14213d;
  --signal: #ff9a9a;
  --focus: #f2c24f;
  --felt-ambient: 0 10px 18px -10px #000000b3;
  --felt-lift: 0 20px 34px -14px #000000cc;
  --felt-inset: inset 0 2px 0 #00000066;
  --felt-nap: inset 0 -3px 0 #00000033;
  color-scheme: dark;
}
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 16px;
  --radius-full: 9999px;
  --font-display: "Graduate", "Rockwell", "Roboto Slab", Georgia, serif;
  --font-body: "Barlow", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-label: "Barlow Condensed", "Barlow", ui-sans-serif, system-ui, sans-serif;
  --type-display-family: var(--font-display);
  --type-display-size: 52px;
  --type-display-line: 56px;
  --type-display-weight: 400;
  --type-display-tracking: 0.01em;
  --type-title-family: var(--font-display);
  --type-title-size: 28px;
  --type-title-line: 34px;
  --type-title-weight: 400;
  --type-title-tracking: 0.02em;
  --type-numeric-family: var(--font-display);
  --type-numeric-size: 48px;
  --type-numeric-line: 48px;
  --type-numeric-weight: 400;
  --type-body-family: var(--font-body);
  --type-body-size: 16px;
  --type-body-line: 24px;
  --type-body-weight: 400;
  --type-body-sm-family: var(--font-body);
  --type-body-sm-size: 14px;
  --type-body-sm-line: 20px;
  --type-body-sm-weight: 500;
  --type-label-family: var(--font-label);
  --type-label-size: 15px;
  --type-label-line: 18px;
  --type-label-weight: 700;
  --type-label-tracking: 0.06em;
}
/* Type styles as utility classes (optional) */
.type-display { font-family: var(--type-display-family); font-size: var(--type-display-size); line-height: var(--type-display-line); font-weight: var(--type-display-weight); letter-spacing: var(--type-display-tracking); }
.type-title { font-family: var(--type-title-family); font-size: var(--type-title-size); line-height: var(--type-title-line); font-weight: var(--type-title-weight); letter-spacing: var(--type-title-tracking); }
.type-numeric { font-family: var(--type-numeric-family); font-size: var(--type-numeric-size); line-height: var(--type-numeric-line); font-weight: var(--type-numeric-weight); }
.type-body { font-family: var(--type-body-family); font-size: var(--type-body-size); line-height: var(--type-body-line); font-weight: var(--type-body-weight); }
.type-body-sm { font-family: var(--type-body-sm-family); font-size: var(--type-body-sm-size); line-height: var(--type-body-sm-line); font-weight: var(--type-body-sm-weight); }
.type-label { font-family: var(--type-label-family); font-size: var(--type-label-size); line-height: var(--type-label-line); font-weight: var(--type-label-weight); letter-spacing: var(--type-label-tracking); }
