:root {
    /* Neutrale Premium-Palette; Firmenfarben bleiben im Tenant-Theme. */
    --premium-canvas: #f3f4f6;
    --premium-canvas-deep: #eceef1;
    --premium-surface: #ffffff;
    --premium-surface-subtle: #f8f9fa;
    --premium-surface-quiet: #f5f6f7;
    --premium-ink-strong: #15171b;
    --premium-ink: #292d34;
    --premium-ink-muted: #626873;
    --premium-ink-subtle: #7c838f;
    --premium-border: rgba(21, 23, 27, 0.1);
    --premium-border-strong: rgba(21, 23, 27, 0.16);
    --premium-border-on-dark: rgba(255, 255, 255, 0.1);
    --premium-sidebar: #191b20;
    --premium-sidebar-deep: #14161a;
    --premium-sidebar-text: rgba(255, 255, 255, 0.72);
    --premium-sidebar-text-strong: #ffffff;
    --premium-sidebar-label: rgba(255, 255, 255, 0.54);
    --premium-sidebar-hover: rgba(255, 255, 255, 0.06);
    --premium-sidebar-active: rgba(var(--theme-primary-rgb), 0.16);
    --premium-accent-soft: rgba(var(--theme-primary-rgb), 0.08);
    --premium-accent-soft-strong: rgba(var(--theme-primary-rgb), 0.14);
    --premium-focus-color: rgba(var(--theme-primary-rgb), 0.22);
    --premium-overlay: rgba(15, 17, 21, 0.52);

    /* Rhythmus und Geometrie. */
    --premium-space-2xs: calc(0.25rem * var(--app-surface-density-ratio));
    --premium-space-xs: calc(0.5rem * var(--app-surface-density-ratio));
    --premium-space-sm: calc(0.75rem * var(--app-surface-density-ratio));
    --premium-space-md: calc(1rem * var(--app-surface-density-ratio));
    --premium-space-lg: calc(1.5rem * var(--app-surface-density-ratio));
    --premium-space-xl: calc(2rem * var(--app-surface-density-ratio));
    --premium-space-2xl: calc(3rem * var(--app-surface-density-ratio));
    --premium-space-page: clamp(1rem, 2vw, 2rem);
    --premium-radius-xs: calc(0.375rem * var(--app-surface-radius-ratio));
    --premium-radius-sm: calc(0.625rem * var(--app-surface-radius-ratio));
    --premium-radius-md: calc(0.875rem * var(--app-surface-radius-ratio));
    --premium-radius-lg: calc(1.125rem * var(--app-surface-radius-ratio));
    --premium-radius-pill: 999rem;
    --premium-border-width: 0.0625rem;
    --premium-sidebar-width: 16.25rem;
    --premium-sidebar-collapsed-width: 5.25rem;
    --premium-control-height: calc(2.75rem * var(--app-surface-density-ratio));
    --premium-control-height-sm: calc(2.25rem * var(--app-surface-density-ratio));
    --premium-icon-control-size: calc(2.5rem * var(--app-surface-density-ratio));
    --premium-table-cell-y: calc(0.875rem * var(--app-surface-density-ratio));
    --premium-table-cell-x: calc(1rem * var(--app-surface-density-ratio));
    --premium-full-size: 100%;
    --premium-zero: 0;
    --premium-content-max-width: var(--premium-full-size);
    --premium-content-width: calc(var(--premium-full-size) - var(--premium-sidebar-width));
    --premium-content-width-collapsed: calc(var(--premium-full-size) - var(--layout-sidebar-collapsed-margin));
    --premium-dashboard-context-grid: repeat(2, minmax(var(--premium-zero), 1fr));
    --premium-dashboard-focus-layout: minmax(var(--premium-zero), 1fr);
    --premium-project-menu-max-width: 28rem;
    --premium-page-header-min-height: calc(5.5rem * var(--app-surface-density-ratio));
    --premium-mobile-header-height: 4rem;
    --premium-mobile-logo-max-width: 6rem;
    --premium-mobile-logo-max-height: 2.125rem;

    /* Ruhige Tiefe statt Glow- und Lift-Effekten. */
    --premium-shadow-xs: 0 calc(0.0625rem * var(--app-surface-shadow-ratio)) calc(0.125rem * var(--app-surface-shadow-ratio)) rgba(15, 17, 21, calc(0.025 * var(--app-surface-shadow-ratio)));
    --premium-shadow-sm: 0 calc(0.0625rem * var(--app-surface-shadow-ratio)) calc(0.1875rem * var(--app-surface-shadow-ratio)) rgba(15, 17, 21, calc(0.035 * var(--app-surface-shadow-ratio))), 0 calc(0.5rem * var(--app-surface-shadow-ratio)) calc(1.5rem * var(--app-surface-shadow-ratio)) rgba(15, 17, 21, calc(0.025 * var(--app-surface-shadow-ratio)));
    --premium-shadow-md: 0 calc(0.125rem * var(--app-surface-shadow-ratio)) calc(0.375rem * var(--app-surface-shadow-ratio)) rgba(15, 17, 21, calc(0.045 * var(--app-surface-shadow-ratio))), 0 calc(1rem * var(--app-surface-shadow-ratio)) calc(2.5rem * var(--app-surface-shadow-ratio)) rgba(15, 17, 21, calc(0.045 * var(--app-surface-shadow-ratio)));
    --premium-shadow-focus: 0 0 0 calc(0.2rem * var(--app-surface-shadow-ratio)) var(--premium-focus-color);
    --premium-shadow-none: none;

    /* Typografie. */
    --premium-font-body: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --premium-font-size-xs: 0.75rem;
    --premium-font-size-sm: 0.8125rem;
    --premium-font-size-base: 0.9375rem;
    --premium-font-size-md: 1rem;
    --premium-font-size-lg: 1.125rem;
    --premium-font-size-xl: clamp(1.5rem, 2vw, 2rem);
    --premium-font-weight-normal: 400;
    --premium-font-weight-medium: 500;
    --premium-font-weight-semibold: 600;
    --premium-line-height-tight: 1.2;
    --premium-line-height-base: 1.55;
    --premium-tracking-tight: -0.025em;
    --premium-tracking-label: 0.075em;
    --premium-tabular-numbers: tabular-nums lining-nums;
    --premium-transition: 160ms ease;

    /* Einheitliche Systemmeldungen: Ton, Dichte und Position bleiben CI-weit steuerbar. */
    --message-stack-offset: var(--premium-space-lg);
    --message-stack-offset-mobile: var(--premium-space-md);
    --message-stack-gap: var(--premium-space-sm);
    --message-stack-width: 28rem;
    --message-stack-width-mobile: var(--premium-full-size);
    --message-stack-z-index: 1200;
    --message-mobile-action-clearance: calc(var(--premium-control-height) + var(--premium-space-md));
    --message-surface: var(--premium-surface);
    --message-border-width: var(--premium-border-width);
    --message-border: var(--premium-border);
    --message-radius: var(--premium-radius-md);
    --message-shadow: var(--premium-shadow-md);
    --message-padding-y: var(--premium-space-md);
    --message-padding-x: var(--premium-space-md);
    --message-content-gap: var(--premium-space-sm);
    --message-icon-size: var(--premium-icon-control-size);
    --message-icon-radius: var(--premium-radius-sm);
    --message-close-size: var(--premium-control-height-sm);
    --message-action-padding-y: var(--premium-space-xs);
    --message-action-padding-x: var(--premium-space-sm);
    --message-title-color: var(--premium-ink-strong);
    --message-text-color: var(--premium-ink);
    --message-detail-color: var(--premium-ink-muted);
    --message-success-bg: var(--message-surface);
    --message-success-border: var(--action-tone-success-border);
    --message-success-icon-bg: var(--icon-surface-success-bg);
    --message-success-icon-color: var(--icon-surface-success-color);
    --message-warning-bg: var(--message-surface);
    --message-warning-border: var(--action-tone-warning-border);
    --message-warning-icon-bg: var(--icon-surface-warning-bg);
    --message-warning-icon-color: var(--icon-surface-warning-color);
    --message-error-bg: var(--message-surface);
    --message-error-border: var(--action-tone-danger-border);
    --message-error-icon-bg: var(--icon-surface-danger-bg);
    --message-error-icon-color: var(--icon-surface-danger-color);
    --message-info-bg: var(--message-surface);
    --message-info-border: var(--action-tone-info-border);
    --message-info-icon-bg: var(--icon-surface-info-bg);
    --message-info-icon-color: var(--icon-surface-info-color);

    /* Bestehende semantische Tokens zentral veredeln. */
    --layout-sidebar-width: var(--premium-sidebar-width);
    --layout-sidebar-collapsed-width: var(--premium-sidebar-collapsed-width);
    --layout-sidebar-collapsed-margin: calc(var(--premium-sidebar-collapsed-width) + var(--premium-space-sm));
    --layout-content-padding: var(--premium-space-page);
    --layout-content-padding-mobile: var(--premium-space-md);
    --layout-content-max-width: var(--premium-content-max-width);
    --layout-app-bg: var(--premium-canvas);
    --surface-color: var(--premium-surface);
    --surface-muted: var(--premium-surface-subtle);
    --text-color: var(--premium-ink-strong);
    --secondary-text-color: var(--premium-ink-muted);
    --text-ink-strong: var(--premium-ink-strong);
    --text-ink: var(--premium-ink);
    --text-ink-soft: var(--premium-ink);
    --text-ink-muted: var(--premium-ink-muted);
    --text-ink-subtle: var(--premium-ink-subtle);
    --text-ink-faint: var(--premium-ink-subtle);
    --text-ink-label: var(--premium-ink-muted);
    --text-ink-caption: var(--premium-ink-muted);
    --border-color: var(--premium-border);
    --panel-border-subtle: var(--premium-border);
    --panel-border-soft: var(--premium-border);
    --panel-border-strong: var(--premium-border-strong);
    --panel-shadow-soft: var(--premium-shadow-sm);
    --panel-shadow-hover: var(--premium-shadow-sm);
    --panel-shadow-strong: var(--premium-shadow-md);
    --panel-shadow-strong-hover: var(--premium-shadow-md);
    --card-bg: var(--premium-surface);
    --card-bg-muted: var(--premium-surface-subtle);
    --card-border-color: var(--premium-border);
    --card-border-color-strong: var(--premium-border-strong);
    --card-radius: var(--premium-radius-md);
    --card-radius-lg: var(--premium-radius-lg);
    --card-shadow: var(--premium-shadow-sm);
    --card-shadow-hover: var(--premium-shadow-sm);
    --card-padding: var(--premium-space-lg);
    --card-padding-sm: var(--premium-space-md);
    --section-panel-bg: var(--premium-surface);
    --section-panel-border: var(--premium-border-width) solid var(--premium-border);
    --section-panel-radius: var(--premium-radius-md);
    --section-panel-shadow: var(--premium-shadow-sm);
    --section-panel-header-bg: var(--premium-surface);
    --section-panel-header-border: var(--premium-border-width) solid var(--premium-border);
    --page-header-bg: var(--premium-surface);
    --page-header-border: var(--premium-border-width) solid var(--premium-border);
    --page-header-radius: var(--premium-radius-md);
    --page-header-shadow: var(--premium-shadow-sm);
    --page-header-padding-y: var(--premium-space-lg);
    --page-header-padding-x: var(--premium-space-lg);
    --page-header-title-size: var(--premium-font-size-xl);
    --page-header-title-color: var(--premium-ink-strong);
    --page-header-subtitle-color: var(--premium-ink-muted);
    --btn-radius: var(--premium-radius-sm);
    --input-height: var(--premium-control-height);
    --input-border-color: var(--premium-border-strong);
    --input-border-radius: var(--premium-radius-sm);
    --input-bg: var(--premium-surface);
    --input-focus-ring: var(--premium-shadow-focus);
    --input-focus-shadow: var(--premium-shadow-focus);
    --modal-radius: var(--premium-radius-lg);
    --modal-border-color: var(--premium-border);
    --table-cell-padding: var(--premium-table-cell-y) var(--premium-table-cell-x);
    --table-header-bg: var(--premium-surface-subtle);
    --table-header-border: var(--premium-border-width) solid var(--premium-border);
    --table-row-border: var(--premium-border-width) solid var(--premium-border);
    --table-panel-header-color: var(--premium-ink-muted);
    --table-panel-row-border: var(--premium-border-width) solid var(--premium-border);
    --table-panel-row-hover: var(--premium-surface-subtle);
    --sidebar-bg: var(--premium-sidebar);
    --sidebar-header-bg: var(--premium-sidebar);
    --sidebar-link-color: var(--premium-sidebar-text);
    --sidebar-link-hover-bg: var(--premium-sidebar-hover);
    --sidebar-link-hover-color: var(--premium-sidebar-text-strong);
    --sidebar-link-active-bg: var(--premium-sidebar-active);
    --sidebar-submenu-bg: var(--premium-sidebar-deep);
    --sidebar-border: var(--premium-border-on-dark);
    --sidebar-role-color: var(--premium-sidebar-label);
    --focus-ring: var(--premium-shadow-focus);
}
