/*
 * Dichte-Kalibrierung für den Tabler-Zweig (base_tabler.html).
 *
 * Tablers Defaults sind auf Touch-Bedienung ausgelegt (Button 40px hoch,
 * Tabellenzeile ~44px). Managi ist ein Desktop-Verwaltungswerkzeug; hier zählt
 * Zeilendichte beim Scannen von Listen und Tabellen. Die Werte sind aus
 * atip-lab übernommen (lab/theme/scss/_variables-atip.scss, Abschnitt
 * „Density"), wo sie als SCSS-Variablen vor @tabler/core gesetzt werden.
 * Managi bindet Tabler vorkompiliert ein, deshalb hier dieselben Werte als
 * CSS-Overrides.
 *
 * Diese Datei ändert AUSSCHLIESSLICH Größen und Abstände. Farben und Schrift
 * liegen in hda-theme.css und bleiben unberührt.
 *
 * NICHT über --tblr-spacer-* lösen: die speisen jedes p-3 / m-4 / g-3 im
 * Projekt. Ebenso ist --tblr-page-padding (ohne -y) tabu — daraus leiten sich
 * Grid-Gutter und Container-Padding ab. Nur die Komponenten-Variablen unten
 * sind davon entkoppelt.
 *
 * Die :not()-Ausschlüsse sind nötig, weil diese Datei nach tabler.min.css
 * geladen wird: ohne sie gewinnt der Basiswert gegen die gleich spezifischen
 * -sm-/-lg-Varianten und zieht auch große Buttons und Felder zusammen.
 */

/* --- Buttons und Eingabefelder ------------------------------------------
   Gemeinsame Basis 9px → 5px ⇒ Höhe 40px → 32px. Beide teilen den Wert, damit
   Feld und Button in einer Toolbar bündig stehen. .btn-sm bringt dieselben
   5px schon von Haus aus mit. */
.btn:not(.btn-sm):not(.btn-lg) {
    --tblr-btn-padding-y: 0.3125rem;
}

.form-control:not(.form-control-sm):not(.form-control-lg),
.form-select:not(.form-select-sm):not(.form-select-lg),
.input-group-text:not(.input-group-text-sm):not(.input-group-text-lg) {
    padding-top: 0.3125rem;
    padding-bottom: 0.3125rem;
}

/* --- Tabellen -------------------------------------------------------------
   Zelle 12px → 8px ⇒ Zeilenhöhe ~44px → ~36px. Der Kopf ist mit seinen 8px
   bereits kompakt und bleibt unverändert; .table-sm behält sein eigenes Maß. */
.table:not(.table-sm) > :not(caption) > * > * {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

/* --- Karten ---------------------------------------------------------------
   Der Kopf trägt meist nur eine Textzeile und darf enger sein als der Body
   (14px → 10px). Zusammen mit der card-title-line-height unten ergibt das
   40px Kopfhöhe statt 52px. */
.card {
    --tblr-card-spacer-y: 0.875rem;
    --tblr-card-spacer-x: 1rem;
    --tblr-card-title-spacer-y: 0.75rem;
    --tblr-card-cap-padding-y: 0.625rem;
    --tblr-card-cap-padding-x: 1rem;
}

/* Tabler setzt line-height fest auf 1.5rem (24px) bei 1rem Schrift — die 4px
   half-leading pro Seite addieren sich sichtbar auf das Kopf-Padding. Es gibt
   dafür keine Tabler-Variable, daher dieser Override. */
.card-title {
    line-height: 1.25rem;
}

/* --- Seitenraster ---------------------------------------------------------
   .page-body-Margin und .page-header-Padding: 24px → 16px. */
:root {
    --tblr-page-padding-y: 1rem;
}
