/* Generated by build_tokens.py from tokens.json. Do not edit by hand. */

:root {
  --color-bg: 255 255 255;
  --color-surface: 243 245 247;
  --color-surface-raised: 255 255 255;
  --color-border: 223 227 232;
  --color-border-input: 125 135 148;
  --color-text: 16 22 29;
  --color-text-muted: 86 97 109;
  --color-accent: 15 122 85;
  --color-accent-strong: 10 92 64;
  --color-accent-subtle: 229 243 236;
  --color-on-accent: 255 255 255;
  --color-focus: 15 122 85;
  --color-danger: 198 47 47;
  --color-danger-subtle: 253 236 236;
  --color-success: 46 107 31;
  --color-success-subtle: 236 244 228;
  --color-warning: 138 83 0;
  --color-warning-subtle: 253 243 225;
  --color-pro: 242 183 5;
  --color-on-pro: 29 21 0;
  --color-map-chip: 21 28 36;
  --color-on-map-chip: 255 255 255;
  --color-marker-water: 15 122 85;
  --color-marker-catch: 176 46 122;
  --color-marker-waypoint: 122 63 208;
  --color-marker-paid: 163 77 0;
  --color-marker-closed: 91 101 112;
  --color-marker-cluster: 16 22 29;
  --color-on-marker: 255 255 255;
  --color-viz-seq-low: 143 211 176;
  --color-viz-seq-mid: 43 156 103;
  --color-viz-seq-high: 10 92 64;
  --color-viz-grid: 225 224 217;
  --color-viz-axis: 111 109 103;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --color-bg: 13 18 23;
    --color-surface: 20 26 33;
    --color-surface-raised: 27 34 43;
    --color-border: 42 51 62;
    --color-border-input: 111 123 136;
    --color-text: 233 238 243;
    --color-text-muted: 163 173 184;
    --color-accent: 79 211 155;
    --color-accent-strong: 142 232 191;
    --color-accent-subtle: 15 43 32;
    --color-on-accent: 3 20 13;
    --color-focus: 79 211 155;
    --color-danger: 255 122 112;
    --color-danger-subtle: 58 23 22;
    --color-success: 155 211 107;
    --color-success-subtle: 26 42 16;
    --color-warning: 242 181 75;
    --color-warning-subtle: 51 36 11;
    --color-pro: 242 183 5;
    --color-on-pro: 29 21 0;
    --color-map-chip: 21 28 36;
    --color-on-map-chip: 255 255 255;
    --color-marker-water: 79 211 155;
    --color-marker-catch: 255 122 184;
    --color-marker-waypoint: 178 140 255;
    --color-marker-paid: 255 160 77;
    --color-marker-closed: 163 173 184;
    --color-marker-cluster: 233 238 243;
    --color-on-marker: 13 18 23;
    --color-viz-seq-low: 10 92 64;
    --color-viz-seq-mid: 43 156 103;
    --color-viz-seq-high: 159 227 192;
    --color-viz-grid: 44 44 42;
    --color-viz-axis: 140 138 132;
  }
}

:root[data-theme="dark"] {
  --color-bg: 13 18 23;
  --color-surface: 20 26 33;
  --color-surface-raised: 27 34 43;
  --color-border: 42 51 62;
  --color-border-input: 111 123 136;
  --color-text: 233 238 243;
  --color-text-muted: 163 173 184;
  --color-accent: 79 211 155;
  --color-accent-strong: 142 232 191;
  --color-accent-subtle: 15 43 32;
  --color-on-accent: 3 20 13;
  --color-focus: 79 211 155;
  --color-danger: 255 122 112;
  --color-danger-subtle: 58 23 22;
  --color-success: 155 211 107;
  --color-success-subtle: 26 42 16;
  --color-warning: 242 181 75;
  --color-warning-subtle: 51 36 11;
  --color-pro: 242 183 5;
  --color-on-pro: 29 21 0;
  --color-map-chip: 21 28 36;
  --color-on-map-chip: 255 255 255;
  --color-marker-water: 79 211 155;
  --color-marker-catch: 255 122 184;
  --color-marker-waypoint: 178 140 255;
  --color-marker-paid: 255 160 77;
  --color-marker-closed: 163 173 184;
  --color-marker-cluster: 233 238 243;
  --color-on-marker: 13 18 23;
  --color-viz-seq-low: 10 92 64;
  --color-viz-seq-mid: 43 156 103;
  --color-viz-seq-high: 159 227 192;
  --color-viz-grid: 44 44 42;
  --color-viz-axis: 140 138 132;
}

:root {
  color-scheme: light dark;
  --font-sans: Inter, system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, monospace;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-pill: 999px;
  --shadow-card: 0 1px 2px rgba(16,22,29,.06), 0 1px 3px rgba(16,22,29,.10);
  --shadow-pop: 0 12px 32px rgba(16,22,29,.18);
  --shadow-map-control: 0 2px 8px rgba(0,0,0,.28);
  --motion-fast: 120ms;
  --motion-base: 200ms;
  --motion-slow: 320ms;
  --motion-ease: cubic-bezier(.2,.8,.2,1);
  --opacity-scrim: 0.48;
  --opacity-map-chip: 0.88;
  --opacity-disabled: 0.4;
  --opacity-pressed: 0.08;
}

body { background: rgb(var(--color-bg)); color: rgb(var(--color-text)); font-family: var(--font-sans); }
