:root {
    --font-family-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-family-mono: ibm-plex-mono, monospace;

    /* Raw palette */
    --palette-white: #ffffff;

    --palette-slate-025: #f7f9fb;
    --palette-slate-050: #eef1f4;
    --palette-slate-100: #e6ebf0;
    --palette-slate-200: #d7dee5;
    --palette-slate-500: #6e7b87;
    --palette-slate-700: #26323d;

    --palette-brand-050: #f2f5f8;
    --palette-brand-100: #e3eaf0;
    --palette-brand-200: #d5e0e9;
    --palette-brand-300: #8ea3b7;
    --palette-brand-600: #3f5f7d;
    --palette-brand-700: #344f69;

    --palette-sidebar-700: #4f667c;
    --palette-sidebar-800: #2d343a;
    --palette-sidebar-850: #2a3137;
    --palette-sidebar-900: #23282c;
    --palette-sidebar-950: #1b1f22;
    --palette-sidebar-text: #f8fafc;
    --palette-sidebar-muted: #b8c2cb;
    --palette-sidebar-nav: #d2dae2;

    --palette-green-050: #eef6f1;
    --palette-green-100: #e0ece5;
    --palette-green-200: #d0e0d7;
    --palette-green-700: #3f6a52;

    --palette-amber-050: #fbf6ee;
    --palette-amber-100: #f2e8d6;
    --palette-amber-200: #ead9b9;
    --palette-amber-400: #c9a05a;
    --palette-amber-700: #8b6b35;

    --palette-red-050: #fbf1f0;
    --palette-red-100: #f4e2e0;
    --palette-red-200: #eccdca;
    --palette-red-700: #9c544e;

    /* Semantic color tokens */
    --color-background-app: var(--palette-slate-050);
    --color-background-ornament: transparent;
    --color-background-sidebar: var(--palette-sidebar-900);
    --color-background-sidebar-strong: var(--palette-sidebar-900);
    --color-background-overlay: rgba(27, 31, 34, 0.56);

    --color-surface-primary: var(--palette-white);
    --color-surface-secondary: var(--palette-white);
    --color-surface-chrome: var(--palette-slate-025);
    --color-surface-subtle: var(--palette-slate-050);
    --color-surface-accent: var(--palette-brand-050);
    --color-surface-success: var(--palette-green-050);
    --color-surface-warning: var(--palette-amber-050);
    --color-surface-danger: var(--palette-red-050);
    --color-surface-disabled: var(--palette-slate-025);
    --color-surface-overlay: var(--palette-white);
    --color-surface-overlay-strong: var(--palette-white);
    --color-surface-overlay-soft: var(--palette-slate-050);

    --color-border-primary: var(--palette-slate-200);
    --color-border-secondary: var(--palette-slate-100);
    --color-border-accent: var(--palette-brand-300);
    --color-border-accent-strong: var(--palette-sidebar-700);
    --color-border-accent-soft: rgba(63, 95, 125, 0.18);
    --color-border-success: var(--palette-green-200);
    --color-border-warning: var(--palette-amber-200);
    --color-border-danger: var(--palette-red-200);
    --color-border-sidebar: var(--palette-sidebar-950);

    --color-text-primary: var(--palette-slate-700);
    --color-text-secondary: var(--palette-slate-500);
    --color-text-strong: var(--palette-slate-700);
    --color-text-inverse: var(--palette-sidebar-text);
    --color-text-link: var(--palette-brand-600);
    --color-text-link-hover: var(--palette-brand-700);
    --color-text-success: var(--palette-green-700);
    --color-text-warning: var(--palette-amber-700);
    --color-text-danger: var(--palette-red-700);
    --color-text-sidebar: var(--palette-sidebar-text);
    --color-text-sidebar-muted: var(--palette-sidebar-muted);
    --color-text-sidebar-nav: var(--palette-sidebar-nav);

    --color-action-primary: var(--palette-brand-600);
    --color-action-primary-hover: var(--palette-brand-700);
    --color-action-primary-soft: var(--palette-brand-050);
    --color-action-primary-contrast: var(--palette-white);
    --color-action-secondary: var(--palette-white);
    --color-action-secondary-hover: var(--palette-slate-050);
    --color-action-secondary-border: var(--palette-slate-200);
    --color-action-secondary-border-hover: var(--palette-brand-300);
    --color-action-secondary-text: var(--palette-slate-700);
    --color-action-sidebar-hover: var(--palette-sidebar-850);
    --color-action-sidebar-active: var(--palette-sidebar-800);
    --color-action-sidebar-active-border: var(--palette-sidebar-700);

    --color-status-success-bg: var(--palette-green-050);
    --color-status-success-border: var(--palette-green-200);
    --color-status-success-fg: var(--palette-green-700);

    --color-status-warning-bg: var(--palette-amber-050);
    --color-status-warning-border: var(--palette-amber-200);
    --color-status-warning-fg: var(--palette-amber-700);

    --color-status-danger-bg: var(--palette-red-050);
    --color-status-danger-border: var(--palette-red-200);
    --color-status-danger-fg: var(--palette-red-700);

    --color-action-danger: var(--color-status-danger-bg);
    --color-action-danger-hover: var(--palette-red-100);
    --color-action-danger-border: var(--color-status-danger-border);
    --color-action-danger-text: var(--color-status-danger-fg);
    --color-action-success: var(--color-status-success-bg);
    --color-action-success-hover: var(--palette-green-100);
    --color-action-success-border: var(--color-status-success-border);
    --color-action-success-text: var(--color-status-success-fg);

    --color-control-background: var(--palette-white);
    --color-control-background-hover: var(--palette-slate-050);
    --color-control-background-muted: var(--palette-slate-025);
    --color-control-border: var(--palette-slate-200);
    --color-control-border-hover: var(--palette-brand-300);
    --color-control-border-focus: var(--palette-brand-600);
    --color-control-border-danger: var(--palette-red-700);
    --color-control-text: var(--palette-slate-700);
    --color-control-text-muted: var(--palette-slate-500);
    --color-control-disabled-background: var(--palette-slate-025);
    --color-control-disabled-border: var(--palette-slate-100);
    --color-control-disabled-text: #83909b;

    --color-focus-ring-primary: rgba(63, 95, 125, 0.18);
    --color-focus-ring-danger: rgba(156, 84, 78, 0.18);
    --color-focus-ring-success: rgba(63, 106, 82, 0.18);
    --color-focus-ring-warning: rgba(139, 107, 53, 0.18);
    --color-skeleton-base: var(--palette-slate-100);
    --color-skeleton-highlight: #f8fafc;

    /* Shared non-color tokens */
    --radius-surface-xl: 20px;
    --radius-surface-lg: 18px;
    --radius-surface-md: 16px;
    --radius-control-lg: 14px;
    --radius-control-md: 12px;
    --radius-control-sm: 10px;
    --radius-tag: 5px;
    --radius-pill: 999px;

    --shadow-surface: none;
    --shadow-subtle: none;
    --shadow-floating: none;
    --shadow-dialog: none;
}
