/* appsolvia Design System – Tokens (Figma "Appsolvia.ai", Logo-Refresh 2026). Farben nur über diese Variablen. */
:root {
  /* Primary (Grün) */
  --primary-10: #FCFEFD; --primary-50: #F7FAF9; --primary-100: #F1F9F7; --primary-300: #C7E4DD;
  --primary-500: #1D9274; --primary-600: #0E644E; --primary-700: #0A3933;
  /* Secondary (Navy) */
  --secondary-10: #FCFDFD; --secondary-100: #E2E7EB; --secondary-300: #8A9CAF; --secondary-500: #14385F;
  --secondary-700: #0F2A48; --secondary-900: #050E18;
  /* Neutral (warmes Grau) */
  --neutral-100: #EAEFF0; --neutral-200: #CFD8D9; --neutral-300: #9DABAC; --neutral-400: #6A7879;
  --neutral-500: #46595B; --neutral-600: #354345;
  /* Feedback */
  --success-500: #007C25; --success-100: #E4EFE7; --info-500: #0061A7; --info-100: #DAE6EE;
  --warning-500: #7C6A00; --warning-100: #F2EDCE; --error-500: #A70000; --error-100: #FBF2F2;
  --accent-orange-500: #BE5900;
  /* Verläufe */
  --gradient-01: linear-gradient(119.358deg, #1D9274 0%, #050E18 100%);
  --gradient-02: linear-gradient(119.358deg, #1D9274 0%, #14385F 100%);
  --gradient-03: linear-gradient(119.358deg, #C7E4DD 0%, #F1F9F7 100%);
  --gradient-app-bg: linear-gradient(119.358deg, rgba(29,146,116,.3) 0%, rgba(20,56,95,.3) 100%), linear-gradient(#F5F5F5, #F5F5F5);
  /* Semantik */
  --text-body: var(--neutral-600); --text-muted: var(--neutral-400); --text-label: var(--secondary-500);
  --text-heading: var(--neutral-600); --text-on-primary: #FCFEFD;
  --surface-page: #FCFEFD; --surface-card: #FCFEFD; --surface-tint: var(--primary-100);
  --border-default: var(--neutral-100); --border-strong: var(--neutral-200);
  --link-color: var(--primary-500); --link-hover: var(--primary-600);
  --btn-primary: var(--primary-500); --btn-primary-hover: var(--primary-600); --btn-primary-active: var(--primary-700);
  --btn-disabled-bg: var(--neutral-100); --btn-disabled-fg: var(--neutral-300);
  --btn-secondary-fg: var(--primary-600); --hover-tint: var(--primary-100); --active-tint: var(--primary-300);
  --focus-ring: 0 0 0 2.5px var(--accent-orange-500);
  /* Radius, Schatten, Abstände */
  --radius-4: 4px; --radius-8: 8px; --radius-16: 16px; --radius-32: 32px;
  --radius-bubble-user: 16px 4px 16px 16px; --radius-bubble-bot: 4px 16px 16px 16px;
  --shadow-5: 0 2px 8px rgba(20,56,95,.30); --shadow-10: 0 2px 12px rgba(20,56,95,.50);
  --space-4: 4px; --space-8: 8px; --space-16: 16px; --space-24: 24px; --space-32: 32px; --space-40: 40px;
  --transition-base: all .3s ease; --transition-fast: all .2s ease;
  /* Typografie */
  --font-heading: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
  --font-body: 'Nunito Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
  --font-mono: ui-monospace, 'Cascadia Code', Consolas, monospace;
  color-scheme: light;
}

/* Dunkelmodus – aus den DS-Skalen abgeleitet (nicht im Figma definiert). */
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --gradient-app-bg: linear-gradient(119.358deg, rgba(29,146,116,.32) 0%, rgba(20,56,95,.42) 100%), linear-gradient(#071419, #071419);
    --surface-page: #0E262C; --surface-card: #0E262C; --surface-tint: #113631;
    --text-body: #EAEFF0; --text-heading: #EAEFF0; --text-muted: #9DABAC; --text-label: #8A9CAF;
    --border-default: #1D3C42; --border-strong: #2B4E54; --link-color: #C7E4DD; --link-hover: #FCFEFD;
    --btn-primary-hover: #23A887; --btn-primary-active: #0E644E; --btn-disabled-bg: #1D3C42; --btn-disabled-fg: #6A7879;
    --btn-secondary-fg: #C7E4DD; --hover-tint: #113631; --active-tint: #1D3C42;
    --success-100: #12332A; --info-100: #12293A; --warning-100: #2E2A12; --error-100: #3A1616;
    --success-500: #6FCB8B; --info-500: #7DB6E0; --warning-500: #D9C25A; --error-500: #F08A8A;
    --focus-ring: 0 0 0 2.5px #F08A3A;
    --shadow-5: 0 2px 8px rgba(0,0,0,.45); --shadow-10: 0 2px 12px rgba(0,0,0,.6);
    color-scheme: dark;
  }
}
:root[data-theme="dark"] {
  --gradient-app-bg: linear-gradient(119.358deg, rgba(29,146,116,.32) 0%, rgba(20,56,95,.42) 100%), linear-gradient(#071419, #071419);
  --surface-page: #0E262C; --surface-card: #0E262C; --surface-tint: #113631;
  --text-body: #EAEFF0; --text-heading: #EAEFF0; --text-muted: #9DABAC; --text-label: #8A9CAF;
  --border-default: #1D3C42; --border-strong: #2B4E54; --link-color: #C7E4DD; --link-hover: #FCFEFD;
  --btn-primary-hover: #23A887; --btn-primary-active: #0E644E; --btn-disabled-bg: #1D3C42; --btn-disabled-fg: #6A7879;
  --btn-secondary-fg: #C7E4DD; --hover-tint: #113631; --active-tint: #1D3C42;
  --success-100: #12332A; --info-100: #12293A; --warning-100: #2E2A12; --error-100: #3A1616;
  --success-500: #6FCB8B; --info-500: #7DB6E0; --warning-500: #D9C25A; --error-500: #F08A8A;
  --focus-ring: 0 0 0 2.5px #F08A3A;
  --shadow-5: 0 2px 8px rgba(0,0,0,.45); --shadow-10: 0 2px 12px rgba(0,0,0,.6);
  color-scheme: dark;
}
