div.reportBox .header {
    /* color: red; */
}

/* ============================================================
   MOBILNA VERZIJA — vse spodaj velja SAMO za mobilni UI
   (ko Session::showMobileUi() = true se naloži mobile CSS;
    dev-overrides se nalaga povsod, zato moramo sami omejiti)
   ============================================================ */

/* Zaščita: vse naše spremembe navigacije in košarice
   veljajo samo za mobilni meni (#mobileMenuButton obstaja samo v mobilni verziji) */
#headerWrapper:has(#mobileMenuButton),
#headerWrapper:has(#mobileMenuButton) *:not(#mobileMenuLayer):not(#mobileMenuLayer *) {
    /* Reset: desktop ne sme biti prizadet — za vsak specifični element spodaj */
}

/* Onemogoči float na .back in .left SAMO v mobilni košarici */
#cartContentsManager.mobile .back,
#cartContentsManager.mobile .left {
    float: unset !important;
}

/* Celotna širina za vsebino košarice — SAMO mobilna verzija */
#cartContentsManager.mobile ~ * { /* sibling */ }
body:has(#cartContentsManager.mobile) #contentMainWrapper .centerColumn,
body:has(#cartContentsManager.mobile) #midWrapperFull .centerColumn,
body:has(#cartContentsManager.mobile) #midWrapperFull2 .centerColumn,
body:has(#cartContentsManager.mobile) #cartTemplateManager,
body:has(#cartContentsManager.mobile) #navBreadCrumb {
    max-width: 100vw !important;
    margin: 0 !important;
    width: 100% !important;
}
#cartContentsManager.mobile {
    max-width: 100vw !important;
    width: 100% !important;
}

/* Overflow scroll — samo na straneh z mobilno košarico */
body:has(#cartContentsManager.mobile) {
    overflow-x: hidden !important;
}

/* ============================================================
   MOBILNA NAVIGACIJSKA GLAVA (teal vrstica)
   — elementi kot #mobileMenuButton obstajajo SAMO v mobilni verziji
   ============================================================ */

/* Celotna glava: malo višja za breathing room */
#headerWrapper:has(#mobileMenuButton) {
    height: 4rem !important;
    max-height: 4rem !important;
    overflow: hidden !important;
    max-width: 100vw !important;
}
#headerWrapper:has(#mobileMenuButton) #navMainWrapper,
#headerWrapper:has(#mobileMenuButton) .navMain {
    overflow: hidden !important;
    max-width: 100vw !important;
}

/* Navigacijska vrstica: flex namesto table */
#headerWrapper:has(#mobileMenuButton) #navMain {
    max-width: 100% !important;
    overflow: hidden !important;
}
#headerWrapper:has(#mobileMenuButton) #navMain ul.navItems {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    padding: 0 6px !important;
    height: 4rem !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

#cartmBody #midWrapperFull,
#cartmBody #midWrapperFull2,
#cartmBody #contentMainWrapper,
#cartmBody #midWrapperFull .centerColumn,
#cartmBody #midWrapperFull2 .centerColumn,
#cartmBody #contentMainWrapper .centerColumn {
    width: 100% !important;
    max-width: 520px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
}
#headerWrapper:has(#mobileMenuButton) #navMain ul.navItems > li {
    display: flex !important;
    align-items: center !important;
}

/* Hamburger gumb */
#mobileMenuButton {
    width: 2.8rem !important;
    height: 2.8rem !important;
    flex-shrink: 0 !important;
}

/* Iskalna vrstica */
#headerWrapper:has(#mobileMenuButton) #navMain ul.navItems > li:has(#quick_find_header) {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    height: 2.6rem !important;
    align-items: center !important;
    padding: 0 !important;
    background: none !important;
    overflow: hidden !important;
}

/* Forma in input */
#quick_find_header {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    background: white !important;
    border-radius: 10px !important;
    padding: 0 10px !important;
    height: 2.6rem !important;
}

/* Lupa ikona pred inputom */
#quick_find_header::before {
    content: "" !important;
    display: block !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    background-color: #aaa !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960'%3E%3Cpath d='M796-121 533-384q-30 26-69.959 40.5T378-329q-108.162 0-183.081-75Q120-479 120-585t75-181q75-75 181.5-75t181 75Q632-691 632-584.85 632-542 618-502q-14 40-42 75l264 262-44 44ZM377-389q81.25 0 138.125-57.5T572-585q0-81-56.875-138.5T377-781q-82.083 0-139.542 57.5Q180-666 180-585t57.458 138.5Q294.917-389 377-389Z'/%3E%3C/svg%3E") !important;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 -960 960 960'%3E%3Cpath d='M796-121 533-384q-30 26-69.959 40.5T378-329q-108.162 0-183.081-75Q120-479 120-585t75-181q75-75 181.5-75t181 75Q632-691 632-584.85 632-542 618-502q-14 40-42 75l264 262-44 44ZM377-389q81.25 0 138.125-57.5T572-585q0-81-56.875-138.5T377-781q-82.083 0-139.542 57.5Q180-666 180-585t57.458 138.5Q294.917-389 377-389Z'/%3E%3C/svg%3E") !important;
    mask-size: contain !important;
    -webkit-mask-size: contain !important;
    mask-repeat: no-repeat !important;
    -webkit-mask-repeat: no-repeat !important;
    margin-right: 6px !important;
    flex-shrink: 0 !important;
}

#ajax-products-search-field {
    background: transparent !important;
    border: none !important;
    color: #333 !important;
    font-size: 15px !important;
    width: 100% !important;
    height: 2.4rem !important;
    padding: 0 !important;
    outline: none !important;
}
#ajax-products-search-field::placeholder {
    color: #aaa !important;
}

/* Košarica li */
#headerWrapper:has(#mobileMenuButton) #navMain ul.navItems > li.nav-header-cart {
    flex-shrink: 0 !important;
    text-align: right !important;
    width: auto !important;
    position: relative !important;
}

/* Košarica ikona: badge — samo v mobilnem headerju */
#headerWrapper:has(#mobileMenuButton) .nav-header-cart .numberCircle {
    position: absolute !important;
    top: -2px !important;
    right: -2px !important;
    width: 20px !important;
    height: 20px !important;
    padding: 0 !important;
    background: #ff6b35 !important;
    border-radius: 50% !important;
    border: 2px solid var(--nc-cyan) !important;
    z-index: 1 !important;
}
#headerWrapper:has(#mobileMenuButton) .nav-header-cart .numberCircle::before {
    display: none !important;
}
#headerWrapper:has(#mobileMenuButton) .nav-header-cart .numberCircle .content {
    position: static !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    transform: none !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #fff !important;
    line-height: 1 !important;
}

/* Cart link wrapper */
#headerWrapper:has(#mobileMenuButton) .nav-header-cart > a {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    padding: 4px !important;
}

/* ============================================================
   MOBILNA KOŠARICA — po referenčnem dizajnu
   Barve: --gray-bg:#f4f6f8  --gray-border:#e0e4ea
          --gray-text:#6b7a8d  --dark:#1a2332
          --teal: var(--nc-cyan)  --red:#a42e36
   ============================================================ */

#cartContentsManager.mobile {
    background: #f4f6f8;
    padding: 4px 0 16px;
}

/* ── BLOK DOBAVITELJA ── */
#cartContentsManager.mobile .cartSupplierBox {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 2px 10px rgba(0,0,0,0.10);
    margin: 10px 8px;
    overflow: visible;
}

/* ── GLAVA DOBAVITELJA — barvno ozadje, belo ime dobavitelja na levi ── */

/* Normalni dobavitelj: teal ozadje */
#cartContentsManager.mobile .cartSupplierBoxHeader {
    background: var(--nc-cyan) !important;
    border-radius: 14px 14px 0 0 !important;
    overflow: hidden !important;
    width: 100% !important;
}
#cartContentsManager.mobile .cartSupplierBoxHeader td {
    border: none !important;
    padding: 0 !important;
    vertical-align: middle !important;
}

/* Prva vrstica: flex layout — levo ime, desno bela kartica */
#cartContentsManager.mobile .cartSupplierBoxHeader tbody tr:first-child {
    display: flex !important;
    align-items: stretch !important;
    padding: 0 !important;
    gap: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}
/* Vrstni red TDjev: ikona (1) → ime (2, flex: 1) → desna bela kartica (3) */
#cartContentsManager.mobile .cartSupplierBoxHeader tbody tr:first-child .cart__supplier-box__delayed-marker {
    order: 1 !important;
    flex-shrink: 0 !important;
    /* padding: 14px 6px 14px 14px !important; */
    margin: 10px 3px 0px 3px;
}
#cartContentsManager.mobile .cartSupplierBoxHeader tbody tr:first-child .supplier {
    order: 2 !important;
    flex: 1 !important;
    background: transparent !important;
    padding: 14px 8px 14px 0 !important;
}
/* Desna bela kartica: cena + dnevi */
#cartContentsManager.mobile .cartSupplierBoxHeader tbody tr:first-child .nb-supplier-right {
    order: 3 !important;
    background: #fff !important;
    padding: 10px 12px 8px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    gap: 6px !important;
    min-width: 130px !important;
    flex-shrink: 0 !important;
    margin: 0 !important;
}

/* Ime dobavitelja: belo na barvnem traku (teal / zamik) */
#cartContentsManager.mobile .cartSupplierBoxHeader td h3,
#cartContentsManager.mobile .cartSupplierBoxHeader td.supplier h3 {
    font-size: 14px !important;
    font-weight: 900 !important;
    color: #fff !important;
    letter-spacing: 0.4px !important;
    text-transform: uppercase !important;
    margin: 0 !important;
}

/* Skupna vrednost: na beli kartici temna barva */
#cartContentsManager.mobile .cart-order-supplier-total h3 {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #000 !important;
    margin: 0 !important;
}

#cartContentsManager.mobile .cartSupplierBoxHeader td.cart-order-supplier-total h3 {
    color: #000 !important;
}

/* Ikona check/pause: beli krog */
#cartContentsManager.mobile .cart__supplier-box__delayed-marker {
    width: 24px !important;
    height: 24px !important;
    background: rgba(255,255,255,0.25) !important;
    border-radius: 50% !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    flex-shrink: 0 !important;
}
/* Ikona v krogu: naredi belo z filter */
#cartContentsManager.mobile .cart__supplier-box__delayed-marker .nb-icon {
    width: 16px !important;
    height: 16px !important;
    background-size: 16px 16px !important;
    filter: brightness(10) saturate(0) !important;
}

/* Zamaknjeni dobavitelj: rdeče ozadje */
#cartContentsManager.mobile .cartSupplierBoxHeader.cartDelayed {
    background: #c0392b !important;
}
#cartContentsManager.mobile .cartSupplierBoxHeader.cartDelayed .cart__supplier-box__delayed-marker {
    background: rgba(255,255,255,0.2) !important;
}

/* ── DNI DOSTAVE ── fiksna širina, flex vrstica */
/* Prazna druga vrstica (e): skrij */
#cartContentsManager.mobile .cartSupplierBoxHeader tr:last-child {
    display: none !important;
}

/* Dnevi znotraj bele kartice */
#cartContentsManager.mobile .nb-days-row {
    display: flex !important;
    gap: 4px !important;
    flex-wrap: wrap !important;
    justify-content: flex-end !important;
}
/* Dnevi — v beli kartici desno */
#cartContentsManager.mobile td.deliveryDay {
    flex: 0 0 16px !important;
    width: 16px !important;
    height: 16px !important;
    border-radius: 3px !important;
    font-size: 9px !important;
    font-weight: 400 !important;
    text-align: center !important;
    line-height: 16px !important;
    padding: 0 !important;
    margin: 0 !important;
    cursor: pointer !important;
    display: block !important;
    background: #f4f6f8 !important;
    color: #6b7a8d !important;
    border: 1px solid #e0e4ea !important;
}
#cartContentsManager.mobile td.deliveryDay.off {
    background: #f4f6f8 !important;
    color: #6b7a8d !important;
    border-color: #ebebeb !important;
}
#cartContentsManager.mobile td.deliveryDay.on {
    background: #e8f7f7 !important;
    color: #1a2332 !important;
    border-color: #b8e0e0 !important;
}
#cartContentsManager.mobile td.deliveryDay.match {
    background: var(--nc-cyan) !important;
    color: #fff !important;
    border-color: var(--nc-cyan) !important;
}
#cartContentsManager.mobile td.deliveryDay.mismatch {
    background: #a42e36 !important;
    color: #fff !important;
    border-color: #a42e36 !important;
}
#cartContentsManager.mobile td.deliveryDay.restrict {
    font-weight: 900 !important;
}

/* ── PRODUKTNE KARTICE ── */
/* Tabla: sivo ozadje, padding za razmak med karticami */

/* Vsak artikel = bela kartica z senco */
#cartContentsManager.mobile .cartSupplierItems .cartItem {
    background: #fff !important;
}
#cartContentsManager.mobile .cartSupplierItems .cartItem td {
    border: none !important;
    vertical-align: middle !important;
}
/* Ime TD (row 1, col 2): padding desno */
#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1) td.ui_group_select_container {
    padding-right: 6px !important;
}
/* 1. vrstica: slika + ime/cena (colspan 3) */
#cartContentsManager.mobile .cartItem:nth-child(3n+1) td {
    padding-top: 10px !important;
    padding-bottom: 6px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    vertical-align: middle !important;
}
/* 2. vrstica: fav + meta + trash + qty */
#cartContentsManager.mobile .cartItem:nth-child(3n+2) td {
    padding-top: 2px !important;
    padding-bottom: 10px !important;
    padding-left: 4px !important;
    padding-right: 4px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #6b7a8d !important;
    vertical-align: middle !important;
}
/* Row 2 col 1: favorit/empty — isti fiksni stolpec kot slika */
#cartContentsManager.mobile .cartItem:nth-child(3n+2) td.nb-td-fav {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 54px !important;
    padding-left: 6px !important;
    vertical-align: middle !important;
    text-align: center !important;
}
/* Row 2 col 2 (SKU + packaging | saving%): elastičen, overflow skrij */
#cartContentsManager.mobile .cartItem:nth-child(3n+2) td:nth-child(2) {
    overflow: hidden !important;
    width: 100% !important;
}
#cartContentsManager.mobile .nb-meta-wrap {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 6px !important;
    width: 100% !important;
    min-width: 0 !important;
}
#cartContentsManager.mobile .nb-meta-left {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}
#cartContentsManager.mobile .nb-meta-right {
    flex: 0 0 auto !important;
    text-align: right !important;
    white-space: nowrap !important;
    color: #d44b4b !important;
    font-weight: 700 !important;
}

/* Totals panel: poravnaj Izguba vrednost desno (kot Vrednost in Skupaj).
   Izguba ima dodaten <span title="..."> okoli, ki blokira h3 flex; naredimo še ta span flex. */
.cartActionBarTotals .abtItem > span[title] {
    display: flex !important;
    flex: 1 1 auto !important;
    width: 100% !important;
    justify-content: space-between !important;
    align-items: baseline !important;
}
/* Kartično zaokroževanje — row 1 ima 2 TDja, row 2 ima 4 */
#cartContentsManager.mobile .cartItem:nth-child(3n+1) td:first-child { border-radius: 14px 0 0 0 !important; }
#cartContentsManager.mobile .cartItem:nth-child(3n+1) td:last-child  { border-radius: 0 14px 0 0 !important; }
#cartContentsManager.mobile .cartItem:nth-child(3n+2) td:first-child { border-radius: 0 0 0 14px !important; }
#cartContentsManager.mobile .cartItem:nth-child(3n+2) td:last-child  { border-radius: 0 0 14px 0 !important; }

/* Spacer = siv gap med karticami */
#cartContentsManager.mobile .cartItem.spacer { background: #f4f6f8 !important; }
#cartContentsManager.mobile .cartItem.spacer td {
    height: 8px !important;
    padding: 0 !important;
    background: #f4f6f8 !important;
    border: none !important;
}
#cartContentsManager.mobile .cartItem.spacer:last-child td { display: none !important; }

/* Ime artikla — fleksibilni stolpec, ostali so fiksni */
#cartContentsManager.mobile .cartSupplierItems {
    table-layout: auto !important;
    width: 100% !important;
}
/* Ime TD: vzame ves preostali prostor */
#cartContentsManager.mobile .cartSupplierItems .cartItem td.ui_group_select_container,
#cartContentsManager.mobile .cartSupplierItems .cartItem td:nth-child(2) {
    width: 100% !important;
}
#cartContentsManager.mobile .cartSupplierItems .cartItem .ui_group_select_container.textOnly {
    font-weight: 800 !important;
    font-size: 13px !important;
    color: #1a2332 !important;
    line-height: 1.3 !important;
    width: 100% !important;
    overflow: hidden !important;
    word-break: break-word !important;
}
/* Select in chosen container: polna širina ime stolpca */
#cartContentsManager.mobile .cartSupplierItems select {
    width: 100% !important;
    max-width: 100% !important;
    font-size: 13px !important;
    height: 30px !important;
}
#cartContentsManager.mobile .cartSupplierItems .cartItem .ui_group_select_container .chosen-container-single {
    width: 100% !important;
    max-width: 100% !important;
}
/* Zamaknjeni artikel */
#cartContentsManager.mobile .cartSupplierItems .cartItem.disabled { opacity: 0.45 !important; }

/* Chosen dropdown v artiklih — čist prikaz brez okvira */
#cartContentsManager.mobile .cartSupplierItems .cartItem .ui_group_select_container .chosen-container-single a.chosen-single {
    height: unset !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    border: none !important;
    background: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
}
/* Ime artikla v chosen: bold, uppercase, dark */
#cartContentsManager.mobile .cartSupplierItems .cartItem .ui_group_select_container .chosen-container-single a.chosen-single span {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    color: #1a2332 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.3px !important;
}
/* Chosen puščica (▼): skrita v kartici artikla */
#cartContentsManager.mobile .cartSupplierItems .cartItem .chosen-container-single a.chosen-single div {
    display: none !important;
}
/* textOnly (brez alternativ): enak slog */
#cartContentsManager.mobile .cartSupplierItems .cartItem .ui_group_select_container.textOnly {
    font-size: 13px !important;
    font-weight: 800 !important;
    color: #1a2332 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.3px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

/* ── CHECKBOX ── teal filled (zdaj znotraj .nb-img-ph) */
#cartContentsManager.mobile input.ux-cart-checkbox {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 22px !important;
    height: 22px !important;
    background: var(--nc-cyan) !important;
    border: none !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    flex-shrink: 0 !important;
}
#cartContentsManager.mobile input.ux-cart-checkbox:checked::after {
    content: "" !important;
    display: block !important;
    width: 13px !important;
    height: 13px !important;
    background: white !important;
    mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolyline points='20 6 9 17 4 12' stroke='white' stroke-width='3' fill='none'/%3E%3C/svg%3E") !important;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolyline points='20 6 9 17 4 12' stroke='white' stroke-width='3' fill='none'/%3E%3C/svg%3E") !important;
    mask-size: contain !important;
    -webkit-mask-size: contain !important;
    mask-repeat: no-repeat !important;
    -webkit-mask-repeat: no-repeat !important;
    mask-position: center !important;
    -webkit-mask-position: center !important;
}
#cartContentsManager.mobile input.ux-cart-checkbox:not(:checked) {
    opacity: 0.35 !important;
}

/* ── NAVODILA/OPOMBE ── */
#cartContentsManager.mobile .cart__supplier-box__actions {
    background: #f4f6f8 !important;
    text-align: center !important;
    padding: 0 0 6px !important;
    display: block !important;
    margin: 0 !important;
    border-radius: 0 0 14px 14px !important;
}
#cartContentsManager.mobile .cart__supplier-box__actions a {
    color: var(--nc-cyan) !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
}

/* Ločilna vrstica med dobavitelji */
#cartContentsManager.mobile hr.cartDivider { display: none !important; }

/* ── KOŠ GUMB NA VRSTICI — ločilna črta levo (| 🗑 | qty) ── */
#cartContentsManager.mobile .nb-td-del {
    width: 1px !important;
    padding: 0 4px !important;
    text-align: center !important;
    vertical-align: middle !important;
    white-space: nowrap !important;
    border-left: 1.5px solid #e8eaed !important;
}
#cartContentsManager.mobile .nb-row-del {
    background: none !important;
    border: none !important;
    padding: 4px !important;
    cursor: pointer !important;
    color: #6b7a8d !important;
    line-height: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
}
#cartContentsManager.mobile .nb-row-del:hover,
#cartContentsManager.mobile .nb-row-del:active {
    color: #a42e36 !important;
    opacity: 1 !important;
}
#cartContentsManager.mobile .nb-row-del .nb-icon-trash {
    filter: brightness(0) opacity(0.45) !important;
    width: 20px !important;
    height: 20px !important;
    background-size: 20px 20px !important;
}

/* ── SLIČICA PRODUKTA (placeholder) + checkbox čez sliko ── */

#cartContentsManager.mobile .nb-td-img {
    width: 1px !important;
    padding: 4px 4px 4px 6px !important;
    vertical-align: middle !important;
}
#cartContentsManager.mobile .nb-img-ph {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    border-radius: 8px !important;
    background: #f0f2f5 !important;
    border: 1px solid #e8eaed !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    position: relative !important;
    overflow: hidden !important;
}
/* Checkbox pozicioniran v zgornji levi kot slike */
#cartContentsManager.mobile .nb-img-ph input.ux-cart-checkbox {
    position: absolute !important;
    top: 3px !important;
    left: 3px !important;
    width: 20px !important;
    height: 20px !important;
    border-radius: 4px !important;
    z-index: 2 !important;
}
/* Siva slash-ikona v sredini */
#cartContentsManager.mobile .nb-img-ph::after {
    content: "" !important;
    display: block !important;
    width: 28px !important;
    height: 28px !important;
    background: #d8d8d8 !important;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21 19V5c0-1.1-.9-2-2-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2zM8.5 13.5l2.5 3.01L14.5 12l4.5 6H5l3.5-4.5z'/%3E%3C/svg%3E") !important;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M21 19V5c0-1.1-.9-2-2-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2zM8.5 13.5l2.5 3.01L14.5 12l4.5 6H5l3.5-4.5z'/%3E%3C/svg%3E") !important;
    mask-size: contain !important;
    -webkit-mask-size: contain !important;
    mask-repeat: no-repeat !important;
    -webkit-mask-repeat: no-repeat !important;
    mask-position: center !important;
    -webkit-mask-position: center !important;
}

/* ── KONTROLE KOLIČINE ── kompaktne za mobilne zaslone */
#cartContentsManager.mobile .ux-cart-quantity.nb-qty-wrap {
    width: 98px !important;
    min-width: 98px !important;
    padding: 4px 6px 4px 2px !important;
}
#cartContentsManager.mobile .nb-qty-wrap-inner {
    display: inline-flex !important;
    align-items: center !important;
    gap: 2px !important;
    white-space: nowrap !important;
}
/* Qty input */
#cartContentsManager.mobile .nb-qty-wrap-inner input {
    min-width: 32px !important;
    width: 100% !important;
    height: 28px !important;
    border: 1.5px solid var(--nc-cyan) !important;
    border-radius: 6px !important;
    background: #fff !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    color: var(--nc-cyan) !important;
    text-align: center !important;
    padding: 0 !important;
}
/* +/- gumbi */
#cartContentsManager.mobile .nb-qty-btn {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    border: 1.5px solid #e0e4ea !important;
    border-radius: 6px !important;
    background: #fff !important;
    color: #1a2332 !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    padding: 0 !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    touch-action: manipulation !important;
    -webkit-user-select: none !important;
    user-select: none !important;
}
#cartContentsManager.mobile .nb-qty-btn:hover {
    background: #f4f6f8 !important;
}
#cartContentsManager.mobile .nb-qty-btn:active {
    background: #e8ecf0 !important;
}
/* Fallback za desktop */
#cartContentsManager .ux-cart-quantity:not(.nb-qty-wrap) { width: 66px !important; }
#cartContentsManager .ux-cart-quantity:not(.nb-qty-wrap) input { width: 60px !important; height: 34px !important; font-size: 24px !important; }
.ux-cart-quantity-readonly {
    height: 30px !important;
    font-size: 14px !important;
    border-radius: 8px !important;
    border: 1.5px solid #e0e4ea !important;
    min-width: 36px !important;
    text-align: center !important;
    padding: 0 !important;
    background: #f8f8f8 !important;
    display: inline-block !important;
}

/* --- OPOMBA DOBAVITELJA (Navodila/opombe) --- */

#cartContentsManager.mobile .cart__supplier-box__actions {
    text-align: center !important;
    padding: 0px 0 4px !important;
    display: block !important;
}
#cartContentsManager.mobile .cart__supplier-box__actions a {
    color: var(--nc-cyan) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
}

/* Ločilna vrstica med dobavitelji: skrita (zamenjana s spacing med karticami) */
#cartContentsManager.mobile hr.cartDivider {
    display: none !important;
}

/* --- AKCIJSKA VRSTICA (zgoraj) — po referenčnem dizajnu --- */

/*
 * HTML: table.cartActionBar > tbody > tr > [
 *   td.cartActionBarItems (ikone + Najcenejši select)
 *   td.cartActionBarTotals (Vrednost / Izguba / Skupaj)
 *   td.cartActionBarSend (Pošlji + recipient select)
 * ]
 * Cilj: 2-stolpčni grid — levo ikone+select, desno bela kartica (zneski+gumb)
 */

#cartContentsManager.mobile .cartActionBar {
    background: #f4f6f8 !important;
    border-radius: 16px !important;
    margin: 4px 8px 8px !important;
    overflow: hidden !important;
    width: calc(100% - 16px) !important;
    display: block !important;
}
#cartContentsManager.mobile .cartActionBar tbody {
    display: block !important;
}
/* Pretvori TR v CSS Grid: 2 stolpca (levo flex, desno fiksno) */
#cartContentsManager.mobile .cartActionBar tr {
    display: grid !important;
    grid-template-columns: 1fr 180px !important;
    grid-template-rows: auto auto !important;
    column-gap: 12px !important;
    padding: 14px 16px !important;
    align-items: start !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}
/* Levi stolpec: cartActionBarItems — razteza se čez obe vrstici */
#cartContentsManager.mobile .cartActionBarItems {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
    padding: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    white-space: normal !important;
}
/* Desni stolpec, zgornja vrstica: zneski */
#cartContentsManager.mobile .cartActionBarTotals {
    grid-column: 2 !important;
    grid-row: 1 !important;
    background: #fff !important;
    border: 1.5px solid #e0e4ea !important;
    border-radius: 14px 14px 0 0 !important;
    border-bottom: none !important;
    padding: 12px 14px 8px !important;
    min-width: 0 !important;
    width: unset !important;
    box-shadow: none !important;
}
/* Desni stolpec, spodnja vrstica: Pošlji */
#cartContentsManager.mobile .cartActionBarSend {
    grid-column: 2 !important;
    grid-row: 2 !important;
    background: #fff !important;
    border: 1.5px solid #e0e4ea !important;
    border-radius: 0 0 14px 14px !important;
    border-top: 1px solid #f0f2f5 !important;
    padding: 8px 14px 12px !important;
    min-width: 0 !important;
    text-align: left !important;
}

/* ── Ikone gumbi ── */
#cartContentsManager.mobile .cartToolbarSelectionActions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    align-items: center !important;
}
/* Ikone: belo ozadje z robom, ikona potemnjena s filter */
#cartContentsManager.mobile .cartActionBarItems .ui_button_icon {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    background: #fff !important;
    border: 1.5px solid #e0e4ea !important;
    border-radius: 10px !important;
    padding: 0 !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    flex-shrink: 0 !important;
}
#cartContentsManager.mobile .cartActionBarItems .ui_button_icon:hover {
    background: #eef0f3 !important;
}
#cartContentsManager.mobile .cartActionBarItems .ui_button_icon:active {
    background: #e4e7eb !important;
}
/* Bele SVG ikone → potemnimo z filter da so vidne na belem ozadju */
#cartContentsManager.mobile .cartActionBarItems .ui_button_icon .nb-icon {
    width: 26px !important;
    height: 26px !important;
    background-size: 26px 26px !important;
    display: block !important;
    filter: brightness(0) opacity(0.55) !important;
}

/* ── Najcenejši select: pod ikone, polna širina ── */
#cartContentsManager.mobile .cartToolbarSelectionActions select {
    flex: 0 0 100% !important;
    width: 100% !important;
    height: 42px !important;
    border: 1.5px solid #e0e4ea !important;
    border-radius: 10px !important;
    background: #fff !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    padding: 0 12px !important;
    color: #1a2332 !important;
    margin: 0 !important;
    appearance: auto !important;
}

/* ── Zneski ── */
#cartContentsManager.mobile .cartActionBarTotals h3.abtItem {
    display: flex !important;
    justify-content: space-between !important;
    align-items: baseline !important;
    gap: 6px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #6b7a8d !important;
    margin: 0 0 4px !important;
    line-height: 1.4 !important;
    white-space: nowrap !important;
}
/* .num: font weight/size ampak NE barva — inline style (rdeča za izgubo) mora zmagati */
#cartContentsManager.mobile .cartActionBarTotals h3.abtItem .num {
    font-weight: 700 !important;
    font-size: 14px !important;
    margin-left: auto !important;
}
/* Skupaj: bolder + separator */
#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:last-child {
    margin-top: 6px !important;
    padding-top: 6px !important;
    border-top: 1.5px solid #e0e4ea !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #1a2332 !important;
    margin-bottom: 0 !important;
}
#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:last-child .num {
    font-size: 18px !important;
    font-weight: 900 !important;
    color: #1a2332 !important;
}

/* ── Pošlji gumb + recipient select ── */
#cartContentsManager.mobile .cartActionBarSend .cartActionBarSendInner {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}
#cartContentsManager.mobile .cartActionBarSendButtonWrap {
    width: 100% !important;
    margin-bottom: 0.2rem !important;
}
#cartContentsManager.mobile .cartActionBarSendButtonWrap .ui_button {
    display: block !important;
    width: 100% !important;
    height: 44px !important;
    background: var(--nc-cyan) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 10px !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    cursor: pointer !important;
    padding: 0 !important;
    letter-spacing: 0.3px !important;
}
#cartContentsManager.mobile .cartActionBarSendButtonWrap .ui_button:active {
    opacity: 0.85 !important;
}
/* Recipient select */
#cartContentsManager.mobile .cartActionBarSend .cartActionBarSendInner > select {
    width: 100% !important;
    height: 36px !important;
    border: 1.5px solid #e0e4ea !important;
    border-radius: 8px !important;
    background: #f4f6f8 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 0 8px !important;
    color: #333 !important;
}

/* Checkbox */
.ux-cart-checkbox-wrapper {
    padding: 0 6px !important;
}

/* ── INLINE IME + CENA/UM — row 1 ── */
#cartContentsManager.mobile .nb-name-price-wrap {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: 4px !important;
    overflow: hidden !important;
}
/* Chosen container in textOnly: vzameta preostanek prostora */
#cartContentsManager.mobile .nb-name-price-wrap .chosen-container,
#cartContentsManager.mobile .nb-name-price-wrap .ui_group_select_container.textOnly {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    width: unset !important;
    max-width: 100% !important;
    overflow: hidden !important;
}
/* Cena/UM: desno, fiksna */
#cartContentsManager.mobile .nb-price-unit {
    flex-shrink: 0 !important;
    display: inline-flex !important;
    align-items: baseline !important;
    gap: 1px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #6b7a8d !important;
    white-space: nowrap !important;
}
#cartContentsManager.mobile .nb-price-unit .num {
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #6b7a8d !important;
}
/* chosen-single: ne sme imeti fiksne višine, trunciraj z ellipsis */
#cartContentsManager.mobile .nb-name-price-wrap .chosen-container-single a.chosen-single {
    overflow: hidden !important;
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
    width: 100% !important;
    display: block !important;
}

/* --- CART ACTION BAR: compact mobile summary layout --- */
#cartContentsManager.mobile .cartActionBar {
    background: #fff !important;
    border: 1.5px solid #e0e4ea !important;
    border-radius: 14px !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.10) !important;
    margin: 6px 8px 10px !important;
    overflow: hidden !important;
    width: calc(100% - 16px) !important;
    display: block !important;
}

#cartContentsManager.mobile .cartActionBar tbody {
    display: block !important;
}

#cartContentsManager.mobile .cartActionBar tr {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto !important;
    row-gap: 10px !important;
    padding: 14px !important;
    align-items: stretch !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

#cartContentsManager.mobile .cartActionBarItems {
    grid-column: 1 !important;
    grid-row: 1 !important;
    padding: 0 !important;
    display: block !important;
    white-space: normal !important;
}

#cartContentsManager.mobile .cartToolbarSelectionActions {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;
    align-items: center !important;
}

#cartContentsManager.mobile .cartToolbarSelectionActions select {
    order: 3 !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
    height: 42px !important;
    margin: 0 !important;
}

#cartContentsManager.mobile .cartToolbarSelectionActions .ui_button_icon:nth-of-type(3) {
    order: 4 !important;
}

#cartContentsManager.mobile .cartActionBarTotals {
    grid-column: 1 !important;
    grid-row: 2 !important;
    background: #fff !important;
    border: none !important;
    border-radius: 0 !important;
    border-top: 1px solid #eef0f3 !important;
    box-shadow: none !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 2px 0 0 !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    column-gap: 12px !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem {
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
    align-items: flex-start !important;
    gap: 2px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    color: #6b7a8d !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem .num {
    margin-left: 0 !important;
    color: #1a2332;
    font-size: 17px !important;
    font-weight: 900 !important;
    line-height: 1.1 !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:last-child {
    color: #1a2332 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:last-child .num {
    color: #1a2332 !important;
    font-size: 25px !important;
    font-weight: 900 !important;
}

#cartContentsManager.mobile .cartActionBarSend {
    grid-column: 1 !important;
    grid-row: 3 !important;
    background: #fff !important;
    border: none !important;
    border-radius: 0 !important;
    border-top: 1px solid #eef0f3 !important;
    padding: 10px 0 0 !important;
    min-width: 0 !important;
    text-align: left !important;
}

#cartContentsManager.mobile .cartActionBarSend .cartActionBarSendInner {
    display: flex !important;
    flex-direction: row !important;
    gap: 10px !important;
    align-items: center !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

#cartContentsManager.mobile .cartActionBarSendButtonWrap {
    flex: 1 1 50% !important;
    width: auto !important;
    margin-bottom: 0 !important;
}

#cartContentsManager.mobile .cartActionBarSendButtonWrap .ui_button {
    height: 44px !important;
}

#cartContentsManager.mobile .cartActionBarSend .cartActionBarSendInner > select {
    flex: 1 1 50% !important;
    width: auto !important;
    min-width: 0 !important;
    height: 44px !important;
    border-radius: 10px !important;
    font-weight: 800 !important;
}

/* --- CART MOBILE FINAL POLISH --- */
#cartContentsManager.mobile {
    --cart-pad: 8px;
    --cart-gap: 10px;
    --cart-radius: 14px;
    --cart-border: #e0e4ea;
    --cart-muted: #6b7a8d;
    --cart-ink: #172033;
    width: 100% !important;
    max-width: 520px !important;
    margin: 0 auto !important;
    background: #f4f6f8 !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
}

#cartContentsManager.mobile .cartActionBar {
    margin: 8px var(--cart-pad) 10px !important;
    border-color: var(--cart-border) !important;
    border-radius: var(--cart-radius) !important;
    width: calc(100vw - (var(--cart-pad) * 2)) !important;
    max-width: 504px !important;
    box-sizing: border-box !important;
    table-layout: fixed !important;
}

#cartContentsManager.mobile .cartActionBar tr {
    padding: 12px 14px !important;
    row-gap: 11px !important;
}

#cartContentsManager.mobile .cartToolbarSelectionActions {
    display: grid !important;
    grid-template-columns: 40px 40px minmax(0, 1fr) 40px !important;
    gap: 10px !important;
    align-items: center !important;
}

#cartContentsManager.mobile .cartToolbarSelectionActions .ui_button_icon {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    border-color: var(--cart-border) !important;
    border-radius: 10px !important;
}

#cartContentsManager.mobile .cartToolbarSelectionActions select {
    width: 100% !important;
    height: 42px !important;
    border-color: var(--cart-border) !important;
    color: var(--cart-ink) !important;
    font-size: 14px !important;
    font-weight: 800 !important;
}

#cartContentsManager.mobile .cartActionBarTotals {
    padding-top: 8px !important;
    column-gap: 10px !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:nth-child(2) {
    align-items: center !important;
    text-align: center !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:last-child {
    align-items: flex-end !important;
    text-align: right !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem .num {
    letter-spacing: 0 !important;
}

#cartContentsManager.mobile .cartActionBarSend {
    padding-top: 11px !important;
}

#cartContentsManager.mobile .cartActionBarSend .cartActionBarSendInner {
    gap: 10px !important;
}

#cartContentsManager.mobile .cartActionBarSendButtonWrap .ui_button,
#cartContentsManager.mobile .cartActionBarSend .cartActionBarSendInner > select {
    height: 44px !important;
    border-radius: 10px !important;
}

#cartContentsManager.mobile .cartSupplierBox {
    margin: 10px var(--cart-pad) 14px !important;
    border: 1px solid var(--cart-border) !important;
    border-radius: 16px !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.08) !important;
    overflow: hidden !important;
    width: calc(100vw - (var(--cart-pad) * 2)) !important;
    max-width: 504px !important;
    box-sizing: border-box !important;
}

#cartContentsManager.mobile .cartSupplierBoxHeader {
    border-radius: 16px 16px 0 0 !important;
}

#cartContentsManager.mobile .cartSupplierBoxHeader tbody tr:first-child .supplier {
    min-width: 0 !important;
}

#cartContentsManager.mobile .cartSupplierBoxHeader tbody tr:first-child .nb-supplier-right {
    min-width: 150px !important;
    padding: 9px 10px 8px !important;
}

#cartContentsManager.mobile .cartSupplierBoxHeader td h3,
#cartContentsManager.mobile .cartSupplierBoxHeader td.supplier h3 {
    line-height: 1.2 !important;
}

#cartContentsManager.mobile .cartSupplierItems {
    border-collapse: separate !important;
    border-spacing: 0 !important;
    table-layout: fixed !important;
    width: 100% !important;
    background: #f4f6f8 !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem td {
    background: #fff !important;
}

#cartContentsManager.mobile .cartItem:nth-child(3n+1) td {
    padding-top: 10px !important;
    padding-bottom: 6px !important;
}

#cartContentsManager.mobile .cartItem:nth-child(3n+2) td {
    padding-top: 2px !important;
    padding-bottom: 10px !important;
}

#cartContentsManager.mobile .cartItem.spacer td {
    height: 8px !important;
    background: #f4f6f8 !important;
}

#cartContentsManager.mobile .nb-td-img {
    padding-left: 10px !important;
    padding-right: 6px !important;
    vertical-align: top !important;
}

#cartContentsManager.mobile .nb-img-ph input.ux-cart-checkbox {
    top: 4px !important;
    left: 4px !important;
    width: 20px !important;
    height: 20px !important;
}

#cartContentsManager.mobile .nb-name-price-wrap {
    gap: 8px !important;
    align-items: flex-start !important;
    min-width: 0 !important;
    max-width: 100% !important;
}

#cartContentsManager.mobile .nb-name-price-wrap > *:first-child {
    flex: 1 1 0 !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    display: block !important;
}

#cartContentsManager.mobile .nb-name-price-wrap select,
#cartContentsManager.mobile .nb-name-price-wrap .ui_group_select_container select,
#cartContentsManager.mobile .cartSupplierItems .cartItem select {
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

#cartContentsManager.mobile .nb-name-price-wrap > select {
    flex: 1 1 0 !important;
}

#cartContentsManager.mobile .nb-name-price-wrap .chosen-container {
    display: none !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem .ui_group_select_container.textOnly,
#cartContentsManager.mobile .cartSupplierItems .cartItem .chosen-container-single a.chosen-single span {
    font-size: 13px !important;
    line-height: 1.25 !important;
}

#cartContentsManager.mobile .nb-price-unit,
#cartContentsManager.mobile .nb-price-unit .num {
    color: #5f6f83 !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
}

#cartContentsManager.mobile .nb-price-unit {
    flex: 0 0 auto !important;
    max-width: 64px !important;
    justify-content: flex-end !important;
    overflow: hidden !important;
    text-overflow: clip !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem .ui_group_select_container.textOnly {
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

#cartContentsManager.mobile .nb-td-del {
    padding-left: 6px !important;
    padding-right: 4px !important;
}

#cartContentsManager.mobile .ux-cart-quantity.nb-qty-wrap {
    width: 96px !important;
    min-width: 96px !important;
    padding-right: 10px !important;
}

#cartContentsManager.mobile .nb-qty-wrap-inner input {
    height: 30px !important;
    border-radius: 7px !important;
}

#cartContentsManager.mobile .cart__supplier-box__actions {
    padding: 6px 0 8px !important;
}

@media (max-width: 420px) {
    #cartContentsManager.mobile {
        --cart-pad: 6px;
    }

    #cartContentsManager.mobile .cartActionBar tr {
        padding: 10px 12px !important;
    }

    #cartContentsManager.mobile .cartToolbarSelectionActions {
        grid-template-columns: 38px 38px minmax(0, 1fr) 38px !important;
        gap: 8px !important;
    }

    #cartContentsManager.mobile .cartToolbarSelectionActions .ui_button_icon {
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
    }

    #cartContentsManager.mobile .cartActionBarTotals {
        column-gap: 7px !important;
    }

    #cartContentsManager.mobile .cartActionBarTotals h3.abtItem .num {
        font-size: 15px !important;
    }

    #cartContentsManager.mobile .cartActionBarTotals h3.abtItem:last-child .num {
        font-size: 22px !important;
    }

    #cartContentsManager.mobile .cartSupplierBoxHeader tbody tr:first-child .nb-supplier-right {
        min-width: 138px !important;
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

    #cartContentsManager.mobile .ux-cart-quantity.nb-qty-wrap {
        width: 88px !important;
        min-width: 88px !important;
    }
}

@media (max-width: 360px) {
    #cartContentsManager.mobile .cartToolbarSelectionActions {
        grid-template-columns: 36px 36px minmax(0, 1fr) 36px !important;
        gap: 7px !important;
    }


    #cartContentsManager.mobile .cartActionBarSend .cartActionBarSendInner {
        flex-direction: column !important;
    }

    #cartContentsManager.mobile .cartActionBarSendButtonWrap,
    #cartContentsManager.mobile .cartActionBarSend .cartActionBarSendInner > select {
        width: 100% !important;
        flex-basis: auto !important;
    }
}

/* Product rows use an explicit mobile grid so action columns never disappear. */
#cartContentsManager.mobile .cartSupplierItems,
#cartContentsManager.mobile .cartSupplierItems tbody {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem {
    display: grid !important;
    grid-template-columns: 54px minmax(0, 1fr) 34px 88px !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem[hidden],
#cartContentsManager.mobile .cartSupplierItems tr[hidden] {
    display: none !important;
}

#cartContentsManager.mobile .cartItem:nth-child(3n+1) {
    grid-template-columns: 54px minmax(0, 1fr) !important;
}

#cartContentsManager.mobile .cartItem:nth-child(3n+1) .nb-td-img {
    grid-column: 1 !important;
}

#cartContentsManager.mobile .cartItem:nth-child(3n+1) td:nth-child(2) {
    grid-column: 2 !important;
    min-width: 0 !important;
}

#cartContentsManager.mobile .cartItem:nth-child(3n+2) td:nth-child(1) {
    grid-column: 1 !important;
}

#cartContentsManager.mobile .cartItem:nth-child(3n+2) td:nth-child(2) {
    grid-column: 2 !important;
    min-width: 0 !important;
}

#cartContentsManager.mobile .cartItem:nth-child(3n+2) .nb-td-del {
    grid-column: 3 !important;
}

#cartContentsManager.mobile .cartItem:nth-child(3n+2) .ux-cart-quantity.nb-qty-wrap {
    grid-column: 4 !important;
    justify-self: end !important;
    width: 88px !important;
    min-width: 88px !important;
    max-width: 88px !important;
    padding-right: 8px !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem td {
    display: block !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

#cartContentsManager.mobile .nb-qty-wrap-inner {
    width: 100% !important;
}

#cartContentsManager.mobile .nb-qty-wrap-inner input {
    flex: 1 1 auto !important;
    min-width: 0 !important;
}

#cartContentsManager.mobile .cartItem.spacer {
    display: block !important;
}

#cartContentsManager.mobile .cartItem.spacer td {
    display: block !important;
    width: 100% !important;
}

@media (max-width: 390px) {
    #cartContentsManager.mobile .cartSupplierItems .cartItem {
        grid-template-columns: 52px minmax(0, 1fr) 30px 76px !important;
    }

    #cartContentsManager.mobile .cartItem:nth-child(3n+1) {
        grid-template-columns: 52px minmax(0, 1fr) !important;
    }

    #cartContentsManager.mobile .cartItem:nth-child(3n+2) .ux-cart-quantity.nb-qty-wrap {
        width: 76px !important;
        min-width: 76px !important;
        max-width: 76px !important;
        padding-right: 6px !important;
    }
}

/* Compact the top cart action panel to match the reference layout. */
#cartContentsManager.mobile .cartActionBar {
    border-radius: 12px !important;
    margin-top: 6px !important;
}

#cartContentsManager.mobile .cartActionBar tr {
    padding: 12px 16px 14px !important;
    row-gap: 8px !important;
}

#cartContentsManager.mobile .cartToolbarSelectionActions {
    grid-template-columns: 40px 40px minmax(0, 1fr) 40px !important;
    gap: 12px !important;
}

#cartContentsManager.mobile .cartToolbarSelectionActions .ui_button_icon,
#cartContentsManager.mobile .cartToolbarSelectionActions select {
    height: 52px !important;
    border-radius: 10px !important;
}

#cartContentsManager.mobile .cartToolbarSelectionActions .ui_button_icon {
    width: 40px !important;
    min-width: 40px !important;
}

#cartContentsManager.mobile .cartActionBarTotals {
    /* min-height: 74px !important; */
    padding: 5px 0 5px !important;
    border-top: 1px solid #eef0f3 !important;
    border-bottom: 1px solid #eef0f3 !important;
    align-items: stretch !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem {
    display: grid !important;
    grid-template-rows: 18px 32px !important;
    align-content: start !important;
    gap: 2px !important;
    color: #68778c !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    min-width: 0 !important;
    white-space: nowrap !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem .num {
    color: #071226;
    display: block !important;
    grid-row: 2 !important;
    width: 100% !important;
    font-size: 18px !important;
    font-weight: 900 !important;
    line-height: 1.05 !important;
    margin: 0 !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:first-child {
    justify-items: start !important;
    text-align: left !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:nth-child(2) {
    justify-items: center !important;
    text-align: center !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:nth-child(2) .num {
    color: #f00;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:last-child {
    justify-items: end !important;
    text-align: right !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:last-child .num {
    font-size: 29px !important;
    line-height: 1 !important;
}

#cartContentsManager.mobile .cartActionBarSend {
    padding-top: 6px !important;
    border-top: none !important;
}

#cartContentsManager.mobile .cartActionBarSendButtonWrap .ui_button,
#cartContentsManager.mobile .cartActionBarSend .cartActionBarSendInner > select {
    height: 55px !important;
    border-radius: 10px !important;
    font-size: 16px !important;
}

/* Totals labels are text nodes in the legacy DOM; draw stable labels with CSS. */
#cartContentsManager.mobile .cartActionBarTotals h3.abtItem {
    display: flex !important;
    flex-direction: column !important;
    gap: 3px !important;
    font-size: 0 !important;
    line-height: 1.1 !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem::before {
    display: block !important;
    color: #68778c !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:first-child::before {
    content: "Vrednost:" !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:nth-child(2)::before {
    content: "Izguba:" !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:last-child::before {
    content: "Skupaj:" !important;
    color: #071226 !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem > * {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:first-child,
#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:nth-child(2),
#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:last-child {
    font-size: 0 !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem > .num,
#cartContentsManager.mobile .cartActionBarTotals h3.abtItem > span .num {
    font-size: 18px !important;
    line-height: 1.05 !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem > span[title] {
    font-size: 0 !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:last-child > .num,
#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:last-child > span .num {
    font-size: 29px !important;
    line-height: 1 !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:last-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
    border-top: none !important;
    align-self: start !important;
}

#cartContentsManager.mobile .cartToolbarSelectionActions .ui_button_icon,
#cartContentsManager.mobile .cartToolbarSelectionActions select {
    height: 40px !important;
    border-radius: 10px !important;
}

#cartContentsManager.mobile .cartActionBarTotals {
    min-height: auto !important;
    padding: 5px 0 !important;
    border-top: none !important;
    border-bottom: none !important;
    align-items: stretch !important;
}

@media (max-width: 420px) {
    #cartContentsManager.mobile .cartActionBarTotals {
        column-gap: 7px !important;
    }
}

#cartContentsManager.mobile .cartActionBarSendButtonWrap .ui_button,
#cartContentsManager.mobile .cartActionBarSend .cartActionBarSendInner > select {
    height: 44px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
}

#cartContentsManager.mobile .nb-name-price-wrap {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 76px !important;
    align-items: center !important;
    column-gap: 8px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
}

#cartContentsManager.mobile .nb-name-price-wrap > *:first-child {
    grid-column: 1 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
}

#cartContentsManager.mobile .nb-name-price-wrap select,
#cartContentsManager.mobile .nb-name-price-wrap .ui_group_select_container select,
#cartContentsManager.mobile .cartSupplierItems .cartItem .nb-name-price-wrap select {
    width: 100% !important;
    height: auto !important;
    min-height: 28px !important;
    min-width: 0 !important;
    max-width: 100% !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 18px 0 0 !important;
    color: #071226 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

#cartContentsManager.mobile .nb-price-unit {
    grid-column: 2 !important;
    justify-self: end !important;
    width: 76px !important;
    max-width: 76px !important;
    min-width: 76px !important;
    display: inline-flex !important;
    justify-content: flex-end !important;
    align-items: baseline !important;
    gap: 1px !important;
    overflow: visible !important;
    white-space: nowrap !important;
    text-align: right !important;
}

@media (max-width: 390px) {
    #cartContentsManager.mobile .nb-name-price-wrap {
        grid-template-columns: minmax(0, 1fr) 68px !important;
        column-gap: 6px !important;
    }

    #cartContentsManager.mobile .nb-price-unit {
        width: 68px !important;
        max-width: 68px !important;
        min-width: 68px !important;
    }
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1) {
    grid-template-columns: 54px minmax(0, 1fr) 34px 88px !important;
}

#cartContentsManager.mobile .cartItem:nth-child(3n+1) td:nth-child(2) {
    grid-column: 2 / 5 !important;
    justify-self: stretch !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    position: relative !important;
    padding-right: 84px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1) .nb-name-price-wrap {
    width: 100% !important;
    align-items: center !important;
    padding-right: 0 !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1) .nb-name-price-wrap select {
    appearance: none !important;
    -webkit-appearance: none !important;
    border: 0 !important;
    outline: 0 !important;
    background-color: transparent !important;
    background-image: none !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1) .nb-name-price-wrap .ui_group_select_container.textOnly,
#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1) .nb-name-price-wrap .nb-product-name-text,
#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1) .nb-name-price-wrap > *:first-child {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

#cartContentsManager.mobile .nb-product-name-text {
    display: block !important;
    min-width: 0 !important;
    max-width: 100% !important;
    color: #071226 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1) .nb-price-unit {
    position: absolute !important;
    right: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
}

@media (max-width: 390px) {
    #cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1) {
        grid-template-columns: 52px minmax(0, 1fr) 30px 76px !important;
    }
}

/* Mobile cart typography: keep hierarchy without making every row bold. */
#cartContentsManager.mobile,
#cartContentsManager.mobile .cartSupplierItems,
#cartContentsManager.mobile .cartSupplierItems .cartItem,
#cartContentsManager.mobile .cartSupplierItems .cartItem td {
    font-weight: 400 !important;
}

#cartContentsManager.mobile .cartSupplierBoxHeader td.supplier h3,
#cartContentsManager.mobile .cartToolbarSelectionActions select,
#cartContentsManager.mobile .cartActionBarSendButtonWrap .ui_button,
#cartContentsManager.mobile .cartActionBarSend .cartActionBarSendInner > select {
    font-weight: 600 !important;
}

#cartContentsManager.mobile .nb-name-price-wrap select,
#cartContentsManager.mobile .nb-name-price-wrap .ui_group_select_container select,
#cartContentsManager.mobile .cartSupplierItems .cartItem .nb-name-price-wrap select,
#cartContentsManager.mobile .cartSupplierItems .cartItem .ui_group_select_container.textOnly,
#cartContentsManager.mobile .cartSupplierItems .cartItem .chosen-container-single a.chosen-single span,
#cartContentsManager.mobile .nb-product-name-text {
    font-weight: 400 !important;
}

#cartContentsManager.mobile .nb-price-unit,
#cartContentsManager.mobile .nb-price-unit .num,
#cartContentsManager.mobile .nb-meta-left,
#cartContentsManager.mobile .nb-meta-right,
#cartContentsManager.mobile .ux-cart-quantity.nb-qty-wrap input {
    font-weight: 500 !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem::before {
    font-weight: 600 !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem > .num,
#cartContentsManager.mobile .cartActionBarTotals h3.abtItem > span .num {
    font-weight: 700 !important;
}

/* Mobile cart item spacing: keep a compact rhythm without hard separators. */
#cartContentsManager.mobile .cartSupplierItems {
    background: #fff !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1),
#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+2) {
    padding-left: 10px !important;
    padding-right: 10px !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1) {
    padding-top: 7px !important;
    padding-bottom: 4px !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+2) {
    padding-top: 4px !important;
    padding-bottom: 7px !important;
    border-bottom: none !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+2) td:nth-child(2) {
    padding-left: 0 !important;
}

#cartContentsManager.mobile .cartItem:nth-child(3n+1) td:nth-child(2) {
    padding-left: 0 !important;
    padding-right: 88px !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1) .nb-price-unit {
    right: 4px !important;
}

#cartContentsManager.mobile .nb-td-img {
    padding-left: 0 !important;
    padding-right: 6px !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+2) .nb-td-del {
    justify-self: center !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+2) .ux-cart-quantity.nb-qty-wrap {
    padding-right: 0 !important;
}

#cartContentsManager.mobile .cartItem.spacer {
    height: 5px !important;
    min-height: 0 !important;
    margin: 0 !important;
}

#cartContentsManager.mobile .cartItem.spacer td {
    padding: 0 !important;
    border: none !important;
    background: #fff !important;
}

/* Product names may span multiple lines; reserve the right side for unit price. */
#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1) {
    align-items: start !important;
}

#cartContentsManager.mobile .cartItem:nth-child(3n+1) td:nth-child(2) {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    padding-right: 0 !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1) .nb-name-price-wrap {
    align-items: start !important;
    overflow: visible !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1) td.ui_group_select_container.textOnly {
    height: auto !important;
    max-height: none !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
}

#cartContentsManager.mobile .nb-name-price-wrap > *:first-child,
#cartContentsManager.mobile .nb-name-price-wrap select,
#cartContentsManager.mobile .nb-name-price-wrap .ui_group_select_container select,
#cartContentsManager.mobile .cartSupplierItems .cartItem .nb-name-price-wrap select,
#cartContentsManager.mobile .cartSupplierItems .cartItem .ui_group_select_container.textOnly,
#cartContentsManager.mobile .cartSupplierItems .cartItem .chosen-container,
#cartContentsManager.mobile .cartSupplierItems .cartItem .chosen-container-single,
#cartContentsManager.mobile .cartSupplierItems .cartItem .chosen-container-single a.chosen-single,
#cartContentsManager.mobile .cartSupplierItems .cartItem .chosen-container-single a.chosen-single span,
#cartContentsManager.mobile .nb-product-name-text {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    line-height: 1.25 !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem .chosen-container-single a.chosen-single {
    display: block !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem .chosen-container-single a.chosen-single span {
    display: block !important;
    margin-right: 0 !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1) .nb-price-unit {
    position: static !important;
    right: auto !important;
    top: auto !important;
    transform: none !important;
    align-self: start !important;
    margin-top: 2px !important;
}

#cartContentsManager.mobile .nb-product-select-wrap {
    position: relative !important;
    display: block !important;
    min-width: 0 !important;
    width: 100% !important;
    white-space: normal !important;
    padding-right: 34px !important;
}

#cartContentsManager.mobile .nb-product-select-wrap > select {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    display: block !important;
    padding: 4px 8px !important;
    opacity: 0.01 !important;
    z-index: 7 !important;
    cursor: pointer !important;
    pointer-events: auto !important;
}

#cartContentsManager.mobile .nb-product-select-wrap > select option {
    padding: 9px 12px !important;
    line-height: 1.35 !important;
    white-space: normal !important;
}

#cartContentsManager.mobile .nb-product-select-wrap > .chosen-container {
    display: none !important;
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    opacity: 1 !important;
    z-index: 5 !important;
    pointer-events: none !important;
}

#cartContentsManager.mobile .nb-product-select-wrap > .chosen-container a.chosen-single {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    opacity: 0.01 !important;
    cursor: pointer !important;
}

#cartContentsManager.mobile .nb-product-select-wrap > .chosen-container a.chosen-single span,
#cartContentsManager.mobile .nb-product-select-wrap > .chosen-container a.chosen-single div {
    display: none !important;
}

#cartContentsManager.mobile .nb-product-select-wrap > .chosen-container.chosen-with-drop {
    height: auto !important;
    overflow: visible !important;
    z-index: 2000 !important;
}

#cartContentsManager.mobile .nb-product-select-wrap > .chosen-container.chosen-with-drop .chosen-drop {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    min-width: 240px !important;
    width: max-content !important;
    max-width: calc(100vw - 32px) !important;
    background: #fff !important;
    border: 1px solid #d5dce5 !important;
    border-radius: 8px !important;
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.18) !important;
    margin-top: 4px !important;
    padding: 5px !important;
    overflow: hidden !important;
}

#cartContentsManager.mobile .nb-product-select-wrap > .chosen-container .chosen-results {
    max-height: 240px !important;
    margin: 0 !important;
    padding: 2px !important;
}

#cartContentsManager.mobile .nb-product-select-wrap > .chosen-container .chosen-results li {
    white-space: normal !important;
    line-height: 1.3 !important;
    padding: 9px 11px !important;
    border-radius: 6px !important;
    color: #071226 !important;
}

#cartContentsManager.mobile .nb-product-select-wrap > .chosen-container .chosen-results li:not(:last-child) {
    margin-bottom: 2px !important;
}

#cartContentsManager.mobile .nb-product-select-wrap > .chosen-container .chosen-results li.highlighted {
    background: #e9f7f8 !important;
    color: #071226 !important;
}

#cartContentsManager.mobile .nb-product-select-wrap::after {
    content: "▾" !important;
    position: absolute !important;
    top: 0 !important;
    right: 12px !important;
    z-index: 6 !important;
    color: #4a5568 !important;
    font-size: 23px !important;
    font-weight: 600 !important;
    line-height: 1.1 !important;
    pointer-events: none !important;
}

#cartContentsManager.mobile .nb-product-name-display {
    display: block !important;
    min-height: 28px !important;
    color: #071226 !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
    pointer-events: none !important;
    cursor: default !important;
}

#cartContentsManager.mobile .nb-product-name-text {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: anywhere !important;
}

#cartContentsManager.mobile table.cartSupplierItems.n-table tr.cartItem:nth-child(3n+1) td.ui_group_select_container.textOnly,
#cartContentsManager.mobile table.cartSupplierItems.n-table tr.cartItem:nth-child(3n+1) td.ui_group_select_container.textOnly .nb-name-price-wrap,
#cartContentsManager.mobile table.cartSupplierItems.n-table tr.cartItem:nth-child(3n+1) td.ui_group_select_container.textOnly .nb-product-name-text {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    width: auto !important;
    max-width: none !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: anywhere !important;
}

#cartContentsManager.mobile table.cartSupplierItems.n-table tr.cartItem:nth-child(3n+1) td.ui_group_select_container.textOnly .nb-product-name-text {
    display: block !important;
    padding-right: 0 !important;
}

/* Compact product rows after allowing multi-line names. */
#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1),
#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+2) {
    padding-left: 6px !important;
    padding-right: 6px !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1) {
    padding-top: 5px !important;
    padding-bottom: 1px !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+2) {
    padding-top: 0 !important;
    padding-bottom: 4px !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1) td,
#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+2) td {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

#cartContentsManager.mobile .nb-name-price-wrap {
    grid-template-columns: minmax(0, 1fr) 70px !important;
    column-gap: 5px !important;
}

#cartContentsManager.mobile .nb-product-name-display {
    min-height: 0 !important;
    line-height: 1.18 !important;
    padding: 2px 4px !important;
    box-sizing: border-box !important;
}

#cartContentsManager.mobile .nb-product-select-wrap {
    padding-left: 15px !important;
    padding-right: 0 !important;
}

#cartContentsManager.mobile .nb-product-select-wrap::after {
    top: -4px !important;
    left: 3px !important;
    right: auto !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1) .nb-price-unit {
    margin-top: 0 !important;
}


#cartContentsManager.mobile .nb-img-ph input.ux-cart-checkbox {
    top: 3px !important;
    left: 3px !important;
}

#cartContentsManager.mobile .cartItem.spacer {
    height: 3px !important;
}

#cartContentsManager.mobile .nb-product-select-wrap > select {
    padding: 2px 8px 2px 6px !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+1) .nb-product-select-wrap > select {
    padding: 2px 8px 2px 6px !important;
}

#cartContentsManager.mobile .nb-td-fav .ui-icon-small {
    background-size: 1.1rem 1.1rem !important;
    width: 1.1rem !important;
    height: 1.1rem !important;
}

/* Softer typography for the mobile cart action summary. */
#cartContentsManager.mobile .cartToolbarSelectionActions select {
    font-weight: 500 !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem::before {
    font-weight: 500 !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem > .num,
#cartContentsManager.mobile .cartActionBarTotals h3.abtItem > span .num {
    font-weight: 600 !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:last-child::before {
    font-weight: 600 !important;
}

#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:last-child > .num,
#cartContentsManager.mobile .cartActionBarTotals h3.abtItem:last-child > span .num {
    font-weight: 700 !important;
}

#cartContentsManager.mobile .cartActionBarSendButtonWrap .ui_button {
    font-weight: 600 !important;
}

#cartContentsManager.mobile .cartActionBarSend .cartActionBarSendInner > select {
    font-weight: 500 !important;
}

/* Keep the mobile menu visible above the cart page. */
#headerWrapper:has(#mobileMenuButton),
#headerWrapper:has(#mobileMenuButton) #navMainWrapper,
#headerWrapper:has(#mobileMenuButton) .navMain,
#headerWrapper:has(#mobileMenuButton) #navMain {
    overflow: visible !important;
}

#mobileMenuLayer {
    z-index: 5000 !important;
}

/* Give the row trash action breathing room before the quantity input. */
#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+2) .nb-td-del {
    padding-right: 10px !important;
    justify-self: end !important;
}

#cartContentsManager.mobile .cartSupplierItems .cartItem:nth-child(3n+2) .nb-row-del {
    transform: translateX(-17px) !important;
}
