/* Shared dock layout only. UI choices, typography, icon controls, surfaces and
   radii belong to ui.css / icons.css. This is the sole bottom-space owner. */
.sf-ui.sf-mobile-dock-reserve { display: none; padding: 0; }
.sf-mobile-dock { display: none; }
@media (max-width: 767.98px) {
  .sf-ui.sf-mobile-dock-reserve {
    display: block;
    height: var(--sfui-dock-reserve, calc(var(--sfui-badge-large) + var(--sfui-space-32) + var(--sfui-space-8) + env(safe-area-inset-bottom, 0px)));
  }
  .sf-mobile-dock {
    display: block; position: fixed; inset-inline: 0; bottom: 0; z-index: 9999;
    padding-bottom: env(safe-area-inset-bottom, 0px);
    padding-left: env(safe-area-inset-left, 0px); padding-right: env(safe-area-inset-right, 0px);
  }
  .sf-mobile-dock__items { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); align-items: start; }
  .sf-mobile-dock__item { position: relative; }
  .sf-mobile-dock__item--center { align-self: stretch; }
  .sf-mobile-dock__icon-slot { position: relative; display: grid; place-items: center; flex: none; width: 100%; height: var(--sfui-space-32); }
  .sf-mobile-dock__primary { position: absolute; top: calc(-1 * var(--sfui-space-8)); left: 50%; transform: translateX(-50%); }
  body.sf-megamenu-mobile-open .sf-mobile-dock { visibility: hidden; pointer-events: none; }
}
