/* Белый Пушкин — финальный фикс фона и мобильного скролла v18 */
:root{
  --bp-bg-desktop: url('../images/bg-oriental-desktop.jpg');
  --bp-bg-mobile: url('../images/bg-oriental-mobile.jpg');
}
@supports (background-image: url('../images/bg-oriental-desktop.webp')){
  :root{
    --bp-bg-desktop: url('../images/bg-oriental-desktop.webp');
    --bp-bg-mobile: url('../images/bg-oriental-mobile.webp');
  }
}
html{
  background:#120c08!important;
  min-height:100%!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  -webkit-text-size-adjust:100%;
}
body{
  min-height:100%!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  background:#120c08!important;
  background-image:none!important;
  background-attachment:scroll!important;
  animation:none!important;
  touch-action:pan-y!important;
  overscroll-behavior-y:auto!important;
}
body::before{display:none!important;content:none!important}
body::after{
  content:""!important;
  position:fixed!important;
  inset:0!important;
  z-index:-10!important;
  pointer-events:none!important;
  background-image:linear-gradient(180deg,rgba(8,5,3,.10),rgba(8,5,3,.24)),var(--bp-bg-desktop)!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  transform:translateZ(0)!important;
  will-change:auto!important;
}
.page-bg{display:none!important;visibility:hidden!important;pointer-events:none!important}
main,#home,
.section,.hero,.menu-section,.menu-groups,.menu-group,.menu-grid,
.promo-grid,.action-section,.contacts{
  overflow-x:hidden!important;
  overflow-y:visible!important;
  height:auto!important;
  max-height:none!important;
}
.menu-group,.promo-grid,.action-section,.contacts,.admin-panel,.menu-grid{
  content-visibility:visible!important;
  contain-intrinsic-size:auto!important;
}
.menu-card,.promo-card,.benefit-card,.action-card,.contact-card,.admin-card{
  contain:layout paint!important;
}
.topbar,.glass-panel,.menu-nav,.category-rail,.modal-card,.drawer-panel,
.mobile-app-nav,.admin-card,.admin-panel,.admin-tabs{
  background-color:rgba(45,32,23,.54)!important;
}
@media (max-width:980px){
  html,body{
    height:auto!important;
    min-height:100%!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    overscroll-behavior-y:auto!important;
  }
  body{
    padding-bottom:calc(82px + env(safe-area-inset-bottom,0px))!important;
  }
  body::after{
    background-image:linear-gradient(180deg,rgba(8,5,3,.06),rgba(8,5,3,.18)),var(--bp-bg-mobile)!important;
    background-size:cover!important;
    background-position:center top!important;
    background-repeat:no-repeat!important;
  }
  body.overlay-open{
    position:fixed!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    overflow:hidden!important;
    touch-action:none!important;
  }
  body:not(.overlay-open){
    position:relative!important;
    top:auto!important;
    overflow-y:auto!important;
    touch-action:pan-y!important;
  }
  .modal.open,.drawer.open{
    touch-action:auto!important;
    overscroll-behavior:contain!important;
  }
  .modal-card,.drawer-panel,.profile-card,.search-card,.item-modal-card{
    overflow-x:hidden!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    overscroll-behavior:contain!important;
  }
  .mobile-app-nav,.mobile-nav-item,button,a{touch-action:manipulation!important}
}
