/* hu-math-tokens.css – generiert von build.sh am 2026-05-04 12:02:08, nicht direkt editieren. */
/* Nur Design-Tokens und @font-face. Keine Resets, keine Defaults. */

/* ==========================================================================
   HU Berlin – Institut für Mathematik · Farbpalette
   Quelle: HU Corporate Design Manual (S. 19–21)
   ========================================================================== */
:root {
  color-scheme: light;

  /* Brand — HU-Blau I/II/III/IV */
  --hu-blue:       #00376C;  /* HU-Blau I  – Primärfarbe */
  --hu-blue-dark:  #00376C;  /* gleiche Primärfarbe für Hover */
  --hu-blue-ii:    #004C90;  /* HU-Blau II */
  --hu-blue-iii:   #ABCDF1;  /* HU-Blau III */
  --hu-blue-iv:    #E3F1FF;  /* HU-Blau IV  – helle Info-Fläche */

  /* HU-Akzentfarben — sparsam einsetzen */
  --hu-accent-red:    #E30031;
  --hu-accent-orange: #E74306;
  --hu-accent-green:  #059931;
  --hu-accent-petrol: #3a7775;
  --hu-accent-pink:   #e5007c;

  /* Neutralpalette — Hintergrund I/II/III + HU-Schwarz I–V */
  --bg:            #ffffff;
  --bg-subtle:     #FAFAF5;  /* Hintergrund I  */
  --bg-muted:      #F0F0EB;  /* Hintergrund II */
  --bg-deep:       #E6E6E1;  /* Hintergrund III */
  --bg-elevated:   #ffffff;
  --fg:            #0A0A19;  /* HU-Schwarz I (digital) */
  --fg-strong:     #000000;
  --fg-muted:      #59595F;  /* HU-Schwarz II */
  --fg-subtle:     #95959E;  /* HU-Schwarz III */
  --border:        #CFCFD1;  /* HU-Schwarz IV */
  --border-strong: #95959E;  /* HU-Schwarz III */

  /* Semantische Aliase */
  --primary:       var(--hu-blue);
  --primary-hover: var(--hu-blue-ii);
  --primary-fg:    #ffffff;
  --accent-soft:   var(--hu-blue-iv);
  --accent-strong: var(--hu-blue-iii);

  /* Status */
  --ok:            var(--hu-accent-green);
  --ok-bg:         #FAFAF5;
  --warn:          var(--hu-accent-orange);
  --warn-bg:       #FAFAF5;
  --err:           var(--hu-accent-red);
  --err-bg:        #FAFAF5;
}

/* Dark Mode — automatisch */
@media (prefers-color-scheme: dark) {
  :root {
    color-scheme: dark;

    --bg:            #0A0A19;  /* HU-Schwarz I */
    --bg-subtle:     #131a23;
    --bg-muted:      #1a2230;
    --bg-deep:       #0f151c;
    --bg-elevated:   #19212c;
    --fg:            #e6ebf2;
    --fg-strong:     #ffffff;
    --fg-muted:      #aab2bf;
    --fg-subtle:     #7a8392;
    --border:        #262d39;
    --border-strong: #3a4250;

    --primary:       #ABCDF1;  /* HU-Blau III */
    --primary-hover: #E3F1FF;  /* HU-Blau IV */
    --primary-fg:    #00376C;  /* HU-Blau I für Text auf hellblauen Buttons */
    --accent-soft:   #1c2a3d;
    --accent-strong: #243a55;

    --ok:            #059931;
    --ok-bg:         #0A0A19;
    --warn:          #E74306;
    --warn-bg:       #0A0A19;
    --err:           #E30031;
    --err-bg:        #0A0A19;
  }
}

/* ==========================================================================
   HU Berlin – Typografie
   Akzentschrift: D-DIN (Open-Source-Variante von DIN 1451, OFL-1.1, lokal gehostet)
   Hausschrift HU-Scala wird per Hotlink vom HU-Webspace geladen (proprietär).
   Alternativen: Georgia + Arial.  HU CD Manual S. 26.
   ========================================================================== */

/* ---------- HU-Scala (Hausschrift, vom HU-Webspace) ----------------------- */
@font-face {
  font-display: swap;
  font-family: ff-scala;
  font-style: normal;
  font-weight: 400;
  src: url(https://www.hu-berlin.de/_assets/3434b65bcd82b8523edd2faff33a8c0c/Build/Fonts/ScalaPro.woff2) format("woff2");
}
@font-face {
  font-display: swap;
  font-family: ff-scala;
  font-style: italic;
  font-weight: 400;
  src: url(https://www.hu-berlin.de/_assets/3434b65bcd82b8523edd2faff33a8c0c/Build/Fonts/ScalaPro-Ita.woff2) format("woff2");
}
@font-face {
  font-display: swap;
  font-family: ff-scala;
  font-style: normal;
  font-weight: 700;
  src: url(https://www.hu-berlin.de/_assets/3434b65bcd82b8523edd2faff33a8c0c/Build/Fonts/ScalaPro-Bold.woff2) format("woff2");
}

/* ---------- D-DIN (lokal gehostet, OFL-1.1) ------------------------------- */
/*
  Pfad relativ zum eingebundenen Stylesheet (dist/hu-math.css).
  Beim Sync auf einen Site-Webspace muss assets/fonts/ unter demselben
  Pfad-Verhältnis erreichbar sein:
    /assets/hu-design/dist/hu-math.css
    /assets/hu-design/assets/fonts/D-DINExp.woff2
*/
@font-face {
  font-display: swap;
  font-family: hub-ddin-exp;
  font-style: normal;
  font-weight: 400;
  src: url("../assets/fonts/D-DINExp.woff2") format("woff2");
}
@font-face {
  font-display: swap;
  font-family: hub-ddin-exp;
  font-style: italic;
  font-weight: 400;
  src: url("../assets/fonts/D-DINExp-Italic.woff2") format("woff2");
}
@font-face {
  font-display: swap;
  font-family: hub-ddin-exp;
  font-style: normal;
  font-weight: 700;
  src: url("../assets/fonts/D-DINExp-Bold.woff2") format("woff2");
}

/* Reguläre D-DIN als Alternative (kein „Exp" = Standardziffern) */
@font-face {
  font-display: swap;
  font-family: hub-ddin;
  font-style: normal;
  font-weight: 400;
  src: url("../assets/fonts/D-DIN.woff2") format("woff2");
}
@font-face {
  font-display: swap;
  font-family: hub-ddin;
  font-style: italic;
  font-weight: 400;
  src: url("../assets/fonts/D-DIN-Italic.woff2") format("woff2");
}
@font-face {
  font-display: swap;
  font-family: hub-ddin;
  font-style: normal;
  font-weight: 700;
  src: url("../assets/fonts/D-DIN-Bold.woff2") format("woff2");
}

:root {
  --font-body:    ff-scala, "Georgia", "Times New Roman", serif;
  --font-heading: hub-ddin-exp, "Arial", system-ui, sans-serif;
  --font-mono:    ui-monospace, "SF Mono", "Menlo", "Consolas", "Courier New", monospace;

  /* Fluid type scale */
  --text-xs:    0.75rem;
  --text-sm:    0.875rem;
  --text-base:  1rem;
  --text-md:    clamp(1.0625rem, 1rem + 0.25vw, 1.1875rem);
  --text-lg:    clamp(1.25rem, 1.15rem + 0.5vw, 1.5rem);
  --text-xl:    clamp(1.625rem, 1.4rem + 1vw, 2.125rem);
  --text-2xl:   clamp(2rem, 1.6rem + 2vw, 3rem);
  --text-3xl:   clamp(2.5rem, 2rem + 2.6vw, 3.75rem);

  /* Line-Heights */
  --leading-tight:  1.2;
  --leading-snug:   1.35;
  --leading-normal: 1.55;
  --leading-loose:  1.75;
}
/* ==========================================================================
   HU Berlin – Abstände, Radien, Schatten, Motion, Layout
   ========================================================================== */
:root {
  /* Spacing scale (8px base) */
  --space-2xs:  0.25rem;
  --space-xs:   0.5rem;
  --space-sm:   0.75rem;
  --space-md:   1rem;
  --space-lg:   1.5rem;
  --space-xl:   2.25rem;
  --space-2xl:  3.5rem;
  --space-3xl:  5rem;

  /* Radien */
  --radius-sm:   4px;
  --radius:      8px;
  --radius-lg:   14px;
  --radius-pill: 999px;

  /* Schatten */
  --shadow-xs:   0 1px 2px rgba(15, 23, 42, .06);
  --shadow-sm:   0 1px 3px rgba(15, 23, 42, .08), 0 1px 2px rgba(15, 23, 42, .04);
  --shadow-md:   0 4px 12px rgba(15, 23, 42, .10), 0 2px 4px rgba(15, 23, 42, .06);
  --shadow-lg:   0 10px 30px rgba(15, 23, 42, .12), 0 4px 8px rgba(15, 23, 42, .06);
  --shadow-glow: 0 0 0 4px rgba(0, 55, 108, .15);

  /* Layout */
  --container:    1320px;
  --container-px: clamp(1rem, 4vw, 2rem);

  /* Motion */
  --motion-fast:  140ms;
  --motion:       220ms;
  --motion-slow:  360ms;
  --ease:         cubic-bezier(.4, 0, .2, 1);
  --ease-out:     cubic-bezier(.16, 1, .3, 1);
}

@media (prefers-color-scheme: dark) {
  :root {
    --shadow-xs:   0 1px 2px rgba(0, 0, 0, .35);
    --shadow-sm:   0 1px 3px rgba(0, 0, 0, .4), 0 1px 2px rgba(0, 0, 0, .25);
    --shadow-md:   0 4px 12px rgba(0, 0, 0, .45), 0 2px 4px rgba(0, 0, 0, .25);
    --shadow-lg:   0 10px 30px rgba(0, 0, 0, .5), 0 4px 8px rgba(0, 0, 0, .25);
    --shadow-glow: 0 0 0 4px rgba(171, 205, 241, .25);
  }
}
