/* Jazz Café Roma — v28: indice categorie a scomparsa e ricerca */
.jazz-menu-page .menu-body{align-items:start;}
.jazz-menu-page .jazz-category-nav{
  display:block;position:sticky;top:18px;padding:0;border:0;background:transparent;
  min-width:0;max-height:calc(100dvh - 36px);overflow:visible;z-index:4;
}
.jazz-menu-page .jazz-category-chooser{display:block;border:1px solid #685039;border-radius:12px;background:#201a15;box-shadow:0 8px 26px #0003;overflow:hidden;color:#f3dfc5;}
.jazz-menu-page .jazz-category-summary{
  display:flex;align-items:center;gap:10px;cursor:pointer;padding:17px 15px;list-style:none;
  font:700 14px/1.35 system-ui,sans-serif;color:#f1d4a9;min-height:54px;
}
.jazz-menu-page .jazz-category-summary::-webkit-details-marker{display:none;}
.jazz-menu-page .jazz-category-summary:focus-visible{outline:3px solid #d2ad78;outline-offset:-3px;}
.jazz-menu-page .jazz-category-summary-icon{font-size:18px;font-weight:normal;line-height:1;}
.jazz-menu-page .jazz-category-summary-label{flex:1;}
.jazz-menu-page .jazz-category-summary-count{font:600 11px/1.4 system-ui;color:#e8d2b4;border:1px solid #705740;border-radius:50px;padding:2px 7px;}
.jazz-menu-page .jazz-category-chevron{font-size:19px;line-height:1;transform:rotate(0);transition:transform .18s ease;}
.jazz-menu-page .jazz-category-chooser[open] .jazz-category-chevron{transform:rotate(180deg);}
.jazz-menu-page .jazz-category-panel{padding:0 12px 12px;border-top:1px solid #493828;}
.jazz-menu-page .jazz-category-search-label{display:block;font:600 11px/1.25 system-ui;color:#bd9d77;margin:13px 0 7px;}
.jazz-menu-page .jazz-category-search{display:block;width:100%;box-sizing:border-box;color:#f2e3d0;background:#100e0c;border:1px solid #65503d;border-radius:8px;padding:10px 11px;font:14px/1.4 system-ui,sans-serif;outline-offset:2px;}
.jazz-menu-page .jazz-category-search::placeholder{color:#b3a08c;}
.jazz-menu-page .jazz-category-search:focus{outline:2px solid #c7a473;border-color:transparent;}
.jazz-menu-page .jazz-category-list{
  display:flex;flex-direction:column;gap:2px;min-height:0;max-height:min(56dvh,530px);
  overflow-y:auto;overscroll-behavior:contain;margin-top:10px;padding:2px 4px 2px 0;
  scrollbar-width:thin;scrollbar-color:#8c6b48 #201a15;
}
.jazz-menu-page .jazz-category-list .jazz-category-option{display:block;flex:none;white-space:normal;overflow-wrap:break-word;font:500 13px/1.45 system-ui,sans-serif;color:#e1d0b8;text-decoration:none;border-radius:7px;padding:10px 11px;border:0;background:transparent;}
.jazz-menu-page .jazz-category-list .jazz-category-option:hover,.jazz-menu-page .jazz-category-list .jazz-category-option:focus-visible{background:#34291e;color:#fff7e9;outline:none;}
.jazz-menu-page .jazz-category-list .jazz-category-option.is-active{background:#6e502f;color:#fff3df;font-weight:700;}
.jazz-menu-page .jazz-category-list .jazz-category-option[hidden]{display:none!important;}
.jazz-menu-page .jazz-category-list .jazz-category-option.jazz-category-allergens{color:#f3c386;border-top:1px solid #55402c;margin-top:8px;padding-top:13px;font-weight:700;}
.jazz-menu-page .jazz-category-hint,.jazz-menu-page .jazz-category-none{margin:10px 3px 0;font:12px/1.35 system-ui;color:#c5ac90;}
.jazz-menu-page .jazz-category-hint{padding-top:8px;border-top:1px solid #463528;}
.jazz-menu-page .jazz-category-none[hidden]{display:none;}
.jazz-menu-page .menu-group,.jazz-menu-page #menu-allergeni{scroll-margin-top:24px;}
@media(max-width:900px){
 .jazz-menu-page .menu-body{display:block;}
 .jazz-menu-page .jazz-category-nav{position:sticky;top:8px;z-index:6;max-height:none;margin:4px 0 28px;display:block;}
 .jazz-menu-page .jazz-category-chooser{box-shadow:0 7px 22px #0009;}
 .jazz-menu-page .jazz-category-summary{padding:13px 15px;min-height:50px;}
 .jazz-menu-page .jazz-category-list{max-height:45dvh;}
 .jazz-menu-page .menu-group,.jazz-menu-page #menu-allergeni{scroll-margin-top:86px;}
}
@media(prefers-reduced-motion:reduce){.jazz-menu-page .jazz-category-chevron{transition:none;}}

/* v29: categoria sempre sticky in Food e Drinks, desktop e mobile */
body.jazz-menu-page .menu-body {overflow:visible!important;align-items:start!important;}
body.jazz-menu-page .jazz-category-nav {
  position:sticky!important; top:12px!important; z-index:40!important;
  align-self:start!important; max-height:calc(100dvh - 24px)!important;
}
body.jazz-menu-page .jazz-category-chooser[open] .jazz-category-panel {
  max-height:calc(100dvh - 92px);overflow-y:auto;overscroll-behavior:contain;
}
@media(max-width:900px){
  body.jazz-menu-page .jazz-category-nav {position:sticky!important;top:8px!important;margin:0 0 20px!important;max-height:calc(100dvh - 16px)!important;}
  body.jazz-menu-page .jazz-category-chooser[open] .jazz-category-panel {max-height:calc(100dvh - 76px);}
  body.jazz-menu-page .menu-group,body.jazz-menu-page #menu-allergeni {scroll-margin-top:80px!important;}
}
/* La testata del sito è anch'essa sticky: lascia libera la zona del logo/navigazione. */
@media(min-width:901px){
 body.jazz-menu-page .jazz-category-nav {top:108px!important;max-height:calc(100dvh - 122px)!important;}
 body.jazz-menu-page .jazz-category-chooser[open] .jazz-category-panel {max-height:calc(100dvh - 204px)!important;}
 body.jazz-menu-page .menu-group,body.jazz-menu-page #menu-allergeni {scroll-margin-top:125px!important;}
}
@media(max-width:900px){
 body.jazz-menu-page .jazz-category-nav {top:82px!important;max-height:calc(100dvh - 92px)!important;}
 body.jazz-menu-page .jazz-category-chooser[open] .jazz-category-panel {max-height:calc(100dvh - 150px)!important;}
 body.jazz-menu-page .menu-group,body.jazz-menu-page #menu-allergeni {scroll-margin-top:143px!important;}
}
