
/* DRIFTAWAY MENU CONTROLS V22 — compact, readable, zero default rail offset */
:root{--dm-v22-bar-h:62px;--dm-v22-rail-w:272px;--dm-v22-header-offset:0px}

.dm-control-deck{position:sticky!important;top:var(--dm-v22-header-offset)!important;z-index:10000!important;width:100%!important;margin:0!important;border:0!important;border-radius:0!important;overflow:visible!important;box-shadow:0 10px 25px rgba(8,55,75,.08)!important;background:transparent!important}
.dm-control-deck .dm-search-band,.ipad-controls .ipad-search-row{width:100%!important;min-height:var(--dm-v22-bar-h)!important;margin:0!important;padding:8px 10px!important;display:flex!important;align-items:center!important;gap:8px!important;border-radius:0!important;background:linear-gradient(90deg,#2f83a2 0%,#5aa2bd 50%,#7b7eaf 100%)!important}
.dm-control-deck .dm-search-band:after{display:none!important}

#menu-rail-toggle{position:static!important;inset:auto!important;transform:none!important;flex:0 0 44px!important;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;margin:0!important;padding:0!important;border:1px solid rgba(255,255,255,.62)!important;border-radius:50%!important;background:#123f58!important;color:#fff!important;display:grid!important;place-items:center!important;box-shadow:0 6px 16px rgba(7,40,55,.18)!important;cursor:pointer!important;z-index:auto!important}
#menu-rail-toggle:hover{background:#fff!important;color:#0a4666!important}
#menu-rail-toggle .rail-toggle-label{display:none!important}
#menu-rail-toggle .rail-toggle-icon{font-size:1.28rem!important;line-height:1!important}

#quick-filters{display:flex!important;align-items:center!important;gap:6px!important;flex:1 1 auto!important;min-width:0!important;overflow-x:auto!important;overflow-y:hidden!important;flex-wrap:nowrap!important;scrollbar-width:none!important;padding:0!important;margin:0!important}
#quick-filters::-webkit-scrollbar{display:none!important}
#quick-filters .dm-quick-filter{flex:0 0 auto!important;min-height:38px!important;padding:.45rem .75rem!important;border:1px solid rgba(255,255,255,.32)!important;border-radius:999px!important;background:rgba(9,68,93,.78)!important;color:#fff!important;font-size:.63rem!important;font-weight:900!important;letter-spacing:.02em!important;white-space:nowrap!important}
#quick-filters .dm-quick-filter:hover{background:#fff!important;color:#0a4666!important;border-color:#fff!important}
#quick-filters .dm-quick-filter.active{background:#626694!important;color:#fff!important;border-color:#8f92bf!important}

.dm-simple-controls{display:flex!important;align-items:center!important;gap:6px!important;flex:0 0 auto!important;margin-left:auto!important;position:relative!important}
.dm-simple-controls button{font-family:inherit!important}
.dm-simple-clear,.dm-text-button,.dm-theme-switch,.dm-print-simple{height:42px!important;min-height:42px!important;border:1px solid rgba(255,255,255,.62)!important;color:#fff!important;cursor:pointer!important;transition:background .16s ease,color .16s ease,border-color .16s ease,transform .16s ease!important}
.dm-simple-clear:hover,.dm-text-button:hover,.dm-print-simple:hover{background:#fff!important;color:#0a4666!important;border-color:#fff!important;transform:translateY(-1px)!important}
.dm-simple-clear{min-width:58px!important;padding:0 11px!important;border-radius:9px!important;background:rgba(16,65,88,.5)!important;display:inline-grid!important;place-items:center!important;font-size:.62rem!important;font-weight:900!important;letter-spacing:.05em!important;text-transform:uppercase!important}
.dm-text-control-wrap{position:relative!important;display:block!important}
.dm-text-button{width:42px!important;min-width:42px!important;padding:0!important;border-radius:9px!important;background:rgba(16,65,88,.5)!important;display:grid!important;place-items:center!important;font:900 1.38rem/1 Arial,sans-serif!important}
.dm-text-button[aria-expanded="true"]{background:#fff!important;color:#174f6b!important}
.dm-text-popover{position:absolute!important;right:0!important;top:calc(100% + 10px)!important;width:230px!important;padding:13px 14px 12px!important;border:1px solid rgba(19,79,107,.16)!important;border-radius:14px!important;background:#fff!important;box-shadow:0 18px 44px rgba(5,37,51,.24)!important;z-index:10150!important;opacity:0!important;visibility:hidden!important;transform:translateY(-7px)!important;transition:opacity .16s ease,transform .16s ease,visibility .16s ease!important}
.dm-text-popover.open{opacity:1!important;visibility:visible!important;transform:translateY(0)!important}
.dm-text-popover-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin-bottom:8px!important;color:#174f6b!important;font-size:.65rem!important;font-weight:900!important;letter-spacing:.05em!important;text-transform:uppercase!important}
.dm-text-popover-value{font-variant-numeric:tabular-nums!important}
.dm-text-slider{width:100%!important;height:26px!important;margin:0!important;padding:0!important;accent-color:#2e88aa!important;cursor:pointer!important}
.dm-theme-switch{position:relative!important;width:54px!important;min-width:54px!important;padding:0!important;border-radius:999px!important;background:#f5d86d!important;border-color:rgba(255,255,255,.72)!important;display:grid!important;place-items:center!important}
.dm-theme-switch-track{position:relative!important;width:36px!important;height:20px!important;border-radius:999px!important;background:#f5d86d!important;box-shadow:inset 0 0 0 1px rgba(23,79,107,.14)!important;transition:background .18s ease!important}
.dm-theme-switch-knob{position:absolute!important;top:3px!important;left:3px!important;width:14px!important;height:14px!important;border-radius:50%!important;background:#fff!important;box-shadow:0 2px 5px rgba(0,0,0,.24)!important;transition:transform .18s ease!important}
.dm-theme-switch.is-dark{background:#1a2931!important;border-color:#9bb6c1!important}
.dm-theme-switch.is-dark .dm-theme-switch-track{background:#5e6485!important}
.dm-theme-switch.is-dark .dm-theme-switch-knob{transform:translateX(16px)!important}
.dm-print-simple{width:42px!important;min-width:42px!important;padding:0!important;border-radius:9px!important;background:rgba(16,65,88,.5)!important;display:grid!important;place-items:center!important}
.dm-print-simple svg{width:20px!important;height:20px!important;display:block!important;stroke:currentColor!important}

.dm-legacy-tools,.ipad-display-tools,.dm-control-deck .dm-utility-row{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;pointer-events:none!important}
.dm-filter-actions{display:none!important}

.dm-menu-layout,body.menu-rail-open .dm-menu-layout,body:not(.menu-rail-open) .dm-menu-layout{display:block!important;grid-template-columns:1fr!important;width:100%!important;min-width:0!important}
.dm-menu-content,body.menu-rail-open .dm-menu-content,body:not(.menu-rail-open) .dm-menu-content{width:100%!important;min-width:0!important;margin:0!important;padding-left:0!important}
.menu-browser>.wrap,.menu-rail-open .menu-browser>.wrap,body:not(.menu-rail-open) .menu-browser>.wrap{padding-left:0!important;padding-right:0!important}

.dm-category-rail,.dm-category-rail.collapsed,body.ipad-menu .dm-category-rail,body.ipad-menu .dm-category-rail.collapsed{position:fixed!important;z-index:10040!important;top:calc(var(--dm-v22-header-offset) + var(--dm-v22-bar-h))!important;left:0!important;right:auto!important;width:var(--dm-v22-rail-w)!important;height:calc(100dvh - var(--dm-v22-header-offset) - var(--dm-v22-bar-h))!important;min-width:0!important;max-width:none!important;margin:0!important;background:#0b151c!important;border:0!important;border-right:1px solid #2f4855!important;border-radius:0!important;box-shadow:18px 0 42px rgba(0,0,0,.3)!important;transform:translateX(0)!important;transition:transform .18s ease!important;overflow:hidden!important;align-self:auto!important}
.dm-category-rail.collapsed,body.ipad-menu .dm-category-rail.collapsed{transform:translateX(-105%)!important;box-shadow:none!important}
.dm-category-rail .dm-rail-panel,.dm-category-rail.collapsed .dm-rail-panel,body.ipad-menu .dm-category-rail .dm-rail-panel,body.ipad-menu .dm-category-rail.collapsed .dm-rail-panel{display:flex!important;visibility:visible!important;pointer-events:auto!important;width:100%!important;height:100%!important;padding:0!important;flex-direction:column!important;overflow:hidden!important;background:#0b151c!important}
.dm-rail-head{flex:0 0 auto!important;padding:14px!important;background:linear-gradient(180deg,#122b36,#15192b)!important;border-bottom:1px solid #304651!important}
.dm-rail-head strong{display:block!important;margin:0 0 9px!important;color:#fff!important;font-size:1.8rem!important}
.dm-rail-search{width:100%!important;min-height:44px!important;padding:0 10px!important;display:grid!important;grid-template-columns:22px minmax(0,1fr) 26px!important;align-items:center!important;gap:4px!important;background:#0d171e!important;border:1px solid #3b5360!important;border-radius:10px!important}
.dm-rail-search input{width:100%!important;min-width:0!important;border:0!important;outline:0!important;background:transparent!important;color:#fff!important;font-size:15px!important}
.dm-rail-search input::placeholder{color:#82959f!important}
#menu-category-nav,.dm-category-rail .dm-category-nav{flex:1 1 auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;padding:4px 4px 12px!important;background:#0b151c!important;display:flex!important;flex-direction:column!important;gap:2px!important;scrollbar-width:thin!important;scrollbar-color:#70aec5 #101820!important}
#menu-category-nav::-webkit-scrollbar{width:8px!important}
#menu-category-nav::-webkit-scrollbar-track{background:#101820!important}
#menu-category-nav::-webkit-scrollbar-thumb{background:linear-gradient(#4f9ec1,#8182b5)!important;border-radius:10px!important;border:2px solid #101820!important}
.dm-rail-cat,.dm-rail-cat:hover{width:100%!important;min-height:50px!important;display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;align-items:center!important;gap:7px!important;padding:5px 9px!important;background:#101b22!important;color:#afc0c8!important;border:0!important;border-bottom:1px solid #243640!important;border-radius:0!important;box-shadow:none!important;text-align:left!important}
.dm-rail-cat-icon{width:38px!important;height:38px!important;font-size:1.42rem!important}
.dm-rail-cat-label,.dm-rail-cat:hover .dm-rail-cat-label{font-size:.63rem!important;line-height:1.2!important;color:#afc0c8!important;text-align:left!important}
.dm-rail-cat.active,.dm-rail-cat.active:hover{background:linear-gradient(90deg,#2f7fa1,#676b9b)!important;color:#fff!important;box-shadow:inset 4px 0 0 #8ad1e9!important}
.dm-rail-cat.active .dm-rail-cat-label,.dm-rail-cat.active:hover .dm-rail-cat-label{color:#fff!important}

.dm-v22-backdrop{display:block!important;position:fixed!important;z-index:10030!important;top:calc(var(--dm-v22-header-offset) + var(--dm-v22-bar-h))!important;left:0!important;right:0!important;bottom:0!important;background:rgba(2,8,12,.28)!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .18s ease,visibility .18s ease!important}
body.menu-rail-open .dm-v22-backdrop{opacity:1!important;visibility:visible!important;pointer-events:auto!important}

body.menu-dark .dm-text-popover{background:#111b22!important;border-color:#314652!important}
body.menu-dark .dm-text-popover-head{color:#d6e5eb!important}
body.menu-dark .dm-category-rail,body.menu-dark .dm-category-rail .dm-rail-panel{background:#081015!important}
body:not(.menu-dark) .dm-category-rail,body:not(.menu-dark) .dm-category-rail .dm-rail-panel{background:#f6fafc!important;border-right-color:#bed1d9!important}
body:not(.menu-dark) .dm-rail-head{background:linear-gradient(180deg,#e8f4f8,#efedf8)!important;border-bottom-color:#c8dae1!important}
body:not(.menu-dark) .dm-rail-head strong{color:#174f6b!important}
body:not(.menu-dark) .dm-rail-search{background:#fff!important;border-color:#bfd2dc!important}
body:not(.menu-dark) .dm-rail-search input{color:#174f6b!important}
body:not(.menu-dark) #menu-category-nav{background:#f6fafc!important;scrollbar-color:#77acc1 #edf4f7!important}
body:not(.menu-dark) #menu-category-nav::-webkit-scrollbar-track{background:#edf4f7!important}
body:not(.menu-dark) .dm-rail-cat,body:not(.menu-dark) .dm-rail-cat:hover{background:#fff!important;border-bottom-color:#d4e1e6!important}
body:not(.menu-dark) .dm-rail-cat-label,body:not(.menu-dark) .dm-rail-cat:hover .dm-rail-cat-label{color:#35586a!important}
body:not(.menu-dark) .dm-rail-cat.active,body:not(.menu-dark) .dm-rail-cat.active:hover{background:linear-gradient(90deg,#4f9ec1,#8182b5)!important}
body:not(.menu-dark) .dm-rail-cat.active .dm-rail-cat-label{color:#fff!important}

.dm-section-block{scroll-margin-top:calc(var(--dm-v22-header-offset) + var(--dm-v22-bar-h))!important}
.dm-section-head{position:sticky!important;top:calc(var(--dm-v22-header-offset) + var(--dm-v22-bar-h))!important;z-index:90!important}

@media(max-width:860px){
  :root{--dm-v22-bar-h:58px;--dm-v22-rail-w:min(78vw,292px);--dm-v22-header-offset:77px}
  .dm-control-deck .dm-search-band,.ipad-controls .ipad-search-row{padding:7px 8px!important;gap:6px!important}
  #menu-rail-toggle{width:42px!important;min-width:42px!important;height:42px!important;min-height:42px!important}
  #quick-filters{gap:5px!important}
  #quick-filters .dm-quick-filter{min-height:38px!important;padding:.4rem .56rem!important;font-size:.58rem!important}
  .dm-simple-controls{gap:5px!important}
  .dm-simple-clear{display:none!important}
  .dm-text-button,.dm-print-simple{width:39px!important;min-width:39px!important;height:39px!important;min-height:39px!important}
  .dm-theme-switch{width:48px!important;min-width:48px!important;height:39px!important;min-height:39px!important}
  .dm-text-popover{position:fixed!important;left:5vw!important;right:5vw!important;top:auto!important;bottom:16px!important;width:auto!important}
  body.ipad-menu .ipad-shell,body.ipad-menu.menu-rail-open .ipad-shell,body.ipad-menu:not(.menu-rail-open) .ipad-shell{padding-left:5vw!important;padding-right:5vw!important}
  body.ipad-menu .dm-control-deck.ipad-controls{margin-left:-5vw!important;width:calc(100% + 10vw)!important}
  body.ipad-menu .dm-menu-content{padding:0!important}
}


/* V24 UNIVERSAL HEADER OFFSET — static DEV menu gets safe pre-JS fallback; embeds start at 0 */
body[data-page="menu"]{--dm-v22-header-offset:140px}
@media(max-width:860px){body[data-page="menu"]{--dm-v22-header-offset:77px}}

/* V23 STICKY STACKING HARDENING — header/logo always wins */
.site-header-v8{z-index:30000!important;overflow:visible!important;isolation:isolate!important}
.site-header-v8 .brand{position:relative!important;z-index:3!important}
.dm-control-deck{z-index:20000!important}
.dm-section-head{z-index:15000!important}
.dm-category-rail{z-index:25000!important}
.dm-v22-backdrop{z-index:24000!important}
body.ipad-menu{--dm-v22-header-offset:0px!important}

/* V26 EMBED OVERLAY CONTRACT — opening navigation never moves the embedded menu */
body:not(.ipad-menu).menu-rail-open .ipad-shell,body:not(.ipad-menu):not(.menu-rail-open) .ipad-shell{padding-left:0!important;padding-right:0!important}
body:not(.ipad-menu).menu-rail-open #driftaway-menu-embed .dm-menu-layout,body:not(.ipad-menu).menu-rail-open #driftaway-menu-embed .dm-menu-content{width:100%!important;margin-left:0!important;margin-right:0!important}
/* IPAD LATEST MENU PARITY V27 */
body.ipad-menu #specials-wrap{
  display:none!important;
}
body.ipad-menu .dm-section-head{
  position:static!important;
  top:auto!important;
  z-index:auto!important;
}
body.ipad-menu .dm-section-block{
  scroll-margin-top:calc(var(--driftaway-site-header-offset,0px) + var(--dm-v22-bar-h,62px) + 8px)!important;
}
body.ipad-menu .dm-rail-head{
  position:sticky!important;
  top:0!important;
  z-index:5!important;
}
/* IPAD FULLSCREEN MENU V28 — menu only, landscape-first */
html:has(body.ipad-menu){
  width:100%!important;
  min-height:100%!important;
  margin:0!important;
  padding:0!important;
  background:#fffaf2!important;
}
body.ipad-menu{
  --dm-v22-header-offset:0px!important;
  width:100%!important;
  min-width:100%!important;
  min-height:100dvh!important;
  margin:0!important;
  padding:0!important;
  overflow-x:hidden!important;
  background:#fffaf2!important;
}
body.ipad-menu .site-header,
body.ipad-menu .simple-page-title,
body.ipad-menu .footer{
  display:none!important;
}
body.ipad-menu main{
  width:100vw!important;
  max-width:none!important;
  min-height:100dvh!important;
  margin:0!important;
  padding:0!important;
}
body.ipad-menu .menu-browser{
  width:100vw!important;
  max-width:none!important;
  min-height:100dvh!important;
  margin:0!important;
  padding:0!important;
}
body.ipad-menu .menu-browser>.wrap{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
body.ipad-menu .dm-control-deck{
  position:sticky!important;
  top:0!important;
  left:0!important;
  width:100%!important;
  margin:0!important;
  z-index:20000!important;
}
body.ipad-menu .dm-control-deck .dm-search-band{
  width:100%!important;
  min-height:60px!important;
  margin:0!important;
  padding:8px 10px!important;
  gap:8px!important;
  border-radius:0!important;
}
body.ipad-menu .dm-menu-layout,
body.ipad-menu.menu-rail-open .dm-menu-layout,
body.ipad-menu:not(.menu-rail-open) .dm-menu-layout{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
body.ipad-menu .dm-menu-content{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
body.ipad-menu .dm-menu-display{
  width:100%!important;
  margin:0!important;
  border-left:0!important;
  border-right:0!important;
  border-radius:0!important;
  box-shadow:none!important;
}
body.ipad-menu .dm-food-note{
  margin:0!important;
}
body.ipad-menu .dm-category-rail,
body.ipad-menu .dm-category-rail.collapsed{
  top:60px!important;
  height:calc(100dvh - 60px)!important;
}
body.ipad-menu .dm-v22-backdrop{
  top:60px!important;
}
body.ipad-menu .dm-section-block{
  scroll-margin-top:68px!important;
}
@media (orientation:landscape) and (min-width:900px){
  body.ipad-menu #quick-filters{
    gap:5px!important;
  }
  body.ipad-menu #quick-filters .dm-quick-filter{
    min-height:40px!important;
    padding:.42rem .62rem!important;
    font-size:.58rem!important;
  }
  body.ipad-menu .dm-simple-controls{
    gap:5px!important;
  }
  body.ipad-menu .dm-simple-clear{
    min-width:54px!important;
    height:40px!important;
    min-height:40px!important;
    padding:0 9px!important;
    font-size:.58rem!important;
  }
  body.ipad-menu .dm-text-button,
  body.ipad-menu .dm-print-simple{
    width:40px!important;
    min-width:40px!important;
    height:40px!important;
    min-height:40px!important;
  }
  body.ipad-menu .dm-theme-switch{
    width:50px!important;
    min-width:50px!important;
    height:40px!important;
    min-height:40px!important;
  }
}
