/* V4.6.8.36.48.1.55.33 - Public Mobile App Navigation, Touch & Context Closure
 * Mobile-only interaction layer. Desktop intentionally unchanged.
 */
@media (max-width:760px){
  body.emwh-public-standalone{
    --emwh-mobile-appbar-h:58px;
    --emwh-mobile-bottom-h:68px;
    -webkit-tap-highlight-color:transparent;
  }

  /* Reliable app shell and safe-area treatment. */
  body.emwh-public-standalone .emwh-public-appbar-inner{
    padding-left:max(12px,env(safe-area-inset-left))!important;
    padding-right:max(12px,env(safe-area-inset-right))!important;
  }
  body.emwh-public-standalone .emwh-public-mobile-menu-toggle,
  body.emwh-public-standalone .emwh-public-language{
    min-width:40px!important;
    min-height:40px!important;
  }

  /* Bottom navigation behaves like an app tab bar. */
  body.emwh-public-standalone .emwh-public-mobile-bottom-nav{
    min-height:var(--emwh-mobile-bottom-h)!important;
    height:auto!important;
    padding-bottom:max(4px,env(safe-area-inset-bottom))!important;
    border-top:1px solid #d7e1ea!important;
    box-shadow:0 -8px 24px rgba(7,31,54,.10)!important;
  }
  body.emwh-public-standalone .emwh-public-mobile-bottom-nav>a,
  body.emwh-public-standalone .emwh-public-mobile-bottom-nav>button{
    min-width:0!important;
    min-height:54px!important;
    padding:5px 3px 4px!important;
    border-radius:10px!important;
    touch-action:manipulation!important;
  }
  body.emwh-public-standalone .emwh-public-mobile-bottom-nav svg{
    width:18px!important;
    height:18px!important;
  }
  body.emwh-public-standalone .emwh-public-mobile-bottom-nav span{
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
  body.emwh-public-standalone .emwh-public-mobile-bottom-nav .is-active{
    background:#edf4fa!important;
    color:#0a3458!important;
  }

  /* Menu gets a real app overlay and never competes with the page. */
  body.emwh-public-standalone .emwh-public-mobile-menu-backdrop{
    display:none;
    position:fixed;
    z-index:84;
    inset:58px 0 0;
    background:rgba(5,24,42,.34);
    backdrop-filter:blur(1.5px);
  }
  body.emwh-public-standalone.emwh-mobile-menu-open .emwh-public-mobile-menu-backdrop{display:block}
  body.emwh-public-standalone.emwh-mobile-menu-open{overflow:hidden!important}
  body.emwh-public-standalone .emwh-public-mobile-app-menu{z-index:90!important}
  body.emwh-public-standalone .emwh-public-mobile-app-menu a{
    min-height:46px!important;
    touch-action:manipulation!important;
  }

  /* Keep form controls app-dense but comfortably tappable. */
  body.emwh-public-standalone input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
  body.emwh-public-standalone select,
  body.emwh-public-standalone button,
  body.emwh-public-standalone .emwh-public-position-actions a{
    touch-action:manipulation;
  }
  body.emwh-public-standalone .emwh-public-commercial-request input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
  body.emwh-public-standalone .emwh-public-commercial-request select,
  body.emwh-public-standalone .emwh-public-commercial-request-form input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
  body.emwh-public-standalone .emwh-public-commercial-request-form select{
    min-height:42px!important;
    height:42px!important;
  }

  /* When the virtual keyboard opens, the fixed tab bar gets out of the way. */
  body.emwh-public-standalone.emwh-mobile-keyboard-open .emwh-public-mobile-bottom-nav{
    transform:translateY(120%)!important;
    pointer-events:none!important;
  }
  body.emwh-public-standalone .emwh-public-mobile-bottom-nav{
    transition:transform .18s ease!important;
  }

  /* Third-party floating controls must not cover app navigation or primary CTAs. */
  body.emwh-public-standalone #userwayAccessibilityIcon,
  body.emwh-public-standalone .uwy,
  body.emwh-public-standalone .acsb-trigger,
  body.emwh-public-standalone .pojo-a11y-toolbar-toggle{
    bottom:calc(82px + env(safe-area-inset-bottom))!important;
    left:8px!important;
    right:auto!important;
    z-index:79!important;
  }
  body.emwh-public-standalone .gt_float_switcher,
  body.emwh-public-standalone .gtranslate_wrapper{
    bottom:calc(82px + env(safe-area-inset-bottom))!important;
    right:5px!important;
    z-index:79!important;
  }

  /* Keyboard/focus clarity. */
  body.emwh-public-standalone :focus-visible{
    outline:2px solid #0a5c96!important;
    outline-offset:2px!important;
  }
}

@media (prefers-reduced-motion:reduce){
  body.emwh-public-standalone .emwh-public-mobile-bottom-nav{transition:none!important}
}
