/* Local guardian chooser. Pictures are fixed artwork, never child uploads. */
.family-entry { max-width: 640px; margin-inline: auto; padding: 32px 20px 64px; color: var(--ink, #173a32); letter-spacing: 0; }
.family-entry * { box-sizing: border-box; letter-spacing: 0; }
.fe-title { margin: 0 0 16px; font: 600 30px/1.2 var(--serif, Georgia, serif); overflow-wrap: anywhere; }
.fe-status { margin: 0 0 20px; min-height: 48px; font: 400 16px/1.5 var(--sans, sans-serif); }
.fe-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.fe-child { display: flex; align-items: center; gap: 12px; min-height: 128px; width: 100%; padding: 16px; border: 1px solid #829c92; border-radius: 8px; background: #fff; color: #173a32; text-align: left; cursor: pointer; }
.fe-child:hover { border-color: #803e4a; background: #fff8f8; }
.fe-child:focus-visible, .fe-actions button:focus-visible { outline: 3px solid #803e4a; outline-offset: 4px; }
.fe-child:disabled { cursor: wait; opacity: .65; }
.fe-picture { flex: 0 0 64px; width: 64px; height: 80px; object-fit: contain; }
.fe-words { min-width: 0; display: grid; gap: 6px; }
.fe-name { font: 600 22px/1.2 var(--serif, Georgia, serif); overflow-wrap: anywhere; }
.fe-grade { font: 400 15px/1.4 var(--sans, sans-serif); overflow-wrap: anywhere; color: #4b625b; }
.fe-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.fe-actions button { min-height: 44px; padding: 10px 16px; border: 1px solid #829c92; border-radius: 4px; background: white; color: #173a32; font: 500 16px/1.4 var(--sans, sans-serif); cursor: pointer; }
.fe-actions button:disabled { opacity: .65; cursor: wait; }
.fe-actions [hidden] { display: none; }
@media (max-width: 520px) { .fe-cards { grid-template-columns: minmax(0, 1fr); } }
@media (prefers-reduced-motion: reduce) { .family-entry *, .family-entry *::before, .family-entry *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }
