[hidden]{display:none!important}
.pwa-tools{position:fixed;right:20px;bottom:calc(18px + env(safe-area-inset-bottom));z-index:60}
.pwa-tools button,.pwa-dialog button,.mobile-toolbar button,.mobile-menu-close{font:600 14px/1.3 system-ui,sans-serif;min-height:44px;border:1px solid #c7dce8;border-radius:10px;padding:10px 15px;background:#fff;color:#125674;cursor:pointer}
.pwa-tools button{box-shadow:0 5px 22px #10264020}
.pwa-dialog{box-sizing:border-box;width:min(580px,calc(100% - 24px));max-height:85vh;max-height:85dvh;overflow:auto;border:1px solid #d4e1eb;border-radius:18px;padding:26px;background:#fff;color:#102640;font:15px/1.65 system-ui,sans-serif}
.pwa-dialog::backdrop{background:#10264099}.pwa-dialog-heading{display:flex;align-items:start;gap:18px;justify-content:space-between}.pwa-dialog h2{font-size:23px;line-height:1.25;margin:0}.pwa-dialog h3{font-size:17px;margin:18px 0 6px}.pwa-dialog ol{padding-left:23px}.pwa-dialog .pwa-note{background:#edf7f8;padding:15px;border-radius:10px;font-size:13px}.pwa-dialog #pwa-native-install{background:#008d91;color:#fff;border:0;width:100%}.pwa-dialog :focus-visible,.mobile-toolbar :focus-visible,.mobile-menu-close:focus-visible{outline:3px solid #238ddd;outline-offset:3px}
.mobile-toolbar,.mobile-menu-close{display:none}.mobile-menu-backdrop{position:fixed;inset:0;border:0;border-radius:0;background:#10264088;z-index:110;width:100%;height:100%}
body{padding-bottom:env(safe-area-inset-bottom)}
@media(display-mode:standalone){.pwa-tools{display:none}}
@media(max-width:1024px){
 .mobile-toolbar{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:calc(10px + env(safe-area-inset-top)) 16px 10px;background:#102640;color:white}
 .mobile-toolbar strong{font:700 16px system-ui,sans-serif;letter-spacing:.18em}.mobile-toolbar button{background:#1c3c5a;color:white;border-color:#416078}
 body:has(.mobile-toolbar)>.sidebar{position:fixed;inset:0 auto 0 0;width:min(320px,88vw);height:100vh;height:100dvh;overflow-y:auto;z-index:120;transform:translateX(-105%);padding:calc(16px + env(safe-area-inset-top)) 18px calc(20px + env(safe-area-inset-bottom));box-sizing:border-box;display:flex;flex-direction:column;gap:16px;transition:transform .18s ease}
 body.mobile-menu-open>.sidebar{transform:translateX(0)}body.mobile-menu-open{overflow:hidden}
 .sidebar .mobile-menu-close{display:block;align-self:flex-end;background:#203f5a;color:white;border-color:#577085;flex-shrink:0}
 .sidebar nav{display:flex;flex-direction:column;overflow:visible;gap:5px}.sidebar nav button{width:100%;min-height:46px;flex:none;text-align:left;font-size:14px;white-space:normal}.sidebar-footer{display:none}
 body:has(.mobile-toolbar)>main{margin-left:0;min-width:0}.workspace{padding:22px 18px 85px}.topbar{padding-inline:18px}.account-strip{flex-wrap:wrap;gap:12px;padding:12px 18px}.account-strip select{max-width:100%;min-width:0}
 .sidebar .commerce-brand{display:flex;flex-direction:column;align-items:flex-start}.sidebar .commerce-brand strong{white-space:normal;overflow-wrap:anywhere;max-width:100%}
 .pwa-tools{right:12px;bottom:calc(12px + env(safe-area-inset-bottom))}
 input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px!important;max-width:100%;box-sizing:border-box}
 button,a.button{min-height:44px}input[type=checkbox],input[type=radio]{min-width:20px;min-height:20px}
 .portal .page-content{padding-bottom:90px}.portal .card{min-width:0;max-width:100%;overflow-x:auto}.portal header{padding:18px;flex-wrap:wrap}.portal header nav{flex-direction:row;flex-wrap:wrap;gap:14px}.portal header nav a{padding-block:8px}
}
@media(max-width:720px){
 .heading{flex-wrap:wrap}.heading .export-tools{justify-content:flex-start}.topbar .local-badge{display:none}.live-bar{flex-wrap:wrap;padding:12px 18px;gap:8px}.account-strip .account-name{flex:1;min-width:120px}.account-strip select{width:100%}
 .filters.period-toolbar{display:flex;flex-direction:row;flex-wrap:wrap;gap:12px}.period-choice{width:100%;min-width:0}.period-trigger{width:100%;min-height:48px}.quick-period{width:100%;display:flex;overflow-x:auto;justify-content:flex-start;gap:6px}.quick-period button{flex:0 0 auto;min-height:44px}.tax-label{width:auto;flex:1}
 #date-popover{position:fixed;inset:auto 12px calc(12px + env(safe-area-inset-bottom));width:auto;max-width:none;max-height:80vh;max-height:80dvh;overflow:auto;z-index:130;box-sizing:border-box}.date-fields{flex-wrap:wrap}.date-fields label{min-width:120px}
 .chart{overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.chart svg{min-width:540px}.table-wrap,.table-scroll,.platform-table{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
 .panel,.kpi,.insight,.driver{min-width:0}.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi strong{font-size:24px}.panel-head{flex-wrap:wrap}.insight-grid,.driver-grid,.financial-sections{grid-template-columns:1fr}.margin-bar-row{grid-template-columns:minmax(80px,1fr) 1fr 95px;gap:8px}.table-tools{flex-wrap:wrap}#margins .table-tools input{min-width:0;width:100%}
 dialog:not(.pwa-dialog){box-sizing:border-box;max-width:calc(100vw - 20px);max-height:85dvh;padding:18px}.pwa-dialog{padding:20px}.pwa-dialog-heading{flex-wrap:wrap}.auth-card{box-sizing:border-box;max-width:calc(100% - 24px)}
}
@media(prefers-reduced-motion:reduce){body:has(.mobile-toolbar)>.sidebar{transition:none}}

@media(max-width:720px){.filters.period-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 72px}.period-toolbar .period-choice{width:auto;min-width:0;grid-column:1;grid-row:1}.period-toolbar .tax-label{width:72px;grid-column:2;grid-row:1}.period-toolbar .quick-period{grid-column:1/-1;grid-row:2;width:100%;justify-content:flex-start;overflow-x:auto}.period-toolbar .quick-period button{flex:0 0 auto;min-width:65px;padding-inline:10px}.period-trigger{font-size:12px;white-space:normal}.kpis{grid-template-columns:1fr}}
