/* Material Design 3 system tokens — GENERATED from brand/tokens.json `md3.source`
   (v1.0.0) by scripts/gen_brand_tokens.py. LCH-based tonal palettes (a dependency-free
   approximation of MD3's HCT; tone = CIE L*). DO NOT EDIT — change the source hexes.
   BD mapping: primary=#404DF2 (blue) · secondary=#AC2927 (red) · tertiary=#503AA8 (purple).
   Light scheme on :root; dark scheme on [data-theme="dark"] or .md-dark. */
:root {
  /* ---- color roles (light) ---- */
  --md-sys-color-primary: #3547EB;
  --md-sys-color-on-primary: #FFFFFF;
  --md-sys-color-primary-container: #E6DEFF;
  --md-sys-color-on-primary-container: #00115A;
  --md-sys-color-secondary: #B02D2A;
  --md-sys-color-on-secondary: #FFFFFF;
  --md-sys-color-secondary-container: #FFDAD4;
  --md-sys-color-on-secondary-container: #3C0700;
  --md-sys-color-tertiary: #644ABB;
  --md-sys-color-on-tertiary: #FFFFFF;
  --md-sys-color-tertiary-container: #E9DDFF;
  --md-sys-color-on-tertiary-container: #000767;
  --md-sys-color-error: #BA1A1A;
  --md-sys-color-on-error: #FFFFFF;
  --md-sys-color-error-container: #FFDAD3;
  --md-sys-color-on-error-container: #3A0B00;
  --md-sys-color-background: #FAF8FF;
  --md-sys-color-on-background: #1C1B20;
  --md-sys-color-surface: #FAF8FF;
  --md-sys-color-on-surface: #1C1B20;
  --md-sys-color-surface-variant: #E5E0F0;
  --md-sys-color-on-surface-variant: #484552;
  --md-sys-color-surface-dim: #DBD9E1;
  --md-sys-color-surface-bright: #FAF8FF;
  --md-sys-color-surface-container-lowest: #FFFFFF;
  --md-sys-color-surface-container-low: #F5F2FA;
  --md-sys-color-surface-container: #EFEDF5;
  --md-sys-color-surface-container-high: #E9E7EF;
  --md-sys-color-surface-container-highest: #E4E1E9;
  --md-sys-color-outline: #797583;
  --md-sys-color-outline-variant: #C9C4D4;
  --md-sys-color-inverse-surface: #312F35;
  --md-sys-color-inverse-on-surface: #F2F0F7;
  --md-sys-color-inverse-primary: #CCBEFF;
  --md-sys-color-shadow: #000000;
  --md-sys-color-scrim: #000000;
  --md-sys-color-surface-tint: #3547EB;
  --md-sys-color-accent: #676000;
  --md-sys-color-on-accent: #FFFFFF;
  --md-sys-color-accent-container: #F6E54F;
  --md-sys-color-on-accent-container: #201C00;
  --md-sys-color-highlight: #755374;
  --md-sys-color-on-highlight: #FFFFFF;
  --md-sys-color-highlight-container: #FED6FC;
  --md-sys-color-on-highlight-container: #2D102D;

  /* ---- reference tonal palettes (all tones) ---- */
  --md-ref-palette-primary-0: #000000;
  --md-ref-palette-primary-10: #00115A;
  --md-ref-palette-primary-20: #00218D;
  --md-ref-palette-primary-30: #0032C4;
  --md-ref-palette-primary-40: #3547EB;
  --md-ref-palette-primary-50: #6361FF;
  --md-ref-palette-primary-60: #8E7FFF;
  --md-ref-palette-primary-70: #AF9EFF;
  --md-ref-palette-primary-80: #CCBEFF;
  --md-ref-palette-primary-90: #E6DEFF;
  --md-ref-palette-primary-95: #F3EEFF;
  --md-ref-palette-primary-99: #FDFCFF;
  --md-ref-palette-primary-100: #FFFFFF;
  --md-ref-palette-secondary-0: #000000;
  --md-ref-palette-secondary-10: #3C0700;
  --md-ref-palette-secondary-20: #690007;
  --md-ref-palette-secondary-30: #910615;
  --md-ref-palette-secondary-40: #B02D2A;
  --md-ref-palette-secondary-50: #CF4940;
  --md-ref-palette-secondary-60: #EE6558;
  --md-ref-palette-secondary-70: #FF8A7B;
  --md-ref-palette-secondary-80: #FFB4A8;
  --md-ref-palette-secondary-90: #FFDAD4;
  --md-ref-palette-secondary-95: #FFEDEA;
  --md-ref-palette-secondary-99: #FFFBFB;
  --md-ref-palette-secondary-100: #FFFFFF;
  --md-ref-palette-tertiary-0: #000000;
  --md-ref-palette-tertiary-10: #000767;
  --md-ref-palette-tertiary-20: #281C85;
  --md-ref-palette-tertiary-30: #4733A0;
  --md-ref-palette-tertiary-40: #644ABB;
  --md-ref-palette-tertiary-50: #8063D7;
  --md-ref-palette-tertiary-60: #9C7CF4;
  --md-ref-palette-tertiary-70: #B89BFF;
  --md-ref-palette-tertiary-80: #D2BCFF;
  --md-ref-palette-tertiary-90: #E9DDFF;
  --md-ref-palette-tertiary-95: #F4EEFF;
  --md-ref-palette-tertiary-99: #FDFCFF;
  --md-ref-palette-tertiary-100: #FFFFFF;
  --md-ref-palette-error-0: #000000;
  --md-ref-palette-error-10: #3A0B00;
  --md-ref-palette-error-20: #690000;
  --md-ref-palette-error-30: #93000C;
  --md-ref-palette-error-40: #BA1A1A;
  --md-ref-palette-error-50: #DA3D30;
  --md-ref-palette-error-60: #FA5A48;
  --md-ref-palette-error-70: #FF8A76;
  --md-ref-palette-error-80: #FFB4A5;
  --md-ref-palette-error-90: #FFDAD3;
  --md-ref-palette-error-95: #FFEDE9;
  --md-ref-palette-error-99: #FFFBFB;
  --md-ref-palette-error-100: #FFFFFF;
  --md-ref-palette-neutral-0: #000000;
  --md-ref-palette-neutral-4: #0F0D14;
  --md-ref-palette-neutral-6: #141218;
  --md-ref-palette-neutral-10: #1C1B20;
  --md-ref-palette-neutral-12: #201F24;
  --md-ref-palette-neutral-17: #2B292F;
  --md-ref-palette-neutral-20: #312F35;
  --md-ref-palette-neutral-22: #36343A;
  --md-ref-palette-neutral-24: #3A383E;
  --md-ref-palette-neutral-30: #48464C;
  --md-ref-palette-neutral-40: #5F5D64;
  --md-ref-palette-neutral-50: #78767D;
  --md-ref-palette-neutral-60: #929097;
  --md-ref-palette-neutral-70: #ACAAB2;
  --md-ref-palette-neutral-80: #C8C5CD;
  --md-ref-palette-neutral-87: #DBD9E1;
  --md-ref-palette-neutral-90: #E4E1E9;
  --md-ref-palette-neutral-92: #E9E7EF;
  --md-ref-palette-neutral-94: #EFEDF5;
  --md-ref-palette-neutral-95: #F2F0F7;
  --md-ref-palette-neutral-96: #F5F2FA;
  --md-ref-palette-neutral-98: #FAF8FF;
  --md-ref-palette-neutral-99: #FDFCFF;
  --md-ref-palette-neutral-100: #FFFFFF;
  --md-ref-palette-neutral-variant-0: #000000;
  --md-ref-palette-neutral-variant-4: #110C19;
  --md-ref-palette-neutral-variant-6: #15111D;
  --md-ref-palette-neutral-variant-10: #1D1A25;
  --md-ref-palette-neutral-variant-12: #211E29;
  --md-ref-palette-neutral-variant-17: #2B2834;
  --md-ref-palette-neutral-variant-20: #322F3B;
  --md-ref-palette-neutral-variant-22: #36333F;
  --md-ref-palette-neutral-variant-24: #3B3744;
  --md-ref-palette-neutral-variant-30: #484552;
  --md-ref-palette-neutral-variant-40: #605C6A;
  --md-ref-palette-neutral-variant-50: #797583;
  --md-ref-palette-neutral-variant-60: #938F9D;
  --md-ref-palette-neutral-variant-70: #ADA9B8;
  --md-ref-palette-neutral-variant-80: #C9C4D4;
  --md-ref-palette-neutral-variant-87: #DCD8E7;
  --md-ref-palette-neutral-variant-90: #E5E0F0;
  --md-ref-palette-neutral-variant-92: #EAE6F6;
  --md-ref-palette-neutral-variant-94: #F0ECFB;
  --md-ref-palette-neutral-variant-95: #F3EEFE;
  --md-ref-palette-neutral-variant-96: #F6F2FF;
  --md-ref-palette-neutral-variant-98: #FAF8FF;
  --md-ref-palette-neutral-variant-99: #FDFCFF;
  --md-ref-palette-neutral-variant-100: #FFFFFF;
  --md-ref-palette-accent-0: #000000;
  --md-ref-palette-accent-10: #201C00;
  --md-ref-palette-accent-20: #363100;
  --md-ref-palette-accent-30: #4D4800;
  --md-ref-palette-accent-40: #676000;
  --md-ref-palette-accent-50: #817900;
  --md-ref-palette-accent-60: #9D9300;
  --md-ref-palette-accent-70: #BAAE03;
  --md-ref-palette-accent-80: #D7C931;
  --md-ref-palette-accent-90: #F6E54F;
  --md-ref-palette-accent-95: #FFF2AE;
  --md-ref-palette-accent-99: #FFFCF2;
  --md-ref-palette-accent-100: #FFFFFF;
  --md-ref-palette-highlight-0: #000000;
  --md-ref-palette-highlight-10: #2D102D;
  --md-ref-palette-highlight-20: #442644;
  --md-ref-palette-highlight-30: #5C3C5B;
  --md-ref-palette-highlight-40: #755374;
  --md-ref-palette-highlight-50: #8F6C8D;
  --md-ref-palette-highlight-60: #A985A8;
  --md-ref-palette-highlight-70: #C5A0C3;
  --md-ref-palette-highlight-80: #E1BBDF;
  --md-ref-palette-highlight-90: #FED6FC;
  --md-ref-palette-highlight-95: #FFEBFE;
  --md-ref-palette-highlight-99: #FFFBFF;
  --md-ref-palette-highlight-100: #FFFFFF;

  /* ---- shape (corner radii) ---- */
  --md-sys-shape-corner-none: 0;
  --md-sys-shape-corner-extra-small: 4px;
  --md-sys-shape-corner-small: 8px;
  --md-sys-shape-corner-medium: 12px;
  --md-sys-shape-corner-large: 16px;
  --md-sys-shape-corner-extra-large: 28px;
  --md-sys-shape-corner-full: 9999px;
  /* ---- elevation ---- */
  --md-sys-elevation-level0: none;
  --md-sys-elevation-level1: 0 1px 2px rgba(0,0,0,.30), 0 1px 3px 1px rgba(0,0,0,.15);
  --md-sys-elevation-level2: 0 1px 2px rgba(0,0,0,.30), 0 2px 6px 2px rgba(0,0,0,.15);
  --md-sys-elevation-level3: 0 1px 3px rgba(0,0,0,.30), 0 4px 8px 3px rgba(0,0,0,.15);
  --md-sys-elevation-level4: 0 2px 3px rgba(0,0,0,.30), 0 6px 10px 4px rgba(0,0,0,.15);
  --md-sys-elevation-level5: 0 4px 4px rgba(0,0,0,.30), 0 8px 12px 6px rgba(0,0,0,.15);
  /* ---- state-layer opacities ---- */
  --md-sys-state-hover-opacity: 0.08;
  --md-sys-state-focus-opacity: 0.10;
  --md-sys-state-pressed-opacity: 0.10;
  --md-sys-state-dragged-opacity: 0.16;
  /* ---- type scale (Manrope; BD weights: body 300, headings 400) ---- */
  --md-sys-typescale-display-large-font: var(--bd-font-sans);
  --md-sys-typescale-display-large-weight: 400;
  --md-sys-typescale-display-large-size: 57px;
  --md-sys-typescale-display-large-line-height: 64px;
  --md-sys-typescale-display-large-tracking: -0.25px;
  --md-sys-typescale-display-medium-font: var(--bd-font-sans);
  --md-sys-typescale-display-medium-weight: 400;
  --md-sys-typescale-display-medium-size: 45px;
  --md-sys-typescale-display-medium-line-height: 52px;
  --md-sys-typescale-display-medium-tracking: 0px;
  --md-sys-typescale-display-small-font: var(--bd-font-sans);
  --md-sys-typescale-display-small-weight: 400;
  --md-sys-typescale-display-small-size: 36px;
  --md-sys-typescale-display-small-line-height: 44px;
  --md-sys-typescale-display-small-tracking: 0px;
  --md-sys-typescale-headline-large-font: var(--bd-font-sans);
  --md-sys-typescale-headline-large-weight: 400;
  --md-sys-typescale-headline-large-size: 32px;
  --md-sys-typescale-headline-large-line-height: 40px;
  --md-sys-typescale-headline-large-tracking: 0px;
  --md-sys-typescale-headline-medium-font: var(--bd-font-sans);
  --md-sys-typescale-headline-medium-weight: 400;
  --md-sys-typescale-headline-medium-size: 28px;
  --md-sys-typescale-headline-medium-line-height: 36px;
  --md-sys-typescale-headline-medium-tracking: 0px;
  --md-sys-typescale-headline-small-font: var(--bd-font-sans);
  --md-sys-typescale-headline-small-weight: 400;
  --md-sys-typescale-headline-small-size: 24px;
  --md-sys-typescale-headline-small-line-height: 32px;
  --md-sys-typescale-headline-small-tracking: 0px;
  --md-sys-typescale-title-large-font: var(--bd-font-sans);
  --md-sys-typescale-title-large-weight: 400;
  --md-sys-typescale-title-large-size: 22px;
  --md-sys-typescale-title-large-line-height: 28px;
  --md-sys-typescale-title-large-tracking: 0px;
  --md-sys-typescale-title-medium-font: var(--bd-font-sans);
  --md-sys-typescale-title-medium-weight: 500;
  --md-sys-typescale-title-medium-size: 16px;
  --md-sys-typescale-title-medium-line-height: 24px;
  --md-sys-typescale-title-medium-tracking: 0.15px;
  --md-sys-typescale-title-small-font: var(--bd-font-sans);
  --md-sys-typescale-title-small-weight: 500;
  --md-sys-typescale-title-small-size: 14px;
  --md-sys-typescale-title-small-line-height: 20px;
  --md-sys-typescale-title-small-tracking: 0.1px;
  --md-sys-typescale-body-large-font: var(--bd-font-sans);
  --md-sys-typescale-body-large-weight: 300;
  --md-sys-typescale-body-large-size: 16px;
  --md-sys-typescale-body-large-line-height: 24px;
  --md-sys-typescale-body-large-tracking: 0.5px;
  --md-sys-typescale-body-medium-font: var(--bd-font-sans);
  --md-sys-typescale-body-medium-weight: 300;
  --md-sys-typescale-body-medium-size: 14px;
  --md-sys-typescale-body-medium-line-height: 20px;
  --md-sys-typescale-body-medium-tracking: 0.25px;
  --md-sys-typescale-body-small-font: var(--bd-font-sans);
  --md-sys-typescale-body-small-weight: 300;
  --md-sys-typescale-body-small-size: 12px;
  --md-sys-typescale-body-small-line-height: 16px;
  --md-sys-typescale-body-small-tracking: 0.4px;
  --md-sys-typescale-label-large-font: var(--bd-font-sans);
  --md-sys-typescale-label-large-weight: 500;
  --md-sys-typescale-label-large-size: 14px;
  --md-sys-typescale-label-large-line-height: 20px;
  --md-sys-typescale-label-large-tracking: 0.1px;
  --md-sys-typescale-label-medium-font: var(--bd-font-sans);
  --md-sys-typescale-label-medium-weight: 500;
  --md-sys-typescale-label-medium-size: 12px;
  --md-sys-typescale-label-medium-line-height: 16px;
  --md-sys-typescale-label-medium-tracking: 0.5px;
  --md-sys-typescale-label-small-font: var(--bd-font-sans);
  --md-sys-typescale-label-small-weight: 500;
  --md-sys-typescale-label-small-size: 11px;
  --md-sys-typescale-label-small-line-height: 16px;
  --md-sys-typescale-label-small-tracking: 0.5px;
}

[data-theme="dark"], .md-dark {
  /* ---- color roles (dark) ---- */
  --md-sys-color-primary: #CCBEFF;
  --md-sys-color-on-primary: #00218D;
  --md-sys-color-primary-container: #0032C4;
  --md-sys-color-on-primary-container: #E6DEFF;
  --md-sys-color-secondary: #FFB4A8;
  --md-sys-color-on-secondary: #690007;
  --md-sys-color-secondary-container: #910615;
  --md-sys-color-on-secondary-container: #FFDAD4;
  --md-sys-color-tertiary: #D2BCFF;
  --md-sys-color-on-tertiary: #281C85;
  --md-sys-color-tertiary-container: #4733A0;
  --md-sys-color-on-tertiary-container: #E9DDFF;
  --md-sys-color-error: #FFB4A5;
  --md-sys-color-on-error: #690000;
  --md-sys-color-error-container: #93000C;
  --md-sys-color-on-error-container: #FFDAD3;
  --md-sys-color-background: #141218;
  --md-sys-color-on-background: #E4E1E9;
  --md-sys-color-surface: #141218;
  --md-sys-color-on-surface: #E4E1E9;
  --md-sys-color-surface-variant: #484552;
  --md-sys-color-on-surface-variant: #C9C4D4;
  --md-sys-color-surface-dim: #141218;
  --md-sys-color-surface-bright: #3A383E;
  --md-sys-color-surface-container-lowest: #0F0D14;
  --md-sys-color-surface-container-low: #1C1B20;
  --md-sys-color-surface-container: #201F24;
  --md-sys-color-surface-container-high: #2B292F;
  --md-sys-color-surface-container-highest: #36343A;
  --md-sys-color-outline: #938F9D;
  --md-sys-color-outline-variant: #484552;
  --md-sys-color-inverse-surface: #E4E1E9;
  --md-sys-color-inverse-on-surface: #312F35;
  --md-sys-color-inverse-primary: #3547EB;
  --md-sys-color-shadow: #000000;
  --md-sys-color-scrim: #000000;
  --md-sys-color-surface-tint: #CCBEFF;
  --md-sys-color-accent: #D7C931;
  --md-sys-color-on-accent: #363100;
  --md-sys-color-accent-container: #4D4800;
  --md-sys-color-on-accent-container: #F6E54F;
  --md-sys-color-highlight: #E1BBDF;
  --md-sys-color-on-highlight: #442644;
  --md-sys-color-highlight-container: #5C3C5B;
  --md-sys-color-on-highlight-container: #FED6FC;
}
