:root {
    --bnb-h:           64px;
    --bnb-safe:        env(safe-area-inset-bottom, 0px);
    --bnb-z-nav:       9990;
    --bnb-z-drawer:    9995;
    --bnb-nav-bg:      #ffffff;
    --bnb-nav-border:  #e8e8e8;
    --bnb-color:       #9e9e9e;
    --bnb-active:      #111111;
    --bnb-accent:      #0A74DA;
    --bnb-sidebar-w:   120px;
    --bnb-sidebar-bg:  #f7f9fb;
    --bnb-active-line: #0A74DA;
    --bnb-search-bg:   #f0f2f5;
    --bnb-font:        'IRANSansWeb_FaNum', 'Vazirmatn', 'Tahoma', Arial, sans-serif;
}

@media (min-width: 769px) {
    #bnb-nav,
    #bnb-drawer { display: none !important; }
}

@media (max-width: 768px) {

body {
    padding-bottom: calc(var(--bnb-h) + var(--bnb-safe)) !important;
}

/* ===== NAV BAR ===== */

#bnb-nav {
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: var(--bnb-z-nav) !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: stretch !important;
    height: calc(var(--bnb-h) + var(--bnb-safe)) !important;
    padding-bottom: var(--bnb-safe) !important;
    background: var(--bnb-nav-bg) !important;
    border-top: 1px solid var(--bnb-nav-border) !important;
    box-shadow: 0 -2px 12px rgba(0,0,0,.07) !important;
    font-family: var(--bnb-font) !important;
    direction: rtl !important;
    margin: 0 !important;
    padding-top: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

#bnb-nav .bnb-nav__item {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    text-decoration: none !important;
    color: var(--bnb-color) !important;
    padding: 6px 2px !important;
    -webkit-tap-highlight-color: transparent !important;
    user-select: none !important;
    transition: color .18s !important;
    position: relative !important;
    background: transparent !important;
    border: none !important;
    border-top: none !important;
    border-bottom: none !important;
    margin: 0 !important;
    border-radius: 0 !important;
}

#bnb-nav .bnb-nav__item:active { opacity: .7; }

#bnb-nav .bnb-nav__item--active {
    color: var(--bnb-active) !important;
}

#bnb-nav .bnb-nav__icon {
    position: relative !important;
    width: 26px !important;
    height: 26px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
}

#bnb-nav .bnb-nav__icon svg,
#bnb-nav .bnb-nav__icon img {
    width: 100% !important;
    height: 100% !important;
    display: block !important;
    transition: transform .18s !important;
}

#bnb-nav .bnb-nav__icon svg {
    fill: currentColor !important;
}

#bnb-nav .bnb-nav__icon img {
    object-fit: contain !important;
    user-select: none !important;
    -webkit-user-drag: none !important;
}

#bnb-nav .bnb-nav__item--active .bnb-nav__icon svg,
#bnb-nav .bnb-nav__item--active .bnb-nav__icon img {
    transform: scale(1.12) !important;
}

#bnb-nav .bnb-nav__label {
    font-size: 10px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    font-family: var(--bnb-font) !important;
}

#bnb-nav .bnb-nav__item--active .bnb-nav__label {
    font-weight: 600 !important;
}

#bnb-nav .bnb-nav__badge {
    position: absolute !important;
    top: -3px !important;
    left: -5px !important;
    min-width: 16px !important;
    height: 16px !important;
    background: var(--bnb-accent) !important;
    color: #fff !important;
    border-radius: 999px !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    padding: 0 4px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-family: var(--bnb-font) !important;
}

#bnb-nav .bnb-nav__badge--hidden {
    display: none !important;
}

/* ===== DRAWER ===== */

#bnb-drawer {
    position: fixed !important;
    inset: 0 !important;
    z-index: var(--bnb-z-drawer) !important;
    background: rgba(0,0,0,.45) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity .25s !important;
    font-family: var(--bnb-font) !important;
    direction: rtl !important;
}

#bnb-drawer.is-open {
    opacity: 1 !important;
    pointer-events: all !important;
}

#bnb-drawer,
#bnb-drawer * {
    box-sizing: border-box !important;
}

#bnb-drawer .bnb-drawer__panel {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 100vh !important;
    height: 100dvh !important;
    background: #ffffff !important;
    border-radius: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    transform: translateY(100%) !important;
    transition: transform .3s cubic-bezier(.32,.72,0,1) !important;
}

#bnb-drawer.is-open .bnb-drawer__panel {
    transform: translateY(0) !important;
}

/* Header */

#bnb-drawer .bnb-drawer__header {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 12px 14px 10px !important;
    border-bottom: 1px solid #f0f3f6 !important;
    flex-shrink: 0 !important;
    background: #ffffff !important;
}

#bnb-drawer .bnb-drawer__close {
    flex-shrink: 0 !important;
    width: 36px !important;
    height: 36px !important;
    border: none !important;
    background: #f0f2f5 !important;
    border-radius: 10px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    color: #555 !important;
    padding: 0 !important;
    -webkit-tap-highlight-color: transparent !important;
    transition: background .15s !important;
    box-shadow: none !important;
}

#bnb-drawer .bnb-drawer__close:active { background: #e4e7ec !important; }

#bnb-drawer .bnb-drawer__search-wrap {
    flex: 1 !important;
    position: relative !important;
    display: flex !important;
    align-items: center !important;
}

#bnb-drawer .bnb-drawer__search-icon {
    position: absolute !important;
    left: 12px !important;
    right: auto !important;
    color: #aaa !important;
    display: flex !important;
    pointer-events: none !important;
    z-index: 1 !important;
    opacity: 1 !important;
    visibility: visible !important;
    transition: opacity .2s ease, visibility .2s ease !important;
}

#bnb-drawer .bnb-drawer__search-icon.is-hidden {
    opacity: 0 !important;
    visibility: hidden !important;
}

#bnb-drawer .bnb-drawer__search {
    width: 100% !important;
    height: 40px !important;
    background: var(--bnb-search-bg) !important;
    border: 1px solid transparent !important;
    border-radius: 10px !important;
    padding: 0 14px 0 38px !important;
    font-size: 13px !important;
    font-family: var(--bnb-font) !important;
    color: #111 !important;
    outline: none !important;
    direction: rtl !important;
    transition: border-color .15s !important;
    box-shadow: none !important;
}

#bnb-drawer .bnb-drawer__search:focus {
    border-color: #ccd6e0 !important;
    background: #fff !important;
}

#bnb-drawer .bnb-drawer__search::-webkit-search-cancel-button { display: none !important; }
#bnb-drawer .bnb-drawer__search::placeholder { color: #bbb !important; }

#bnb-drawer .bnb-drawer__search-clear {
    position: absolute !important;
    left: 8px !important;
    right: auto !important;
    width: 24px !important;
    height: 24px !important;
    border: none !important;
    background: #c5cdd6 !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    color: #fff !important;
    padding: 0 !important;
    box-shadow: none !important;
    z-index: 2 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transition: opacity .2s ease, visibility .2s ease !important;
    pointer-events: none !important;
}

#bnb-drawer .bnb-drawer__search-clear.is-visible {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

/* Body */

#bnb-drawer .bnb-drawer__body {
    display: flex !important;
    flex: 1 !important;
    overflow: hidden !important;
}

/* Sidebar (سمت راست — دسته‌های مادر) */

#bnb-drawer .bnb-drawer__sidebar {
    width: var(--bnb-sidebar-w) !important;
    flex-shrink: 0 !important;
    background: var(--bnb-sidebar-bg) !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    border-left: 1px solid #e7eaef !important;
}

#bnb-drawer .bnb-drawer__sidebar::-webkit-scrollbar { display: none !important; }

#bnb-drawer .bnb-sidebar-item {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 12px 4px 10px !important;
    border: none !important;
    border-left: 3px solid transparent !important;
    border-bottom: 1px solid #edf0f4 !important;
    border-top: none !important;
    border-right: none !important;
    background: transparent !important;
    cursor: pointer !important;
    font-size: 10.5px !important;
    font-family: var(--bnb-font) !important;
    color: #5a6470 !important;
    font-weight: 500 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    transition: background .15s, color .15s, border-left-color .15s !important;
    -webkit-tap-highlight-color: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    outline: none !important;
}

#bnb-drawer .bnb-sidebar-item:last-child {
    border-bottom: none !important;
}

#bnb-drawer .bnb-sidebar-item:active {
    background: #eef2f7 !important;
}

#bnb-drawer .bnb-sidebar-item.is-active {
    background: #ffffff !important;
    color: var(--bnb-active-line) !important;
    font-weight: 700 !important;
    border-left-color: var(--bnb-active-line) !important;
}

#bnb-drawer .bnb-sidebar-item__thumb {
    width: 44px !important;
    height: 44px !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    background: #dde2e8 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    transition: box-shadow .15s !important;
}

#bnb-drawer .bnb-sidebar-item.is-active .bnb-sidebar-item__thumb {
    box-shadow: 0 2px 8px rgba(10,116,218,.18) !important;
}

#bnb-drawer .bnb-sidebar-item__thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

#bnb-drawer .bnb-sidebar-item__thumb .bnb-no-img {
    font-size: 20px !important;
    line-height: 1 !important;
}

/* Content (سمت چپ — زیر دسته‌ها) */

#bnb-drawer .bnb-drawer__content {
    flex: 1 !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    background: #ffffff !important;
    display: flex !important;
    flex-direction: column !important;
}

#bnb-drawer .bnb-drawer__content::-webkit-scrollbar { display: none !important; }

/* Category Head */

#bnb-drawer .bnb-cat-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 13px 16px 11px !important;
    border-bottom: 1px solid #f0f3f6 !important;
    flex-shrink: 0 !important;
    background: #ffffff !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 2 !important;
}

#bnb-drawer .bnb-cat-head__title {
    font-size: 13.5px !important;
    font-weight: 700 !important;
    color: #2a3340 !important;
    flex: 1 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    padding-left: 8px !important;
    font-family: var(--bnb-font) !important;
}

#bnb-drawer .bnb-cat-head__link {
    font-size: 11px !important;
    font-weight: 600 !important;
    color: var(--bnb-active-line) !important;
    text-decoration: none !important;
    background: #eef5fd !important;
    padding: 5px 11px !important;
    border-radius: 20px !important;
    white-space: nowrap !important;
    transition: background .15s, color .15s !important;
    flex-shrink: 0 !important;
    border: none !important;
    font-family: var(--bnb-font) !important;
}

#bnb-drawer .bnb-cat-head__link:active {
    background: var(--bnb-active-line) !important;
    color: #fff !important;
}

/* Subs */

#bnb-drawer .bnb-drawer__subs {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
}

#bnb-drawer .bnb-drawer__placeholder {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 1 !important;
    gap: 10px !important;
    color: #ccc !important;
    font-size: 12px !important;
    padding: 40px 0 !important;
    min-height: 180px !important;
    font-family: var(--bnb-font) !important;
    background: transparent !important;
}

#bnb-drawer .bnb-sub-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

#bnb-drawer .bnb-sub-item {
    border-bottom: 1px solid #f2f5f8 !important;
    background: transparent !important;
}

#bnb-drawer .bnb-sub-item:last-child { border-bottom: none !important; }

#bnb-drawer .bnb-sub-item__row {
    display: flex !important;
    align-items: center !important;
    padding: 11px 16px 11px 10px !important;
    gap: 8px !important;
    cursor: pointer !important;
    -webkit-tap-highlight-color: transparent !important;
    transition: background .12s !important;
    background: transparent !important;
}

#bnb-drawer .bnb-sub-item__row:active { background: #f4f7fb !important; }

#bnb-drawer .bnb-sub-item__name {
    flex: 1 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #1a2330 !important;
    text-decoration: none !important;
    display: block !important;
    line-height: 1.4 !important;
    font-family: var(--bnb-font) !important;
    background: transparent !important;
}

#bnb-drawer .bnb-sub-item__arrow {
    width: 30px !important;
    height: 30px !important;
    border-radius: 8px !important;
    background: #eef2f7 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #6b7a8d !important;
    flex-shrink: 0 !important;
    transition: background .15s, color .15s, transform .2s !important;
    border: 1px solid #e2e8ef !important;
    cursor: pointer !important;
}

#bnb-drawer .bnb-sub-item__arrow.open {
    transform: rotate(-90deg) !important;
    background: #ddeaf8 !important;
    color: var(--bnb-active-line) !important;
    border-color: #c5ddf5 !important;
}

#bnb-drawer .bnb-sub-item__children {
    display: none !important;
    border-top: 1px solid #f2f5f8 !important;
    background: #fafbfc !important;
}

#bnb-drawer .bnb-sub-item__children.is-open { display: block !important; }

#bnb-drawer .bnb-sub-item__children > .bnb-sub-list > .bnb-sub-item > .bnb-sub-item__row {
    padding-right: 26px !important;
    background: #fafbfc !important;
}

#bnb-drawer .bnb-sub-item__children > .bnb-sub-list > .bnb-sub-item > .bnb-sub-item__row .bnb-sub-item__name {
    font-size: 12.5px !important;
    font-weight: 400 !important;
    color: #3a4250 !important;
}

#bnb-drawer .bnb-sub-item__children > .bnb-sub-list > .bnb-sub-item > .bnb-sub-item__children > .bnb-sub-list > .bnb-sub-item > .bnb-sub-item__row {
    padding-right: 40px !important;
    background: #f4f6f8 !important;
}

#bnb-drawer .bnb-sub-item__children > .bnb-sub-list > .bnb-sub-item > .bnb-sub-item__children > .bnb-sub-list > .bnb-sub-item > .bnb-sub-item__row .bnb-sub-item__name {
    font-size: 12px !important;
    font-weight: 400 !important;
    color: #5a6470 !important;
}

/* Search Results */

#bnb-drawer .bnb-drawer__search-results {
    padding: 8px 0 !important;
    flex: 1 !important;
}

#bnb-drawer .bnb-search-row {
    display: flex !important;
    align-items: center !important;
    padding: 12px 16px !important;
    border-bottom: 1px solid #f2f5f8 !important;
    text-decoration: none !important;
    color: #1a2330 !important;
    font-size: 13px !important;
    gap: 8px !important;
    transition: background .12s !important;
    font-family: var(--bnb-font) !important;
    background: transparent !important;
}

#bnb-drawer .bnb-search-row:active { background: #f4f7fb !important; }

#bnb-drawer .bnb-search-empty {
    text-align: center !important;
    padding: 48px 16px !important;
    color: #bbb !important;
    font-size: 13px !important;
    font-family: var(--bnb-font) !important;
}

/* Skeleton */

#bnb-drawer .bnb-drawer__skeleton {
    padding: 10px 6px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    align-items: center !important;
}

#bnb-drawer .bnb-drawer__skeleton span {
    display: block !important;
    height: 12px !important;
    width: 70% !important;
    background: linear-gradient(90deg,#e8ecf0 25%,#d8dde4 50%,#e8ecf0 75%) !important;
    background-size: 200% 100% !important;
    animation: bnbShimmer 1.2s infinite !important;
    border-radius: 6px !important;
}

#bnb-drawer .bnb-drawer__skeleton span:nth-child(odd)  { width: 80% !important; height: 44px !important; border-radius: 10px !important; }
#bnb-drawer .bnb-drawer__skeleton span:nth-child(even) { width: 60% !important; height: 10px !important; }

@keyframes bnbShimmer {
    0%   { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

#bnb-drawer .bnb-hidden {
    display: none !important;
}

}
