.flow-mobile-menu,.flow-mobile-backdrop{display:none}
@media(max-width:720px){
 html,body{width:100%;overflow-x:hidden}
 .shell{display:block;min-height:100dvh}
 .shell .sidebar{display:flex;position:fixed;inset:0 auto 0 0;width:min(82vw,300px);height:100vh;height:100dvh;z-index:101;transform:translateX(-105%);visibility:hidden;transition:transform .18s ease; padding:calc(16px + env(safe-area-inset-top)) 12px calc(12px + env(safe-area-inset-bottom));box-shadow:8px 0 30px #0003}
 .shell.mobile-menu-open .sidebar{transform:translateX(0);visibility:visible}
 .flow-mobile-backdrop{position:fixed;inset:0;background:#0007;border:0;z-index:100}
 .mobile-menu-open .flow-mobile-backdrop{display:block}
 .flow-mobile-menu{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:0;border-radius:8px;background:var(--mint);color:var(--navy);font-size:24px;flex-shrink:0}
 .shell .main{min-width:0;width:100%}
 .shell .topbar{position:sticky;top:0;z-index:40;gap:10px;height:auto;min-height:64px;padding:calc(8px + env(safe-area-inset-top)) 12px 8px;background:var(--bg);display:flex}
 .topbar h1{font-size:21px;flex:1;min-width:0;overflow-wrap:anywhere;margin:0}
 .shell .content{padding:16px 12px calc(24px + env(safe-area-inset-bottom));min-width:0}
 .content .panel{padding:16px;min-width:0}
 .content .grid2{grid-template-columns:minmax(0,1fr)}
 .content .cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
 .card .value{font-size:clamp(19px,5vw,28px);overflow-wrap:anywhere}
 .section-head,.toolbar{flex-wrap:wrap;gap:10px}
 .content input,.content select,.content textarea,.modal input,.modal select,.modal textarea{font-size:16px;max-width:100%}
 .table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
 .modal-wrap{padding:12px;z-index:150}.modal{max-height:85dvh;width:100%}
 .content .calendar{max-width:100%;overflow-x:auto}
 .btn{min-height:40px}.sidebar .nav button{min-height:44px}
 .toast{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:200}
}
