:root {
    /* Typography */
    --font-sans: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, 'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
    --font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --letter-spacing: 0em;

    /* Spacing */
    --spacing: 0.25rem;

    /* Radius */
    --radius: 0.625rem;

    /* Shadows */
    --shadow-opacity: 0.1;
    --shadow-blur: 3px;
    --shadow-spread: 0px;
    --shadow-offset-x: 0;
    --shadow-offset-y: 1px;
    --shadow-color: hsl(0 0% 0%);
    --shadow-2xs: 0 1px 3px 0px hsl(0 0% 0% / 0.05);
    --shadow-xs: 0 1px 3px 0px hsl(0 0% 0% / 0.05);
    --shadow-sm: 0 1px 3px 0px hsl(0 0% 0% / 0.10), 0 1px 2px -1px hsl(0 0% 0% / 0.10);
    --shadow: 0 1px 3px 0px hsl(0 0% 0% / 0.10), 0 1px 2px -1px hsl(0 0% 0% / 0.10);
    --shadow-md: 0 1px 3px 0px hsl(0 0% 0% / 0.10), 0 2px 4px -1px hsl(0 0% 0% / 0.10);
    --shadow-lg: 0 1px 3px 0px hsl(0 0% 0% / 0.10), 0 4px 6px -1px hsl(0 0% 0% / 0.10);
    --shadow-xl: 0 1px 3px 0px hsl(0 0% 0% / 0.10), 0 8px 10px -1px hsl(0 0% 0% / 0.10);
    --shadow-2xl: 0 1px 3px 0px hsl(0 0% 0% / 0.25);

    /* Base colors */
    --background: 223.8136 -172.5242% 100.0000%;
    --foreground: 223.8136 0.0000% 3.9388%;

    /* Card */
    --card: 223.8136 -172.5242% 100.0000%;
    --card-foreground: 223.8136 0.0000% 3.9388%;

    /* Popover */
    --popover: 223.8136 -172.5242% 100.0000%;
    --popover-foreground: 223.8136 0.0000% 3.9388%;

    /* Primary brand color */
    --primary: 223.8136 0.0000% 9.0527%;
    --primary-foreground: 223.8136 0.0004% 98.0256%;

    /* Secondary */
    --secondary: 223.8136 0.0002% 96.0587%;
    --secondary-foreground: 223.8136 0.0000% 9.0527%;

    /* Muted */
    --muted: 223.8136 0.0002% 96.0587%;
    --muted-foreground: 223.8136 0.0000% 45.1519%;

    /* Accent */
    --accent: 223.8136 0.0002% 96.0587%;
    --accent-foreground: 223.8136 0.0000% 9.0527%;

    /* Destructive */
    --destructive: 351.7303 123.6748% 40.5257%;
    --destructive-foreground: 223.8136 -172.5242% 100.0000%;

    /* Success */
    --success: 142.1 76.2% 36.3%;
    --success-foreground: 355.7 100% 97.3%;

    /* Warning */
    --warning: 37.7 92.1% 50.2%;
    --warning-foreground: 26 83.3% 14.1%;

    /* Info */
    --info: 221.2 83.2% 53.3%;
    --info-foreground: 210 40% 98%;

    /* Border */
    --border: 223.8136 0.0001% 89.8161%;
    --input: 223.8136 0.0001% 89.8161%;
    --ring: 223.8136 0.0000% 63.0163%;

    /* Chart colors */
    --chart-1: 211.7880 101.9718% 78.6759%;
    --chart-2: 217.4076 91.3672% 59.5787%;
    --chart-3: 221.4336 86.3731% 54.0624%;
    --chart-4: 223.6587 78.7180% 47.8635%;
    --chart-5: 226.5426 70.0108% 39.9224%;

    /* Sidebar */
    --sidebar-background: 223.8136 0.0004% 98.0256%;
    --sidebar-foreground: 223.8136 0.0000% 3.9388%;
    --sidebar-primary: 223.8136 0.0000% 9.0527%;
    --sidebar-primary-foreground: 223.8136 0.0004% 98.0256%;
    --sidebar-accent: 223.8136 0.0002% 96.0587%;
    --sidebar-accent-foreground: 223.8136 0.0000% 9.0527%;
    --sidebar-border: 223.8136 0.0001% 89.8161%;
    --sidebar-ring: 223.8136 0.0000% 63.0163%;
}

/* Apply theme colors to elements - critical base styles */
* {
    border-color: var(--border);
}

html {
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body {
    background-color: var(--background) !important;
    color: var(--foreground) !important;
    font-feature-settings: "rlig" 1, "calt" 1;
}

/* Ensure all text elements inherit foreground color by default */
h1,
h2,
h3,
h4,
h5,
h6,
p,
span,
div,
a,
label,
button,
input,
textarea,
select {
    color: inherit;
}