:root {
    --radius-sm: 6px;    
    --radius-md: 10px;   
    --radius-lg: 16px;   
    --radius-full: 999px; 
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-5: 1.5rem;
    --space-6: 2rem;
    --space-7: 2.5rem;
    --space-8: 3rem;
    --space-9: 3.5rem;
    --font-sans: "Inter", "Segoe UI", system-ui, -apple-system, Roboto, Helvetica, Arial, sans-serif;
    --font-mono: "Cascadia Code", "SFMono-Regular", Consolas, "Liberation Mono", monospace;
    --font-size-2xs: 0.72rem;
    --font-size-xs: 0.78rem;
    --font-size-sm: 0.85rem;
    --font-size-base: 0.95rem;
    --font-size-lg: 1.15rem;
    --font-size-xl: 1.5rem;
    --font-size-2xl: 2.25rem;
    --line-height-tight: 1.25;
    --line-height-base: 1.6;
    --font-weight-normal: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --icon-size-nav: 20px;
    --icon-size-sm: 18px;
    --target-min: 44px;
    --target-small: 36px;
    --target-nav: 44px;
    --target-textarea: 88px;
    --target-gross: 72px;
    --target-gross-grob: 80px;
    --font-size-live-wert: clamp(2.5rem, 12vw, 4.5rem);
    --font-size-live-name: clamp(1.35rem, 5vw, 2.25rem);
    --font-size-live-einheit: clamp(1.25rem, 5vw, 2rem);
    --sidebar-width: 248px;
    --duration-control: 0.12s;
    --duration-fade: 0.15s;
    --duration-highlight: 0.4s;
    --theme-transition: 180ms;
    --glass-blur: 22px;
}
:root,
:root[data-theme="dark"] {
    color-scheme: dark;
    --bg-primary: #101012;
    --bg-secondary: #16161a;
    --bg-elevated: #1b1b1f;
    --bg-elevated-hover: #212127;
    --bg-input: #131315;
    --sidebar-surface: #16161a;
    --table-head-surface: #16161a;
    --row-hover-surface: #212127;
    --bg-backdrop: rgba(0, 0, 0, 0.6);
    --bg-backdrop-strong: rgba(8, 8, 10, 0.68);
    --glass-surface:
        linear-gradient(
            158deg,
            rgba(255, 255, 255, 0.075) 0%,
            rgba(255, 255, 255, 0.022) 44%,
            rgba(255, 255, 255, 0.05) 100%
        );
    --glass-surface-strong: rgba(255, 255, 255, 0.09);
    --glass-surface-soft: rgba(255, 255, 255, 0.05);
    --glass-surface-hover: rgba(255, 255, 255, 0.07);
    --glass-surface-subtle: rgba(255, 255, 255, 0.03);
    --glass-border: rgba(255, 255, 255, 0.09);
    --glass-border-strong: rgba(255, 255, 255, 0.16);
    --glass-divider: rgba(255, 255, 255, 0.07);
    --glass-highlight: inset 0 1px 0 rgba(255, 255, 255, 0.12);
    --glass-highlight-strong: inset 0 1px 0 rgba(255, 255, 255, 0.18);
    --glass-shadow: 0 16px 48px rgba(0, 0, 0, 0.5);
    --glass-shadow-strong: 0 24px 64px rgba(0, 0, 0, 0.6);
    --glass-fallback: #1b1b1f;
    --text-primary: #f4f3ef;
    --text-secondary: #b6b5ae;
    --text-muted: #93928c;
    --text-disabled: #6b6a66;
    --text-on-accent: #ffffff;
    --text-on-accent-secondary: rgba(236, 253, 245, 0.9);
    --text-on-danger: #ffffff;
    --border-color: #2a2a2f;
    --border-color-strong: #3a3a41;
    --divider-color: #2a2a2f;
    --input-border: #7a7a84;
    --input-border-hover: #93928c;
    --focus-ring: #00d492;
    --focus-ring-width: 2px;
    --focus-ring-offset: 2px;
    --accent: #00d492;
    --accent-hover: #5ee9b5;
    --accent-active: #a4f4cf;
    --accent-muted: rgba(0, 212, 146, 0.16);
    --accent-surface: #047857;
    --accent-surface-hover: #006045;
    --accent-surface-active: #004f3b;
    --accent-gradient: linear-gradient(to bottom right, #006045, #002c22);
    --logo-von: #00d492;
    --logo-bis: #047857;
    --accent-ring: rgba(16, 185, 129, 0.18);
    --accent-ring-strong: rgba(16, 185, 129, 0.24);
    --accent-glow: rgba(16, 185, 129, 0.3);
    --accent-glow-strong: rgba(16, 185, 129, 0.5);
    --accent-shadow: rgba(16, 185, 129, 0.8);
    --on-accent-border: rgba(255, 255, 255, 0.4);
    --on-accent-hover: rgba(255, 255, 255, 0.1);
    --danger-ring: rgba(239, 68, 68, 0.18);
    --success: #22c55e;
    --success-bg: rgba(34, 197, 94, 0.14);
    --success-border: rgba(34, 197, 94, 0.35);
    --success-text: #b6f0c8;
    --warning: #f5a524;
    --warning-bg: rgba(245, 165, 36, 0.14);
    --warning-border: rgba(245, 165, 36, 0.35);
    --warning-text: #ffdba3;
    --danger: #ef4444;
    --danger-hover: #d63c3c;
    --danger-bg: rgba(239, 68, 68, 0.14);
    --danger-border: rgba(239, 68, 68, 0.35);
    --danger-text: #ffb4b4;
    --danger-surface: #dc2626;
    --danger-surface-hover: #b91c1c;
    --danger-surface-active: #991b1b;
    --info: #38bdf8;
    --info-bg: rgba(56, 189, 248, 0.14);
    --info-border: rgba(56, 189, 248, 0.35);
    --info-text: #bfe8ff;
    --neutral-bg: rgba(244, 243, 239, 0.12);
    --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.35);
    --shadow-md: 0 8px 24px rgba(0, 0, 0, 0.45);
    --shadow-lg: 0 16px 48px rgba(0, 0, 0, 0.5);
    --shadow-dialog: 0 24px 64px rgba(0, 0, 0, 0.6);
    --badge-neutral: #a8a7a0;
    --badge-neutral-bg: var(--neutral-bg);
    --badge-accent: #00d492;
    --badge-accent-bg: var(--accent-muted);
    --badge-success: var(--success);
    --badge-success-bg: var(--success-bg);
    --badge-warning: var(--warning);
    --badge-warning-bg: var(--warning-bg);
    --badge-danger: #f15c5c;
    --badge-danger-bg: var(--danger-bg);
    --badge-info: var(--info);
    --badge-info-bg: var(--info-bg);
    --diagramm-reihe-1: #e8ff3a;
    --diagramm-reihe-2: #38bdf8;
    --diagramm-reihe-3: #a8a7a0;
    --diagramm-reihe-4: #f472b6;
    --diagramm-reihe-5: #fb923c;
    --diagramm-reihe-6: #c084fc;
}
:root[data-theme="light"] {
    color-scheme: light;
    --bg-primary: #f1f3f7;
    --bg-secondary: #e7eaf0;
    --bg-elevated: #ffffff;
    --bg-elevated-hover: #f8f9fb;
    --bg-input: #ffffff;
    --sidebar-surface: rgba(255, 255, 255, 0.78);
    --table-head-surface: #e7eaf0;
    --row-hover-surface: rgba(4, 120, 87, 0.055);
    --bg-backdrop: rgba(20, 24, 31, 0.36);
    --bg-backdrop-strong: rgba(20, 24, 31, 0.44);
    --glass-surface:
        linear-gradient(
            158deg,
            rgba(255, 255, 255, 0.86) 0%,
            rgba(255, 255, 255, 0.62) 44%,
            rgba(255, 255, 255, 0.78) 100%
        );
    --glass-surface-strong: rgba(255, 255, 255, 0.86);
    --glass-surface-soft: rgba(255, 255, 255, 0.6);
    --glass-surface-hover: rgba(4, 120, 87, 0.07);
    --glass-surface-subtle: rgba(255, 255, 255, 0.55);
    --glass-border: rgba(20, 24, 31, 0.13);
    --glass-border-strong: rgba(20, 24, 31, 0.20);
    --glass-divider: rgba(20, 24, 31, 0.10);
    --glass-highlight: inset 0 1px 0 rgba(255, 255, 255, 0.9);
    --glass-highlight-strong: inset 0 1px 0 rgba(255, 255, 255, 1);
    --glass-shadow: 0 12px 32px rgba(20, 24, 31, 0.14);
    --glass-shadow-strong: 0 20px 48px rgba(20, 24, 31, 0.20);
    --glass-fallback: rgba(255, 255, 255, 0.96);
    --glass-blur: 18px;
    --text-primary: #14181f;
    --text-secondary: #4a535f;
    --text-muted: #5c6674;
    --text-disabled: #838c99;
    --text-on-accent: #ffffff;
    --text-on-accent-secondary: rgba(236, 253, 245, 0.9);
    --text-on-danger: #ffffff;
    --border-color: #dfe3e9;
    --border-color-strong: #c7cdd6;
    --divider-color: #e3e7ed;
    --input-border: #6f7885;
    --input-border-hover: #5b6470;
    --focus-ring: #047857;
    --accent: #047857;
    --accent-hover: #006045;
    --accent-active: #004f3b;
    --accent-muted: rgba(4, 120, 87, 0.10);
    --accent-surface: #047857;
    --accent-surface-hover: #006045;
    --accent-surface-active: #004f3b;
    --accent-gradient: linear-gradient(to bottom right, #009966, #006045);
    --logo-von: #009966;
    --logo-bis: #006045;
    --accent-ring: rgba(16, 185, 129, 0.18);
    --accent-ring-strong: rgba(16, 185, 129, 0.24);
    --accent-glow: rgba(16, 185, 129, 0.3);
    --accent-glow-strong: rgba(16, 185, 129, 0.5);
    --accent-shadow: rgba(16, 185, 129, 0.8);
    --on-accent-border: rgba(255, 255, 255, 0.4);
    --on-accent-hover: rgba(255, 255, 255, 0.1);
    --danger-ring: rgba(239, 68, 68, 0.18);
    --success: #146c34;
    --success-bg: rgba(22, 163, 74, 0.12);
    --success-border: rgba(22, 163, 74, 0.30);
    --success-text: #14532d;
    --warning: #9a4508;
    --warning-bg: rgba(217, 119, 6, 0.13);
    --warning-border: rgba(217, 119, 6, 0.32);
    --warning-text: #78350f;
    --danger: #c81e1e;
    --danger-hover: #b91c1c;
    --danger-bg: rgba(220, 38, 38, 0.10);
    --danger-border: rgba(220, 38, 38, 0.30);
    --danger-text: #991b1b;
    --danger-surface: #dc2626;
    --danger-surface-hover: #b91c1c;
    --danger-surface-active: #991b1b;
    --info: #035a8a;
    --info-bg: rgba(2, 132, 199, 0.11);
    --info-border: rgba(2, 132, 199, 0.30);
    --info-text: #075985;
    --neutral-bg: rgba(18, 18, 20, 0.08);
    --shadow-sm: 0 1px 2px rgba(20, 24, 31, 0.06), 0 1px 3px rgba(20, 24, 31, 0.10);
    --shadow-md: 0 2px 4px rgba(20, 24, 31, 0.06), 0 8px 20px rgba(20, 24, 31, 0.12);
    --shadow-lg: 0 4px 8px rgba(20, 24, 31, 0.07), 0 16px 36px rgba(20, 24, 31, 0.14);
    --shadow-dialog: 0 8px 16px rgba(20, 24, 31, 0.10), 0 24px 56px rgba(20, 24, 31, 0.20);
    --badge-neutral: #56565c;
    --badge-neutral-bg: var(--neutral-bg);
    --badge-accent: #006045;
    --badge-accent-bg: var(--accent-muted);
    --badge-success: #146c34;
    --badge-success-bg: var(--success-bg);
    --badge-warning: #9a4508;
    --badge-warning-bg: var(--warning-bg);
    --badge-danger: #b91c1c;
    --badge-danger-bg: var(--danger-bg);
    --badge-info: #035a8a;
    --badge-info-bg: var(--info-bg);
    --diagramm-reihe-1: #6d28d9;
    --diagramm-reihe-2: #146c34;
    --diagramm-reihe-3: #838c99;
    --diagramm-reihe-4: #be185d;
    --diagramm-reihe-5: #b45309;
    --diagramm-reihe-6: #0369a1;
}
@media (prefers-color-scheme: light) {
    :root:not([data-theme="dark"]) {
        color-scheme: light;
        --bg-primary: #f1f3f7;
        --bg-secondary: #e7eaf0;
        --bg-elevated: #ffffff;
        --bg-elevated-hover: #f8f9fb;
        --bg-input: #ffffff;
        --sidebar-surface: rgba(255, 255, 255, 0.78);
        --table-head-surface: #e7eaf0;
        --row-hover-surface: rgba(4, 120, 87, 0.055);
        --bg-backdrop: rgba(20, 24, 31, 0.36);
        --bg-backdrop-strong: rgba(20, 24, 31, 0.44);
        --glass-surface:
            linear-gradient(
                158deg,
                rgba(255, 255, 255, 0.86) 0%,
                rgba(255, 255, 255, 0.62) 44%,
                rgba(255, 255, 255, 0.78) 100%
            );
        --glass-surface-strong: rgba(255, 255, 255, 0.86);
        --glass-surface-soft: rgba(255, 255, 255, 0.6);
        --glass-surface-hover: rgba(4, 120, 87, 0.07);
        --glass-surface-subtle: rgba(255, 255, 255, 0.55);
        --glass-border: rgba(20, 24, 31, 0.13);
        --glass-border-strong: rgba(20, 24, 31, 0.20);
        --glass-divider: rgba(20, 24, 31, 0.10);
        --glass-highlight: inset 0 1px 0 rgba(255, 255, 255, 0.9);
        --glass-highlight-strong: inset 0 1px 0 rgba(255, 255, 255, 1);
        --glass-shadow: 0 12px 32px rgba(20, 24, 31, 0.14);
        --glass-shadow-strong: 0 20px 48px rgba(20, 24, 31, 0.20);
        --glass-fallback: rgba(255, 255, 255, 0.96);
        --glass-blur: 18px;
        --text-primary: #14181f;
        --text-secondary: #4a535f;
        --text-muted: #5c6674;
        --text-disabled: #838c99;
        --text-on-accent: #ffffff;
        --text-on-accent-secondary: rgba(236, 253, 245, 0.9);
        --text-on-danger: #ffffff;
        --border-color: #dfe3e9;
        --border-color-strong: #c7cdd6;
        --divider-color: #e3e7ed;
        --input-border: #6f7885;
        --input-border-hover: #5b6470;
        --focus-ring: #047857;
        --accent: #047857;
        --accent-hover: #006045;
        --accent-active: #004f3b;
        --accent-muted: rgba(4, 120, 87, 0.10);
        --accent-surface: #047857;
        --accent-surface-hover: #006045;
        --accent-surface-active: #004f3b;
        --accent-gradient: linear-gradient(to bottom right, #009966, #006045);
        --logo-von: #009966;
        --logo-bis: #006045;
        --accent-ring: rgba(16, 185, 129, 0.18);
        --accent-ring-strong: rgba(16, 185, 129, 0.24);
        --accent-glow: rgba(16, 185, 129, 0.3);
        --accent-glow-strong: rgba(16, 185, 129, 0.5);
        --accent-shadow: rgba(16, 185, 129, 0.8);
        --on-accent-border: rgba(255, 255, 255, 0.4);
        --on-accent-hover: rgba(255, 255, 255, 0.1);
        --danger-ring: rgba(239, 68, 68, 0.18);
        --success: #146c34;
        --success-bg: rgba(22, 163, 74, 0.12);
        --success-border: rgba(22, 163, 74, 0.30);
        --success-text: #14532d;
        --warning: #9a4508;
        --warning-bg: rgba(217, 119, 6, 0.13);
        --warning-border: rgba(217, 119, 6, 0.32);
        --warning-text: #78350f;
        --danger: #c81e1e;
        --danger-hover: #b91c1c;
        --danger-bg: rgba(220, 38, 38, 0.10);
        --danger-border: rgba(220, 38, 38, 0.30);
        --danger-text: #991b1b;
        --danger-surface: #dc2626;
        --danger-surface-hover: #b91c1c;
        --danger-surface-active: #991b1b;
        --info: #035a8a;
        --info-bg: rgba(2, 132, 199, 0.11);
        --info-border: rgba(2, 132, 199, 0.30);
        --info-text: #075985;
        --neutral-bg: rgba(18, 18, 20, 0.08);
        --shadow-sm: 0 1px 2px rgba(20, 24, 31, 0.06), 0 1px 3px rgba(20, 24, 31, 0.10);
        --shadow-md: 0 2px 4px rgba(20, 24, 31, 0.06), 0 8px 20px rgba(20, 24, 31, 0.12);
        --shadow-lg: 0 4px 8px rgba(20, 24, 31, 0.07), 0 16px 36px rgba(20, 24, 31, 0.14);
        --shadow-dialog: 0 8px 16px rgba(20, 24, 31, 0.10), 0 24px 56px rgba(20, 24, 31, 0.20);
        --badge-neutral: #56565c;
        --badge-neutral-bg: var(--neutral-bg);
        --badge-accent: #006045;
        --badge-accent-bg: var(--accent-muted);
        --badge-success: #146c34;
        --badge-success-bg: var(--success-bg);
        --badge-warning: #9a4508;
        --badge-warning-bg: var(--warning-bg);
        --badge-danger: #b91c1c;
        --badge-danger-bg: var(--danger-bg);
        --badge-info: #035a8a;
        --badge-info-bg: var(--info-bg);
        --diagramm-reihe-1: #6d28d9;
        --diagramm-reihe-2: #146c34;
        --diagramm-reihe-3: #838c99;
        --diagramm-reihe-4: #be185d;
        --diagramm-reihe-5: #b45309;
        --diagramm-reihe-6: #0369a1;
    }
}
