:root {
    /* Color Palette */
    --color-primary: #474746;
    /* Dark Gunmetal / KSAG Grey */
    --color-primary-light: hsl(0, 0%, 35%);
    /* Lighter shade for hover */
    --color-accent: #FFF10B;
    /* KSAG Yellow */
    --color-accent-hover: #e6d90a;
    /* Darker yellow for hover */
    --color-background: hsl(210, 20%, 98%);
    /* #F3F6F8 - Off-white background */
    --color-surface: #FFFFFF;
    /* White surface */
    --color-text: #333333;
    /* Dark grey text */
    --color-text-light: #666666;
    /* Light grey text */
    --color-text-inverse: #FFFFFF;
    /* White text */
    --color-border: #E0E0E0;
    /* Light border */
    --color-error: hsl(0, 70%, 60%);
    /* Red error */
    --color-success: hsl(120, 60%, 40%);
    /* Green success */
    --color-info: hsl(210, 80%, 50%);
    /* Blue info */
    --color-warning: hsl(45, 100%, 50%);
    /* Amber warning */

    /* Typography */
    --font-family-base: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    --font-size-base: 16px;
    --font-size-sm: 0.875rem;
    --font-size-lg: 1.25rem;
    --font-weight-regular: 400;
    --font-weight-bold: 700;

    /* Spacing */
    --spacing-xs: 4px;
    --spacing-sm: 8px;
    --spacing-md: 16px;
    --spacing-lg: 24px;
    --spacing-xl: 32px;

    /* Element Sizes */
    --padding-button: 12px 20px;
    --padding-input: 12px 20px;

    /* Shadows */
    --shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);

    /* Border Radius */
    --radius-sm: 4px;
    --radius-md: 8px;
    --radius-lg: 12px;
    --radius-full: 9999px;

    /* Transitions */
    --transition-fast: 0.15s ease-in-out;
    --transition-normal: 0.3s ease-in-out;
}