/* ==================================================================
   MunzPart GmbH Steuerberatungsgesellschaft — Design System
   Verbindliche Tokens (Farben, Typografie, Spacing, Effekte, Fonts).
   Übernommen 1:1 aus dem Handoff-Design-System
   (_ds/munzpart-design-system-…/tokens/*.css). Single source of truth.
================================================================== */

/* --- Fonts: Libre Baskerville (Headlines/Wortmarke), Source Sans 3 (Body/UI) --- */
/* Lokal selbst gehostet — keine externen Requests (kein Google Fonts). */
@import "../assets/fonts/fonts.css";

:root {
  /* --- Colors --- */
  /* Brand — primary (Navy) */
  --mp-navy: #001F60;
  --mp-navy-700: #001A52;
  --mp-navy-900: #001236;
  --mp-navy-300: #4A5C8C;
  --mp-navy-100: #E3E7F0;

  /* Brand — accent (Grün) */
  --mp-green: #6CB520;
  --mp-green-600: #5C9E18;
  --mp-green-700: #4E8814;
  --mp-green-100: #EAF4DC;

  /* Neutrals */
  --mp-white: #FFFFFF;
  --mp-gray-50:  #F7F8FA;
  --mp-gray-100: #F2F2F2;
  --mp-gray-200: #E6E8EC;
  --mp-gray-300: #D3D7DE;
  --mp-gray-400: #AEB4BF;
  --mp-gray-600: #6B7280;
  --mp-gray-800: #333A44;
  --mp-black: #14181F;

  /* Semantic aliases */
  --mp-primary: var(--mp-navy);
  --mp-primary-hover: var(--mp-navy-700);
  --mp-accent: var(--mp-green);
  --mp-accent-hover: var(--mp-green-600);
  --mp-accent-pressed: var(--mp-green-700);

  --mp-text: var(--mp-navy);
  --mp-text-body: var(--mp-gray-800);
  --mp-text-muted: var(--mp-gray-600);
  --mp-text-on-dark: var(--mp-white);
  --mp-text-on-accent: var(--mp-white);

  --mp-surface: var(--mp-white);
  --mp-surface-subtle: var(--mp-gray-100);
  --mp-surface-navy: var(--mp-navy);
  --mp-surface-card: var(--mp-white);

  --mp-border: var(--mp-gray-300);
  --mp-border-strong: var(--mp-navy);
  --mp-focus-ring: var(--mp-green);

  --mp-success: var(--mp-green);
  --mp-danger: #C0392B;
  --mp-warning: #D68910;

  /* --- Typography --- */
  --mp-font-serif: "Libre Baskerville", Georgia, "Times New Roman", serif;
  --mp-font-sans:  "Source Sans 3", "Segoe UI", Calibri, system-ui, sans-serif;

  --mp-font-display: var(--mp-font-serif);
  --mp-font-heading: var(--mp-font-serif);
  --mp-font-body:    var(--mp-font-sans);
  --mp-font-ui:      var(--mp-font-sans);

  --mp-text-xs:   0.75rem;
  --mp-text-sm:   0.875rem;
  --mp-text-base: 1rem;
  --mp-text-md:   1.125rem;
  --mp-text-lg:   1.375rem;
  --mp-text-xl:   1.75rem;
  --mp-text-2xl:  2.25rem;
  --mp-text-3xl:  3rem;
  --mp-text-4xl:  3.75rem;

  --mp-weight-regular: 400;
  --mp-weight-medium:  500;
  --mp-weight-semibold:600;
  --mp-weight-bold:    700;

  --mp-leading-tight: 1.15;
  --mp-leading-snug:  1.3;
  --mp-leading-normal:1.6;

  --mp-tracking-tight: -0.01em;
  --mp-tracking-normal: 0;
  --mp-tracking-wide:  0.06em;

  /* --- Spacing, radii, layout --- */
  --mp-space-1:  4px;
  --mp-space-2:  8px;
  --mp-space-3:  12px;
  --mp-space-4:  16px;
  --mp-space-5:  24px;
  --mp-space-6:  32px;
  --mp-space-7:  48px;
  --mp-space-8:  64px;
  --mp-space-9:  96px;
  --mp-space-10: 128px;

  --mp-radius-sm: 3px;
  --mp-radius-md: 6px;
  --mp-radius-lg: 10px;
  --mp-radius-pill: 999px;

  --mp-container: 1200px;
  --mp-container-narrow: 760px;
  --mp-gutter: 24px;

  /* --- Effects: shadows, borders, transitions --- */
  --mp-shadow-sm: 0 1px 2px rgba(0, 31, 96, 0.06);
  --mp-shadow-md: 0 4px 14px rgba(0, 31, 96, 0.08);
  --mp-shadow-lg: 0 12px 32px rgba(0, 31, 96, 0.12);

  --mp-border-width: 1px;
  --mp-border-accent-width: 3px;

  --mp-ring: 0 0 0 3px rgba(108, 181, 32, 0.35);

  --mp-transition-fast: 120ms ease;
  --mp-transition: 180ms ease;
}
