/* Family Hub mobile - versione unica */
.hamburger{display:none;position:fixed;top:14px;left:14px;z-index:1001;width:46px;height:46px;align-items:center;justify-content:center;border-radius:12px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:22px;cursor:pointer;box-shadow:var(--shadow)}
.sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:999}
.sidebar-overlay.show{display:block}
@media (max-width:820px){
  html,body{overflow-x:hidden !important}
  .page{display:block !important}
  .sidebar{position:fixed !important;top:0;left:0;height:100vh;width:280px;transform:translateX(-105%);transition:transform .3s ease;z-index:1000;overflow-y:auto;background:var(--surface);min-width:0 !important}
  .sidebar.open{transform:translateX(0);box-shadow:0 0 40px rgba(0,0,0,.35)}
  .content{padding:70px 14px 40px !important;overflow-x:hidden !important}
  .hamburger{display:flex !important}
  .topbar{display:flex !important;flex-direction:column !important;align-items:stretch !important;justify-content:flex-start !important;gap:10px !important;margin-bottom:14px !important;min-height:0 !important;height:auto !important}
  .topbar-controls{display:flex !important;flex-direction:column !important;align-items:stretch !important;justify-content:flex-start !important;gap:10px !important;width:100% !important;min-height:0 !important;height:auto !important}
  .search-wrap{width:100% !important;min-width:0 !important;max-width:none !important;flex:none !important}
  .action-group{display:flex !important;flex-direction:row !important;justify-content:flex-start !important;flex-wrap:wrap !important;gap:10px !important;white-space:normal !important;height:auto !important}
  .home-grid{display:block !important}
  .home-grid>.module-card{margin-bottom:16px !important}
  [style*="grid-template-columns"]{grid-template-columns:1fr !important}
  .module-card{padding:18px 16px !important;max-width:100% !important;min-height:0 !important}
  input,select,textarea{min-height:46px;font-size:16px !important}
  button,.cta,.secondary{min-height:46px !important}
  .nav a{min-height:48px}
  img,svg,table,pre{max-width:100% !important}
}
html[data-theme="dark"] .main-card p,html[data-theme="dark"] .module-card p,html[data-theme="dark"] .sidebar-card p{color:#e6e0d6 !important}
@media (max-width:820px){
  .home-grid{display:flex !important;flex-direction:column !important}
  .home-grid > [style*="max-height"]{order:-1 !important;max-height:none !important;overflow:visible !important;margin-bottom:16px !important}
}
