/* One navigation surface, scoped to avoid Gavias and shop menu/palette rules. */
html.nova-menu-open { overflow:hidden; }
#nova-menu.nova-menu--unified {
  --menu-ink:#203b30; --menu-muted:#6c7e73; --menu-line:#e4ebe5; --menu-green:#0a7846;
  inset:0 0 0 auto; margin:0; width:min(420px,100%); height:100dvh; max-height:100dvh;
  max-width:100%; padding:0; border:0; border-radius:24px 0 0 24px;
  background:#fffefa; color:var(--menu-ink); font-family:NovaSans,sans-serif;
  overflow:hidden; box-shadow:-18px 0 70px #14362626; line-height:1.7;
}
#nova-menu[open] { display:flex; flex-direction:column; }
#nova-menu::before { display:none; }
#nova-menu::backdrop { background:#102b2266; backdrop-filter:blur(3px); }
#nova-menu [hidden] { display:none!important; }
#nova-menu :is(ul,li) { margin:0; padding:0; list-style:none; }
#nova-menu nav { display:block; margin:0; }
#nova-menu .nova-menu-head { display:flex; align-items:center; justify-content:space-between; padding:24px 24px 18px; margin:0; flex:none; }
#nova-menu .nova-menu-head strong { display:block; font-size:20px; }
#nova-menu .nova-menu-logo { display:block; inline-size:130px; block-size:65px; object-fit:contain; }
#nova-menu .nova-menu-head button { width:44px; height:44px; min-width:44px; background:#f0f3ed; color:var(--menu-ink); border:1px solid var(--menu-line); border-radius:50%; box-shadow:none; padding:10px; }
#nova-menu .nova-menu-tabs { display:flex; gap:4px; margin:0 24px 12px; padding:4px; border:1px solid var(--menu-line); border-radius:14px; background:#f0f3ed; flex:none; }
#nova-menu .nova-menu-tabs button { flex:1; min-width:0; min-height:44px; padding:8px; border:0; border-radius:10px; background:transparent; color:#607365; font:700 13px/1.7 NovaSans,sans-serif; box-shadow:none; cursor:pointer; }
#nova-menu .nova-menu-tabs [aria-selected=true] { background:#fffefa; color:var(--menu-green); box-shadow:0 2px 6px #2943350c; }
#nova-menu .nova-menu-scroll { flex:1; min-height:0; overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; padding:0 20px 20px; }
#nova-menu :is(.nova-menu-list>li>a,.nova-menu-group>summary,.nova-menu-catalog,.nova-menu-categories>a) {
  display:flex; align-items:center; gap:13px; min-height:52px; padding:11px 12px;
  color:var(--menu-ink); background:transparent; border:0; border-radius:12px;
  font:500 14px/1.7 NovaSans,sans-serif; text-decoration:none; margin:2px 0; cursor:pointer;
}
#nova-menu :is(a,summary)>span { flex:1; min-width:0; }
#nova-menu :is(a,summary)>.nova-icon { width:21px; height:21px; color:#547563; }
#nova-menu :is(a,summary)>.nova-icon:last-child { width:16px; height:16px; margin-inline-start:auto; color:#96a69b; }
#nova-menu :is(.nova-menu-list>li>a,.nova-menu-group>summary,.nova-menu-categories>a):hover { background:#eff5ed; }
#nova-menu a[aria-current=page] { background:#e2efe2; color:#075b36; font-weight:700; }
#nova-menu .nova-menu-group>summary { list-style:none; }
#nova-menu .nova-menu-group>summary::-webkit-details-marker { display:none; }
#nova-menu .nova-menu-group[open]>summary>.nova-icon:last-child { transform:rotate(180deg); }
#nova-menu .nova-menu-group[open] { background:#f4f7f1; border-radius:12px; padding-bottom:8px; }
#nova-menu .nova-menu-list--nested>li>a { min-height:44px; padding-inline:14px; font-size:12px; margin-inline:14px; }
#nova-menu .nova-menu-list--nested>li>a>.nova-icon:first-child { display:none; }
#nova-menu .nova-menu-group-all { display:flex; align-items:center; gap:8px; min-height:44px; padding:8px 26px; color:var(--menu-green); font-size:12px; }
#nova-menu .nova-menu-section { border-top:1px solid var(--menu-line); margin-top:12px; padding-top:12px; }
#nova-menu .nova-menu-catalog { background:#e8f1e4; color:var(--menu-green); margin:4px 0 14px; font-weight:700; }
#nova-menu .nova-menu-categories>a { min-height:65px; border-bottom:1px solid #eef1eb; border-radius:0; margin:0; }
#nova-menu .nova-menu-categories img { width:44px; height:44px; border-radius:12px; object-fit:cover; }
#nova-menu .nova-menu-account { border-top:1px solid var(--menu-line); padding:12px 20px max(16px,env(safe-area-inset-bottom)); background:#f6f8f2; flex:none; }
#nova-menu .nova-menu-account .nova-menu-list { display:grid; grid-template-columns:1fr 1fr; gap:4px 8px; }
#nova-menu .nova-menu-account .nova-menu-list>li>a { min-height:44px; font-size:12px; gap:8px; padding:8px; }
#nova-menu .nova-menu-account .nova-menu-list>li>a>.nova-icon:last-child { display:none; }
#nova-menu .nova-menu-shop-tools h2 { font-size:12px; color:var(--menu-muted); padding:8px 12px; font-weight:500; }
#nova-menu .nova-local-nav { position:static!important; inset:auto!important; transform:none!important; display:flex!important; flex-direction:column!important; width:100%!important; max-width:none!important; height:auto!important; min-height:0!important; margin:0!important; padding:0!important; box-shadow:none!important; background:transparent!important; border:0!important; gap:4px; }
#nova-menu .nova-local-nav :is(a,button) { position:relative!important; display:flex!important; flex-direction:row!important; align-items:center; justify-content:flex-start!important; gap:12px; width:100%; min-height:48px; padding:10px 12px!important; margin:0!important; background:#eff5ed!important; color:#234c35!important; border:0!important; border-radius:12px; box-shadow:none!important; font:500 13px/1.7 NovaSans,sans-serif; }
#nova-menu .nova-local-nav [hidden] { display:none!important; }
#nova-menu .nova-local-nav :is(i,svg) { font-size:20px; width:22px; height:22px; }
#nova-menu :is(a,button,summary):focus-visible { outline:3px solid #277cdb; outline-offset:-3px; }
#nova-menu :is(a,button,summary) { -webkit-tap-highlight-color:transparent; touch-action:manipulation; }
@media(max-width:600px) {
  #nova-menu.nova-menu--unified { width:min(390px,100%); border-radius:20px 0 0 20px; }
  #nova-menu .nova-menu-head { padding:20px 20px 16px; }
  #nova-menu .nova-menu-tabs { margin-inline:20px; }
  #nova-menu .nova-menu-scroll { padding-inline:14px; }
  #nova-menu .nova-menu-account { padding-inline:16px; }
}
@media(max-height:520px) {
  #nova-menu .nova-menu-head { padding-block:10px; }
  #nova-menu .nova-menu-logo { inline-size:96px; block-size:48px; }
  #nova-menu .nova-menu-account { padding-block:6px; }
}
@media(prefers-reduced-motion:no-preference) {
  #nova-menu[open] { animation:nova-menu-enter .2s ease-out; }
  @keyframes nova-menu-enter { from { opacity:.5; translate:24px 0; } to { opacity:1; translate:0 0; } }
}
/* The old four-link platform dock is entirely represented by the new menu/dock. */
body:is(.mlmg-unified-page,.nova-page) #mlmg-bottom-nav { display:none!important; }
.nova-motion-paused #nova-menu { animation:none!important; }
