/* Generated from presets.json by tools/generate_theme_palettes.py. */

:root {
  color-scheme: light;
  --bg-app: #F8FAFC;
  --bg-surface: #FFFFFF;
  --color-primary: #2563EB;
  --color-on-primary: #FFFFFF;
  --bg-primary-subtle: #DBEAFE;
  --text-primary: #0F172A;
  --text-secondary: #5D6C82;
  --border-default: #E2E8F0;
  --bg-surface-hover: #F1F5F9;
  --color-accent: #1D4ED8;
  --bg-elevated: #F1F5F9;
  --focus-ring: #2563EB;
  --overlay: #0F172A;
  --color-success: #137536;
  --color-danger: #C92020;
  --color-warning: #985F07;
  --color-info: #0369A1;
}

[data-theme="dark"] {
  color-scheme: dark;
  --bg-app: #0B1220;
  --bg-surface: #151F32;
  --color-primary: #60A5FA;
  --color-on-primary: #08111F;
  --bg-primary-subtle: #1E3A5F;
  --text-primary: #F1F5F9;
  --text-secondary: #94A3B8;
  --border-default: #334155;
  --bg-surface-hover: #1D2A40;
  --color-accent: #93C5FD;
  --bg-elevated: #1D2A40;
  --focus-ring: #60A5FA;
  --overlay: #000000;
  --color-success: #4ADE80;
  --color-danger: #FB8282;
  --color-warning: #FBBF24;
  --color-info: #38BDF8;
}

[data-theme-family="pastel-dream"] {
  color-scheme: light;
  --bg-app: #FCF9FF;
  --bg-surface: #FFFFFF;
  --color-primary: #7C3AED;
  --color-on-primary: #FFFFFF;
  --bg-primary-subtle: #F0E8FF;
  --text-primary: #29213D;
  --text-secondary: #6A627D;
  --border-default: #EDE7F6;
  --bg-surface-hover: #F6F0FF;
  --color-accent: #6D28D9;
  --bg-elevated: #F6F0FF;
  --focus-ring: #7C3AED;
  --overlay: #29213D;
  --color-success: #137536;
  --color-danger: #C92020;
  --color-warning: #985F07;
  --color-info: #0369A1;
}

[data-theme-family="pastel-dream"][data-theme="dark"] {
  color-scheme: dark;
  --bg-app: #191526;
  --bg-surface: #262038;
  --color-primary: #B4A0FF;
  --color-on-primary: #191526;
  --bg-primary-subtle: #3E315C;
  --text-primary: #F5F0FF;
  --text-secondary: #A9A0BD;
  --border-default: #443B56;
  --bg-surface-hover: #302844;
  --color-accent: #C9BBFF;
  --bg-elevated: #302844;
  --focus-ring: #B4A0FF;
  --overlay: #000000;
  --color-success: #4ADE80;
  --color-danger: #FB8282;
  --color-warning: #FBBF24;
  --color-info: #38BDF8;
}

[data-theme-family="forest-nature"] {
  color-scheme: light;
  --bg-app: #F5F8F1;
  --bg-surface: #FFFFFF;
  --color-primary: #287A58;
  --color-on-primary: #FFFFFF;
  --bg-primary-subtle: #DCE9D8;
  --text-primary: #203329;
  --text-secondary: #5C6F64;
  --border-default: #D6E3D8;
  --bg-surface-hover: #EAF1E8;
  --color-accent: #216847;
  --bg-elevated: #EAF1E8;
  --focus-ring: #287A58;
  --overlay: #203329;
  --color-success: #137536;
  --color-danger: #C92020;
  --color-warning: #985F07;
  --color-info: #0369A1;
}

[data-theme-family="forest-nature"][data-theme="dark"] {
  color-scheme: dark;
  --bg-app: #101C17;
  --bg-surface: #1B2B22;
  --color-primary: #6DD5A0;
  --color-on-primary: #102018;
  --bg-primary-subtle: #234938;
  --text-primary: #EDF7EF;
  --text-secondary: #9CB6A4;
  --border-default: #345042;
  --bg-surface-hover: #263A2E;
  --color-accent: #96E6BE;
  --bg-elevated: #263A2E;
  --focus-ring: #6DD5A0;
  --overlay: #000000;
  --color-success: #4ADE80;
  --color-danger: #FB8282;
  --color-warning: #FBBF24;
  --color-info: #38BDF8;
}

[data-theme-family="neon-pulse"] {
  color-scheme: light;
  --bg-app: #F3F8FC;
  --bg-surface: #FFFFFF;
  --color-primary: #00748A;
  --color-on-primary: #FFFFFF;
  --bg-primary-subtle: #D6F5F2;
  --text-primary: #14233A;
  --text-secondary: #586C82;
  --border-default: #D9E5EE;
  --bg-surface-hover: #EAF2F8;
  --color-accent: #006B81;
  --bg-elevated: #EAF2F8;
  --focus-ring: #00748A;
  --overlay: #14233A;
  --color-success: #137536;
  --color-danger: #C92020;
  --color-warning: #985F07;
  --color-info: #0369A1;
}

[data-theme-family="neon-pulse"][data-theme="dark"] {
  color-scheme: dark;
  --bg-app: #090D19;
  --bg-surface: #151B2C;
  --color-primary: #00E5C3;
  --color-on-primary: #071A18;
  --bg-primary-subtle: #193E40;
  --text-primary: #F0F7FF;
  --text-secondary: #9CAFC8;
  --border-default: #303D55;
  --bg-surface-hover: #1B2740;
  --color-accent: #C084FC;
  --bg-elevated: #1B2740;
  --focus-ring: #00E5C3;
  --overlay: #000000;
  --color-success: #4ADE80;
  --color-danger: #FB8282;
  --color-warning: #FBBF24;
  --color-info: #38BDF8;
}

[data-theme-family="classic-heritage"] {
  color-scheme: light;
  --bg-app: #FAF7F0;
  --bg-surface: #FFFFFF;
  --color-primary: #79532E;
  --color-on-primary: #FFFFFF;
  --bg-primary-subtle: #F0E5D4;
  --text-primary: #332920;
  --text-secondary: #75675C;
  --border-default: #E9DED0;
  --bg-surface-hover: #F5EEE3;
  --color-accent: #674322;
  --bg-elevated: #F5EEE3;
  --focus-ring: #79532E;
  --overlay: #332920;
  --color-success: #137536;
  --color-danger: #C92020;
  --color-warning: #985F07;
  --color-info: #0369A1;
}

[data-theme-family="classic-heritage"][data-theme="dark"] {
  color-scheme: dark;
  --bg-app: #201B19;
  --bg-surface: #302823;
  --color-primary: #D6B47B;
  --color-on-primary: #241B11;
  --bg-primary-subtle: #51412B;
  --text-primary: #F6EBDD;
  --text-secondary: #B7A998;
  --border-default: #4E4036;
  --bg-surface-hover: #3C322A;
  --color-accent: #E5C996;
  --bg-elevated: #3C322A;
  --focus-ring: #D6B47B;
  --overlay: #000000;
  --color-success: #4ADE80;
  --color-danger: #FB8282;
  --color-warning: #FBBF24;
  --color-info: #38BDF8;
}

@media (prefers-color-scheme: light) {

  [data-color-mode="system"] {
    color-scheme: light;
    --bg-app: #F8FAFC;
    --bg-surface: #FFFFFF;
    --color-primary: #2563EB;
    --color-on-primary: #FFFFFF;
    --bg-primary-subtle: #DBEAFE;
    --text-primary: #0F172A;
    --text-secondary: #5D6C82;
    --border-default: #E2E8F0;
    --bg-surface-hover: #F1F5F9;
    --color-accent: #1D4ED8;
    --bg-elevated: #F1F5F9;
    --focus-ring: #2563EB;
    --overlay: #0F172A;
    --color-success: #137536;
    --color-danger: #C92020;
    --color-warning: #985F07;
    --color-info: #0369A1;
  }

  [data-color-mode="system"][data-theme-family="pastel-dream"] {
    color-scheme: light;
    --bg-app: #FCF9FF;
    --bg-surface: #FFFFFF;
    --color-primary: #7C3AED;
    --color-on-primary: #FFFFFF;
    --bg-primary-subtle: #F0E8FF;
    --text-primary: #29213D;
    --text-secondary: #6A627D;
    --border-default: #EDE7F6;
    --bg-surface-hover: #F6F0FF;
    --color-accent: #6D28D9;
    --bg-elevated: #F6F0FF;
    --focus-ring: #7C3AED;
    --overlay: #29213D;
    --color-success: #137536;
    --color-danger: #C92020;
    --color-warning: #985F07;
    --color-info: #0369A1;
  }

  [data-color-mode="system"][data-theme-family="forest-nature"] {
    color-scheme: light;
    --bg-app: #F5F8F1;
    --bg-surface: #FFFFFF;
    --color-primary: #287A58;
    --color-on-primary: #FFFFFF;
    --bg-primary-subtle: #DCE9D8;
    --text-primary: #203329;
    --text-secondary: #5C6F64;
    --border-default: #D6E3D8;
    --bg-surface-hover: #EAF1E8;
    --color-accent: #216847;
    --bg-elevated: #EAF1E8;
    --focus-ring: #287A58;
    --overlay: #203329;
    --color-success: #137536;
    --color-danger: #C92020;
    --color-warning: #985F07;
    --color-info: #0369A1;
  }

  [data-color-mode="system"][data-theme-family="neon-pulse"] {
    color-scheme: light;
    --bg-app: #F3F8FC;
    --bg-surface: #FFFFFF;
    --color-primary: #00748A;
    --color-on-primary: #FFFFFF;
    --bg-primary-subtle: #D6F5F2;
    --text-primary: #14233A;
    --text-secondary: #586C82;
    --border-default: #D9E5EE;
    --bg-surface-hover: #EAF2F8;
    --color-accent: #006B81;
    --bg-elevated: #EAF2F8;
    --focus-ring: #00748A;
    --overlay: #14233A;
    --color-success: #137536;
    --color-danger: #C92020;
    --color-warning: #985F07;
    --color-info: #0369A1;
  }

  [data-color-mode="system"][data-theme-family="classic-heritage"] {
    color-scheme: light;
    --bg-app: #FAF7F0;
    --bg-surface: #FFFFFF;
    --color-primary: #79532E;
    --color-on-primary: #FFFFFF;
    --bg-primary-subtle: #F0E5D4;
    --text-primary: #332920;
    --text-secondary: #75675C;
    --border-default: #E9DED0;
    --bg-surface-hover: #F5EEE3;
    --color-accent: #674322;
    --bg-elevated: #F5EEE3;
    --focus-ring: #79532E;
    --overlay: #332920;
    --color-success: #137536;
    --color-danger: #C92020;
    --color-warning: #985F07;
    --color-info: #0369A1;
  }

}

@media (prefers-color-scheme: dark) {

  [data-color-mode="system"] {
    color-scheme: dark;
    --bg-app: #0B1220;
    --bg-surface: #151F32;
    --color-primary: #60A5FA;
    --color-on-primary: #08111F;
    --bg-primary-subtle: #1E3A5F;
    --text-primary: #F1F5F9;
    --text-secondary: #94A3B8;
    --border-default: #334155;
    --bg-surface-hover: #1D2A40;
    --color-accent: #93C5FD;
    --bg-elevated: #1D2A40;
    --focus-ring: #60A5FA;
    --overlay: #000000;
    --color-success: #4ADE80;
    --color-danger: #FB8282;
    --color-warning: #FBBF24;
    --color-info: #38BDF8;
  }

  [data-color-mode="system"][data-theme-family="pastel-dream"] {
    color-scheme: dark;
    --bg-app: #191526;
    --bg-surface: #262038;
    --color-primary: #B4A0FF;
    --color-on-primary: #191526;
    --bg-primary-subtle: #3E315C;
    --text-primary: #F5F0FF;
    --text-secondary: #A9A0BD;
    --border-default: #443B56;
    --bg-surface-hover: #302844;
    --color-accent: #C9BBFF;
    --bg-elevated: #302844;
    --focus-ring: #B4A0FF;
    --overlay: #000000;
    --color-success: #4ADE80;
    --color-danger: #FB8282;
    --color-warning: #FBBF24;
    --color-info: #38BDF8;
  }

  [data-color-mode="system"][data-theme-family="forest-nature"] {
    color-scheme: dark;
    --bg-app: #101C17;
    --bg-surface: #1B2B22;
    --color-primary: #6DD5A0;
    --color-on-primary: #102018;
    --bg-primary-subtle: #234938;
    --text-primary: #EDF7EF;
    --text-secondary: #9CB6A4;
    --border-default: #345042;
    --bg-surface-hover: #263A2E;
    --color-accent: #96E6BE;
    --bg-elevated: #263A2E;
    --focus-ring: #6DD5A0;
    --overlay: #000000;
    --color-success: #4ADE80;
    --color-danger: #FB8282;
    --color-warning: #FBBF24;
    --color-info: #38BDF8;
  }

  [data-color-mode="system"][data-theme-family="neon-pulse"] {
    color-scheme: dark;
    --bg-app: #090D19;
    --bg-surface: #151B2C;
    --color-primary: #00E5C3;
    --color-on-primary: #071A18;
    --bg-primary-subtle: #193E40;
    --text-primary: #F0F7FF;
    --text-secondary: #9CAFC8;
    --border-default: #303D55;
    --bg-surface-hover: #1B2740;
    --color-accent: #C084FC;
    --bg-elevated: #1B2740;
    --focus-ring: #00E5C3;
    --overlay: #000000;
    --color-success: #4ADE80;
    --color-danger: #FB8282;
    --color-warning: #FBBF24;
    --color-info: #38BDF8;
  }

  [data-color-mode="system"][data-theme-family="classic-heritage"] {
    color-scheme: dark;
    --bg-app: #201B19;
    --bg-surface: #302823;
    --color-primary: #D6B47B;
    --color-on-primary: #241B11;
    --bg-primary-subtle: #51412B;
    --text-primary: #F6EBDD;
    --text-secondary: #B7A998;
    --border-default: #4E4036;
    --bg-surface-hover: #3C322A;
    --color-accent: #E5C996;
    --bg-elevated: #3C322A;
    --focus-ring: #D6B47B;
    --overlay: #000000;
    --color-success: #4ADE80;
    --color-danger: #FB8282;
    --color-warning: #FBBF24;
    --color-info: #38BDF8;
  }

}

:root {
  --status-success-bg: color-mix(in srgb, var(--color-success) 7%, var(--bg-surface));
  --status-error-bg: color-mix(in srgb, var(--color-danger) 7%, var(--bg-surface));
  --status-warning-bg: color-mix(in srgb, var(--color-warning) 7%, var(--bg-surface));
  --status-info-bg: color-mix(in srgb, var(--color-info) 7%, var(--bg-surface));
  --status-success-fg: var(--text-primary); --status-error-fg: var(--text-primary);
  --status-warning-fg: var(--text-primary); --status-info-fg: var(--text-primary);
  --status-success-border: var(--color-success); --status-error-border: var(--color-danger);
  --status-warning-border: var(--color-warning); --status-info-border: var(--color-info);
}
