/* =========================================================
   FAMILY 6.9.52 — finition visuelle canonique
   Aucun changement fonctionnel : dimensions, débordements,
   hiérarchie, zones tactiles et stabilité clavier uniquement.
   ========================================================= */
#familySheet .familyRootSheet,
#familySheetBody,
#familySheetBody *{box-sizing:border-box}
#familySheetBody{width:100%;max-width:100%;min-width:0;overflow-x:clip}
#familySheetBody>.familySection,
#familySheetBody>.familyManagePanel,
#familySheetBody>.familyTodayV20,
#familySheetBody>.familyChatLaunchV20,
#familySheetBody>.familyPlanningLaunch,
#familySheetBody>.familyTrips683{width:100%!important;max-width:100%!important;min-width:0!important}

/* Sections : moins "bloc", plus premium, sans perte de lisibilité. */
#familySheetBody .familySection{
  overflow:hidden;
  border-radius:20px!important;
  border-color:rgba(155,166,190,.24)!important;
  padding:13px 14px!important;
  box-shadow:0 8px 24px rgba(16,24,45,.035)!important;
}
html[data-theme="dark"] #familySheetBody .familySection{
  border-color:rgba(92,108,137,.34)!important;
  box-shadow:0 10px 26px rgba(0,0,0,.08)!important;
}
#familySheetBody .familySectionHead{width:100%;min-width:0;gap:8px!important;margin-bottom:10px!important}
#familySheetBody .familySectionHead>b{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px!important;letter-spacing:-.08px}
#familySheetBody .familySectionHeadRight683{flex:0 0 auto;min-width:0;gap:6px!important}
#familySheetBody .familySectionHeadRight683>small{font-size:8.4px!important;font-variant-numeric:tabular-nums;opacity:.9}
#familySheetBody .familyCollapseBtn683{
  width:auto!important;min-width:0!important;height:29px!important;min-height:29px!important;
  padding:0 9px!important;border:1px solid transparent!important;border-radius:999px!important;
  font-size:8px!important;line-height:1!important;font-weight:850!important;letter-spacing:.05px!important;
  box-shadow:none!important;white-space:nowrap!important;
}
#familySheetBody .familyCollapsible683:not(.is-collapsed683) .familyCollapseBtn683{background:rgba(123,132,154,.10)!important;color:var(--muted)!important}
#familySheetBody .familyCollapsible683.is-collapsed683 .familyCollapseBtn683{background:rgba(112,84,222,.13)!important;color:#8b74ef!important}

/* Les cartes compactes restent toujours à l'intérieur de leur parent. */
#familySheetBody .familyTripCard683,
#familySheetBody .familyTodoRow,
#familySheetBody .familySharedFolder6911,
#familySheetBody .familySharedDoc6911,
#familySheetBody .familyManagePanel,
#familySheetBody .familyChatLaunchV20,
#familySheetBody .familyTodayV20{max-width:100%!important;min-width:0!important;overflow:hidden}
#familySheetBody .familyTripCard683{border-radius:17px!important;padding:11px 12px!important;box-shadow:none!important}
#familySheetBody .familyTripTop683{min-width:0}
#familySheetBody .familyTripMain683{min-width:0}
#familySheetBody .familyTripMain683 small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#familySheetBody .familyTripPercent683{flex:0 0 auto;font-size:11px!important}

/* Dossiers Family : hiérarchie plus nette + boutons Ouvrir discrets. */
#familySheetBody .familySharedFolders6911{width:100%;max-width:100%;gap:8px!important}
#familySheetBody .familySharedFolder6911{
  min-height:62px;border-radius:15px!important;padding:10px 11px!important;
  border-color:rgba(148,160,185,.23)!important;box-shadow:none!important;
}
#familySheetBody .familySharedFolder6911 .icon{width:38px!important;height:38px!important;border-radius:12px!important}
#familySheetBody .familySharedFolder6911 b{font-size:10px!important}
#familySheetBody .familySharedFolder6911 small{font-size:8px!important}
#familySheetBody .familySharedFolderHead6911{
  width:100%;max-width:100%;min-width:0;margin:0 0 9px!important;padding:0 0 9px;
  border-bottom:1px solid rgba(148,160,185,.18)
}
#familySheetBody .familySharedFolderHead6911>button{
  flex:0 0 auto;width:auto!important;min-width:0!important;height:34px!important;min-height:34px!important;
  padding:0 10px!important;border-radius:11px!important;font-size:8.8px!important;line-height:1!important;
  font-weight:850!important;box-shadow:none!important;background:var(--surface2,#eef0f4)!important;color:var(--text)!important
}
#familySheetBody .familySharedFolderHead6911>span{flex:1;min-width:0}
#familySheetBody .familySharedFolderHead6911 b{font-size:10.5px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#familySheetBody .familySharedFolderHead6911 small{font-size:8px!important}
#familySheetBody .familySharedDocList6911{width:100%;max-width:100%;gap:7px!important}
#familySheetBody .familySharedDoc6911{
  width:100%!important;max-width:100%!important;min-width:0!important;
  display:grid!important;grid-template-columns:40px minmax(0,1fr) auto!important;align-items:center!important;
  gap:10px!important;padding:10px 11px!important;border-radius:15px!important;
  border-color:rgba(148,160,185,.23)!important;box-shadow:none!important;overflow:hidden!important
}
#familySheetBody .familySharedDoc6911 .icon{width:40px!important;height:40px!important;border-radius:12px!important;font-size:18px!important}
#familySheetBody .familySharedDoc6911 .main{min-width:0!important;overflow:hidden}
#familySheetBody .familySharedDoc6911 .main b{font-size:10px!important;line-height:1.25!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#familySheetBody .familySharedDoc6911 .main small{font-size:8px!important;line-height:1.25!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#familySheetBody .familySharedDoc6911>button{
  appearance:none!important;-webkit-appearance:none!important;
  width:auto!important;min-width:0!important;max-width:76px!important;height:32px!important;min-height:32px!important;
  padding:0 11px!important;margin:0!important;border:1px solid rgba(116,88,226,.16)!important;
  border-radius:999px!important;background:rgba(116,88,226,.12)!important;color:#8b73f2!important;
  font-size:8.6px!important;line-height:1!important;font-weight:900!important;letter-spacing:.05px!important;
  box-shadow:none!important;white-space:nowrap!important
}
#familySheetBody .familySharedDoc6911>button:active{transform:scale(.96)!important;background:rgba(116,88,226,.18)!important}
html:not([data-theme="dark"]) #familySheetBody .familySharedDoc6911>button{color:#654bd1!important;background:#f0ecff!important}

/* Gérer Family : finition de carte système cohérente avec le reste. */
#familySheetBody .familyManagePanel{border-radius:19px!important;border-color:rgba(148,160,185,.23)!important;box-shadow:0 8px 24px rgba(16,24,45,.025)!important}
#familySheetBody .familyManagePanel summary{min-width:0;padding:11px 12px!important;grid-template-columns:36px minmax(0,1fr) auto 18px!important}
#familySheetBody .familyManagePanel summary>b{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:10.8px!important}
#familySheetBody .familyManagePanel summary>small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:8px!important}

/* Aujourd'hui : trois vraies zones tactiles, compactes et alignées. */
#familySheetBody .familyTodayV20{border-radius:20px!important;padding:12px!important}
#familySheetBody .familyTodayGridV20{width:100%;min-width:0;gap:7px!important}
#familySheetBody .familyTodayStatV20{
  width:100%;min-width:0;min-height:60px;border-radius:15px!important;padding:8px!important;
  grid-template-columns:30px minmax(0,1fr)!important;box-shadow:none!important
}
#familySheetBody .familyTodayStatV20 b,#familySheetBody .familyTodayStatV20 small{min-width:0;overflow:hidden;text-overflow:ellipsis}
#familySheetBody .familyTodayStatV20 small{white-space:nowrap}

/* Barre de navigation : garde une réserve confortable, sans masquer le dernier bloc. */
#familySheet .familyRootSheet{padding-bottom:calc(132px + env(safe-area-inset-bottom))!important;scroll-padding-bottom:calc(132px + env(safe-area-inset-bottom))!important}

/* Très petits iPhone : préserve 3 stats mais réduit uniquement l'ornement. */
@media(max-width:360px){
  #familySheetBody .familyTodayGridV20{gap:5px!important}
  #familySheetBody .familyTodayStatV20{grid-template-columns:25px minmax(0,1fr)!important;padding:7px 6px!important}
  #familySheetBody .familyTodayStatV20 i{width:25px!important;height:25px!important;font-size:12px!important}
  #familySheetBody .familyTodayStatV20 b{font-size:11.5px!important}
  #familySheetBody .familyTodayStatV20 small{font-size:6.8px!important}
  #familySheetBody .familySharedDoc6911{grid-template-columns:36px minmax(0,1fr) auto!important;padding:9px!important;gap:8px!important}
  #familySheetBody .familySharedDoc6911 .icon{width:36px!important;height:36px!important}
  #familySheetBody .familySharedDoc6911>button{max-width:64px!important;padding:0 9px!important;font-size:8px!important}
}

@media(prefers-reduced-motion:reduce){
  #familySheetBody .familyTodayStatV20,#familySheetBody .familySharedDoc6911>button{transition:none!important}
}
