/* Shared registration and document views, website and family application. */
.family-form-errors,.family-form-feedback{padding:1rem;border:1px solid #b3c8b4;border-radius:12px;background:#edf5e9;overflow-wrap:anywhere;margin:.8rem 0}
.family-form-errors,.family-form-feedback.is-error{border-color:#b76a4c;background:#fff2e9;color:#78361e}
.family-form-errors a,.family-error-link{color:inherit;text-decoration:underline;text-underline-offset:3px;min-height:44px;display:inline-flex;align-items:center}
.family-error-link{background:none;border:0;font:inherit;text-align:left;padding:.3rem 0;cursor:pointer}
.family-form-errors ul,.family-form-feedback ul{padding-left:1.3rem;margin:.5rem 0}.family-form-feedback a{display:inline-flex;align-items:center;min-height:44px;margin-right:1rem}
.family-form-errors p,.family-form-feedback p{line-height:1.5;margin:.4rem 0}.family-field-error{color:#913b22;font-size:.9rem;font-weight:650;margin:.35rem 0 1rem}
.family-form [aria-invalid=true]{outline:2px solid #a84628;outline-offset:2px}.family-form [id]{scroll-margin-top:calc(var(--admin-header-height,80px) + 20px)}
.family-save-status{padding:.8rem 1rem;border-left:4px solid #486d52;background:#eaf0e4;font-weight:650;line-height:1.5}
.family-registration-review{margin:.8rem 0 1.4rem;padding:1rem;background:#edf3e7;border:1px solid #c0ceba;border-radius:15px}
.family-registration-review h3{margin:0 0 .6rem}.family-registration-review details{border-top:1px solid #bacbb4;padding:.5rem 0}.family-registration-review summary{cursor:pointer;font-weight:750;min-height:44px;padding:.65rem 0}
.family-registration-review dl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:.5rem 1rem}.family-registration-review dt{font-weight:650}.family-registration-review dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}
.family-registration-review p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.family-form[aria-busy=true]{opacity:.8}
.family-pieces-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.5rem 0}
.family-piece{padding:1.2rem;background:#fffdf7;border:1px solid #c5d0c1;border-radius:16px;min-width:0;scroll-margin-top:110px}
.family-piece header{display:flex;gap:.8rem;align-items:start;justify-content:space-between;flex-wrap:wrap}.family-piece h4{font-size:1.15rem;margin:.3rem 0 .5rem;color:#213e33}
.family-piece p{font-size:.9rem;line-height:1.55;overflow-wrap:anywhere}.family-piece-state{font-size:.8rem;border-radius:20px;background:#eef0e9;padding:.4rem .7rem;font-weight:750;color:#294835}
.state-received .family-piece-state{background:#e9f0f7;color:#28485e}.state-verified .family-piece-state{background:#dfeedd;color:#285637}.state-rejected .family-piece-state{background:#ffe6d7;color:#873b1f}
.family-piece-files{list-style:none;margin:1rem 0;padding:0}.family-piece-files>li{border-top:1px solid #ccd5c8;padding:1rem 0;overflow-wrap:anywhere}.family-piece-files>li>strong,.family-piece-files>li>small{display:block;margin:.2rem 0}.family-piece-files small{font-size:.8rem;color:#526451}
.family-piece-note{background:#f2eddf;border-radius:8px;padding:.75rem;white-space:pre-wrap}.family-piece-file-state{font-weight:700}
.family-piece-links{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem}.family-piece-links form{margin:0}.family-piece-links .family-button{min-height:44px}
.family-piece-upload{border-top:1px solid #ccd5c8;padding-top:.5rem}.family-piece-upload>summary{cursor:pointer;min-height:48px;padding:.65rem 0;font-weight:750;font-size:.95rem}
.family-piece .family-form{display:grid;gap:.7rem}.family-piece .family-form label{display:grid;gap:.4rem}.family-piece select,.family-piece input{max-width:100%;min-width:0}.family-piece input[type=file]{font-size:.9rem}
.family-upload-preview{display:grid;gap:.5rem;padding:.75rem;background:#edf3e7;border-radius:10px;overflow-wrap:anywhere}.family-upload-preview:empty{display:none}.family-upload-preview img{display:block;object-fit:contain;max-width:100%;border-radius:8px;background:#fff}.family-upload-preview small{font-size:.85rem}.family-upload-preview a{min-height:44px;display:flex;align-items:center}.family-form-feedback progress{width:100%;height:18px;accent-color:#426b4c}
.family-paper-file{padding:1.2rem;border:1px solid #c5d0c1;border-radius:16px;background:#f4efe2;margin-top:1.5rem}.family-paper-file h3{margin-top:0}.family-paper-file address{font-style:normal;line-height:1.6;margin:1rem 0}
.family-app .family-pieces-grid{grid-template-columns:minmax(0,1fr)}.family-app .family-piece{padding:1rem}.family-app .family-piece-links .family-button{flex:0 1 auto}.family-app .family-form [id]{scroll-margin-top:20px}
@media(max-width:1000px){.family-pieces-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:550px){.family-registration-review dl{grid-template-columns:minmax(0,1fr);gap:.2rem}.family-registration-review dd{margin-bottom:.7rem}.family-piece-links{align-items:stretch}.family-piece-links>a{flex:1 1 auto;justify-content:center}}
