/* ==========================================================================
   SanOPS Design-Tokens 1.0.0 (2026-10-26)
   Generiert von design/build-tokens.mjs aus design/tokens.json.
   Nicht von Hand bearbeiten: tokens.json ändern und neu erzeugen.

   1. Themenunabhängige Werte (:root)
   2. Hell (:root und [data-theme="light"], Standard)
   3. Dunkel ([data-theme="dark"] und prefers-color-scheme ohne Festlegung)
   4. Dichte ([data-density="compact|touch|wall"])
   5. Reduzierte Bewegung
   6. Typografie-Rollen (.so-type-*)
   7. Tailwind 4 (@theme, @custom-variant; Browser ignorieren diese Regeln)

   Thema: <html data-theme="light|dark"> erzwingt ein Thema, ohne Attribut gilt die
   Systemeinstellung. data-theme wirkt auch auf Teilbäumen (z. B. dunkle Website-Bänder).
   Die SPA setzt das aufgelöste Thema immer als Attribut, damit die Tailwind-Variante
   dark: und die Variablen übereinstimmen. data-density="wall" gehört an <html>, weil
   es die Grundschriftgröße (rem) anhebt.
   ========================================================================== */

/* 1. Themenunabhängige Werte */
:root {
  /* Marke (themenunabhängig) */
  --so-brand-red: #E60005;
  --so-brand-ink: #181716;
  --so-brand-white: #FFFFFF;
  /* Rampen (nur für Ableitungen; in Komponenten semantische Farben verwenden) */
  --so-palette-red-50: #FFF4F2;
  --so-palette-red-100: #FFE6E2;
  --so-palette-red-200: #FFCFC8;
  --so-palette-red-300: #FFB0A4;
  --so-palette-red-400: #FF8272;
  --so-palette-red-500: #FF4739;
  --so-palette-red-600: #E60005;
  --so-palette-red-700: #C10003;
  --so-palette-red-800: #9E0002;
  --so-palette-red-900: #7D0001;
  --so-palette-red-950: #540000;
  --so-palette-neutral-0: #FFFFFF;
  --so-palette-neutral-25: #FBFBFA;
  --so-palette-neutral-50: #F7F7F6;
  --so-palette-neutral-100: #EDECEB;
  --so-palette-neutral-200: #DEDCDA;
  --so-palette-neutral-300: #C9C7C4;
  --so-palette-neutral-400: #AFACA8;
  --so-palette-neutral-500: #97938F;
  --so-palette-neutral-600: #7F7B77;
  --so-palette-neutral-700: #696562;
  --so-palette-neutral-800: #55524F;
  --so-palette-neutral-900: #413F3D;
  --so-palette-neutral-925: #32302E;
  --so-palette-neutral-950: #2A2927;
  --so-palette-neutral-960: #201E1D;
  --so-palette-neutral-975: #181716;
  --so-palette-neutral-990: #121110;
  --so-palette-green-50: #EEFBF0;
  --so-palette-green-100: #DAF5DE;
  --so-palette-green-200: #B9EBC2;
  --so-palette-green-300: #8DDD9E;
  --so-palette-green-400: #59C777;
  --so-palette-green-500: #27AF57;
  --so-palette-green-600: #009543;
  --so-palette-green-700: #007B36;
  --so-palette-green-800: #00642B;
  --so-palette-green-900: #004E20;
  --so-palette-green-950: #003312;
  --so-palette-yellow-50: #FCF7E6;
  --so-palette-yellow-100: #F8EDC9;
  --so-palette-yellow-200: #F1DB9B;
  --so-palette-yellow-300: #E6C457;
  --so-palette-yellow-400: #FACC00;
  --so-palette-yellow-500: #B29000;
  --so-palette-yellow-600: #957800;
  --so-palette-yellow-700: #7C6300;
  --so-palette-yellow-800: #645000;
  --so-palette-yellow-900: #4E3E00;
  --so-palette-yellow-950: #332800;
  --so-palette-amber-50: #FFF5EA;
  --so-palette-amber-100: #FFE9D0;
  --so-palette-amber-200: #FED4A5;
  --so-palette-amber-300: #F9B96D;
  --so-palette-amber-400: #E99921;
  --so-palette-amber-500: #CB8100;
  --so-palette-amber-600: #AB6C00;
  --so-palette-amber-700: #8E5900;
  --so-palette-amber-800: #734700;
  --so-palette-amber-900: #5A3700;
  --so-palette-amber-950: #3C2200;
  --so-palette-orange-50: #FFF4EF;
  --so-palette-orange-100: #FFE7DC;
  --so-palette-orange-200: #FFD1BA;
  --so-palette-orange-300: #FFB38C;
  --so-palette-orange-400: #FF8741;
  --so-palette-orange-500: #E86800;
  --so-palette-orange-600: #C45700;
  --so-palette-orange-700: #A34700;
  --so-palette-orange-800: #853900;
  --so-palette-orange-900: #682B00;
  --so-palette-orange-950: #461A00;
  --so-palette-blue-50: #F2F7FF;
  --so-palette-blue-100: #E3EDFF;
  --so-palette-blue-200: #CADDFF;
  --so-palette-blue-300: #AAC8FF;
  --so-palette-blue-400: #7EABFF;
  --so-palette-blue-500: #548FFF;
  --so-palette-blue-600: #3373F0;
  --so-palette-blue-700: #245DCD;
  --so-palette-blue-800: #1B4BA9;
  --so-palette-blue-900: #153A83;
  --so-palette-blue-950: #0A2559;
  --so-palette-magenta-50: #FFF3FA;
  --so-palette-magenta-100: #FFE4F5;
  --so-palette-magenta-200: #FFCAEC;
  --so-palette-magenta-300: #FFA6E2;
  --so-palette-magenta-400: #FA72D3;
  --so-palette-magenta-500: #E54DBD;
  --so-palette-magenta-600: #C92FA4;
  --so-palette-magenta-700: #AA1D89;
  --so-palette-magenta-800: #8B1570;
  --so-palette-magenta-900: #6C1257;
  --so-palette-magenta-950: #490739;
  --so-palette-tint-red-dark: #481813;
  --so-palette-tint-red-dark-border: #79352D;
  --so-palette-tint-green-dark: #16311D;
  --so-palette-tint-green-dark-border: #32573A;
  --so-palette-tint-yellow-dark: #322A08;
  --so-palette-tint-yellow-dark-border: #584D20;
  --so-palette-tint-amber-dark: #3A250B;
  --so-palette-tint-amber-dark-border: #644623;
  --so-palette-tint-orange-dark: #42200D;
  --so-palette-tint-orange-dark-border: #6F3F25;
  --so-palette-tint-blue-dark: #16294C;
  --so-palette-tint-blue-dark-border: #314C7E;
  --so-palette-tint-magenta-dark: #3F1C34;
  --so-palette-tint-magenta-dark-border: #6B395B;
  /* Schrift */
  --so-font-sans: "Inter Variable", "Inter", "Inter Fallback", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --so-font-mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
  --so-font-feature-ui: "cv05", "cv08";
  --so-font-feature-numeric: "tnum", "cv05", "cv08";
  --so-font-feature-code: "tnum", "zero", "cv05", "cv08";
  --so-font-weight-regular: 400;
  --so-font-weight-medium: 500;
  --so-font-weight-semibold: 600;
  --so-font-weight-bold: 700;
  --so-tracking-tighter: -0.02em;
  --so-tracking-tight: -0.01em;
  --so-tracking-normal: 0em;
  --so-tracking-wide: 0.02em;
  --so-tracking-caps: 0.06em;
  --so-text-xs: 0.75rem;
  --so-text-xs-line-height: 1rem;
  --so-text-sm: 0.875rem;
  --so-text-sm-line-height: 1.25rem;
  --so-text-base: 1rem;
  --so-text-base-line-height: 1.5rem;
  --so-text-lg: 1.125rem;
  --so-text-lg-line-height: 1.75rem;
  --so-text-xl: 1.25rem;
  --so-text-xl-line-height: 1.75rem;
  --so-text-2xl: 1.5rem;
  --so-text-2xl-line-height: 2rem;
  --so-text-3xl: 1.875rem;
  --so-text-3xl-line-height: 2.25rem;
  --so-text-4xl: 2.25rem;
  --so-text-4xl-line-height: 2.75rem;
  --so-text-5xl: 3rem;
  --so-text-5xl-line-height: 3.5rem;
  --so-text-6xl: 3.75rem;
  --so-text-6xl-line-height: 4.25rem;
  --so-text-7xl: 4.5rem;
  --so-text-7xl-line-height: 5rem;
  /* Abstände (4-px-Raster) */
  --so-space-0: 0px;
  --so-space-1: 4px;
  --so-space-2: 8px;
  --so-space-3: 12px;
  --so-space-4: 16px;
  --so-space-5: 20px;
  --so-space-6: 24px;
  --so-space-8: 32px;
  --so-space-10: 40px;
  --so-space-12: 48px;
  --so-space-16: 64px;
  --so-space-20: 80px;
  --so-space-24: 96px;
  --so-space-32: 128px;
  --so-space-px: 1px;
  --so-space-0_5: 2px;
  --so-space-1_5: 6px;
  --so-space-2_5: 10px;
  /* Radien */
  --so-radius-none: 0px;
  --so-radius-xs: 4px;
  --so-radius-sm: 6px;
  --so-radius-md: 8px;
  --so-radius-lg: 12px;
  --so-radius-xl: 16px;
  --so-radius-2xl: 24px;
  --so-radius-full: 9999px;
  /* Bewegung */
  --so-duration-instant: 0ms;
  --so-duration-fast: 120ms;
  --so-duration-base: 200ms;
  --so-duration-slow: 320ms;
  --so-duration-toast: 5000ms;
  --so-duration-alarm-pulse: 1200ms;
  --so-ease-standard: cubic-bezier(0.2, 0, 0, 1);
  --so-ease-enter: cubic-bezier(0, 0, 0.2, 1);
  --so-ease-exit: cubic-bezier(0.4, 0, 1, 1);
  --so-ease-linear: linear;
  /* Ebenen */
  --so-z-base: 0;
  --so-z-raised: 10;
  --so-z-sticky: 100;
  --so-z-header: 200;
  --so-z-nav: 300;
  --so-z-dropdown: 400;
  --so-z-overlay: 500;
  --so-z-dialog: 600;
  --so-z-toast: 700;
  --so-z-tooltip: 800;
  --so-z-alarm: 900;
  /* Größen */
  --so-size-touch-min: 44px;
  --so-size-touch: 48px;
  --so-size-touch-glove: 56px;
  --so-size-touch-critical: 64px;
  --so-size-control-sm: 32px;
  --so-size-control-md: 40px;
  --so-size-control-lg: 48px;
  --so-size-control-xl: 56px;
  --so-size-icon-sm: 16px;
  --so-size-icon-md: 20px;
  --so-size-icon-lg: 24px;
  --so-size-icon-xl: 32px;
  --so-size-avatar-xs: 24px;
  --so-size-avatar-sm: 32px;
  --so-size-avatar-md: 40px;
  --so-size-avatar-lg: 56px;
  --so-size-avatar-xl: 80px;
  --so-size-header-height: 56px;
  --so-size-header-height-lg: 64px;
  --so-size-tabbar-height: 64px;
  --so-size-sidebar-width: 264px;
  --so-size-sidebar-collapsed-width: 72px;
  --so-size-content-max: 1280px;
  --so-size-content-max-text: 720px;
  --so-size-dialog-sm: 400px;
  --so-size-dialog-md: 560px;
  --so-size-dialog-lg: 800px;
  --so-size-toast-width: 400px;
  --so-size-status-dot: 10px;
  --so-size-fms-tile: 48px;
  --so-size-fms-tile-lg: 72px;
  --so-size-triage-badge: 32px;
  --so-size-map-marker: 36px;
  --so-size-map-marker-lg: 48px;
  --so-size-map-marker-halo: 2px;
  --so-size-map-cluster: 40px;
  /* Breakpoints (nur informativ; Media Queries verwenden die Werte aus @theme) */
  --so-breakpoint-sm: 640px;
  --so-breakpoint-md: 768px;
  --so-breakpoint-lg: 1024px;
  --so-breakpoint-xl: 1280px;
  --so-breakpoint-2xl: 1536px;
  --so-breakpoint-3xl: 1920px;
  --so-breakpoint-4xl: 2560px;
  /* Sonstiges */
  --so-opacity-disabled: 0.48;
  --so-opacity-pending: 0.64;
  --so-opacity-skeleton: 0.6;
  --so-focus-width: 2px;
  --so-focus-offset: 2px;
  /* Dichte: Standard (überschreibbar mit [data-density]) */
  --so-density-control: 40px;
  --so-density-row: 48px;
  --so-density-touch: 44px;
  --so-density-gap: 12px;
}

/* 2. Hell */
:root, [data-theme="light"] {
  color-scheme: light;
  /* Flächen, Text, Rahmen, Aktionen, Chat, Karte */
  --so-color-canvas: #F7F7F6;
  --so-color-surface: #FFFFFF;
  --so-color-surface-raised: #FFFFFF;
  --so-color-subtle: #F7F7F6;
  --so-color-muted: #EDECEB;
  --so-color-hover: #EDECEB;
  --so-color-active: #DEDCDA;
  --so-color-selected: #F2F7FF;
  --so-color-selected-border: #3373F0;
  --so-color-inverse: #181716;
  --so-color-overlay: rgba(18, 17, 16, 0.56);
  --so-color-text: #181716;
  --so-color-text-muted: #55524F;
  --so-color-text-subtle: #696562;
  --so-color-text-disabled: #97938F;
  --so-color-text-inverse: #F7F7F6;
  --so-color-link: #181716;
  --so-color-link-decoration: #E60005;
  --so-color-border: #DEDCDA;
  --so-color-border-strong: #C9C7C4;
  --so-color-border-input: #7F7B77;
  --so-color-border-input-hover: #55524F;
  --so-color-primary: #181716;
  --so-color-primary-hover: #32302E;
  --so-color-primary-active: #413F3D;
  --so-color-on-primary: #FFFFFF;
  --so-color-brand: #E60005;
  --so-color-brand-hover: #C10003;
  --so-color-brand-subtle: #FFF4F2;
  --so-color-on-brand: #FFFFFF;
  --so-color-alarm: #E60005;
  --so-color-on-alarm: #FFFFFF;
  --so-color-focus-ring: #3373F0;
  --so-color-chat-own: #181716;
  --so-color-on-chat-own: #FFFFFF;
  --so-color-chat-other: #FFFFFF;
  --so-color-chat-system: #EDECEB;
  --so-color-map-halo: #FFFFFF;
  --so-color-map-route: #245DCD;
  --so-color-map-area: rgba(230, 0, 5, 0.12);
  --so-color-map-area-border: #E60005;
  /* Logo */
  --so-logo-mark: #E60005;
  --so-logo-text: #181716;
  --so-logo-knockout: #FFFFFF;
  /* Rückmeldung */
  --so-feedback-success-solid: #007B36;
  --so-feedback-success-on-solid: #FFFFFF;
  --so-feedback-success-subtle: #EEFBF0;
  --so-feedback-success-text: #00642B;
  --so-feedback-success-border: #B9EBC2;
  --so-feedback-success-outline: #007B36;
  --so-feedback-info-solid: #245DCD;
  --so-feedback-info-on-solid: #FFFFFF;
  --so-feedback-info-subtle: #F2F7FF;
  --so-feedback-info-text: #1B4BA9;
  --so-feedback-info-border: #CADDFF;
  --so-feedback-info-outline: #245DCD;
  --so-feedback-warning-solid: #E99921;
  --so-feedback-warning-on-solid: #181716;
  --so-feedback-warning-subtle: #FFF5EA;
  --so-feedback-warning-text: #734700;
  --so-feedback-warning-border: #FED4A5;
  --so-feedback-warning-outline: #AB6C00;
  --so-feedback-danger-solid: #C10003;
  --so-feedback-danger-on-solid: #FFFFFF;
  --so-feedback-danger-subtle: #FFF4F2;
  --so-feedback-danger-text: #C10003;
  --so-feedback-danger-border: #FFCFC8;
  --so-feedback-danger-outline: #C10003;
  --so-feedback-neutral-solid: #696562;
  --so-feedback-neutral-on-solid: #FFFFFF;
  --so-feedback-neutral-subtle: #EDECEB;
  --so-feedback-neutral-text: #55524F;
  --so-feedback-neutral-border: #DEDCDA;
  --so-feedback-neutral-outline: #7F7B77;
  /* Sichtungskategorien */
  --so-triage-sk1-solid: #E60005;
  --so-triage-sk1-on-solid: #FFFFFF;
  --so-triage-sk1-subtle: #FFF4F2;
  --so-triage-sk1-text: #C10003;
  --so-triage-sk1-border: #FFCFC8;
  --so-triage-sk1-outline: #E60005;
  --so-triage-sk2-solid: #FACC00;
  --so-triage-sk2-on-solid: #181716;
  --so-triage-sk2-subtle: #FCF7E6;
  --so-triage-sk2-text: #645000;
  --so-triage-sk2-border: #E6C457;
  --so-triage-sk2-outline: #7C6300;
  --so-triage-sk3-solid: #007B36;
  --so-triage-sk3-on-solid: #FFFFFF;
  --so-triage-sk3-subtle: #EEFBF0;
  --so-triage-sk3-text: #00642B;
  --so-triage-sk3-border: #B9EBC2;
  --so-triage-sk3-outline: #007B36;
  --so-triage-sk4-solid: #245DCD;
  --so-triage-sk4-on-solid: #FFFFFF;
  --so-triage-sk4-subtle: #F2F7FF;
  --so-triage-sk4-text: #1B4BA9;
  --so-triage-sk4-border: #CADDFF;
  --so-triage-sk4-outline: #245DCD;
  --so-triage-deceased-solid: #181716;
  --so-triage-deceased-on-solid: #FFFFFF;
  --so-triage-deceased-subtle: #EDECEB;
  --so-triage-deceased-text: #181716;
  --so-triage-deceased-border: #C9C7C4;
  --so-triage-deceased-outline: #181716;
  --so-triage-unassessed-solid: #DEDCDA;
  --so-triage-unassessed-on-solid: #181716;
  --so-triage-unassessed-subtle: #F7F7F6;
  --so-triage-unassessed-text: #55524F;
  --so-triage-unassessed-border: #C9C7C4;
  --so-triage-unassessed-outline: #7F7B77;
  /* FMS-Status */
  --so-fms-1-solid: #007B36;
  --so-fms-1-on-solid: #FFFFFF;
  --so-fms-1-subtle: #EEFBF0;
  --so-fms-1-text: #00642B;
  --so-fms-1-border: #B9EBC2;
  --so-fms-1-outline: #007B36;
  --so-fms-2-solid: #00642B;
  --so-fms-2-on-solid: #FFFFFF;
  --so-fms-2-subtle: #EEFBF0;
  --so-fms-2-text: #00642B;
  --so-fms-2-border: #B9EBC2;
  --so-fms-2-outline: #00642B;
  --so-fms-3-solid: #245DCD;
  --so-fms-3-on-solid: #FFFFFF;
  --so-fms-3-subtle: #F2F7FF;
  --so-fms-3-text: #1B4BA9;
  --so-fms-3-border: #CADDFF;
  --so-fms-3-outline: #245DCD;
  --so-fms-4-solid: #1B4BA9;
  --so-fms-4-on-solid: #FFFFFF;
  --so-fms-4-subtle: #F2F7FF;
  --so-fms-4-text: #1B4BA9;
  --so-fms-4-border: #CADDFF;
  --so-fms-4-outline: #1B4BA9;
  --so-fms-5-solid: #FACC00;
  --so-fms-5-on-solid: #181716;
  --so-fms-5-subtle: #FCF7E6;
  --so-fms-5-text: #645000;
  --so-fms-5-border: #E6C457;
  --so-fms-5-outline: #7C6300;
  --so-fms-6-solid: #696562;
  --so-fms-6-on-solid: #FFFFFF;
  --so-fms-6-subtle: #EDECEB;
  --so-fms-6-text: #55524F;
  --so-fms-6-border: #DEDCDA;
  --so-fms-6-outline: #696562;
  --so-fms-7-solid: #153A83;
  --so-fms-7-on-solid: #FFFFFF;
  --so-fms-7-subtle: #F2F7FF;
  --so-fms-7-text: #153A83;
  --so-fms-7-border: #CADDFF;
  --so-fms-7-outline: #153A83;
  --so-fms-8-solid: #0A2559;
  --so-fms-8-on-solid: #FFFFFF;
  --so-fms-8-subtle: #F2F7FF;
  --so-fms-8-text: #0A2559;
  --so-fms-8-border: #CADDFF;
  --so-fms-8-outline: #0A2559;
  --so-fms-9-solid: #C92FA4;
  --so-fms-9-on-solid: #FFFFFF;
  --so-fms-9-subtle: #FFF3FA;
  --so-fms-9-text: #8B1570;
  --so-fms-9-border: #FFCAEC;
  --so-fms-9-outline: #C92FA4;
  --so-fms-0-solid: #FF8741;
  --so-fms-0-on-solid: #181716;
  --so-fms-0-subtle: #FFF4EF;
  --so-fms-0-text: #853900;
  --so-fms-0-border: #FFD1BA;
  --so-fms-0-outline: #C45700;
  /* Einsatzstatus */
  --so-operation-planned-solid: #245DCD;
  --so-operation-planned-on-solid: #FFFFFF;
  --so-operation-planned-subtle: #F2F7FF;
  --so-operation-planned-text: #1B4BA9;
  --so-operation-planned-border: #CADDFF;
  --so-operation-planned-outline: #245DCD;
  --so-operation-alerted-solid: #FF8741;
  --so-operation-alerted-on-solid: #181716;
  --so-operation-alerted-subtle: #FFF4EF;
  --so-operation-alerted-text: #853900;
  --so-operation-alerted-border: #FFD1BA;
  --so-operation-alerted-outline: #C45700;
  --so-operation-active-solid: #007B36;
  --so-operation-active-on-solid: #FFFFFF;
  --so-operation-active-subtle: #EEFBF0;
  --so-operation-active-text: #00642B;
  --so-operation-active-border: #B9EBC2;
  --so-operation-active-outline: #007B36;
  --so-operation-paused-solid: #E99921;
  --so-operation-paused-on-solid: #181716;
  --so-operation-paused-subtle: #FFF5EA;
  --so-operation-paused-text: #734700;
  --so-operation-paused-border: #FED4A5;
  --so-operation-paused-outline: #AB6C00;
  --so-operation-follow-up-solid: #C92FA4;
  --so-operation-follow-up-on-solid: #FFFFFF;
  --so-operation-follow-up-subtle: #FFF3FA;
  --so-operation-follow-up-text: #8B1570;
  --so-operation-follow-up-border: #FFCAEC;
  --so-operation-follow-up-outline: #C92FA4;
  --so-operation-closed-solid: #696562;
  --so-operation-closed-on-solid: #FFFFFF;
  --so-operation-closed-subtle: #EDECEB;
  --so-operation-closed-text: #55524F;
  --so-operation-closed-border: #DEDCDA;
  --so-operation-closed-outline: #7F7B77;
  /* Schatten */
  --so-shadow-sm: 0 1px 2px 0 rgba(24, 23, 22, 0.06), 0 1px 1px 0 rgba(24, 23, 22, 0.04);
  --so-shadow-md: 0 4px 12px -2px rgba(24, 23, 22, 0.10), 0 2px 4px -2px rgba(24, 23, 22, 0.06);
  --so-shadow-lg: 0 12px 28px -6px rgba(24, 23, 22, 0.16), 0 4px 8px -4px rgba(24, 23, 22, 0.08);
  --so-shadow-xl: 0 24px 56px -12px rgba(24, 23, 22, 0.24), 0 8px 16px -8px rgba(24, 23, 22, 0.10);
}

/* 3. Dunkel */
[data-theme="dark"] {
  color-scheme: dark;
  /* Flächen, Text, Rahmen, Aktionen, Chat, Karte */
  --so-color-canvas: #121110;
  --so-color-surface: #181716;
  --so-color-surface-raised: #201E1D;
  --so-color-subtle: #201E1D;
  --so-color-muted: #2A2927;
  --so-color-hover: #2A2927;
  --so-color-active: #32302E;
  --so-color-selected: #16294C;
  --so-color-selected-border: #7EABFF;
  --so-color-inverse: #F7F7F6;
  --so-color-overlay: rgba(0, 0, 0, 0.64);
  --so-color-text: #F7F7F6;
  --so-color-text-muted: #C9C7C4;
  --so-color-text-subtle: #9B9894;
  --so-color-text-disabled: #696562;
  --so-color-text-inverse: #181716;
  --so-color-link: #F7F7F6;
  --so-color-link-decoration: #FF4739;
  --so-color-border: #32302E;
  --so-color-border-strong: #413F3D;
  --so-color-border-input: #7F7B77;
  --so-color-border-input-hover: #AFACA8;
  --so-color-primary: #F7F7F6;
  --so-color-primary-hover: #DEDCDA;
  --so-color-primary-active: #C9C7C4;
  --so-color-on-primary: #181716;
  --so-color-brand: #E60005;
  --so-color-brand-hover: #C10003;
  --so-color-brand-subtle: #481813;
  --so-color-on-brand: #FFFFFF;
  --so-color-alarm: #E60005;
  --so-color-on-alarm: #FFFFFF;
  --so-color-focus-ring: #7EABFF;
  --so-color-chat-own: #F7F7F6;
  --so-color-on-chat-own: #181716;
  --so-color-chat-other: #201E1D;
  --so-color-chat-system: #2A2927;
  --so-color-map-halo: #FFFFFF;
  --so-color-map-route: #7EABFF;
  --so-color-map-area: rgba(255, 71, 57, 0.18);
  --so-color-map-area-border: #FF4739;
  /* Logo */
  --so-logo-mark: #E60005;
  --so-logo-text: #F7F7F6;
  --so-logo-knockout: #FFFFFF;
  /* Rückmeldung */
  --so-feedback-success-solid: #007B36;
  --so-feedback-success-on-solid: #FFFFFF;
  --so-feedback-success-subtle: #16311D;
  --so-feedback-success-text: #8DDD9E;
  --so-feedback-success-border: #32573A;
  --so-feedback-success-outline: #27AF57;
  --so-feedback-info-solid: #245DCD;
  --so-feedback-info-on-solid: #FFFFFF;
  --so-feedback-info-subtle: #16294C;
  --so-feedback-info-text: #AAC8FF;
  --so-feedback-info-border: #314C7E;
  --so-feedback-info-outline: #548FFF;
  --so-feedback-warning-solid: #E99921;
  --so-feedback-warning-on-solid: #181716;
  --so-feedback-warning-subtle: #3A250B;
  --so-feedback-warning-text: #F9B96D;
  --so-feedback-warning-border: #644623;
  --so-feedback-warning-outline: #E99921;
  --so-feedback-danger-solid: #E60005;
  --so-feedback-danger-on-solid: #FFFFFF;
  --so-feedback-danger-subtle: #481813;
  --so-feedback-danger-text: #FFB0A4;
  --so-feedback-danger-border: #79352D;
  --so-feedback-danger-outline: #FF4739;
  --so-feedback-neutral-solid: #696562;
  --so-feedback-neutral-on-solid: #FFFFFF;
  --so-feedback-neutral-subtle: #2A2927;
  --so-feedback-neutral-text: #C9C7C4;
  --so-feedback-neutral-border: #413F3D;
  --so-feedback-neutral-outline: #97938F;
  /* Sichtungskategorien */
  --so-triage-sk1-solid: #E60005;
  --so-triage-sk1-on-solid: #FFFFFF;
  --so-triage-sk1-subtle: #481813;
  --so-triage-sk1-text: #FFB0A4;
  --so-triage-sk1-border: #79352D;
  --so-triage-sk1-outline: #E60005;
  --so-triage-sk2-solid: #FACC00;
  --so-triage-sk2-on-solid: #181716;
  --so-triage-sk2-subtle: #322A08;
  --so-triage-sk2-text: #F1DB9B;
  --so-triage-sk2-border: #584D20;
  --so-triage-sk2-outline: #FACC00;
  --so-triage-sk3-solid: #007B36;
  --so-triage-sk3-on-solid: #FFFFFF;
  --so-triage-sk3-subtle: #16311D;
  --so-triage-sk3-text: #8DDD9E;
  --so-triage-sk3-border: #32573A;
  --so-triage-sk3-outline: #27AF57;
  --so-triage-sk4-solid: #245DCD;
  --so-triage-sk4-on-solid: #FFFFFF;
  --so-triage-sk4-subtle: #16294C;
  --so-triage-sk4-text: #AAC8FF;
  --so-triage-sk4-border: #314C7E;
  --so-triage-sk4-outline: #548FFF;
  --so-triage-deceased-solid: #000000;
  --so-triage-deceased-on-solid: #FFFFFF;
  --so-triage-deceased-subtle: #2A2927;
  --so-triage-deceased-text: #F7F7F6;
  --so-triage-deceased-border: #55524F;
  --so-triage-deceased-outline: #C9C7C4;
  --so-triage-unassessed-solid: #413F3D;
  --so-triage-unassessed-on-solid: #F7F7F6;
  --so-triage-unassessed-subtle: #201E1D;
  --so-triage-unassessed-text: #C9C7C4;
  --so-triage-unassessed-border: #413F3D;
  --so-triage-unassessed-outline: #97938F;
  /* FMS-Status */
  --so-fms-1-solid: #007B36;
  --so-fms-1-on-solid: #FFFFFF;
  --so-fms-1-subtle: #16311D;
  --so-fms-1-text: #8DDD9E;
  --so-fms-1-border: #32573A;
  --so-fms-1-outline: #27AF57;
  --so-fms-2-solid: #00642B;
  --so-fms-2-on-solid: #FFFFFF;
  --so-fms-2-subtle: #16311D;
  --so-fms-2-text: #8DDD9E;
  --so-fms-2-border: #32573A;
  --so-fms-2-outline: #59C777;
  --so-fms-3-solid: #245DCD;
  --so-fms-3-on-solid: #FFFFFF;
  --so-fms-3-subtle: #16294C;
  --so-fms-3-text: #AAC8FF;
  --so-fms-3-border: #314C7E;
  --so-fms-3-outline: #548FFF;
  --so-fms-4-solid: #1B4BA9;
  --so-fms-4-on-solid: #FFFFFF;
  --so-fms-4-subtle: #16294C;
  --so-fms-4-text: #AAC8FF;
  --so-fms-4-border: #314C7E;
  --so-fms-4-outline: #548FFF;
  --so-fms-5-solid: #FACC00;
  --so-fms-5-on-solid: #181716;
  --so-fms-5-subtle: #322A08;
  --so-fms-5-text: #F1DB9B;
  --so-fms-5-border: #584D20;
  --so-fms-5-outline: #FACC00;
  --so-fms-6-solid: #696562;
  --so-fms-6-on-solid: #FFFFFF;
  --so-fms-6-subtle: #2A2927;
  --so-fms-6-text: #C9C7C4;
  --so-fms-6-border: #413F3D;
  --so-fms-6-outline: #97938F;
  --so-fms-7-solid: #153A83;
  --so-fms-7-on-solid: #FFFFFF;
  --so-fms-7-subtle: #16294C;
  --so-fms-7-text: #AAC8FF;
  --so-fms-7-border: #314C7E;
  --so-fms-7-outline: #7EABFF;
  --so-fms-8-solid: #0A2559;
  --so-fms-8-on-solid: #FFFFFF;
  --so-fms-8-subtle: #16294C;
  --so-fms-8-text: #AAC8FF;
  --so-fms-8-border: #314C7E;
  --so-fms-8-outline: #AAC8FF;
  --so-fms-9-solid: #C92FA4;
  --so-fms-9-on-solid: #FFFFFF;
  --so-fms-9-subtle: #3F1C34;
  --so-fms-9-text: #FFA6E2;
  --so-fms-9-border: #6B395B;
  --so-fms-9-outline: #E54DBD;
  --so-fms-0-solid: #FF8741;
  --so-fms-0-on-solid: #181716;
  --so-fms-0-subtle: #42200D;
  --so-fms-0-text: #FFB38C;
  --so-fms-0-border: #6F3F25;
  --so-fms-0-outline: #FF8741;
  /* Einsatzstatus */
  --so-operation-planned-solid: #245DCD;
  --so-operation-planned-on-solid: #FFFFFF;
  --so-operation-planned-subtle: #16294C;
  --so-operation-planned-text: #AAC8FF;
  --so-operation-planned-border: #314C7E;
  --so-operation-planned-outline: #548FFF;
  --so-operation-alerted-solid: #FF8741;
  --so-operation-alerted-on-solid: #181716;
  --so-operation-alerted-subtle: #42200D;
  --so-operation-alerted-text: #FFB38C;
  --so-operation-alerted-border: #6F3F25;
  --so-operation-alerted-outline: #FF8741;
  --so-operation-active-solid: #007B36;
  --so-operation-active-on-solid: #FFFFFF;
  --so-operation-active-subtle: #16311D;
  --so-operation-active-text: #8DDD9E;
  --so-operation-active-border: #32573A;
  --so-operation-active-outline: #27AF57;
  --so-operation-paused-solid: #E99921;
  --so-operation-paused-on-solid: #181716;
  --so-operation-paused-subtle: #3A250B;
  --so-operation-paused-text: #F9B96D;
  --so-operation-paused-border: #644623;
  --so-operation-paused-outline: #E99921;
  --so-operation-follow-up-solid: #C92FA4;
  --so-operation-follow-up-on-solid: #FFFFFF;
  --so-operation-follow-up-subtle: #3F1C34;
  --so-operation-follow-up-text: #FFA6E2;
  --so-operation-follow-up-border: #6B395B;
  --so-operation-follow-up-outline: #E54DBD;
  --so-operation-closed-solid: #696562;
  --so-operation-closed-on-solid: #FFFFFF;
  --so-operation-closed-subtle: #2A2927;
  --so-operation-closed-text: #C9C7C4;
  --so-operation-closed-border: #413F3D;
  --so-operation-closed-outline: #97938F;
  /* Schatten */
  --so-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.50);
  --so-shadow-md: 0 4px 12px -2px rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(255, 255, 255, 0.04);
  --so-shadow-lg: 0 12px 28px -6px rgba(0, 0, 0, 0.65), 0 0 0 1px rgba(255, 255, 255, 0.05);
  --so-shadow-xl: 0 24px 56px -12px rgba(0, 0, 0, 0.75), 0 0 0 1px rgba(255, 255, 255, 0.06);
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    /* Flächen, Text, Rahmen, Aktionen, Chat, Karte */
    --so-color-canvas: #121110;
    --so-color-surface: #181716;
    --so-color-surface-raised: #201E1D;
    --so-color-subtle: #201E1D;
    --so-color-muted: #2A2927;
    --so-color-hover: #2A2927;
    --so-color-active: #32302E;
    --so-color-selected: #16294C;
    --so-color-selected-border: #7EABFF;
    --so-color-inverse: #F7F7F6;
    --so-color-overlay: rgba(0, 0, 0, 0.64);
    --so-color-text: #F7F7F6;
    --so-color-text-muted: #C9C7C4;
    --so-color-text-subtle: #9B9894;
    --so-color-text-disabled: #696562;
    --so-color-text-inverse: #181716;
    --so-color-link: #F7F7F6;
    --so-color-link-decoration: #FF4739;
    --so-color-border: #32302E;
    --so-color-border-strong: #413F3D;
    --so-color-border-input: #7F7B77;
    --so-color-border-input-hover: #AFACA8;
    --so-color-primary: #F7F7F6;
    --so-color-primary-hover: #DEDCDA;
    --so-color-primary-active: #C9C7C4;
    --so-color-on-primary: #181716;
    --so-color-brand: #E60005;
    --so-color-brand-hover: #C10003;
    --so-color-brand-subtle: #481813;
    --so-color-on-brand: #FFFFFF;
    --so-color-alarm: #E60005;
    --so-color-on-alarm: #FFFFFF;
    --so-color-focus-ring: #7EABFF;
    --so-color-chat-own: #F7F7F6;
    --so-color-on-chat-own: #181716;
    --so-color-chat-other: #201E1D;
    --so-color-chat-system: #2A2927;
    --so-color-map-halo: #FFFFFF;
    --so-color-map-route: #7EABFF;
    --so-color-map-area: rgba(255, 71, 57, 0.18);
    --so-color-map-area-border: #FF4739;
    /* Logo */
    --so-logo-mark: #E60005;
    --so-logo-text: #F7F7F6;
    --so-logo-knockout: #FFFFFF;
    /* Rückmeldung */
    --so-feedback-success-solid: #007B36;
    --so-feedback-success-on-solid: #FFFFFF;
    --so-feedback-success-subtle: #16311D;
    --so-feedback-success-text: #8DDD9E;
    --so-feedback-success-border: #32573A;
    --so-feedback-success-outline: #27AF57;
    --so-feedback-info-solid: #245DCD;
    --so-feedback-info-on-solid: #FFFFFF;
    --so-feedback-info-subtle: #16294C;
    --so-feedback-info-text: #AAC8FF;
    --so-feedback-info-border: #314C7E;
    --so-feedback-info-outline: #548FFF;
    --so-feedback-warning-solid: #E99921;
    --so-feedback-warning-on-solid: #181716;
    --so-feedback-warning-subtle: #3A250B;
    --so-feedback-warning-text: #F9B96D;
    --so-feedback-warning-border: #644623;
    --so-feedback-warning-outline: #E99921;
    --so-feedback-danger-solid: #E60005;
    --so-feedback-danger-on-solid: #FFFFFF;
    --so-feedback-danger-subtle: #481813;
    --so-feedback-danger-text: #FFB0A4;
    --so-feedback-danger-border: #79352D;
    --so-feedback-danger-outline: #FF4739;
    --so-feedback-neutral-solid: #696562;
    --so-feedback-neutral-on-solid: #FFFFFF;
    --so-feedback-neutral-subtle: #2A2927;
    --so-feedback-neutral-text: #C9C7C4;
    --so-feedback-neutral-border: #413F3D;
    --so-feedback-neutral-outline: #97938F;
    /* Sichtungskategorien */
    --so-triage-sk1-solid: #E60005;
    --so-triage-sk1-on-solid: #FFFFFF;
    --so-triage-sk1-subtle: #481813;
    --so-triage-sk1-text: #FFB0A4;
    --so-triage-sk1-border: #79352D;
    --so-triage-sk1-outline: #E60005;
    --so-triage-sk2-solid: #FACC00;
    --so-triage-sk2-on-solid: #181716;
    --so-triage-sk2-subtle: #322A08;
    --so-triage-sk2-text: #F1DB9B;
    --so-triage-sk2-border: #584D20;
    --so-triage-sk2-outline: #FACC00;
    --so-triage-sk3-solid: #007B36;
    --so-triage-sk3-on-solid: #FFFFFF;
    --so-triage-sk3-subtle: #16311D;
    --so-triage-sk3-text: #8DDD9E;
    --so-triage-sk3-border: #32573A;
    --so-triage-sk3-outline: #27AF57;
    --so-triage-sk4-solid: #245DCD;
    --so-triage-sk4-on-solid: #FFFFFF;
    --so-triage-sk4-subtle: #16294C;
    --so-triage-sk4-text: #AAC8FF;
    --so-triage-sk4-border: #314C7E;
    --so-triage-sk4-outline: #548FFF;
    --so-triage-deceased-solid: #000000;
    --so-triage-deceased-on-solid: #FFFFFF;
    --so-triage-deceased-subtle: #2A2927;
    --so-triage-deceased-text: #F7F7F6;
    --so-triage-deceased-border: #55524F;
    --so-triage-deceased-outline: #C9C7C4;
    --so-triage-unassessed-solid: #413F3D;
    --so-triage-unassessed-on-solid: #F7F7F6;
    --so-triage-unassessed-subtle: #201E1D;
    --so-triage-unassessed-text: #C9C7C4;
    --so-triage-unassessed-border: #413F3D;
    --so-triage-unassessed-outline: #97938F;
    /* FMS-Status */
    --so-fms-1-solid: #007B36;
    --so-fms-1-on-solid: #FFFFFF;
    --so-fms-1-subtle: #16311D;
    --so-fms-1-text: #8DDD9E;
    --so-fms-1-border: #32573A;
    --so-fms-1-outline: #27AF57;
    --so-fms-2-solid: #00642B;
    --so-fms-2-on-solid: #FFFFFF;
    --so-fms-2-subtle: #16311D;
    --so-fms-2-text: #8DDD9E;
    --so-fms-2-border: #32573A;
    --so-fms-2-outline: #59C777;
    --so-fms-3-solid: #245DCD;
    --so-fms-3-on-solid: #FFFFFF;
    --so-fms-3-subtle: #16294C;
    --so-fms-3-text: #AAC8FF;
    --so-fms-3-border: #314C7E;
    --so-fms-3-outline: #548FFF;
    --so-fms-4-solid: #1B4BA9;
    --so-fms-4-on-solid: #FFFFFF;
    --so-fms-4-subtle: #16294C;
    --so-fms-4-text: #AAC8FF;
    --so-fms-4-border: #314C7E;
    --so-fms-4-outline: #548FFF;
    --so-fms-5-solid: #FACC00;
    --so-fms-5-on-solid: #181716;
    --so-fms-5-subtle: #322A08;
    --so-fms-5-text: #F1DB9B;
    --so-fms-5-border: #584D20;
    --so-fms-5-outline: #FACC00;
    --so-fms-6-solid: #696562;
    --so-fms-6-on-solid: #FFFFFF;
    --so-fms-6-subtle: #2A2927;
    --so-fms-6-text: #C9C7C4;
    --so-fms-6-border: #413F3D;
    --so-fms-6-outline: #97938F;
    --so-fms-7-solid: #153A83;
    --so-fms-7-on-solid: #FFFFFF;
    --so-fms-7-subtle: #16294C;
    --so-fms-7-text: #AAC8FF;
    --so-fms-7-border: #314C7E;
    --so-fms-7-outline: #7EABFF;
    --so-fms-8-solid: #0A2559;
    --so-fms-8-on-solid: #FFFFFF;
    --so-fms-8-subtle: #16294C;
    --so-fms-8-text: #AAC8FF;
    --so-fms-8-border: #314C7E;
    --so-fms-8-outline: #AAC8FF;
    --so-fms-9-solid: #C92FA4;
    --so-fms-9-on-solid: #FFFFFF;
    --so-fms-9-subtle: #3F1C34;
    --so-fms-9-text: #FFA6E2;
    --so-fms-9-border: #6B395B;
    --so-fms-9-outline: #E54DBD;
    --so-fms-0-solid: #FF8741;
    --so-fms-0-on-solid: #181716;
    --so-fms-0-subtle: #42200D;
    --so-fms-0-text: #FFB38C;
    --so-fms-0-border: #6F3F25;
    --so-fms-0-outline: #FF8741;
    /* Einsatzstatus */
    --so-operation-planned-solid: #245DCD;
    --so-operation-planned-on-solid: #FFFFFF;
    --so-operation-planned-subtle: #16294C;
    --so-operation-planned-text: #AAC8FF;
    --so-operation-planned-border: #314C7E;
    --so-operation-planned-outline: #548FFF;
    --so-operation-alerted-solid: #FF8741;
    --so-operation-alerted-on-solid: #181716;
    --so-operation-alerted-subtle: #42200D;
    --so-operation-alerted-text: #FFB38C;
    --so-operation-alerted-border: #6F3F25;
    --so-operation-alerted-outline: #FF8741;
    --so-operation-active-solid: #007B36;
    --so-operation-active-on-solid: #FFFFFF;
    --so-operation-active-subtle: #16311D;
    --so-operation-active-text: #8DDD9E;
    --so-operation-active-border: #32573A;
    --so-operation-active-outline: #27AF57;
    --so-operation-paused-solid: #E99921;
    --so-operation-paused-on-solid: #181716;
    --so-operation-paused-subtle: #3A250B;
    --so-operation-paused-text: #F9B96D;
    --so-operation-paused-border: #644623;
    --so-operation-paused-outline: #E99921;
    --so-operation-follow-up-solid: #C92FA4;
    --so-operation-follow-up-on-solid: #FFFFFF;
    --so-operation-follow-up-subtle: #3F1C34;
    --so-operation-follow-up-text: #FFA6E2;
    --so-operation-follow-up-border: #6B395B;
    --so-operation-follow-up-outline: #E54DBD;
    --so-operation-closed-solid: #696562;
    --so-operation-closed-on-solid: #FFFFFF;
    --so-operation-closed-subtle: #2A2927;
    --so-operation-closed-text: #C9C7C4;
    --so-operation-closed-border: #413F3D;
    --so-operation-closed-outline: #97938F;
    /* Schatten */
    --so-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.50);
    --so-shadow-md: 0 4px 12px -2px rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(255, 255, 255, 0.04);
    --so-shadow-lg: 0 12px 28px -6px rgba(0, 0, 0, 0.65), 0 0 0 1px rgba(255, 255, 255, 0.05);
    --so-shadow-xl: 0 24px 56px -12px rgba(0, 0, 0, 0.75), 0 0 0 1px rgba(255, 255, 255, 0.06);
  }
}

/* 4. Dichte */
[data-density="compact"] {
  --so-density-control: 32px;
  --so-density-row: 36px;
  --so-density-touch: 32px;
  --so-density-gap: 8px;
}

[data-density="touch"] {
  --so-density-control: 56px;
  --so-density-row: 64px;
  --so-density-touch: 56px;
  --so-density-gap: 16px;
}

[data-density="wall"] {
  --so-density-control: 56px;
  --so-density-row: 64px;
  --so-density-touch: 56px;
  --so-density-gap: 16px;
  font-size: 125%;
}

/* 5. Reduzierte Bewegung */
@media (prefers-reduced-motion: reduce) {
  :root {
    --so-duration-fast: 0ms;
    --so-duration-base: 0ms;
    --so-duration-slow: 0ms;
    --so-duration-alarm-pulse: 0ms;
  }
}
:root[data-motion="reduced"] {
  --so-duration-fast: 0ms;
  --so-duration-base: 0ms;
  --so-duration-slow: 0ms;
  --so-duration-alarm-pulse: 0ms;
}

/* 6. Typografie-Rollen */
.so-type-display { font-size: var(--so-text-5xl); line-height: var(--so-text-5xl-line-height); font-weight: var(--so-font-weight-semibold); letter-spacing: var(--so-tracking-tighter); }
.so-type-heading-1 { font-size: var(--so-text-3xl); line-height: var(--so-text-3xl-line-height); font-weight: var(--so-font-weight-semibold); letter-spacing: var(--so-tracking-tight); }
.so-type-heading-2 { font-size: var(--so-text-2xl); line-height: var(--so-text-2xl-line-height); font-weight: var(--so-font-weight-semibold); letter-spacing: var(--so-tracking-tight); }
.so-type-heading-3 { font-size: var(--so-text-xl); line-height: var(--so-text-xl-line-height); font-weight: var(--so-font-weight-semibold); letter-spacing: var(--so-tracking-normal); }
.so-type-heading-4 { font-size: var(--so-text-lg); line-height: var(--so-text-lg-line-height); font-weight: var(--so-font-weight-semibold); letter-spacing: var(--so-tracking-normal); }
.so-type-body-lg { font-size: var(--so-text-lg); line-height: var(--so-text-lg-line-height); font-weight: var(--so-font-weight-regular); letter-spacing: var(--so-tracking-normal); }
.so-type-body { font-size: var(--so-text-base); line-height: var(--so-text-base-line-height); font-weight: var(--so-font-weight-regular); letter-spacing: var(--so-tracking-normal); }
.so-type-body-sm { font-size: var(--so-text-sm); line-height: var(--so-text-sm-line-height); font-weight: var(--so-font-weight-regular); letter-spacing: var(--so-tracking-normal); }
.so-type-label { font-size: var(--so-text-sm); line-height: var(--so-text-sm-line-height); font-weight: var(--so-font-weight-medium); letter-spacing: var(--so-tracking-normal); }
.so-type-button { font-size: var(--so-text-sm); line-height: var(--so-text-sm-line-height); font-weight: var(--so-font-weight-semibold); letter-spacing: var(--so-tracking-normal); }
.so-type-caption { font-size: var(--so-text-xs); line-height: var(--so-text-xs-line-height); font-weight: var(--so-font-weight-medium); letter-spacing: var(--so-tracking-normal); }
.so-type-overline { font-size: var(--so-text-xs); line-height: var(--so-text-xs-line-height); font-weight: var(--so-font-weight-semibold); letter-spacing: var(--so-tracking-caps); text-transform: uppercase; }
.so-type-status-digit { font-size: var(--so-text-2xl); line-height: var(--so-text-2xl-line-height); font-weight: var(--so-font-weight-bold); letter-spacing: var(--so-tracking-normal); font-feature-settings: var(--so-font-feature-numeric); }
.so-type-kpi { font-size: var(--so-text-5xl); line-height: var(--so-text-5xl-line-height); font-weight: var(--so-font-weight-bold); letter-spacing: var(--so-tracking-tighter); font-feature-settings: var(--so-font-feature-numeric); }
.so-type-code { font-size: var(--so-text-sm); line-height: var(--so-text-sm-line-height); font-weight: var(--so-font-weight-medium); letter-spacing: var(--so-tracking-wide); font-feature-settings: var(--so-font-feature-code); }
.so-numeric { font-feature-settings: var(--so-font-feature-numeric); }
.so-code { font-feature-settings: var(--so-font-feature-code); letter-spacing: var(--so-tracking-wide); }
