/* Added last: a real on-screen keyboard temporarily frees space for the current field. */
.mobile-input-tools{display:none}
@media screen and (max-width:600px){
 body.mobile-keyboard-open #app{position:fixed;top:var(--mobile-viewport-top,0px);left:0;width:100%;height:calc(var(--mobile-viewport-height) - 44px);overflow:hidden}
 body.mobile-keyboard-open .app-shell,body.mobile-keyboard-open .debug-workspace{height:100%!important;min-height:0!important;max-height:100%}
 body.mobile-keyboard-open .app-shell .sidebar,
 body.mobile-keyboard-open .topbar .role-feed-buttons,
 body.mobile-keyboard-open .topbar #logout,
 body.mobile-keyboard-open .topbar .environment-note,
 body.mobile-keyboard-open .page-head>h1,
 body.mobile-keyboard-open .page-head>.toolbar,
 body.mobile-keyboard-open .page-head>.warehouse-work-entry,
 body.mobile-keyboard-open .billing-workspace .bill-mobile-tabs,
 body.mobile-keyboard-open .billing-workspace .bill-mobile-review,
 body.mobile-keyboard-open .billing-workspace .product-tabs,
 body.mobile-keyboard-open #page[data-page=admin] .admin-library-tabs,
 body.mobile-keyboard-open #page[data-page=payments] .collection-summary,
 body.mobile-keyboard-open #page[data-page=payments] .collection-controls .flow-tabs,
 body.mobile-keyboard-open .debug-toolbar>.debug-device,
 body.mobile-keyboard-open .debug-preview-note,
 body.mobile-keyboard-open .debug-footer{display:none!important}
 body.mobile-keyboard-open .app-shell .topbar{min-height:23px;padding:1px 0;gap:2px!important}
 body.mobile-keyboard-open .topbar .identity-person{max-width:100%;font-size:12px}
 body.mobile-keyboard-open .app-shell .page-head{margin:2px 0;gap:2px}
 body.mobile-keyboard-open .page-head .scope-label{max-width:100%;font-size:12px}
 body.mobile-keyboard-open .app-shell .sync-state{min-height:22px;padding:1px 3px;font-size:11px}
 body.mobile-keyboard-open .app-shell .sync-state button{min-height:24px}
 body.mobile-keyboard-open .app-shell .workspace{min-height:0;flex:1}
 body.mobile-keyboard-open .billing-workspace .bill-confirm-bar{position:static!important;bottom:auto!important}
 body.mobile-keyboard-open :is(input,textarea,[contenteditable=true]){scroll-margin-block:12px 56px}
 body.mobile-keyboard-open .login-shell{display:block;height:100%;min-height:0;padding:8px;overflow:auto}
 body.mobile-keyboard-open .login-card{padding:12px}
 body.mobile-keyboard-open .login-card>.muted,body.mobile-keyboard-open .login-card>.mobile-install{display:none}
 body.mobile-keyboard-open .login-card form{margin:10px 0}
 body.mobile-keyboard-open dialog[open]{position:fixed;top:calc(var(--mobile-viewport-top,0px) + 6px);bottom:auto;max-height:calc(var(--mobile-viewport-height) - 56px);margin:0 auto;overflow:auto}
 body.mobile-keyboard-open .mobile-input-tools{position:fixed;top:calc(var(--mobile-viewport-top,0px) + var(--mobile-viewport-height) - 44px);left:0;right:0;height:44px;display:flex;justify-content:flex-end;align-items:center;padding:3px 10px;box-sizing:border-box;background:#edf3ef;border-top:1px solid #c6d6cc;z-index:150}
 body.mobile-keyboard-open .mobile-input-tools button{min-height:36px;padding:5px 14px;border:1px solid #a8c2b3;border-radius:5px;background:white;color:#185a45;font:inherit;font-size:15px;font-weight:650;touch-action:manipulation}
 .mobile-input-tools[hidden]{display:none!important}
}
@media print{.mobile-input-tools{display:none!important}}
