/* Apple90 V16 — viewport-pinned sidebars with a persistent icon rail */
@media (min-width: 768px) {
  body.user-panel #userSidebar {
    position: fixed !important;
    top: 0 !important; bottom: 0 !important; right: 0 !important; left: auto !important;
    inset-block: 0 !important; inset-inline-start: 0 !important;
    width:260px!important;min-width:260px!important;max-width:260px!important;
    height: 100vh !important;
    max-height: 100vh !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    z-index: 80 !important;
    transition: width 220ms cubic-bezier(.2,.75,.25,1),
                min-width 220ms cubic-bezier(.2,.75,.25,1),
                max-width 220ms cubic-bezier(.2,.75,.25,1),
                padding 220ms ease !important;
  }
  body.user-panel #userSidebar ~ main,
  body.user-panel .store-page-shell > main {
    margin-inline-start: 260px !important;
    width: calc(100% - 260px) !important;
    min-width: 0 !important;
    transition: margin 220ms cubic-bezier(.2,.75,.25,1),width 220ms ease !important;
  }
  body.user-panel.user-sidebar-collapsed #userSidebar {
    width: 78px !important; min-width: 78px !important; max-width: 78px !important;
    padding-inline: 8px !important;
  }
  body.user-panel.user-sidebar-collapsed #userSidebar ~ main,
  body.user-panel.user-sidebar-collapsed .store-page-shell > main {
    margin-inline-start: 78px !important;
    width: calc(100% - 78px) !important;
  }
  body.user-panel.user-sidebar-collapsed #userSidebar .user-sidebar-brand > span,
  body.user-panel.user-sidebar-collapsed #userSidebar .user-name-sidebar,
  body.user-panel.user-sidebar-collapsed #userSidebar .user-phone-sidebar,
  body.user-panel.user-sidebar-collapsed #userSidebar .wallet-badge-sidebar,
  body.user-panel.user-sidebar-collapsed #userSidebar .guest-title,
  body.user-panel.user-sidebar-collapsed #userSidebar .guest-subtitle,
  body.user-panel.user-sidebar-collapsed #userSidebar .guest-login-btn,
  body.user-panel.user-sidebar-collapsed #userSidebar nav .nav-link span,
  body.user-panel.user-sidebar-collapsed #userSidebar .lock-icon-overlay {
    display: none !important;
  }
  body.user-panel.user-sidebar-collapsed #userSidebar .user-profile-card,
  body.user-panel.user-sidebar-collapsed #userSidebar .guest-profile-card {
    padding: 10px 0 !important;
    display: flex !important; flex-direction: column; align-items: center;
  }
  body.user-panel.user-sidebar-collapsed #userSidebar .user-avatar-sidebar {
    width: 42px !important;height:42px!important;margin:0 auto!important;
  }
  body.user-panel.user-sidebar-collapsed #userSidebar nav .nav-link {
    justify-content: center !important; gap: 0 !important;
    width: 52px !important; min-width:52px!important;
    margin: 5px auto !important;padding: 12px 0 !important;
  }
  body.user-panel.user-sidebar-collapsed #userSidebar nav .nav-link > i:first-child {
    margin: 0 !important; width: 24px !important; min-width:24px!important;
  }
  body.user-panel.user-sidebar-collapsed #userSidebar .user-collapse-btn {
    display: grid !important; place-items:center; margin: 8px auto !important;
  }

  body.admin-panel #adminSidebar {
    position: fixed !important;
    top: 0 !important; bottom: 0 !important; right: 0 !important; left: auto !important;
    inset-block: 0 !important; inset-inline-start: 0 !important;
    height: 100vh !important; max-height:100vh!important;
    overflow-x:hidden!important;overflow-y:auto!important;
    overscroll-behavior:contain;scrollbar-gutter:stable;
    z-index:80!important;
    transition:width 220ms cubic-bezier(.2,.75,.25,1),
               min-width 220ms ease,max-width 220ms ease,padding 220ms ease!important;
  }
  body.admin-panel #adminSidebar ~ header,
  body.admin-panel #adminSidebar ~ main {
    margin-inline-start: 280px !important;
    width: calc(100% - 280px) !important;
    transition:margin 220ms cubic-bezier(.2,.75,.25,1),width 220ms ease!important;
  }
  body.admin-panel.admin-sidebar-collapsed #adminSidebar {
    width: 78px !important;min-width:78px!important;max-width:78px!important;
    padding-inline:5px!important;
  }
  body.admin-panel.admin-sidebar-collapsed #adminSidebar ~ header,
  body.admin-panel.admin-sidebar-collapsed #adminSidebar ~ main {
    margin-inline-start:78px!important;width:calc(100% - 78px)!important;
  }
  body.admin-panel.admin-sidebar-collapsed #adminSidebar .admin-sidebar-brand .flex-1,
  body.admin-panel.admin-sidebar-collapsed #adminSidebar .admin-sidebar-brand h2,
  body.admin-panel.admin-sidebar-collapsed #adminSidebar .admin-sidebar-brand p,
  body.admin-panel.admin-sidebar-collapsed #adminSidebar nav span,
  body.admin-panel.admin-sidebar-collapsed #adminSidebar nav .px-3.py-2,
  body.admin-panel.admin-sidebar-collapsed #adminSidebar nav .border-t {
    display:none!important;
  }
  body.admin-panel.admin-sidebar-collapsed #adminSidebar .admin-sidebar-brand {
    padding:12px 4px!important;display:flex!important;flex-direction:column!important;
    align-items:center!important;gap:8px!important;
  }
  body.admin-panel.admin-sidebar-collapsed #adminSidebar .admin-sidebar-brand > .flex {
    justify-content:center!important;
  }
  body.admin-panel.admin-sidebar-collapsed #adminSidebar .admin-sidebar-brand .w-12 {
    width:42px!important;height:42px!important;
  }
  body.admin-panel.admin-sidebar-collapsed #adminSidebar .sidebar-menu-item {
    width:54px!important;min-width:54px!important;
    margin:5px auto!important;padding:12px 0!important;
    display:flex!important;justify-content:center!important;align-items:center!important;
    gap:0!important;
  }
  body.admin-panel.admin-sidebar-collapsed #adminSidebar .sidebar-menu-item > i {
    width:24px!important;min-width:24px!important;margin:0!important;
    font-size:21px!important;text-align:center!important;
  }
  body.admin-panel.admin-sidebar-collapsed #adminSidebar .sidebar-menu-item .nav-badge {
    position:absolute!important;top:3px!important;inset-inline-end:3px!important;
    min-width:15px!important;height:15px!important;padding:0 3px!important;
    font-size:9px!important;line-height:15px!important;
  }
  body.admin-panel.admin-sidebar-collapsed #adminSidebar .admin-collapse-btn {
    margin:6px auto!important;display:grid!important;place-items:center;
  }
}
@media (max-width: 767px) {
  body.user-panel #userSidebar,
  body.admin-panel #adminSidebar {
    position:fixed!important;inset-block:0!important;
    max-height:100dvh!important;overflow-y:auto!important;
  }
  body.user-panel #userSidebar ~ main,
  body.user-panel .store-page-shell > main,
  body.admin-panel #adminSidebar ~ main {
    margin-inline-start:0!important;width:100%!important;
  }
}

@media(min-width:768px){
 body.user-panel.user-sidebar-collapsed #userSidebar .user-sidebar-brand{justify-content:center!important;flex-wrap:wrap}
 body.user-panel.user-sidebar-collapsed #userSidebar .user-sidebar-brand .w-10{margin:0 auto!important}
 body.admin-panel.admin-sidebar-collapsed #adminSidebar .admin-sidebar-brand .flex > div:not(.w-12){display:none!important}
 body.admin-panel.admin-sidebar-collapsed #adminSidebar .admin-sidebar-brand .flex{width:100%!important}
 body.admin-panel.admin-sidebar-collapsed #adminSidebar .admin-sidebar-brand .w-12{margin-inline:auto!important}
 body.admin-panel.admin-sidebar-collapsed #adminSidebar .sidebar-menu-item:hover{transform:none!important}
 body.user-panel.user-sidebar-collapsed #userSidebar .nav-link:hover{transform:none!important}
}
