/* =====================================================================
   Reset / Basis
   ===================================================================== */

*, *::before, *::after { box-sizing: border-box; }

* { margin: 0; padding: 0; }

html, body { height: 100%; }

body {
  font-family: var(--font);
  font-size: 14px;
  line-height: 1.5;
  color: var(--tp);
  background: var(--bg);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  font-variant-numeric: tabular-nums;   /* Spec 12: tabellarische Ziffern */
}

img, svg { display: block; max-width: 100%; }

button, input, select, textarea {
  font: inherit;
  color: inherit;
}

button { cursor: pointer; background: none; border: none; }

a { color: var(--accent); text-decoration: none; }
a:hover { color: var(--accent-h); }

ul { list-style: none; }

h1, h2, h3, h4 { font-weight: 600; line-height: 1.25; }

/* Scrollbar (dezent) */
* { scrollbar-width: thin; scrollbar-color: var(--brd) transparent; }
*::-webkit-scrollbar { width: 10px; height: 10px; }
*::-webkit-scrollbar-thumb {
  background: var(--brd);
  border-radius: 8px;
  border: 2px solid transparent;
  background-clip: padding-box;
}
*::-webkit-scrollbar-thumb:hover { background: var(--tt); }

:focus-visible {
  outline: 2px solid var(--accent);
  outline-offset: 2px;
}
