/* CROSS_PLATFORM_FOUNDATION_V21 — preserves the approved global header. */
html,body{min-height:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}
button,input,select,textarea{font:inherit}
button,[role="button"],select,input[type="checkbox"],input[type="radio"]{touch-action:manipulation}
@supports(padding:max(0px)){
  #portalView>nav{padding-left:max(14px,env(safe-area-inset-left))!important;padding-right:max(14px,env(safe-area-inset-right))!important}
  #portalView:not(.hidden)::before{left:max(7px,env(safe-area-inset-left))!important;right:max(7px,env(safe-area-inset-right))!important}
}
@media(max-width:1100px){
  #portalView>nav{overflow-x:auto!important;overflow-y:hidden!important;flex-wrap:nowrap!important;-webkit-overflow-scrolling:touch!important}
  #portalView>nav button{flex:0 0 auto!important}
  #portalView:not(.hidden)::before{background-size:100% 100%!important;background-position:center!important}
  #portalView:not(.hidden)>.page:not(.hidden){overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important}
}
@media(pointer:coarse){
  #portalView button:not(.item-up):not(.item-down):not(.item-remove){min-height:36px!important}
  input,select,textarea{font-size:16px!important}
}
@media print{.pwa-install,.platform-status{display:none!important}}
.platform-sync-status{position:fixed;right:max(14px,env(safe-area-inset-right));bottom:max(36px,env(safe-area-inset-bottom));z-index:1200;padding:5px 10px;border:1px solid #9fc5e8;border-radius:999px;background:#f5fbff;color:#064f8f;font-size:12px;font-weight:700;box-shadow:0 2px 8px #001d3d24;pointer-events:none}
.platform-sync-status[data-state="offline"]{background:#fff7e6;color:#8a4b00;border-color:#e6b76b}.platform-sync-status[data-state="pending"]{background:#edf6ff}.platform-sync-status[data-state="conflict"]{background:#fff0f0;color:#a30019;border-color:#e79aa6}
@media print{.platform-sync-status{display:none!important}}
