/* ============================================================
   base.css – Reset, CSS-Variablen, Typografie
   ============================================================ */

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

:root {
  /* Sidebar */
  --sidebar-w:      82px;
  --sidebar-bg:     #0d1117;
  --sidebar-border: #21262d;
  --nav-active-bg:  #8F2832;

  /* Inhaltsbereich */
  --bg:             #f0f2f5;
  --card:           #ffffff;
  --border:         #cdd2da;
  --text:           #1a1f2e;
  --text-muted:     #6b7280;
  --text-faint:     #9ca3af;
  --accent:         #1a6bff;
  --accent-dim:     #e8f0ff;

  /* Tabellenrahmen */
  --b-cell:         1px solid #cdd2da;
  --b-week:         3px solid #111;
  --b-fixed:        3px solid #111;

  /* Kopfzeile Anwesenheitstabelle */
  --header-bg:      #AB5E65;

  /* Badge-Größen (werden per JS überschrieben) */
  --badge-h:        22px;
  --badge-w:        34px;
  --badge-fs:       9px;

  /* Schriftgrößen */
  --emp-fs:         12px;

  /* Schriftarten */
  --font:           'Lexend', system-ui, sans-serif;
  --mono:           'Lexend Mono', monospace;
}

html, body {
  height: 100%;
  overflow: hidden;
  font-family: var(--font);
  font-size: 14px;
  color: var(--text);
  background: var(--sidebar-bg);
}

/* Scrollbars einheitlich */
::-webkit-scrollbar       { width: 5px; height: 5px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: #d1d5db; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #9ca3af; }

/* Hilfklassen */
.hidden  { display: none !important; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); }
