/* Mobile first polish: choose long menus from a native picker instead of a clipped chip rail. */
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.mobile-category-picker,.install-app-mobile-label{display:none}
@media(max-width:700px){
  .menu-category-rail{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-height:78px;padding:8px 14px!important;overflow:visible}
  .menu-category-rail>.rail-title,.menu-category-rail>.category-tabs{display:none!important}
  .mobile-category-picker{position:relative;display:block;min-width:0}
  .mobile-category-summary{display:block;margin:0 0 5px 2px;color:#f1cc7c;font-size:9px;font-weight:800;letter-spacing:.13em;line-height:1.2}
  .mobile-category-picker:after{content:"⌄";position:absolute;right:13px;top:50%;transform:translateY(-57%);color:#f6dfb5;font-size:18px;line-height:1;pointer-events:none}
  #mobile-category-select{display:block;width:100%;min-width:0;min-height:44px;padding:9px 34px 9px 12px;border:1px solid #bd9256;border-radius:9px;appearance:none;background:linear-gradient(135deg,#634427,#402b1b);color:#fff2d8;font:inherit;font-size:13px;font-weight:700;line-height:1.2;box-shadow:inset 0 1px #ffffff14}
  #mobile-category-select:focus-visible{outline:3px solid #f1ca70;outline-offset:2px}
  #mobile-category-select option{background:#fff8ec;color:#382316}
  .menu-category-rail>.install-app-trigger{display:flex;align-items:center;justify-content:center;gap:6px;width:auto;min-width:112px;min-height:44px;margin:0;padding:8px 10px;border-radius:9px;font-size:10px;white-space:nowrap}
  .install-app-trigger[hidden]{display:none!important}
  .install-app-trigger svg{width:16px;height:16px;flex:0 0 auto}
  .install-app-desktop-label{display:none}
  .install-app-mobile-label{display:inline}
  .product-category-heading,.product-category-section{scroll-margin-top:116px}
  .menu-search input{min-width:0}
}
@media(max-width:380px){
  .menu-category-rail{grid-template-columns:minmax(0,1fr) auto;gap:6px}
  .menu-category-rail>.install-app-trigger{min-width:102px;padding-inline:7px}
  #mobile-category-select{font-size:12px}
}
/* Admin tabs stay finger-scrollable without shrinking labels on narrow screens. */
@media(max-width:760px){
  .admin-tabs{width:100%;min-width:0;max-width:100%;box-sizing:border-box;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:thin;scroll-snap-type:x proximity;gap:6px;padding-bottom:3px}
  .admin-tabs button{flex:0 0 auto;min-height:44px;scroll-snap-align:start;white-space:nowrap}
  .admin-table-wrap{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}
  .admin-panel button,.admin-panel select{min-height:38px}
}
