:root, .theme-light, [data-theme="light"] {
    --success: oklch(0.672 0.2709 145.76);
    --warning: oklch(0.7741 0.1607 74.18);
    --error: oklch(0.63 0.2078 25.33);
    --info: oklch(0.6469 0.1457 232.01);
    --primary: oklch(0.59 0.166 153);
    --secondary: oklch(0.34 0 0);
    --bg: oklch(0.94 0.006 286.06);
    --primary-hover: oklch(0.71 0.216 153);
    --primary-50: oklch(0.59 0.166 153 / 50%);
    --primary-contrast: oklch(0.77 0.241 153);
    --secondary-hover: oklch(0.54 0 0);
    --success-hover: oklch(0.572 0.2709 145.76);
    --warning-hover: oklch(0.6941 0.1607 74.18);
    --error-hover: oklch(0.53 0.2078 25.33);
    --info-hover: oklch(0.5469 0.1457 232.01);
    --bg-dark: oklch(0.91 0.006 286.06);
    --bg-light: oklch(0.97 0.006 286.06);
    --border: oklch(0.875 0.006 286.06);
    --border-hover: oklch(0.8 0.006 286.06);
    --border-contrast: oklch(0.715 0.006 286.06);
    --surface-rgba-half: oklch(0.97 0.006 286.06 / 50%);
    --surface-rgba-twothird: oklch(0.97 0.006 286.06 / 66%);
    --surface-rgba-onethird: oklch(0.97 0.006 286.06 / 33%);
    --surface-rgba-quarter: oklch(0.97 0.006 286.06 / 25%);
    --surface-rgba-threequarter: oklch(0.97 0.006 286.06 / 75%);
    --surface-rgba-almost-full: oklch(0.97 0.006 286.06 / 95%);
    --bg-secondary: var(--bg-light);
    --surface: var(--bg-light);
    --background: var(--bg-dark);
    --footer-background: var(--bg);
    --text: oklch(0.2 0 0);
    --text-max-contrast-bg: oklch(0.98 0 0);
    --text-primary: var(--text);
    --text-secondary: var(--secondary);
    --text-muted: var(--secondary-hover);
    --text-on-primary: oklch(0.2 0 0);
    --text-on-secondary: oklch(0.98 0 0);
    --text-on-success: oklch(0.2 0 0);
    --text-on-warning: oklch(0.2 0 0);
    --text-on-error: oklch(0.2 0 0);
    --text-on-info: oklch(0.2 0 0);
    --font-weight-normal: 300;
    --font-weight-bold: 600;
    --border-radius-xs: 0.5rem;
    --border-radius-sm: 0.875rem;
    --border-radius-md: 1.5rem;
    --border-radius-lg: 2.5rem;
    --spacing-xs: .35em;
    --spacing-sm: .75em;
    --spacing-md: 1em;
    --spacing-lg: 1.5em;
    --spacing-xl: 2em;
    --spacing-xxl: 3em;
    --max-content-width: 1280px;
    --max-content-width-full: 1680px;
    --navbar-height: 4em;
    --layout-spacing: 2em;
    --layout-spacing-mobile: 2em;
    --transition: all ease 0.25s;
    --font-family-primary: 'Poppins', 'Poppins Fallback', sans-serif;
    --font-family-secondary: 'Poppins', 'Poppins Fallback', sans-serif;
    --logo-url: url('/ci/logo.svg');
}

.dark, .theme-dark, [data-theme="dark"] {
    --success: oklch(0.672 0.2709 145.76);
    --warning: oklch(0.7741 0.1607 74.18);
    --error: oklch(0.63 0.2078 25.33);
    --info: oklch(0.6469 0.1457 232.01);
    --primary: oklch(0.78 0.151 153);
    --secondary: oklch(0.7 0 0);
    --bg: oklch(0.26 0.006 286.06);
    --primary-hover: oklch(0.71 0.171 153);
    --primary-50: oklch(0.78 0.151 153 / 50%);
    --primary-contrast: oklch(0.675 0.181 153);
    --secondary-hover: oklch(0.8 0 0);
    --success-hover: oklch(0.752 0.2709 145.76);
    --warning-hover: oklch(0.8541 0.1607 74.18);
    --error-hover: oklch(0.71 0.2078 25.33);
    --info-hover: oklch(0.7269 0.1457 232.01);
    --bg-dark: oklch(0.22 0.006 286.06);
    --bg-light: oklch(0.3 0.006 286.06);
    --border: oklch(0.35 0.006 286.06);
    --border-hover: oklch(0.45 0.006 286.06);
    --border-contrast: oklch(0.55 0.006 286.06);
    --surface-rgba-half: oklch(0.3 0.006 286.06 / 50%);
    --surface-rgba-twothird: oklch(0.3 0.006 286.06 / 66%);
    --surface-rgba-onethird: oklch(0.3 0.006 286.06 / 33%);
    --surface-rgba-quarter: oklch(0.3 0.006 286.06 / 25%);
    --surface-rgba-threequarter: oklch(0.3 0.006 286.06 / 75%);
    --surface-rgba-almost-full: oklch(0.3 0.006 286.06 / 95%);
    --bg-secondary: var(--bg-light);
    --surface: var(--bg-light);
    --background: var(--bg-dark);
    --footer-background: var(--bg);
    --text: oklch(0.98 0 0);
    --text-max-contrast-bg: oklch(0.2 0 0);
    --text-primary: var(--text);
    --text-secondary: var(--secondary);
    --text-muted: var(--secondary-hover);
    --text-on-primary: oklch(0.2 0 0);
    --text-on-secondary: oklch(0.2 0 0);
    --text-on-success: oklch(0.2 0 0);
    --text-on-warning: oklch(0.2 0 0);
    --text-on-error: oklch(0.2 0 0);
    --text-on-info: oklch(0.2 0 0);
}