/* ---- Beheer ---- */
/* Ruimte onderaan voor de opslaan-balk */
.view-admin { padding-bottom: calc(var(--tabbar) + 110px + env(safe-area-inset-bottom)); }

/* In- en uitklapbare kaarten */
.fold { padding: 0; }
.fold-head {
  display: flex; align-items: center; gap: 10px; padding: 14px 18px; min-height: 54px; cursor: pointer; list-style: none;
}
.fold-head::-webkit-details-marker { display: none; }
.fold-head h2 { font-size: 15px; color: var(--muted); font-weight: 650; flex: 1; }
.fold-head .link { font-size: 15px; }
.fold-chev { margin-left: 0; transition: transform .15s; }
.fold[open] > .fold-head .fold-chev { transform: rotate(90deg); }
.fold-body { padding: 0 18px 14px; }
.fold-count {
  min-width: 24px; height: 24px; padding: 0 7px; border-radius: 99px; background: var(--card-2); color: var(--muted);
  font-size: 13px; font-weight: 750; display: inline-flex; align-items: center; justify-content: center;
}
.fold.has-new .fold-count { background: var(--danger); color: #fff; }
.fold-state { font-size: 13px; font-weight: 700; color: var(--ok); }
.fold-state.bad { color: var(--danger); }
.show-more { display: block; margin: 8px auto 0; }

/* Kladversie */
.draft-tag {
  display: inline-block; margin-left: 8px; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .03em;
  background: var(--together-soft); color: var(--together-ink); padding: 2px 7px; border-radius: 99px; vertical-align: 2px;
}
@media (prefers-color-scheme: dark) { .draft-tag { color: var(--together); } }
.draft-deleted { opacity: .75; }
.person-row .row-sub + .row-sub { font-size: 13px; }
.person-groups .chips { margin-bottom: 2px; }
.sheet-row-actions { margin-top: 14px; }

/* Opslaan-balk: blijft onderaan staan zolang er niet-opgeslagen wijzigingen zijn */
.save-bar {
  position: fixed; z-index: 30; left: 50%; transform: translateX(-50%);
  bottom: calc(var(--tabbar) + 14px + env(safe-area-inset-bottom));
  width: min(560px, calc(100% - 24px)); display: flex; align-items: center; gap: 8px;
  padding: 8px 8px 8px 18px; border-radius: 999px; background: var(--ink); color: var(--paper);
  box-shadow: 0 8px 28px rgba(0, 0, 0, .25);
}
.save-bar .save-count { flex: 1; font-weight: 700; }
.save-bar .btn.ghost { color: var(--paper); box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--paper) 35%, transparent); }
/* Meldingen onderaan schuiven boven de balk */
body:has(.save-bar:not([hidden])) #toasts { bottom: calc(var(--tabbar) + 78px + env(safe-area-inset-bottom)); }
@media (min-width: 900px) {
  .save-bar { bottom: 24px; }
  .view-admin { padding-bottom: 110px; }
  body:has(.save-bar:not([hidden])) #toasts { bottom: 88px; }
}
body.compact .save-bar { bottom: 12px; }
body.compact:has(.save-bar:not([hidden])) #toasts { bottom: 76px; }
