@font-face { font-family: "Sofia Sans"; src: url("fonts/SofiaSans-wght.ttf") format("truetype"); font-weight: 1 1000; font-style: normal; font-display: swap; }
@font-face { font-family: "Sofia Sans Extra Condensed"; src: url("fonts/SofiaSansExtraCondensed-wght.ttf") format("truetype"); font-weight: 1 1000; font-style: normal; font-display: swap; }
/* Bordure — generated from tokens.json */
:root {
  --paper: #f2f0eb;
  --panel: #faf9f6;
  --sheet: #ffffff;
  --sunken: #e8e5de;
  --hover: #f4f2ed;
  --rule: #dcd8cf;
  --rule-strong: #c4bfb4;
  --rule-control: #85827b;
  --ink: #15181b;
  --ink-2: #43474c;
  --ink-3: #5c6065;
  --ink-disabled: #a09fa0;
  --inverse: var(--ink);
  --on-inverse: var(--paper);
  --bar: var(--ink);
  --bar-raised: #262a2f;
  --on-bar: var(--paper);
  --on-bar-2: #aeb2b7;
  --brand: #e4572e;
  --brand-ink: #b13d17;
  --brand-tint: #fbe6dd;
  --on-brand: var(--ink);
  --radio: #1d5291;
  --radio-tint: #e4ecf6;
  --staff: #83560b;
  --staff-tint: #f6eedc;
  --stop: #a3261b;
  --stop-tint: #fbe5e0;
  --gain: #1f6b3d;
  --focus: #1f5fc8;
  --scrim: rgba(21, 24, 27, 0.4);
  --terrain: #dfdbd2;
  --terrain-line: #8b877e;
  --jersey-general: #f5c518;
  --jersey-points: #1e9e4f;
  --jersey-mountain: #ffffff;
  --jersey-mountain-dot: #d42a2a;
  --jersey-youth: #ffffff;
  --class-wt: #17635d;
  --class-wt-tint: #d8e8e5;
  --class-pro: #69397f;
  --class-pro-tint: #e7dded;
  --class-c1: #55584f;
  --class-c1-tint: #e2e1d9;
  --class-c2: #3d5a73;
  --class-c2-tint: #dce5ec;
  --space-hair: 2px;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --radius-xs: 2px;
  --radius-sm: 4px;
  --radius-md: 6px;
  --radius-pill: 999px;
  --control-sm: 28px;
  --control-md: 32px;
  --control-lg: 40px;
  --row: 36px;
  --bar-height: 52px;
  --racebar-height: 56px;
  --nav: 216px;
  --drawer: 440px;
  --mark: 8px;
  --capsule-w: 24px;
  --capsule-h: 6px;
  --window-min-w: 1280px;
  --window-min-h: 800px;
  --shadow-overlay: 0 12px 32px rgba(21, 24, 27, 0.16), 0 0 0 1px #dcd8cf;
  --font-display: "Sofia Sans Extra Condensed", "Arial Narrow", sans-serif;
  --font-sans: "Sofia Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
}
.t-display { font-family: var(--font-display); font-size: 44px; line-height: 44px; font-weight: 800; }
.t-title-lg { font-family: var(--font-display); font-size: 30px; line-height: 32px; font-weight: 800; }
.t-title-bar { font-family: var(--font-display); font-size: 22px; line-height: 24px; font-weight: 800; }
.t-data-lg { font-family: var(--font-display); font-size: 24px; line-height: 24px; font-weight: 700; }
.t-title { font-family: var(--font-sans); font-size: 16px; line-height: 20px; font-weight: 700; }
.t-body { font-family: var(--font-sans); font-size: 14px; line-height: 20px; font-weight: 400; }
.t-body-strong { font-family: var(--font-sans); font-size: 14px; line-height: 20px; font-weight: 600; }
.t-body-sm { font-family: var(--font-sans); font-size: 13px; line-height: 18px; font-weight: 400; }
.t-label { font-family: var(--font-sans); font-size: 12px; line-height: 16px; font-weight: 600; letter-spacing: 0.02em; }
.t-meta { font-family: var(--font-sans); font-size: 12px; line-height: 16px; font-weight: 400; }
.t-data { font-family: var(--font-sans); font-size: 13px; line-height: 18px; font-weight: 500; }
.t-key { font-family: var(--font-sans); font-size: 11px; line-height: 14px; font-weight: 700; }
