/* CruisingGays design tokens - generated from docs/design/design-system/tokens.json (web theme = design H, "Flirt+").
   Do not edit by hand: change tokens.json and regenerate. Themes switch by data-theme on <html>. */

:root {
  --font-display: "Instrument Serif", "Times New Roman", serif;
  --font-sans: "Figtree", system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-app: "Sora", system-ui, -apple-system, sans-serif;
  --type-display-xl-size: 92px;
  --type-display-xl-size-mobile: 56px;
  --type-display-xl-line: 0.98;
  --type-display-xl-weight: 400;
  --type-display-xl-tracking: -0.015em;
  --type-heading-l-size: 44px;
  --type-heading-l-size-mobile: 38px;
  --type-heading-l-line: 1.05;
  --type-heading-l-weight: 400;
  --type-heading-m-size: 32px;
  --type-heading-m-size-mobile: 28px;
  --type-heading-m-line: 1.05;
  --type-heading-m-weight: 400;
  --type-numeral-size: 34px;
  --type-numeral-size-mobile: 30px;
  --type-numeral-line: 1;
  --type-numeral-weight: 400;
  --type-wordmark-size: 30px;
  --type-wordmark-size-mobile: 26px;
  --type-wordmark-line: 1;
  --type-wordmark-weight: 400;
  --type-lead-size: 19px;
  --type-lead-size-mobile: 18px;
  --type-lead-line: 1.6;
  --type-lead-weight: 400;
  --type-title-size: 18px;
  --type-title-line: 1.3;
  --type-title-weight: 600;
  --type-body-size: 17px;
  --type-body-line: 1.6;
  --type-body-weight: 400;
  --type-button-size: 17px;
  --type-button-line: 1;
  --type-button-weight: 600;
  --type-body-s-size: 15px;
  --type-body-s-line: 1.5;
  --type-body-s-weight: 400;
  --type-label-size: 14px;
  --type-label-line: 1.4;
  --type-label-weight: 600;
  --type-caption-size: 13px;
  --type-caption-line: 1.4;
  --type-caption-weight: 400;
  --type-date-label-size: 12px;
  --type-date-label-line: 1;
  --type-date-label-weight: 600;
  --type-date-label-tracking: 0.06em;
  --type-app-title-size: 26px;
  --type-app-title-line: 1.05;
  --type-app-title-weight: 800;
  --type-app-body-size: 15px;
  --type-app-body-line: 1.45;
  --type-app-body-weight: 600;
  --type-app-label-size: 13px;
  --type-app-label-line: 1.2;
  --type-app-label-weight: 700;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 20px;
  --space-6: 24px;
  --space-7: 28px;
  --space-8: 32px;
  --space-10: 40px;
  --space-16: 64px;
  --radius-s: 14px;
  --radius-m: 20px;
  --radius-l: 24px;
  --radius-xl: 28px;
  --radius-xxl: 32px;
  --radius-pill: 999px;
  --radius-round: 50%;
  --radius-bubble: 4px 22px 22px 22px;
}

:root,
[data-theme="web"] {
  --ground: #fff5f3;
  --surface: #fffdfc;
  --surface-soft: #ffe6df;
  --surface-warm: #fff0e6;
  --surface-warm-strong: #ffe4d6;
  --surface-divider: #f5d9c8;
  --border: #f3d3cc;
  --border-strong: #3d0f24;
  --decor: #ffb59a;
  --ink: #3d0f24;
  --ink-muted: #6b3a4f;
  --ink-caption: #8a5a6c;
  --accent: #d0157a;
  --accent-hover: #b40f68;
  --on-accent: #ffffff;
  --link: #b0105f;
  --warn: #7a4300;
  --warn-tint: #fff1d6;
  --on-warn: #7a4300;
  --scrim: rgba(40,8,24,0.88);
  --map: #ffe6df;
  --pin-secondary: #ffb59a;
  --live: #2e9e6b;
  --live-dot: #3ddc84;
  --live-tint: #e6f4ec;
  --on-live: #1f6e48;
  --accent-tint: #ffe6df;
  --accent-tint-border: #f3d3cc;
  --panel: #3d0f24;
  --on-panel: #ffe6df;
  --on-panel-strong: #ffffff;
  --panel-cta: #d0157a;
  --on-panel-cta: #ffffff;
  --avatar-1: #ffe4d6;
  --avatar-2: #ffe4d6;
  --avatar-3: #ffe4d6;
  --avatar-4: #ffe4d6;
  --avatar-5: #ffe4d6;
  --avatar-6: #ffe4d6;
  --shadow-card: 0 4px 14px rgba(61,15,36,0.18);
  --shadow-map: 0 14px 34px -16px rgba(61,15,36,0.35);
  --shadow-primary: 0 10px 26px -12px rgba(208,21,122,0.55);
  --shadow-sheet: 0 -8px 24px -10px rgba(61,15,36,0.25);
  --map-tile-filter: sepia(.3) saturate(1.2) hue-rotate(-14deg) brightness(1.04) contrast(.96);
}

[data-theme="radar"] {
  --ground: #0b0d12;
  --surface: #141720;
  --surface-soft: #1c2030;
  --surface-warm: #1c2030;
  --surface-warm-strong: #262b3d;
  --surface-divider: #1c2030;
  --border: #262b3d;
  --border-strong: #343a52;
  --decor: #ff7a92;
  --ink: #f2f4f8;
  --ink-muted: #c5cbd8;
  --ink-caption: #9aa3b5;
  --accent: #ff5c7a;
  --accent-hover: #ff7a92;
  --on-accent: #1a0a10;
  --link: #ff7a92;
  --warn: #ffb24a;
  --warn-tint: #3a2a14;
  --on-warn: #ffd08a;
  --scrim: rgba(0,0,0,0.8);
  --map: #10212a;
  --pin-secondary: #9aa3b5;
  --live: #3ddc84;
  --live-dot: #3ddc84;
  --live-tint: #12301f;
  --on-live: #8fe6b0;
  --accent-tint: #2a1a24;
  --accent-tint-border: #4a2a3a;
  --panel: #1c2030;
  --on-panel: #c5cbd8;
  --on-panel-strong: #f2f4f8;
  --panel-cta: #ff5c7a;
  --on-panel-cta: #1a0a10;
  --avatar-1: #7a2e8e;
  --avatar-2: #2bb3c0;
  --avatar-3: #e0486b;
  --avatar-4: #5b4bff;
  --avatar-5: #e08a48;
  --avatar-6: #3a3450;
  --shadow-card: 0 8px 24px rgba(0,0,0,0.45);
  --shadow-map: 0 8px 24px rgba(0,0,0,0.45);
  --shadow-primary: none;
  --shadow-sheet: 0 -10px 30px rgba(0,0,0,0.5);
}

[data-theme="radar"] {
  --font-display: var(--font-app);
  --font-sans: var(--font-app);
}
