/* =========================================================
   STEEL BALL — MOBILE BOTTOM NAV REBUILD
   Clean component with its own class names so no legacy mobile-nav
   rule can affect its size, grid, active item or safe area.
   ========================================================= */
@media (max-width:700px){
  :root{
    --sb-dock-content-height:76px;
    --sb-dock-safe-bottom:env(safe-area-inset-bottom, 0px);
    --sb-dock-total-height:calc(var(--sb-dock-content-height) + var(--sb-dock-safe-bottom));
  }

  .steelball-mobile-dock{
    position:fixed !important;
    inset-block-end:0 !important;
    inset-inline-start:0 !important;
    inset-inline-end:0 !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    height:var(--sb-dock-total-height) !important;
    min-height:var(--sb-dock-total-height) !important;
    max-height:var(--sb-dock-total-height) !important;
    margin:0 !important;
    padding:4px 4px calc(4px + var(--sb-dock-safe-bottom)) !important;
    box-sizing:border-box !important;
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    grid-template-rows:minmax(0, 1fr) !important;
    align-items:stretch !important;
    gap:0 !important;
    direction:rtl !important;
    overflow:hidden !important;
    border:0 !important;
    border-top:1px solid rgba(226,184,87,.14) !important;
    border-radius:0 !important;
    background:#090a0d !important;
    box-shadow:0 -8px 24px rgba(0,0,0,.38) !important;
    z-index:5000 !important;
    transform:translate3d(0,0,0) !important;
    -webkit-transform:translate3d(0,0,0) !important;
    isolation:isolate !important;
  }

  .steelball-mobile-dock__item{
    min-width:0 !important;
    min-height:0 !important;
    width:auto !important;
    height:100% !important;
    margin:0 !important;
    padding:0 2px !important;
    box-sizing:border-box !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:4px !important;
    overflow:hidden !important;
    border:0 !important;
    border-radius:12px !important;
    background:transparent !important;
    color:#a7a8ad !important;
    text-decoration:none !important;
    font-size:clamp(9px, 2.65vw, 12px) !important;
    font-weight:900 !important;
    line-height:1.12 !important;
    white-space:nowrap !important;
    -webkit-tap-highlight-color:transparent !important;
    touch-action:manipulation !important;
  }

  .steelball-mobile-dock__item i{
    display:block !important;
    flex:0 0 auto !important;
    margin:0 !important;
    font-size:clamp(18px, 5.4vw, 23px) !important;
    line-height:1 !important;
    color:#96979d !important;
  }

  .steelball-mobile-dock__item span{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
    text-align:center !important;
  }

  .steelball-mobile-dock__item:active{
    transform:scale(.98) !important;
  }

  .steelball-mobile-dock__item.is-active{
    position:relative !important;
    background:rgba(226,184,87,.085) !important;
    color:#f5f5f5 !important;
  }

  .steelball-mobile-dock__item.is-active i{
    color:var(--gold-2, #e2b857) !important;
  }

  .steelball-mobile-dock__item.is-active::after{
    content:"" !important;
    position:absolute !important;
    inset-inline-start:50% !important;
    inset-block-end:3px !important;
    width:24px !important;
    height:2px !important;
    border-radius:999px !important;
    background:var(--gold-2, #e2b857) !important;
    transform:translateX(-50%) !important;
  }

  /* The page reserves exactly the same height as the rebuilt dock. */
  body{
    padding-bottom:var(--sb-dock-total-height) !important;
  }
}

@media (max-width:360px){
  :root{--sb-dock-content-height:72px;}
  .steelball-mobile-dock{padding-inline:2px !important;}
  .steelball-mobile-dock__item{gap:3px !important;padding-inline:1px !important;font-size:9px !important;}
  .steelball-mobile-dock__item i{font-size:18px !important;}
  .steelball-mobile-dock__item.is-active::after{width:20px !important;}
}

@media (min-width:701px){
  .steelball-mobile-dock{display:none !important;}
}
