/* CuriaDesk – Design Tokens
   Quelle der Wahrheit für Farbe, Typografie, Raster und Bewegung.
   Einbinden vor allen anderen Stylesheets. */

:root {
    /* ---- Markenfarben -------------------------------------------------- */
    --rc-navy-50: #F1F3F5;
    --rc-navy-100: #E1E5E9;
    --rc-navy-200: #C4CAD3;
    --rc-navy-300: #9BA6B5;
    --rc-navy-400: #6E7E93;
    --rc-navy-500: #405572;
    --rc-navy-600: #1C3557;
    --rc-navy-700: #172B47;
    --rc-navy-800: #122339;
    --rc-navy-900: #0E1A2A;

    --rc-gold-50: #FBF9F6;
    --rc-gold-100: #F7F3EB;
    --rc-gold-200: #F0E7D7;
    --rc-gold-300: #E5D6BB;
    --rc-gold-400: #D9C39C;
    --rc-gold-500: #CDB17E;
    --rc-gold-600: #C4A265;
    --rc-gold-700: #9A8052;
    --rc-gold-800: #746241;
    --rc-gold-900: #4E4330;

    --rc-stone-50: #F7F4ED;
    --rc-stone-100: #EFEADF;
    --rc-stone-200: #D5D4D4;
    --rc-stone-300: #BBBCBF;
    --rc-stone-400: #9EA2A9;
    --rc-stone-500: #828792;
    --rc-stone-600: #6B7280;
    --rc-stone-700: #565C68;
    --rc-stone-800: #434853;
    --rc-stone-900: #2F353D;

    --rc-parchment: #F4EFE4;
    --rc-ink: #10151C;
    --rc-white: #FFFFFF;

    /* ---- Status -------------------------------------------------------- */
    --rc-success: #2F6B4F;
    --rc-success-bg: #E6EDEA;
    --rc-warning: #B07419;
    --rc-warning-bg: #F6EEE3;
    --rc-danger: #A33636;
    --rc-danger-bg: #F4E7E7;

    /* ---- Semantische Rollen (Light) ------------------------------------ */
    --rc-bg: var(--rc-parchment);
    --rc-bg-subtle: #FAF8F3;
    --rc-surface: #FFFFFF;
    --rc-surface-raised: #FFFFFF;
    --rc-surface-sunken: #F7F4ED;
    --rc-border: #DBDFE4;
    --rc-border-strong: #A9B2BF;
    --rc-text: #122339;
    --rc-text-muted: #5F6D80;
    --rc-text-subtle: #6E7C8E;
    --rc-text-inverse: #FFFFFF;
    --rc-accent: #C4A265;
    --rc-accent-hover: #9A8052;
    --rc-accent-contrast: #122339;
    --rc-link: #1C3557;
    --rc-focus: #9A8052;
    --rc-overlay: rgba(18, 34, 57, 0.55);

    /* ---- Typografie ----------------------------------------------------- */
    /* Display = Lora: Überschriften, Wortmarke, Kennzahlen.
       Sans = Inter: alles Funktionale, inkl. Tabellenziffern.
       Mono = JetBrains Mono: Aktenzeichen, Steuernummern, Fristen-IDs. */
    --rc-font-display: "Lora", "Iowan Old Style", Georgia, "Times New Roman", serif;
    --rc-font-sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;
    --rc-font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", Consolas, monospace;

    --rc-text-2xs: 0.6875rem;  /* 11 – Labels, Aktenzeichen in Listen */
    --rc-text-xs: 0.75rem;     /* 12                                  */
    --rc-text-sm: 0.875rem;    /* 14 – Tabellen, Metadaten            */
    --rc-text-base: 1rem;      /* 16 – Fliesstext                     */
    --rc-text-lg: 1.125rem;    /* 18                                  */
    --rc-text-xl: 1.375rem;    /* 22                                  */
    --rc-text-2xl: 1.75rem;    /* 28                                  */
    --rc-text-3xl: 2.25rem;    /* 36                                  */
    --rc-text-4xl: 3rem;       /* 48 – Hero                           */

    --rc-leading-tight: 1.15;
    --rc-leading-snug: 1.35;
    --rc-leading-normal: 1.6;
    --rc-leading-loose: 1.75;

    --rc-tracking-tight: -0.01em;
    --rc-tracking-normal: 0;
    --rc-tracking-wide: 0.04em;
    --rc-tracking-eyebrow: 0.12em;   /* gesperrte Versalien wie im Logo */

    --rc-weight-light: 300;
    --rc-weight-regular: 400;
    --rc-weight-medium: 500;
    --rc-weight-semibold: 600;
    --rc-weight-bold: 700;

    /* ---- Raster --------------------------------------------------------- */
    --rc-space-1: 0.25rem;
    --rc-space-2: 0.5rem;
    --rc-space-3: 0.75rem;
    --rc-space-4: 1rem;
    --rc-space-5: 1.5rem;
    --rc-space-6: 2rem;
    --rc-space-7: 3rem;
    --rc-space-8: 4rem;
    --rc-space-9: 6rem;

    /* Kanten bleiben streng – das Signet hat keine Rundungen. */
    --rc-radius-sm: 2px;
    --rc-radius-md: 3px;
    --rc-radius-lg: 6px;
    --rc-radius-xl: 10px;
    --rc-radius-pill: 999px;

    --rc-border-hairline: 1px;
    --rc-container: 76rem;

    /* ---- Elevation ------------------------------------------------------ */
    --rc-shadow-xs: 0 1px 2px rgba(18, 34, 57, 0.06);
    --rc-shadow-sm: 0 1px 3px rgba(18, 34, 57, 0.10), 0 1px 2px rgba(18, 34, 57, 0.06);
    --rc-shadow-md: 0 4px 12px rgba(18, 34, 57, 0.10), 0 2px 4px rgba(18, 34, 57, 0.06);
    --rc-shadow-lg: 0 12px 32px rgba(18, 34, 57, 0.14);
    --rc-ring-focus: 0 0 0 3px #E4D5BA;

    /* ---- Bewegung ------------------------------------------------------- */
    --rc-duration-fast: 120ms;
    --rc-duration-base: 200ms;
    --rc-duration-slow: 320ms;
    --rc-ease-standard: cubic-bezier(0.2, 0, 0.2, 1);
    --rc-ease-out: cubic-bezier(0.16, 1, 0.3, 1);
}

/* ---- Dark Theme --------------------------------------------------------- */
[data-theme="dark"] {
    --rc-bg: #0E1A2A;
    --rc-bg-subtle: #122339;
    --rc-surface: #203045;
    --rc-surface-raised: #2C3B4F;
    --rc-surface-sunken: #0E1A2A;
    --rc-border: #384659;
    --rc-border-strong: #596574;
    --rc-text: #EDF1F7;
    --rc-text-muted: #A9B7CB;
    --rc-text-subtle: #7E8DA3;
    --rc-text-inverse: #0E1A2A;
    --rc-accent: #D9C39C;
    --rc-accent-hover: #E5D6BB;
    --rc-accent-contrast: #0E1A2A;
    --rc-link: #E5D6BB;
    --rc-focus: #E5D6BB;
    --rc-overlay: rgba(5, 9, 15, 0.66);
    --rc-shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.5);
    --rc-shadow-md: 0 4px 14px rgba(0, 0, 0, 0.5);
    --rc-shadow-lg: 0 14px 36px rgba(0, 0, 0, 0.6);
}

@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) { color-scheme: dark; }
}

@media (prefers-reduced-motion: reduce) {
    :root {
        --rc-duration-fast: 0ms;
        --rc-duration-base: 0ms;
        --rc-duration-slow: 0ms;
    }
}
