:root {
  --map-ink: #1c1e30;
  --map-ink-deep: #13141f;
  --map-green: #54e56b;
  --map-green-dark: #3fd458;
  --map-green-dim: rgba(84, 229, 107, 0.12);
  --map-success-strong: #168436;
  --map-success-stronger: #1a6830;
  --map-success-soft: rgba(84, 229, 107, 0.16);
  --map-red: #ff334a;
  --map-red-dim: rgba(255, 51, 74, 0.1);
  --map-danger-soft-08: rgba(255, 51, 74, 0.08);
  --map-danger-soft-10: rgba(255, 51, 74, 0.1);
  --map-yellow: #ffdb4a;
  --map-yellow-dim: rgba(255, 219, 74, 0.12);
  --map-purple: #4554d6;
  --map-purple-dim: rgba(69, 84, 214, 0.1);
  --map-sky: #3bbfff;
  --map-sky-dim: rgba(59, 191, 255, 0.1);
  --map-primary-bg: var(--map-ink);
  --map-primary-bg-hover: #252840;
  --map-primary-color: #fff;
  --map-on-accent: #1c1e30;
  --map-control-bg: var(--map-surface-2);
  --map-control-bg-hover: var(--map-surface);
  --map-control-border: var(--map-border);
  --map-muted-bg: var(--map-surface-3);
  --map-elevated-surface: var(--map-surface);
  --map-warning-strong: #8a5f00;
  --map-warning-soft: rgba(255, 219, 74, 0.12);
  --map-info-strong: #3040a0;
  --map-info-soft: rgba(69, 84, 214, 0.1);
  --map-bg: #ededf7;
  --map-surface: #ffffff;
  --map-surface-2: #f7f7fc;
  --map-surface-3: #f0f0f8;
  --map-border: #e0e0ee;
  --map-border-2: #d0d0e2;
  --map-border-3: #c0c0d8;
  --map-text-1: #1c1e30;
  --map-text-2: #4a4c6a;
  --map-text-3: #7070a0;
  --map-text-4: #a0a0c0;
  --map-sidebar-bg: #13141f;
  --map-sidebar-border: rgba(255, 255, 255, 0.06);
  --map-sidebar-text: rgba(255, 255, 255, 0.55);
  --map-sidebar-muted: rgba(255, 255, 255, 0.2);
  --map-font-sans: "DM Sans", "Segoe UI", Arial, sans-serif;
  --map-font-mono: "DM Mono", "SFMono-Regular", Consolas, monospace;
  --map-font-size-2xs: 0.7143rem;
  --map-font-size-xs: 0.7857rem;
  --map-font-size-sm: 0.8571rem;
  --map-font-size-md: 0.9286rem;
  --map-space-1: 0.2857rem;
  --map-space-2: 0.5714rem;
  --map-space-3: 0.8571rem;
  --map-space-4: 1.1429rem;
  --map-space-5: 1.4286rem;
  --map-space-6: 1.7143rem;
  --map-space-7: 2rem;
  --map-radius-sm: 0.4286rem;
  --map-radius-md: 0.7143rem;
  --map-radius-lg: 1rem;
  --map-radius-xl: 1.2857rem;
  --map-radius-2xl: 1.7143rem;
  --map-radius-pill: 999px;
  --map-shadow-xs: 0 1px 2px rgba(28, 30, 48, 0.05);
  --map-shadow-sm: 0 1px 3px rgba(28, 30, 48, 0.07), 0 1px 2px rgba(28, 30, 48, 0.04);
  --map-shadow-md: 0 4px 14px rgba(28, 30, 48, 0.09), 0 2px 4px rgba(28, 30, 48, 0.05);
  --map-shadow-lg: 0 8px 28px rgba(28, 30, 48, 0.13), 0 2px 6px rgba(28, 30, 48, 0.06);
  --map-shadow-xl: 0 16px 48px rgba(28, 30, 48, 0.16), 0 4px 12px rgba(28, 30, 48, 0.08);
  --map-action-icon-size: 1.05rem;
  --map-focus-ring: 0 0 0 0.25rem rgba(28, 30, 48, 0.08);
  --map-danger-focus-ring: 0 0 0 0.25rem var(--map-danger-soft-10);
  --map-success-focus-ring: 0 0 0 0.25rem rgba(84, 229, 107, 0.12);
  --map-danger-focus-ring-sm: 0 0 0 0.15rem var(--map-danger-soft-08);
  --map-transition-fast: 120ms ease;
  --map-transition-base: 180ms ease;
  --map-transition-slow: 300ms ease;
  --map-z-base: 1;
  --map-z-sticky: 1020;
  --map-z-dropdown: 1050;
  --map-z-offcanvas: 1055;
  --map-z-modal: 1060;
  --map-z-toast: 1080;
  --map-shell-width: 17rem;
  --map-shell-width-collapsed: 5.5rem;
  --map-offcanvas-width: 24rem;
  --map-container-max: 1200px;
}

[data-map-theme="dark"] {
  color-scheme: dark;
  --map-ink: #f4f6ff;
  --map-ink-deep: #080a12;
  --map-green: #54e56b;
  --map-green-dark: #6ff084;
  --map-green-dim: rgba(84, 229, 107, 0.16);
  --map-success-strong: #6ff084;
  --map-success-stronger: #9af5a8;
  --map-success-soft: rgba(84, 229, 107, 0.18);
  --map-red: #ff5c6d;
  --map-red-dim: rgba(255, 92, 109, 0.16);
  --map-danger-soft-08: rgba(255, 92, 109, 0.12);
  --map-danger-soft-10: rgba(255, 92, 109, 0.16);
  --map-yellow: #ffd166;
  --map-yellow-dim: rgba(255, 209, 102, 0.16);
  --map-purple: #7c86ff;
  --map-purple-dim: rgba(124, 134, 255, 0.16);
  --map-sky: #60d7ff;
  --map-sky-dim: rgba(96, 215, 255, 0.16);
  --map-primary-bg: #54e56b;
  --map-primary-bg-hover: #6ff084;
  --map-primary-color: #080a12;
  --map-on-accent: #080a12;
  --map-control-bg: #171b2b;
  --map-control-bg-hover: #202538;
  --map-control-border: rgba(255, 255, 255, 0.14);
  --map-muted-bg: #202538;
  --map-elevated-surface: #171b2b;
  --map-warning-strong: #ffd166;
  --map-warning-soft: rgba(255, 209, 102, 0.16);
  --map-info-strong: #a8afff;
  --map-info-soft: rgba(124, 134, 255, 0.18);
  --map-bg: #080a12;
  --map-surface: #111421;
  --map-surface-2: #171b2b;
  --map-surface-3: #202538;
  --map-border: rgba(255, 255, 255, 0.1);
  --map-border-2: rgba(255, 255, 255, 0.16);
  --map-border-3: rgba(255, 255, 255, 0.24);
  --map-text-1: #f4f6ff;
  --map-text-2: #c8cce0;
  --map-text-3: #9aa0bf;
  --map-text-4: #707799;
  --map-sidebar-bg: #080a12;
  --map-sidebar-border: rgba(255, 255, 255, 0.08);
  --map-sidebar-text: rgba(244, 246, 255, 0.68);
  --map-sidebar-muted: rgba(244, 246, 255, 0.28);
  --map-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.22);
  --map-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.28), 0 1px 2px rgba(0, 0, 0, 0.2);
  --map-shadow-md: 0 4px 16px rgba(0, 0, 0, 0.32), 0 2px 4px rgba(0, 0, 0, 0.22);
  --map-shadow-lg: 0 8px 30px rgba(0, 0, 0, 0.38), 0 2px 6px rgba(0, 0, 0, 0.24);
  --map-shadow-xl: 0 18px 54px rgba(0, 0, 0, 0.48), 0 6px 16px rgba(0, 0, 0, 0.32);
  --map-focus-ring: 0 0 0 0.25rem rgba(84, 229, 107, 0.2);
  --map-danger-focus-ring: 0 0 0 0.25rem var(--map-danger-soft-10);
  --map-success-focus-ring: 0 0 0 0.25rem rgba(84, 229, 107, 0.18);
  --map-danger-focus-ring-sm: 0 0 0 0.15rem var(--map-danger-soft-08);
}
