@layer foundation {
  :root {
    /* Primary Colors */
    --primary-50: oklch(96% 0.03 245);
    --primary-100: oklch(92% 0.06 245);
    --primary-200: oklch(86% 0.09 245);
    --primary-300: oklch(80% 0.12 245);
    --primary-400: oklch(74% 0.15 245);
    --primary-500: oklch(69% 0.17 245);
    --primary-600: oklch(63% 0.19 245);
    --primary-700: oklch(55% 0.21 245);
    --primary-800: oklch(45% 0.18 245);
    --primary-900: oklch(35% 0.15 245);

    /* Secondary Colors */
    --secondary-50: oklch(96% 0.03 45);
    --secondary-100: oklch(92% 0.06 45);
    --secondary-200: oklch(86% 0.09 45);
    --secondary-300: oklch(80% 0.12 45);
    --secondary-400: oklch(74% 0.16 45);
    --secondary-500: oklch(70% 0.20 45);
    --secondary-600: oklch(65% 0.23 45);
    --secondary-700: oklch(58% 0.24 45);
    --secondary-800: oklch(48% 0.20 45);
    --secondary-900: oklch(38% 0.17 45);

    /* Neutral Colors */
    --neutral-50: oklch(98% 0.005 0);
    --neutral-100: oklch(95% 0.005 0);
    --neutral-200: oklch(90% 0.005 0);
    --neutral-300: oklch(83% 0.005 0);
    --neutral-400: oklch(70% 0.005 0);
    --neutral-500: oklch(60% 0.005 0);
    --neutral-600: oklch(48% 0.005 0);
    --neutral-700: oklch(35% 0.005 0);
    --neutral-800: oklch(25% 0.005 0);
    --neutral-900: oklch(15% 0.005 0);

    --neutral-50-light: oklch(98% 0.02 245 / 50%);

    /* Accent Colors */
    --accent-green: oklch(72% 0.175 155);
    --accent-magenta: oklch(62% 0.19 355);
    --accent-red: oklch(62% 0.12 25);
    --accent-violet: oklch(56% 0.24 298);

    /* Semantic Colors */
    --success: oklch(72% 0.15 155);
    --success-color: oklch(72% 0.15 155 / 20%);
    --success-color-text: oklch(35% 0.15 155);
    --warning: oklch(70% 0.20 70 / 10%);
    --warning-dark: oklch(60% 0.20 70 / 100%);
    --warning-color: oklch(70% 0.20 70 / 20%);
    --warning-color-text: oklch(35% 0.20 70);
    --error: oklch(65% 0.24 25);
    --error-500: oklch(65% 0.24 25 / 50%);
    --error-900: oklch(40% 0.24 25 / 90%);
    --error-500-light: oklch(65% 0.24 25 / 10%);
    --error-100: oklch(65% 0.24 25 / 10%);
    --error-50: oklch(65% 0.24 25 / 5%);
    --info: oklch(70% 0.15 220);

    /* Base Colors */
    --white: oklch(100% 0 0);
    --black: oklch(0% 0 0);

    /* Shadow */
    --shadow-color: oklch(35% 0.01 260 / 0.2);

    /* Status Colors */
    --status-problem: oklch(90% 0.03 45);
    --status-workaround_found: oklch(92% 0.06 245);
    --status-solution_found: oklch(86% 0.09 245);
    --status-resolved: oklch(72% 0.15 245);
    --status-open: oklch(92% 0.03 47);
    --status-open-dark: oklch(40% 0.03 47);
    --status-assigned: oklch(92% 0.03 318);
    --status-assigned-dark: oklch(40% 0.03 318);
    --status-classified: oklch(92% 0.03 95);
    --status-in_progress: oklch(92% 0.03 155);
    --status-in_progress-dark: oklch(40% 0.03 155);
    --status-paused: oklch(72% 0.03 245);
    --status-finished: oklch(72% 0.03 245 / 40%);
    --status-finished-dark: oklch(30% 0.03 245);
    --status-closed: oklch(80% 0.03 245 / 30%);
    --status-closed-dark: oklch(30% 0.03 245);

    /* Priority Colors */
    --priority-high: oklch(90% 0.03 21);
    --priority-medium: oklch(92% 0.03 155);
    --priority-low: oklch(92% 0.03 155);
    --priority-urgent: oklch(92% 0.03 255);

    /* Typography */
    --font-family-monospace: "SFMono-Regular", "Menlo", "Monaco", "Consolas", "monospace";
    --font-family-sans-serif: "SFProText-Regular", "Helvetica Neue", "Helvetica", "Arial", "sans-serif";
    --font-size-xs: 0.75rem;   /* badges, small breadcrumbs */
    --font-size-sm: 0.8125rem;   /* cards, inputs, grid items */
    --font-size-base: 0.9375rem; /* body text */

    /* Shadows */
    --hover-shadow: inset rgba(0, 0, 0, .15) 0px -1px 0px, inset rgba(64, 68, 82, .15) 0px 0px 0px 1px, rgba(64, 68, 82, .08) 0px 2px 5px 0px;
    --focus-shadow: inset 0px -1px 0px rgba(0,0,0,.15),inset 0px 0px 0px 1px rgba(17,103,89,.4),0px 2px 5px 0px rgba(64,68,82,.08),0px 0px 0px 4px rgba(1,124,110,.25);
    --button-shadow: inset 0px -1px 0px rgba(0, 0, 0, .08), inset 0px 0px 0px 1px #f0efed;
    --button-focus-shadow: inset rgba(0, 0, 0, .15) 0px -1px 0px, inset rgba(64, 68, 82, .15) 0px 0px 0px 1px, rgba(64, 68, 82, .08) 0px 2px 5px 0px;

    /* Layout */
    --outline-size: 2px;
  }
}
