/* ============================================================================
   Papier — Basisschicht für analysevordruck
   ----------------------------------------------------------------------------
   Setzt die Regeln durch, die in Papier nicht verhandelbar sind, damit sie
   nicht in ~960 Einzelstellen wiederholt werden müssen. Farbwerte kommen aus
   tokens.css (--pp-*).

   ►► LADEREIHENFOLGE IST TEIL DER FUNKTION ◄◄
   Diese Datei wird als LETZTES im <head> eingebunden — nach den Inline-<style>-
   Blöcken der Seite. Bei gleicher Spezifität gewinnt die zuletzt geladene
   Regel; nur so setzen sich Radius und Schatten gegen die bestehenden
   Seitenregeln durch. Kein :where() (Spezifität 0, würde verlieren) und kein
   !important (nicht nötig, solange die Reihenfolge stimmt).

   Diese Datei ist app-eigen — anders als tokens.css, das aus sh-vetragscheck
   synchronisiert wird und nicht hier bearbeitet werden darf.
   ========================================================================== */

body {
  background: var(--pp-bg);
  color: var(--pp-fg);
  font-family: var(--pp-font-ui);
}

/* Überschriften tragen die Serif — der redaktionelle Ton der Variante.
   Ohne diese Regel bliebe die geladene Source Serif ungenutzt. */
h1, h2, h3, h4,
.card-title, .section-title, .panel-title {
  font-family: var(--pp-font-display);
  letter-spacing: -0.005em;
}

/* Kanten statt Kapseln: Papier kennt genau einen Radius. Das Seiten-CSS setzt
   verstreut 6–16px; hier werden sie eingesammelt. */
button, input, select, textarea,
.card, .badge, .btn, .modal, .panel, .box, .tile, .chip, .pill {
  border-radius: var(--pp-radius);
}

/* Papier hat keine Schatten — Struktur tragen Linien. */
.card, .btn, .modal, .panel, .box, .tile, .badge, .header {
  box-shadow: none;
}

/* Geldbeträge und Kennzahlen stehen untereinander. */
.num, .betrag, .value, .kennzahl, td.num {
  font-variant-numeric: tabular-nums;
}
