/* Kompaktere Darstellung: kleinere Schrift, engere Spalten, weniger Leerraum.
   Wird nach app.css geladen und überschreibt dort gesetzte Abstände. */

html, body { font-size: 13.5px; }

h1 { font-size: 19px; }
h2 { font-size: 17px; }
h3 { font-size: 14.5px; }
h4 { font-size: 13px; }

/* ---------------------------------------------------------------- Sidebar */

.sidebar__brand { padding: 12px 12px 9px; }
.sidebar__logo  { padding: 9px 11px; border-radius: var(--radius-s); }
.sidebar__tag   { margin-top: 7px; font-size: 10.5px; letter-spacing: .12em; }
.sidebar__nav   { padding: 3px 8px 8px; }
.sidebar__section { font-size: 10px; padding: 10px 8px 4px; }

.navitem { padding: 6px 9px; margin-bottom: 2px; font-size: 13px; gap: 9px; }
.navitem__icon { width: 15px; height: 15px; }
.navitem__sub  { font-size: 10.5px; }
.navitem__badge { font-size: 9.5px; padding: 1px 6px; }

.sidebar__foot { padding: 6px 8px 8px; }
.sidebar__user { padding: 6px 8px 4px; gap: 8px; }
.avatar { width: 27px; height: 27px; font-size: 11px; }
.sidebar__user-name { font-size: 12.5px; }
.sidebar__user-role { font-size: 10px; }

/* ------------------------------------------------------------------- Main */

.topbar { padding: 0 14px; gap: 12px; }
.topbar__sub { font-size: 11.5px; }
.topbar__actions { gap: 6px; }

.content { padding: 12px 14px 26px; }

.card__head { padding: 9px 13px; gap: 9px; }
.card__body { padding: 13px; }

/* --------------------------------------------------------------- Elemente */

.btn { font-size: 12.5px; padding: 5px 11px; gap: 5px; }
.btn--sm { padding: 3px 8px; font-size: 11.5px; }
.btn--icon { padding: 5px; }

input[type=text], input[type=password], input[type=number], input[type=email],
input[type=month], input[type=date], input[type=search], select, textarea {
  font-size: 12.5px; padding: 5px 8px;
}
.field { gap: 3px; }
.field > label { font-size: 11.5px; }
.field__hint { font-size: 10.5px; }

.toolbar { padding: 8px 14px; gap: 8px; }
.toolbar .field { min-width: 108px; }
.toolbar .field--grow { min-width: 160px; }

.chip { font-size: 10.5px; padding: 1px 7px; gap: 4px; }

/* --------------------------------------------------------------- Tabellen */

table.grid { font-size: 12.5px; }
table.grid thead th { padding: 5px 8px; font-size: 11.5px; }
table.grid thead th.col-label { width: var(--label-w); min-width: var(--label-w); }
table.grid th.col-label, table.grid td.col-label {
  width: var(--label-w); min-width: var(--label-w); max-width: var(--label-w);
}
.col-label__inner { padding: 4px 8px; gap: 6px; }
.th-month { min-width: 82px; }
.th-month small { font-size: 9.5px; }
.cell { padding: 4px 8px; min-height: 24px; }
.cell input { padding: 3px 7px; font-size: 12.5px; }
tr.grouprow td { padding: 4px 8px; font-size: 11px; }

table.list { font-size: 12.5px; }
table.list th { padding: 6px 9px; font-size: 11.5px; }
table.list td { padding: 5px 9px; }

/* --------------------------------------------------------------- Kacheln */

.stats { gap: 9px; grid-template-columns: repeat(auto-fit, minmax(168px, 1fr)); }
.stat { padding: 10px 12px; }
.stat__label { font-size: 10.5px; letter-spacing: .06em; }
.stat__value { font-size: 19px; margin-top: 2px; }
.stat__foot  { font-size: 11px; margin-top: 2px; }

/* ----------------------------------------------------------------- Dialog */

.overlay { padding: 16px; }
.modal__head { padding: 11px 15px; gap: 9px; }
.modal__body { padding: 15px; }
.modal__foot { padding: 10px 15px; gap: 7px; }
.formgrid { gap: 10px; }

.closing__row { grid-template-columns: 1fr 130px 118px; gap: 9px; padding: 2px 0; }
.closing__label { font-size: 12.5px; }
.closing__prev  { font-size: 11.5px; }
.closing__group { margin-bottom: 13px; }
.closing__grouptitle { font-size: 11px; padding-bottom: 4px; margin-bottom: 5px; }

.banner { padding: 8px 12px; font-size: 12.5px; margin-bottom: 11px; gap: 8px; }
.tabs { margin-bottom: 13px; }
.tab { padding: 7px 13px; font-size: 12.5px; }

.empty { padding: 34px 16px; }

/* ------------------------------------------------------------------- Info */

.info { grid-template-columns: 300px 1fr; gap: 14px; }
.imprint__block { margin-bottom: 13px; }
.imprint__line { font-size: 12.5px; line-height: 1.45; }
.rights h4 { font-size: 12.5px; }
.rights p  { font-size: 12px; margin-bottom: 11px; }
.release { padding-left: 16px; }
.release__version { font-size: 15px; }
.release__meta { font-size: 11.5px; }
.release__title { font-size: 13px; }
.release__list li { font-size: 12.5px; padding: 3px 0; gap: 7px; }
.release__list { margin-bottom: 16px; }
