/*
 * SmartZeit Design Tokens
 * =======================
 * Single-Source-of-Truth für alle CI-relevanten Werte (ADR 009).
 *
 * DESIGNER-ANLEITUNG: docs/branding.md
 *
 * Um das Branding zu wechseln: die --sz-*-Werte hier ändern, dann
 * `azd deploy` ausführen. Die MudBlazor-Aliase weiter unten müssen
 * NICHT angefasst werden — sie referenzieren die --sz-*-Tokens.
 *
 * Wichtig: --sz-focus-ring ist ein hartes Hex (nicht var(--sz-primary)).
 * Begründung: WCAG 2.2 AA verlangt ≥3:1 Kontrast gegen --sz-bg.
 * Bei einem Primary-Wechsel auf helle Töne separat prüfen.
 *
 * Sync-Pflichten bei Brand-Change:
 *   1. Keycloak-Theme: keycloak-theme/.../styles.css :root-Block
 *   2. E-Mail-Layout:  Email/Templates/_layout.css :root-Block
 *   Siehe docs/branding.md für die vollständige Checkliste.
 */

:root {
    /* ── Fonts ─────────────────────────────────────────────────────── */
    --sz-font-display: 'Instrument Serif', Georgia, serif;
    --sz-font-sans:    'Plus Jakarta Sans', 'Inter', ui-sans-serif, system-ui, sans-serif;
    --sz-font-ui:      'Inter', ui-sans-serif, system-ui, sans-serif;

    /* ── Brand ─────────────────────────────────────────────────────── */
    --sz-primary:          #059669;   /* Emerald-600: CTA-Buttons, Links, Akzente */
    --sz-primary-hover:    #047857;   /* Emerald-700: Hover */
    --sz-primary-active:   #065F46;   /* Emerald-800: Active/Pressed */
    --sz-primary-light:    #D1FAE5;   /* Emerald-100: Badge-BG, Highlights */
    --sz-primary-subtle:   #ECFDF5;   /* Emerald-50: Section-BG-Akzente */

    --sz-secondary:        #F59E0B;   /* Amber-500: Founder-Badge, Preisauszeichnung */
    --sz-secondary-hover:  #D97706;   /* Amber-600 */
    --sz-secondary-light:  #FEF3C7;   /* Amber-100 */

    /* ── Surfaces ──────────────────────────────────────────────────── */
    --sz-bg:               #FFFFFF;   /* Sauberes Weiss */
    --sz-bg-subtle:        #F8FAFC;   /* Slate-50: alternating section BGs */
    --sz-surface:          #FFFFFF;   /* Card-Hintergrund */
    --sz-surface-elevated: #F1F5F9;   /* Slate-100: Tabellen-Header, Section-BG */

    /* ── Text ──────────────────────────────────────────────────────── */
    --sz-text:             #0F172A;   /* Slate-950 */
    --sz-text-secondary:   #64748B;   /* Slate-500 */
    --sz-text-tertiary:    #94A3B8;   /* Slate-400: Placeholder, Disabled */
    --sz-text-on-primary:  #FFFFFF;

    /* ── Lines ─────────────────────────────────────────────────────── */
    --sz-border:           #E2E8F0;   /* Slate-200 */
    --sz-border-strong:    #94A3B8;   /* Slate-400 */

    /* ── Status — bewusst vom Primary ENTKOPPELT ───────────────────── */
    --sz-error:            #DC2626;
    --sz-success:          #16A34A;
    --sz-warning:          #D97706;
    --sz-info:             #0EA5E9;   /* Sky-500 — NICHT primary, eigene Konvention */

    /* ── A11y ──────────────────────────────────────────────────────── */
    --sz-focus-ring:       #059669;   /* WCAG 2.2 AA ≥3:1 gegen --sz-bg (4.54:1) */

    /* ── Tertiär (Bento-Card 3, Pricing-Gradient-Midpoint) ────────── */
    --sz-tertiary:         #0D9488;   /* Teal-600 */

    /* ── Neutrale UI-Farben ─────────────────────────────────────────── */
    --sz-dark:             #0F172A;   /* Slate-950: Footer, Hero-Overlays */
    --sz-muted:            #475569;   /* Slate-600 */
    --sz-neutral:          #CBD5E1;   /* Slate-300: Bullets, dekorative Elemente */

    /* ── Radius ────────────────────────────────────────────────────── */
    --sz-radius:           14px;      /* Cards, Buttons, Dialoge */
    --sz-radius-sm:        8px;
    --sz-radius-lg:        24px;      /* Hero-Cards, Feature-Bento */
    --sz-radius-pill:      999px;     /* Badges, Tags */

    /* ── Shadows ────────────────────────────────────────────────────── */
    --sz-shadow-sm:      0 1px 3px rgba(15,23,42,0.08), 0 1px 2px rgba(15,23,42,0.04);
    --sz-shadow:         0 4px 16px rgba(15,23,42,0.08), 0 2px 6px rgba(15,23,42,0.04);
    --sz-shadow-lg:      0 20px 60px rgba(15,23,42,0.12), 0 8px 24px rgba(15,23,42,0.06);
    --sz-shadow-primary: 0 8px 32px rgba(5,150,105,0.25);

    /* ── Gradients ──────────────────────────────────────────────────── */
    --sz-gradient-hero:    radial-gradient(ellipse 80% 60% at 50% -10%, rgba(5,150,105,0.08) 0%, transparent 60%);
    --sz-gradient-primary: linear-gradient(135deg, #059669 0%, #047857 100%);
    --sz-gradient-pricing: linear-gradient(135deg, #059669 0%, #0D9488 50%, #0891B2 100%);
    --sz-gradient-dark:    linear-gradient(180deg, #0F172A 0%, #1E293B 100%);

    /* ── MudBlazor-Aliase ──────────────────────────────────────────── */
    /* Farb-Aliase: MudBlazor-Components lesen diese automatisch.      */
    /* Typo, Layout, Elevation, Z-Index bleiben in App.razor <style>.  */
    --mud-palette-primary:            var(--sz-primary);
    --mud-palette-primary-text:       var(--sz-text-on-primary);
    --mud-palette-primary-darken:     var(--sz-primary-hover);
    --mud-palette-primary-lighten:    #34d399;
    --mud-palette-primary-hover:      rgba(5,150,105,0.04);
    --mud-palette-secondary:          var(--sz-secondary);
    --mud-palette-secondary-text:     var(--sz-text);
    --mud-palette-secondary-darken:   #D97706;
    --mud-palette-secondary-lighten:  #FDE68A;
    --mud-palette-secondary-hover:    rgba(245,158,11,0.04);
    --mud-palette-tertiary:           var(--sz-tertiary);
    --mud-palette-tertiary-text:      var(--sz-text-on-primary);
    --mud-palette-tertiary-darken:    #0F766E;
    --mud-palette-tertiary-lighten:   #2DD4BF;
    --mud-palette-tertiary-hover:     rgba(13,148,136,0.04);
    --mud-palette-info:               var(--sz-info);
    --mud-palette-info-text:          var(--sz-text-on-primary);
    --mud-palette-info-darken:        #0284c7;
    --mud-palette-info-lighten:       #38bdf8;
    --mud-palette-success:            var(--sz-success);
    --mud-palette-success-text:       var(--sz-text-on-primary);
    --mud-palette-success-darken:     #108a3c;
    --mud-palette-success-lighten:    #4dc87a;
    --mud-palette-warning:            var(--sz-warning);
    --mud-palette-warning-text:       var(--sz-text-on-primary);
    --mud-palette-warning-darken:     #b86505;
    --mud-palette-warning-lighten:    #e8a84a;
    --mud-palette-error:              var(--sz-error);
    --mud-palette-error-text:         var(--sz-text-on-primary);
    --mud-palette-error-darken:       #b91c1c;
    --mud-palette-error-lighten:      #ef5350;
    --mud-palette-dark:               var(--sz-text);
    --mud-palette-dark-text:          var(--sz-text-on-primary);
    --mud-palette-dark-darken:        #060d19;
    --mud-palette-dark-lighten:       #334155;
    --mud-palette-white:              var(--sz-surface);
    --mud-palette-black:              var(--sz-text);
    --mud-palette-background:         var(--sz-bg);
    --mud-palette-background-grey:    var(--sz-surface-elevated);
    --mud-palette-surface:            var(--sz-surface);
    --mud-palette-drawer-background:  var(--sz-surface);
    --mud-palette-drawer-text:        var(--sz-text);
    --mud-palette-drawer-icon:        var(--sz-text-secondary);
    --mud-palette-appbar-background:  var(--sz-surface);
    --mud-palette-appbar-text:        var(--sz-text);
    --mud-palette-text-primary:       var(--sz-text);
    --mud-palette-text-secondary:     var(--sz-text-secondary);
    --mud-palette-text-disabled:      rgba(0,0,0,0.38);
    --mud-palette-action-default:     var(--sz-text-secondary);
    --mud-palette-action-default-hover: rgba(0,0,0,0.04);
    --mud-palette-action-disabled:    rgba(0,0,0,0.26);
    --mud-palette-action-disabled-background: rgba(0,0,0,0.12);
    --mud-palette-divider:            var(--sz-border);
    --mud-palette-divider-light:      rgba(226,232,240,0.4);
    --mud-palette-lines-default:      var(--sz-border);
    --mud-palette-lines-inputs:       var(--sz-border-strong);
    --mud-palette-table-lines:        var(--sz-border);
    --mud-palette-table-striped:      rgba(0,0,0,0.02);
    --mud-palette-table-hover:        rgba(0,0,0,0.04);
    --mud-palette-overlay-dark:       rgba(15,23,42,0.5);
    --mud-palette-overlay-light:      rgba(255,255,255,0.7);
    --mud-palette-default:            var(--sz-border);
    --mud-palette-default-text:       #475569;
    --mud-palette-default-darken:     #CBD5E1;
    --mud-palette-default-lighten:    var(--sz-surface-elevated);
    --mud-palette-default-hover:      rgba(0,0,0,0.04);
}
