.family-page{max-width:1080px;margin:0 auto 24px;overflow-wrap:anywhere}.family-links,.family-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0}.family-children,.promise-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:16px}.family-child,.promise-card{padding:16px;border:1px solid var(--border,#dbe1ed);border-radius:16px;background:var(--surface,#fff);min-width:0}.family-child h2{margin:8px 0}.family-section{margin-top:24px;padding-top:20px;border-top:1px solid var(--border,#dbe1ed)}.family-section summary{min-height:44px;cursor:pointer;font-weight:700}.family-section form{max-width:520px;margin-top:12px}.family-check{display:flex;gap:10px;align-items:center;min-height:44px}.family-check input{width:22px;height:22px}.family-page .btn{min-height:44px;min-width:44px}.family-avatar svg{max-width:90px}.promise-gem svg{width:64px;height:72px}.promise-card h2{font-size:1.1rem}.trophy-card{border-color:#d5ad45;background:linear-gradient(140deg,#fffaf0,#fff)}.family-qr svg{display:block;width:min(100%,220px);height:auto;background:#fff;padding:8px}.family-code-text{font-size:1.5rem;letter-spacing:.1em}.family-notice{padding:12px;border-bottom:1px solid #e0e4ec}.family-notice.read{opacity:.7}.family-celebration{max-width:min(90vw,420px);border:2px solid #d5ad45;border-radius:24px;text-align:center;padding:28px;box-shadow:0 0 40px #edc65f66}.family-celebration::backdrop{background:#17234888}.trophy-spark svg{width:110px;height:130px}.trophy-spark{animation:familyJoy .7s ease-out}.family-home .promise-grid{margin:12px 0}.family-home .promise-card{padding:12px}.family-home .promise-card p{margin:6px 0}@keyframes familyJoy{0%{transform:scale(.7);opacity:.4}70%{transform:scale(1.1)}100%{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.trophy-spark{animation:none}}@media(max-height:500px) and (orientation:landscape){.family-page{padding:14px}.family-celebration{padding:12px}.trophy-spark svg{height:75px}.family-celebration h2{margin:8px}}
/* 전역 appearance:none 초기화와 분리해 기기 복수 선택 체크를 항상 보이게 한다. */
.family-check{display:flex;align-items:center;gap:12px;min-height:44px}.family-check input[type=checkbox]{-webkit-appearance:auto;appearance:auto;accent-color:#284ad4;width:44px;height:44px;flex:0 0 44px}
.verification-page #verificationQuestion {padding:12px}.verification-page .trophy-card>svg{width:72px;height:80px}.verification-page form{max-width:540px}.verification-score{font-weight:700}.verification-page .choice{min-height:var(--choice-min-height)}.family-celebration{max-height:85dvh;overflow:auto}.verification-page .family-code-text{display:block;min-height:44px}

.family-page input,.family-page select{max-width:100%;min-width:0}.family-page article{overflow-wrap:anywhere}.family-page #shareLink{width:100%;box-sizing:border-box}.family-page .stack{max-width:540px}.family-page [role=alert]{overflow-wrap:anywhere}

body.family-entry .nav { display: none; }

/* PM #85: 자녀 관리 화면 공통 규격 — 제목 24, 버튼 묶음 12, 섹션 간격 24, fieldset·details 행 44 */
.family-page h1{font-size:var(--fs-title);margin:0 0 var(--sp-3)}
.family-page h2{font-size:var(--fs-title-sm);margin:0 0 var(--sp-3)}
.family-links,.family-actions{gap:var(--sp-3);margin:var(--sp-3) 0}
.family-section{margin-top:var(--sp-6);padding-top:var(--sp-5);border-top:1px solid var(--line)}
.family-section>summary{display:flex;align-items:center;gap:var(--sp-2);min-height:var(--h-md);font-size:var(--fs-body-lg);font-weight:700;cursor:pointer;list-style:none}
.family-section>summary::-webkit-details-marker{display:none}
.family-section>summary::before{content:"▸";color:var(--muted);font-size:var(--fs-label)}
.family-section[open]>summary::before{content:"▾"}
.family-page fieldset{border:1px solid var(--line);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);margin:0 0 var(--sp-4)}
.family-page legend{padding:0 var(--sp-1);font-size:var(--fs-label);font-weight:700;color:var(--muted)}
.family-child{border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--sp-4)}
.family-empty{margin:0;color:var(--muted);font-size:var(--fs-label)}
