/* Shared family navigation and home progress, website and application. */
.family-section-nav{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 1.5rem}
.family-section-nav a{display:flex;align-items:center;min-height:44px;padding:.65rem .85rem;border:1px solid #bfcbbb;border-radius:12px;color:#213e33;background:#fffdf7;text-decoration:none;font-size:.9rem}
.family-section-nav a[aria-current=page]{background:#e4ebdf;font-weight:750;border-color:#4c7059}
.family-portal .admin-sidebar h2>a{font:750 .95rem/1.35 var(--sans,Arial,sans-serif);text-transform:none;letter-spacing:0;margin:0;padding:.6rem .7rem;color:inherit;border-radius:10px;min-height:44px;display:flex;align-items:center}
.family-portal .admin-sidebar h2{margin:.45rem 0 .1rem}
.family-portal .admin-sidebar .family-nav-active h2>a{background:#e4ebdf;color:#173a32}
.family-activities{margin:1.5rem 0;padding:1.3rem;border:1px solid #c5d0c1;border-radius:18px;background:#fffdf7;color:#213e33}
.family-activities h2{margin:0 0 .5rem;font-size:1.5rem;line-height:1.25}
.family-activities>p{font-size:.9rem;margin:.5rem 0 1rem}
.family-activity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.family-activity-grid>a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.35rem .75rem;padding:1rem;border:1px solid #c5d0c1;border-radius:12px;background:#f1f5ed;color:inherit;text-decoration:none;min-width:0}
.family-activity-grid strong{font-size:1rem}.family-activity-grid span{grid-column:1;font-size:.85rem;line-height:1.5;overflow-wrap:anywhere}.family-activity-grid b{grid-column:2;grid-row:1/3;align-self:center}
.family-activity-grid a:hover strong{text-decoration:underline;text-underline-offset:3px}
.family-progress{margin:0 0 1.5rem;color:#213e33;min-width:0}.family-progress>h2{margin:0 0 .4rem;font-size:1.65rem;line-height:1.25}.family-progress-scope{font-size:.85rem;color:#526551;margin:.3rem 0 1rem!important}
.family-progress-panel{border:1px solid #c5d0c1;border-radius:15px;background:#fffdf7;margin:.75rem 0;padding:1rem;min-width:0}
.family-progress-panel>h3,.family-progress-panel>summary{font:750 1rem/1.4 var(--sans,Arial,sans-serif);margin:0;display:flex;align-items:center;justify-content:space-between;gap:1rem}
.family-progress-panel>summary{cursor:pointer;min-height:44px;list-style:none}.family-progress-panel>summary::-webkit-details-marker{display:none}
.family-progress-panel>summary:after{content:'+';font-size:1.4rem}.family-progress-panel[open]>summary:after{content:'−'}
.family-progress-panel>summary>span:first-child{flex:1}.family-progress-panel>summary>span:nth-child(2),.family-progress-panel>h3>span{flex-shrink:0;border-radius:20px;padding:.2rem .65rem;background:#e4ebdf;font-size:.8rem}
.family-progress-panel>p{font-size:.875rem;line-height:1.55;margin:.7rem 0 .2rem;overflow-wrap:anywhere}
.fp-todo{border-top:4px solid #b28026}.fp-waiting{background:#eef3f6}.fp-done{background:#edf3e9}.fp-payments{background:#f6f3eb}
.family-progress-groups{margin-top:1rem}.family-progress-group{border-top:1px solid #c5d0c1;padding:.2rem 0}
.family-progress-group>summary{cursor:pointer;display:flex;align-items:center;gap:.75rem;min-height:60px;padding:.4rem 0;list-style:none}.family-progress-group>summary::-webkit-details-marker{display:none}.family-progress-group>summary:after{content:'⌄';font-size:1.2rem}.family-progress-group[open]>summary:after{content:'⌃'}
.family-progress-group summary>span:first-child{flex:1;min-width:0}.family-progress-group summary strong{display:block;font-size:1rem}.family-progress-group summary small{display:block;font-size:.8rem;margin:.25rem 0;overflow-wrap:anywhere}
.family-progress-group ul{margin:0;padding:0;list-style:none}.family-progress-group li{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem 1rem;padding:1rem 0;border-top:1px solid #d8e0d4}.family-progress-group li>div{flex:1 1 230px;min-width:0}.family-progress-group li strong{font-size:.95rem}.family-progress-group li p{font-size:.85rem;line-height:1.5;margin:.3rem 0;overflow-wrap:anywhere}.family-progress-group li>a{min-height:44px;max-width:100%;white-space:normal}
.family-progress-group li.fp-offer{border-left:4px solid #ae6920;padding-left:.8rem;background:#fff5df}
.family-dossier-context{font-size:1rem;line-height:1.5;margin:.6rem 0 0;overflow-wrap:anywhere}.family-dossier-context small{font-size:.85rem;display:block}
.family-app .app-nav a{font-size:.75rem;line-height:1.2;text-align:center;overflow-wrap:normal;padding:.2rem;min-width:0}.family-app .app-nav a span{max-width:100%}
.family-app .family-progress-panel{padding:.9rem}.family-app .family-activities{padding:1rem}.family-app .family-progress-group li{display:block}.family-app .family-progress-group li>a{display:inline-flex;margin-top:.6rem}
.family-app .association-footer{max-width:800px;margin:auto;padding:1.5rem 20px;font-size:.8rem}
.family-app .rn-main{padding-top:1.5rem}.family-app .rn-layout{grid-template-columns:minmax(0,1fr)}
@media(max-width:480px){.family-activity-grid{grid-template-columns:minmax(0,1fr)}.family-progress-panel>summary{gap:.4rem;flex-wrap:wrap}.family-progress-panel>summary>span:first-child{flex-basis:65%}.family-progress>h2{font-size:1.4rem}.family-dossier-context{font-size:.95rem}}
@media print{.family-section-nav,.family-activities{display:none}.family-progress-panel{break-inside:avoid}}
