/* seiten/verwaltung.css – G7 Verwaltung – verwaltung.html, person.html, hotel.html, mehr.html, bericht.html, super.html
   Wird von base.html auf JEDER Seite nach app.css geladen (?v=STATIC_VERSION).
   Nur Selektoren dieser Gruppe. Tokens (var(--…)) nur aus app.css, keine neuen Farbwerte hier. */

.rollenwahl .check { padding: 6px 0; }
@media (max-width: 400px) { .bericht-summe .avatar { display: none; } }
.profil { display: flex; align-items: center; gap: 14px; }
.menue { padding: 6px; display: grid; gap: 2px; }
.menue a { display: flex; align-items: center; gap: 14px; padding: 12px; border-radius: var(--r-m); text-decoration: none; color: var(--ink); transition: background-color .15s var(--ease); }
.menue a > span:nth-child(2) { flex: 1; display: flex; flex-direction: column; min-width: 0; }
.menue small { color: var(--ink-2); font-size: var(--fs-sm); }
.menue-ic { width: 40px; height: 40px; border-radius: var(--r-m); display: grid; place-items: center; flex: none; background: var(--sunken); color: var(--ink-2); }
.menue-ic.gruen { background: var(--brand-tint); color: var(--brand-text); }
.pfeil-ic { color: var(--ink-3); }
.person-zeile { justify-content: flex-start !important; flex-wrap: wrap; align-items: flex-start !important; }
.person-zeile .avatar { width: 40px; height: 40px; background: var(--brand-tint); color: var(--brand-text); }
.person-zeile .avatar.buero { background: var(--sunken); color: var(--ink-2); box-shadow: inset 0 0 0 1px var(--line); }
.person-zeile .avatar.inaktiv { background: transparent; color: var(--ink-3); box-shadow: inset 0 0 0 1.5px var(--line); }
.eintraege > li.person-zeile { gap: 6px 12px; }
.person-zeile .eintrag-text { flex: 1 1 200px; }
.person-zeile .eintrag-text b { display: block; }
.person-fuss { flex: 1 1 100%; display: flex; align-items: center; justify-content: space-between; gap: 8px; flex-wrap: wrap; padding-left: 52px; }
.person-fuss .status-reihe { margin: 0; }
/* Aktionen je Person in festem Raster: Bearbeiten | Neuer Link | Sperren (leere Zelle, wenn kein Sperren) */
.person-fuss .aktionen { display: grid; grid-template-columns: 44px auto 44px; gap: 8px; align-items: center; }
@media (max-width: 380px) { .person-fuss { padding-left: 0; } }
.meta-zeile { display: block; margin-top: 2px; }
.status-reihe { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.mandant-zeile { flex-wrap: wrap; align-items: flex-start !important; }
.mandant-zeile > .eintrag-text { flex: 1 1 260px; }
.mandant-zeile > .aktionen { flex: 1 1 100%; justify-content: flex-start; padding-left: 52px; }
@media (max-width: 480px) { .mandant-zeile > .aktionen { padding-left: 0; } }
.mandant-zeile .inline-form input[name=budget] { flex: 0 0 7rem; }
@media (max-width: 480px) { .mandant-zeile > .eintrag-ic { display: none; } }
.ki-form { display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px 12px; align-items: end; margin-top: var(--s3); padding-top: var(--s3); border-top: 1px solid var(--line-soft); }
.ki-form .check, .ki-form .knopf { grid-column: 1 / -1; }
.ki-form .check { padding: 2px 0; }
.ki-form .knopf { justify-self: start; }
@container (min-width: 480px) { .ki-form { grid-template-columns: 10rem minmax(0, 1fr); } }
.mandant-zeile .admin-form { flex: 1 1 100%; }
.admin-titel { margin: 0 0 6px; }
.protokoll-zeile b { font-weight: 600; }
.protokoll-zeile > div { min-width: 0; }
.protokoll-zeile .details { display: block; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: var(--fs-xs); color: var(--ink-3); margin-top: 2px;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.protokoll-zeile .details:empty { display: none; }
@container (min-width: 600px) { .protokoll-zeile .details { white-space: normal; overflow-wrap: anywhere; } }
details.aeltere { margin-top: var(--s2); }
.avatar.klein-av { width: 30px; height: 30px; font-size: var(--fs-xs); background: var(--brand-tint); color: var(--brand-text); }
.stat-zeile { display: flex; flex-wrap: wrap; gap: 4px 14px; margin: 0; color: var(--ink-2); font-size: var(--fs-md); }
.stat-zeile b { color: var(--ink); font-weight: 600; }
.personen-bericht { list-style: none; padding: 0; margin: 0; }
.personen-bericht > li { border-bottom: 1px solid var(--line-soft); padding: 6px 0; }
.personen-bericht > li:last-child { border-bottom: 0; }
.personen-bericht summary { color: var(--ink); font-weight: 600; min-height: 52px; }
.personen-bericht summary .avatar { margin-left: 2px; }
.personen-bericht .summary-text { display: flex; flex-direction: column; line-height: 1.3; min-width: 0; }
.personen-bericht .summary-text .klein { font-weight: 500; font-size: var(--fs-sm); }
.personen-bericht details > .scroll { margin-top: 4px; }
.person-zelle { display: flex; align-items: center; gap: 10px; }
.person-zelle span { display: flex; flex-direction: column; line-height: 1.25; min-width: 0; }
.person-zelle .klein { font-size: var(--fs-xs); }
.filter-zeile { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 420px) { .filter-zeile { grid-template-columns: 1fr; } }
.filter-zeile > .knopf { grid-column: 1 / -1; }
/* --- Seiten-Einzelheiten -------------------------------------------------------------------- */
.mandant-zeile .stat-zeile { margin-top: 6px; }
.mandant-zeile > .aktionen > .inline-form { flex: 1 1 420px; }
.mandant-zeile .stilllegen { margin-left: auto; }
.start-pin .inline-form { margin-top: 6px; }
.personen-bericht summary { gap: 10px; }
/* Benachrichtigungen / Protokoll: eingeklappte Karten mit Anzahl */
details.ausklapp > summary { color: var(--ink); min-height: 48px; }
details.ausklapp > summary .sum-titel { display: inline-flex; align-items: center; gap: 10px; font-family: var(--f-titel); font-size: var(--fs-lg); font-weight: 700; }
details.ausklapp > summary .sum-titel .ic { color: var(--brand-text); }
details.ausklapp > summary .anzahl { margin-left: auto; }
details.ausklapp[open] > summary { margin-bottom: var(--s3); }
/* Meta-Zeile immer unter dem Namen (auch bei Hotels) */
.eintrag-text .meta-zeile { display: block; }
/* Breite Karte: Ausnahmen + Aktionen rechts in derselben Zeile wie der Name */
@container (min-width: 640px) {
  .person-zeile { flex-wrap: nowrap; align-items: center !important; }
  .person-fuss { flex: 0 1 auto; padding-left: 0; justify-content: flex-end; }
}
