.family-quick-actions, .family-sharing-shortcuts { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.family-insights-columns { display: grid; grid-template-columns: 1fr 1fr; align-items: start; gap: 28px; margin-bottom: 24px; padding-block: 24px; border-block: 1px solid var(--line); }
.family-insights-columns > .content-section { margin: 0; padding: 0; background: transparent; border: 0; box-shadow: none; }
.family-overview-members { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr)); gap: 18px; margin-top: 18px; }
.family-health-member { border: 1px solid #d8e5e0; border-radius: 6px; padding: 18px; background: #fff; min-width: 0; }
.family-health-member-heading { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.family-health-member-heading > div:nth-child(2) { flex: 1; min-width: 0; }
.family-health-member h3 { font-size: var(--text-16, 16px); margin: 0; overflow-wrap: anywhere; }
.family-health-member-heading > div > span { display: block; font-size: var(--text-12, 12px); color: var(--muted); margin-top: 4px; }
.family-data-status { padding: 4px 7px; font-size: var(--text-11, 11px); font-weight: 700; border-radius: 3px; background: #edf1ef; color: #667b72; }
.family-data-status.current { background: #e0f3e8; color: #286d48; }
.family-data-status.stale { background: #fff3d9; color: #976a16; }
.family-data-status.private { background: #ecedf3; color: #677088; }
.family-member-metrics { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px; margin-top: 20px; }
.family-member-metrics > div { min-width: 0; }
.family-member-metrics span, .family-member-metrics strong, .family-member-metrics small { display: block; }
.family-member-metrics span { color: var(--muted); font-size: var(--text-12, 12px); }
.family-member-metrics strong { font-size: var(--text-20, 20px); overflow-wrap: anywhere; }
.family-member-metrics .needs-attention { color: #bc4e42; }
.family-member-metrics small { color: var(--muted); font-size: var(--text-11, 11px); }
.family-member-measured { color: var(--muted); font-size: var(--text-11, 11px); margin: 18px 0 12px; }
.family-member-score { display: flex; flex-wrap: wrap; gap: 10px 22px; font-size: var(--text-12, 12px); padding: 12px 0; border-top: 1px solid var(--line); }
.family-member-actions { display: flex; gap: 16px; flex-wrap: wrap; padding-top: 8px; }
.family-member-actions button:disabled { opacity: .5; cursor: default; }
.family-private-note { font-size: var(--text-13, 13px); color: var(--muted); min-height: 110px; padding: 18px 0; line-height: 1.8; }
.family-sharing-shortcuts { margin-top: 18px; }
.family-invite-box { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; background: #edf6f2; border-left: 3px solid #268e77; padding: 18px; margin-top: 18px; }
.family-invite-box strong { font: 700 var(--text-22, 22px) Consolas, monospace; color: #176f65; }
.family-invite-box small { width: 100%; color: var(--muted); }
.family-attention-item { border-left: 3px solid #ccaf68; padding: 4px 0 4px 14px; margin: 18px 0; }
.family-attention-item.remeasure { border-color: #ce796c; }
.family-attention-item strong { font-size: var(--text-14, 14px); }
.family-attention-item p { margin: 6px 0; font-size: var(--text-13, 13px); line-height: 1.7; }
.family-attention-item small { color: var(--muted); }
.family-rules-summary { border-top: 1px solid var(--line); margin-top: 22px; padding-top: 15px; }
.family-rules-summary > span { font-size: var(--text-12, 12px); color: #497f70; font-weight: 700; }
.family-rules-summary p { white-space: pre-line; font-size: var(--text-13, 13px); line-height: 1.8; }
.family-rules-summary small, .family-empty-note { color: var(--muted); font-size: var(--text-12, 12px); line-height: 1.8; }
.family-task-heading-actions { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
@media(max-width:760px) { .family-task-heading-actions { width: 100%; justify-content: flex-start; } }
.family-health-timeline { max-height: 510px; overflow-y: auto; padding-right: 6px; }
.family-timeline-entry { display: flex; gap: 14px; padding: 8px 0 14px; }
.timeline-marker { flex: 0 0 8px; width: 8px; height: 8px; border-radius: 50%; background: #63968a; margin-top: 7px; }
.timeline-marker.task { background: #b19753; }
.timeline-marker.message { background: #728bb7; }
.family-timeline-entry > div { min-width: 0; }
.family-timeline-entry strong { font-size: var(--text-13, 13px); }
.family-timeline-entry p { font-size: var(--text-12, 12px); margin: 5px 0; overflow-wrap: anywhere; }
.family-timeline-entry small { color: var(--muted); font-size: var(--text-11, 11px); }
.family-trend-controls { display: grid; grid-template-columns: minmax(0, 1.4fr) repeat(2, minmax(0, 1fr)); gap: 16px; }
.family-trend-chart { height: 270px; width: 100%; min-width: 0; display: grid; place-items: center; text-align: center; color: var(--muted); }
.family-trend-chart canvas { display: block; width: 100%; max-width: 100%; }
#familyTrendDetails summary { color: #257466; cursor: pointer; padding-top: 14px; font-size: var(--text-13, 13px); }
.family-trend-section, #groupsSection { scroll-margin-top: 18px; }
#familyContent > .family-insights-section { padding-inline: 0; border: 0; box-shadow: none; background: transparent; }
@media(max-width: 1000px) { .family-insights-columns { grid-template-columns: minmax(0, 1fr); } }
@media(max-width: 760px) {
  .family-trend-controls { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .family-trend-controls > label:first-child { grid-column: 1 / -1; }
  .family-quick-actions { width: 100%; }
  .family-quick-actions button { flex: 1 1 140px; }
  .family-health-member { padding: 16px; }
  body.senior-mode .family-trend-controls { grid-template-columns: minmax(0, 1fr); }
}
