/* Mainstream menu material. A native-CSS web approximation of liquid glass,
   not an Apple package. Native menu positioning and JS state stay in charge. */
body.mainstream-theme .head-main:has(.ms-products-nav.is-open) {
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}

body.mainstream-theme .head-main .ms-products-menu.desktop-dropdown,
body.mainstream-theme #nav-hamburger {
  --ms-menu-glass-ink: #193528;
  --ms-menu-glass-muted: #24392d;
  --ms-menu-glass-line: rgb(39 70 48 / .18);
  --header-foreground: var(--ms-menu-glass-ink);
  color: var(--ms-menu-glass-ink);
  background: #eaf0e5;
  border: 1px solid rgb(253 255 250 / .65);
  box-shadow: inset 0 1px 0 rgb(255 255 255 / .68),
    inset 0 -1px 0 rgb(255 255 255 / .22),
    0 22px 50px -24px rgb(23 48 31 / .35);
  scrollbar-color: #71846d transparent;
}

body.mainstream-theme .head-main .ms-products-menu.desktop-dropdown {
  left: 16px;
  width: calc(100% - 32px);
  border-radius: 20px;
}

body.mainstream-theme .head-main .ms-products-menu::-webkit-scrollbar-track {
  background: transparent;
}

body.mainstream-theme .head-main .ms-products-menu::-webkit-scrollbar-thumb {
  background: #71846d;
}

body.mainstream-theme .head-main .ms-menu-intro,
body.mainstream-theme #nav-hamburger .ms-mobile-menu-all {
  color: var(--ms-menu-glass-ink);
  background: #dce7d5;
  border: 1px solid rgb(255 255 255 / .55);
  border-radius: 14px;
  box-shadow: inset 0 1px 0 rgb(255 255 255 / .5),
    0 3px 12px -9px rgb(31 58 38 / .25);
}

body.mainstream-theme .head-main .ms-menu-category.is-current .ms-menu-category-link,
body.mainstream-theme .head-main .ms-menu-category-link,
body.mainstream-theme .head-main .ms-menu-brands a,
body.mainstream-theme #nav-hamburger .nav-primary > .nav-list > .nav-item > .nav-list-link,
body.mainstream-theme #nav-hamburger .ms-menu-back,
body.mainstream-theme #nav-hamburger .ms-mobile-menu-category > summary,
body.mainstream-theme #nav-hamburger .ms-menu-brands a {
  color: var(--ms-menu-glass-ink);
}

body.mainstream-theme .head-main .ms-menu-category-description,
body.mainstream-theme .head-main .ms-menu-brands-label,
body.mainstream-theme #nav-hamburger .ms-mobile-menu-caption,
body.mainstream-theme #nav-hamburger .ms-mobile-menu-category-all,
body.mainstream-theme #nav-hamburger .ms-mobile-products-trigger .nav-list-arrow {
  color: var(--ms-menu-glass-muted);
}

body.mainstream-theme .head-main .ms-menu-brands-label,
body.mainstream-theme #nav-hamburger .ms-mobile-menu-category,
body.mainstream-theme #nav-hamburger .ms-mobile-products-panel > .modal-header {
  border-color: var(--ms-menu-glass-line);
}

body.mainstream-theme #nav-hamburger {
  border-left: 0;
  border-radius: 0 22px 22px 0;
}

/* The drawer has three native paper layers. Clear only this menu's layers. */
body.mainstream-theme #nav-hamburger .modal-body,
body.mainstream-theme #nav-hamburger .modal-scrollable-area,
body.mainstream-theme #nav-hamburger .modal-footer,
body.mainstream-theme #nav-hamburger .ms-mobile-products-panel {
  color: var(--ms-menu-glass-ink);
  background: transparent;
}

body.mainstream-theme #nav-hamburger .ms-mobile-products-panel > .modal-header {
  background: #eaf0e5;
}

body.mainstream-theme #nav-hamburger .modal-close,
body.mainstream-theme #nav-hamburger .hamburger-footer a {
  color: var(--ms-menu-glass-ink);
}

body.mainstream-theme #nav-hamburger .modal-close .svg-icon-text {
  fill: currentColor;
}

/* A clear subpanel must not expose the primary links or account footer below it.
   Only the underlying links are hidden; Back, Close and the subpanel stay live. */
body.mainstream-theme #nav-hamburger:has(.ms-mobile-products-panel.nav-list-panel-show) .nav-primary > .nav-list > .nav-item:not(.ms-products-mobile) > .nav-list-link,
body.mainstream-theme #nav-hamburger:has(.ms-mobile-products-panel.nav-list-panel-show) .ms-products-mobile > .ms-mobile-products-trigger,
body.mainstream-theme #nav-hamburger:has(.ms-mobile-products-panel.nav-list-panel-show) .hamburger-footer {
  visibility: hidden;
  transition: none;
}

body.mainstream-theme .js-modal-overlay[data-modal-id='#nav-hamburger'] {
  background: rgb(18 39 27 / .16);
}

/* One blur per principal surface; no animated distortion or extra motion. */
@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  body.mainstream-theme .head-main .ms-products-menu.desktop-dropdown {
    background: linear-gradient(125deg, rgb(255 255 255 / .17), rgb(255 255 255 / .03) 52%, rgb(220 232 212 / .13)),
      rgb(238 243 235 / .64);
    -webkit-backdrop-filter: blur(28px) saturate(1.18);
    backdrop-filter: blur(28px) saturate(1.18);
  }

  body.mainstream-theme #nav-hamburger {
    background: linear-gradient(125deg, rgb(255 255 255 / .15), rgb(255 255 255 / .02) 64%),
      rgb(238 243 235 / .72);
    -webkit-backdrop-filter: blur(26px) saturate(1.18);
    backdrop-filter: blur(26px) saturate(1.18);
  }

  body.mainstream-theme .head-main .ms-menu-intro,
  body.mainstream-theme #nav-hamburger .ms-mobile-menu-all {
    background: linear-gradient(135deg, rgb(255 255 255 / .16), rgb(255 255 255 / .04)),
      rgb(166 188 153 / .24);
  }

  body.mainstream-theme #nav-hamburger .ms-mobile-products-panel > .modal-header {
    background: rgb(238 243 235 / .7);
    -webkit-backdrop-filter: blur(16px) saturate(1.1);
    backdrop-filter: blur(16px) saturate(1.1);
  }
}

body.mainstream-theme .head-main .ms-products-menu a:focus-visible,
body.mainstream-theme #nav-hamburger .ms-mobile-products-panel a:focus-visible,
body.mainstream-theme #nav-hamburger .ms-mobile-menu-category > summary:focus-visible {
  outline-color: #1e5134;
}

@media (hover: hover) {
  body.mainstream-theme .head-main .ms-menu-intro:hover .ms-menu-intro-action,
  body.mainstream-theme .head-main .ms-menu-category-link:hover,
  body.mainstream-theme .head-main .ms-menu-brands a:hover,
  body.mainstream-theme #nav-hamburger .ms-mobile-menu-category-all:hover {
    color: var(--ms-menu-glass-ink);
    text-decoration-color: currentColor;
  }
}

@media (prefers-reduced-transparency: reduce) {
  body.mainstream-theme .head-main .ms-products-menu.desktop-dropdown,
  body.mainstream-theme #nav-hamburger,
  body.mainstream-theme #nav-hamburger .ms-mobile-products-panel > .modal-header {
    background: #eaf0e5;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
  body.mainstream-theme .head-main .ms-menu-intro,
  body.mainstream-theme #nav-hamburger .ms-mobile-menu-all {
    background: #dce7d5;
  }
}

@media (forced-colors: active) {
  body.mainstream-theme .head-main .ms-products-menu.desktop-dropdown,
  body.mainstream-theme #nav-hamburger {
    --ms-menu-glass-ink: CanvasText;
    --ms-menu-glass-muted: CanvasText;
    --ms-menu-glass-line: CanvasText;
    color: CanvasText;
    background: Canvas;
    border: 1px solid CanvasText;
    box-shadow: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
  body.mainstream-theme .head-main .ms-menu-intro,
  body.mainstream-theme #nav-hamburger .ms-mobile-menu-all,
  body.mainstream-theme #nav-hamburger .ms-mobile-products-panel > .modal-header {
    color: CanvasText;
    background: Canvas;
    border-color: CanvasText;
    box-shadow: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
  body.mainstream-theme .head-main .ms-products-menu a:focus-visible,
  body.mainstream-theme #nav-hamburger .ms-mobile-products-panel a:focus-visible,
  body.mainstream-theme #nav-hamburger .ms-mobile-menu-category > summary:focus-visible {
    outline-color: Highlight;
  }
}

/* Mobile menu refinements. Preserve native drawer, Back and Close behavior. */
body.mainstream-theme #nav-hamburger:has(.ms-mobile-products-panel.nav-list-panel-show) .search-form {
  visibility: hidden;
  transition: none;
}

body.mainstream-theme #nav-hamburger .ms-mobile-products-panel {
  scrollbar-color: rgb(74 102 71 / .55) transparent;
  scrollbar-width: thin;
}

body.mainstream-theme #nav-hamburger .ms-mobile-products-panel::-webkit-scrollbar {
  width: 5px;
}

body.mainstream-theme #nav-hamburger .ms-mobile-products-panel::-webkit-scrollbar-track {
  background: transparent;
}

body.mainstream-theme #nav-hamburger .ms-mobile-products-panel::-webkit-scrollbar-thumb {
  background: rgb(74 102 71 / .55);
  border-radius: 8px;
}

@media (forced-colors: active) {
  body.mainstream-theme #nav-hamburger .ms-mobile-products-panel {
    scrollbar-color: auto;
  }
  body.mainstream-theme #nav-hamburger .ms-mobile-products-panel::-webkit-scrollbar-thumb {
    background: CanvasText;
  }
}

/* Reserve a real row for the native fixed Close control before mobile search. */
@media (max-width: 767px) {
  body.mainstream-theme #nav-hamburger .search-form {
    margin-top: 56px;
  }
  body.mainstream-theme #nav-hamburger .modal-close-floating {
    z-index: 2;
  }
}

/* Search descendants must not animate inherited visibility under the subpanel. */
body.mainstream-theme #nav-hamburger:has(.ms-mobile-products-panel.nav-list-panel-show) .search-form * {
  transition: none;
}
