/* N21SA2 — fixed bottom tab bar on phone; hidden on desktop (sidebar unchanged). */
[data-tabbar]{
  display:none;
}
@media(max-width:859px){
  html,body{overflow-x:hidden;max-width:100%}
  body:has([data-tabbar]){
    padding-bottom:calc(68px + env(safe-area-inset-bottom,0px));
  }
  [data-tabbar]{
    display:flex;
    position:fixed;
    left:0;right:0;bottom:0;
    z-index:40;
    height:calc(68px + env(safe-area-inset-bottom,0px));
    padding:0 0 env(safe-area-inset-bottom,0px);
    box-sizing:border-box;
    background:#19191e;
    border-top:1px solid #393942;
    justify-content:space-around;
    align-items:stretch;
  }
  [data-tabbar] [data-tab]{
    flex:1 1 0;
    min-width:0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:1px;
    padding:4px 1px;
    text-decoration:none;
    color:#a9a9b5;
    font-size:10px;
    font-weight:600;
    line-height:1.1;
    text-align:center;
    overflow:hidden;
  }
  [data-tabbar] [data-tab] .app-tab-icon{
    font-size:17px;
    line-height:1;
  }
  [data-tabbar] [data-tab] .app-tab-label{
    display:block;
    max-width:100%;
    /* Full German labels (Bestellungen) must remain readable — wrap, do not ellipsize. */
    white-space:normal;
    overflow:visible;
    word-break:normal;
  }
  [data-tabbar] [data-tab][aria-current='page'],
  [data-tabbar] [data-tab][aria-current=page]{
    color:#f5f5f7;
    box-shadow:inset 0 -3px #ef4848;
  }
  /* Keep main content clear of the fixed bar; do not alter sidebar. */
  body:has([data-tabbar]) .shop-layout>main,
  body:has([data-tabbar]) main.owner-main{
    padding-bottom:12px;
  }
}
@media(min-width:860px){
  [data-tabbar]{display:none !important}
}
