/* ============================================================
   LifeFolder — People / Household
   ============================================================ */
.page-head--row { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; flex-wrap: wrap; }

.people-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 16px; }
.person-card { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 4px; background: var(--color-surface); border: 1px solid var(--color-line); border-radius: 16px; padding: 24px 16px; color: inherit; transition: border-color .15s, box-shadow .15s; }
.person-card:hover { border-color: var(--color-line); box-shadow: 0 6px 18px rgba(28, 45, 52, .08); }
.person-card__avatar { width: 88px; height: 88px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 28px; font-weight: 800; font-family: var(--font-head); margin-bottom: 8px; overflow: hidden; }
.person-card__avatar--lg { width: 88px; height: 88px; font-size: 30px; margin: 0; flex: none; } /* flex:none — nie zum Oval quetschen */

/* Avatar-Link mit Kamera-Badge (Foto ändern, Mobile-Design) */
.person-hero__avatarlink { position: relative; display: inline-flex; flex: none; border-radius: 50%; }
.person-hero__cam {
  position: absolute; right: 0; bottom: 0; width: 26px; height: 26px; border-radius: 50%;
  background: var(--color-selected); color: var(--on-action);
  display: inline-flex; align-items: center; justify-content: center;
  border: 2px solid var(--color-surface);
}
.person-hero__avatarlink:hover .person-card__avatar { filter: brightness(.96); }

/* Einladung statt „0 documents" */
.person-card__invite { font-size: 13px; font-weight: 600; color: var(--color-selected); margin: 2px 0 4px; }

/* Festwert-Feld (z. B. Beziehung „Das bist du" im Ich-Profil) */
.field__input--static { display: flex; align-items: center; background: var(--color-line-soft); color: var(--color-muted); cursor: default; }
.person-card__photo { width: 100%; height: 100%; object-fit: cover; }
.person-card__name { font-size: 16px; font-weight: 700; font-family: var(--font-head); }
.person-card__role { font-size: 13px; color: var(--color-muted-2); }
.person-card__docs { font-size: 13px; color: var(--color-muted); margin: 2px 0 8px; }

/* ── „Add a person" — reiches Formular ─────────────────────── */
.person-form { display: block; max-width: 720px; }
.person-form__actions { display: inline-flex; gap: 10px; align-items: center; flex-wrap: wrap; } /* mobil umbrechen statt abschneiden */
.person-form__card { margin-top: 16px; display: flex; flex-direction: column; gap: 16px; }
.person-form__eyebrow { font-size: 11.5px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--color-muted-2); }
.person-form__heading { font-family: var(--font-head); font-size: 16px; font-weight: 700; color: var(--color-ink); }
.person-form__file { display: none; }
.field__opt { color: var(--color-muted-2); font-weight: 500; }
/* [hidden] muss display:flex der Karten/Zeilen schlagen (Person/Pet, Schwanger-Toggle) */
.person-form__card[hidden], .person-form .field-row[hidden] { display: none; }

/* Segment-Control (Person/Pet, Ja/Nein) — radio-gestützt */
.seg { display: inline-flex; width: max-content; padding: 3px; border: 1px solid var(--color-line); border-radius: 11px; background: var(--color-bg); gap: 3px; }
.seg__opt { position: relative; display: inline-flex; align-items: center; gap: 6px; padding: 8px 16px; border-radius: 8px; font-size: 13.5px; font-weight: 600; color: var(--color-muted); cursor: pointer; }
.seg__opt svg { display: inline-flex; }
.seg__radio { position: absolute; opacity: 0; width: 0; height: 0; pointer-events: none; }
.seg__opt:has(.seg__radio:checked) { background: var(--color-surface); color: var(--color-selected); box-shadow: var(--shadow-1); }
.seg__opt:has(.seg__radio:focus-visible) { outline: 2px solid var(--color-selected); outline-offset: 1px; }
.seg--sm .seg__opt { padding: 7px 18px; }

/* Foto-Avatar (Kreis zum Anklicken) */
.person-form__id { display: flex; align-items: flex-start; gap: 16px; }
.person-avatar-pick { position: relative; flex: none; width: 66px; height: 66px; border-radius: 50%; border: 1px dashed var(--color-line); background: var(--color-line-soft); cursor: pointer; display: inline-flex; align-items: center; justify-content: center; overflow: hidden; padding: 0; }
.person-avatar-pick:hover { border-color: var(--color-selected); }
.person-avatar-pick__img { width: 100%; height: 100%; object-fit: cover; }
.person-avatar-pick__ph { font-size: 22px; font-weight: 700; color: var(--color-muted-2); }
.person-avatar-pick__badge { position: absolute; right: -2px; bottom: -2px; width: 24px; height: 24px; border-radius: 50%; background: var(--color-selected); color: var(--on-action); display: inline-flex; align-items: center; justify-content: center; border: 2px solid var(--color-surface); }
.person-form__namecol { flex: 1; display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.person-form__hint { font-size: 12.5px; color: var(--color-muted); }

@media (max-width: 640px) {
  .person-form__actions { width: 100%; }
  .person-form__actions .btn { flex: 1; }
  .field-row { flex-wrap: wrap; }
  .field-row .field { min-width: 140px; }
}

/* KI-Dossier auf der Personen-Seite */
.dossier-list { margin: 0; padding-left: 20px; font-size: 14px; line-height: 1.7; }
.dossier-attention { border-top: 1px solid var(--color-line); padding-top: 10px; }
.dossier-attention__title { display: block; font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; color: var(--status-review-fg); margin-bottom: 4px; }

/* Delete auf der Personen-Seite: kleiner, rechts abgesetzt (weg von den Hauptaktionen) */
.person-form__actions .person-form__delete { align-self: center; margin-left: 6px; }
