

/* ========================================================================== 
   BSGMAG CART SYSTEM - CUSTOM DESIGN OVERRIDES
   Applies to: cart page, cart drawer, cart modal and cart dropdown
   ========================================================================== */

:root {
    --bsg-cart-blue: #0035BE;
    --bsg-cart-blue-light: #0371FE;
    --bsg-cart-yellow: #FFED51;
    --bsg-cart-yellow-hover: #FFE033;
    --bsg-cart-text: #3A4258;
    --bsg-cart-muted: #697386;
    --bsg-cart-border: #E3E8F0;
    --bsg-cart-bg: #ffffff;
    --bsg-cart-surface: #f9fafb;
    --bsg-cart-danger: #E5484D;
    --bsg-cart-success: #26A662;
    --bsg-cart-radius: 16px;
    --bsg-cart-shadow: 0 10px 30px rgba(18, 39, 82, .08);
}

/* ---------- Global cart typography and surfaces ---------- */
.page--cart,
.cart-drawer,
.cart-modal,
.cart-dropdown {
    color: var(--bsg-cart-text);
    font-family: "Google Sans", Arial, sans-serif;
}


.page--cart .page__content-wrapper {
    gap: 24px;
}

.page--cart .page__heading {
    margin: 0;
    color: var(--bsg-cart-text);
    font-size: clamp(24px, 3vw, 34px);
    font-weight: 800;
    letter-spacing: -.03em;
}

/* ---------- Main cart card ---------- */
.page--cart .page__content:has(table.cart) {
    padding: 0px !important;
    overflow: hidden;
    border: 1px solid var(--bsg-cart-border) !important;
    border-radius: 20px !important;
    background: var(--bsg-cart-surface) !important;
    box-shadow: var(--bsg-cart-shadow) !important;
}

.page--cart .cart {
    border-collapse: separate;
    border-spacing: 0;
}

.page--cart .cart__head {
    border: 0;
    background: #F9FAFB;
}

.page--cart .cart__item-col-head {
    padding: 15px 16px;
    border-bottom: 1px solid var(--bsg-cart-border);
    color: #707A8F;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.page--cart .cart__item {
    border-bottom: 1px solid #EDF1F6;
    background: #fff;
    transition: background-color .2s ease;
}

.page--cart .cart__item:hover {
    background: #FBFCFF;
}

.page--cart .cart__item:last-child {
    border-bottom: 0;
}

.page--cart .cart__item-col {
    padding: 18px 16px;
    vertical-align: middle;
}

.page--cart .cart__item-col--image {
    width: 116px;
}

.page--cart .cart__item-image {
    width: 92px;
    height: 92px;
    padding: 8px;
    overflow: hidden;
    border: 1px solid #EDF1F6;
    border-radius: 14px;
    background: #fff;
}

.page--cart .cart__item-image img,
.page--cart .cart__item-image .nophoto-container {
    inset: 8px;
    width: calc(100% - 16px);
    height: calc(100% - 16px);
    object-fit: contain;
}

.page--cart .cart__item-name {
    display: inline-block;
    max-width: 430px;
    padding: 0;
    color: var(--bsg-cart-text);
    font-size: 16px;
    font-weight: 800;
    line-height: 1.42;
    text-decoration: underline;
}

.page--cart .cart__item-name:hover {
    color: var(--bsg-cart-blue-light);
}

.page--cart .cart__item-options {
    margin-top: 6px;
    color: var(--bsg-cart-muted);
    font-size: 13px;
    line-height: 1.5;
}

.page--cart .cart__item-price,
.page--cart .cart__item-line-total {
    color: #3A4258;
    font-size: 16px;
    font-weight: 800;
}

.page--cart .cart__item-line-total {
    font-size: 18px;
}

.page--cart .cart__item-line-total-undiscounted {
    color: #3A4258;
    font-size: 13px;
}

/* ---------- Quantity selector ---------- */
.page--cart .quantity-spinner,
.cart-drawer .quantity-spinner,
.cart-modal .quantity-spinner,
.cart-dropdown .quantity-spinner {
    display: inline-flex;
    align-items: center;
    width: 112px;
    height: 40px;
    margin: 0;
    overflow: hidden;
    border: 1px solid var(--bsg-cart-border);
    border-radius: 12px;
    background: #F8FAFD;
}

.page--cart .quantity-spinner__button,
.cart-drawer .quantity-spinner__button,
.cart-modal .quantity-spinner__button,
.cart-dropdown .quantity-spinner__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    min-width: 36px;
    height: 38px;
    padding: 0;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--bsg-cart-blue);
    box-shadow: none !important;
    font-size: 18px;
}

.page--cart .quantity-spinner__button:hover,
.cart-drawer .quantity-spinner__button:hover,
.cart-modal .quantity-spinner__button:hover,
.cart-dropdown .quantity-spinner__button:hover {
    background: #EAF3FF !important;
    color: var(--bsg-cart-blue-light);
}

.page--cart .quantity-spinner input,
.cart-drawer .quantity-spinner input,
.cart-modal .quantity-spinner input,
.cart-dropdown .quantity-spinner input {
    width: 40px;
    min-width: 40px;
    height: 38px;
    padding: 0;
    border: 0 !important;
    background: transparent;
    color: var(--bsg-cart-text);
    box-shadow: none !important;
    font-size: 14px;
    font-weight: 800;
    text-align: center;
}

/* ---------- Remove action ---------- */
.page--cart .cart__remove-item,
.cart-drawer .drawer-items__remove-item,
.cart-modal .modal-items__remove-item,
.cart-dropdown .dropdown-items__remove-item {
    margin-top: 4px;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #3A4258 !important;
    box-shadow: none !important;
    font-size: 12px;
    font-weight: 500;
}

.page--cart .cart__remove-item:hover,
.cart-drawer .drawer-items__remove-item:hover,
.cart-modal .modal-items__remove-item:hover,
.cart-dropdown .dropdown-items__remove-item:hover {
    color: #3A4258 !important;
    text-decoration: underline;
}

/* ---------- Right summary ---------- */
.page--cart .page__aside-main .page__aside-wrapper {
    padding: 20px;
    border: 1px solid var(--bsg-cart-border);
    border-radius: 20px;
    background: #fff;
    box-shadow: var(--bsg-cart-shadow);
}

.page--cart .cart-totals {
    width: 100%;
    margin: 0 0 18px;
    padding: 0;
    transform: none;
}

.page--cart .cart-totals__item {
    align-items: center;
    padding: 10px 0;
    color: var(--bsg-cart-muted);
    font-size: 14px;
}

.page--cart .cart-totals__item-value {
    color: var(--bsg-cart-blue-light);
    font-weight: 800;
}

.page--cart .cart-totals__item--total {
    margin-top: 8px;
    padding-top: 18px;
    border-top: 1px solid var(--bsg-cart-border);
    color: var(--bsg-cart-text);
    font-size: 16px;
    font-weight: 800;
}

.page--cart .cart-totals__item--total .cart-totals__item-value {
    color: var(--bsg-cart-blue-light);
    font-size: 24px;
    font-weight: 900;
}

/* ---------- Coupon ---------- */
.page--cart .coupon-code,
.cart-drawer .coupon-code,
.cart-modal .coupon-code,
.cart-dropdown .coupon-code {
    margin: 0 0 18px;
    padding: 14px;
    border: 1px dashed rgba(3, 113, 254, .35);
    border-radius: 14px;
    background: linear-gradient(180deg, #F8FBFF 0%, #F2F7FF 100%);
    text-align: left;
}

.page--cart .coupon-code__toggle,
.cart-drawer .coupon-code__toggle,
.cart-modal .coupon-code__toggle,
.cart-dropdown .coupon-code__toggle {
    padding: 0;
    color: var(--bsg-cart-blue);
    font-size: 14px;
    font-weight: 800;
}

.page--cart .coupon-code__toggle:hover,
.cart-drawer .coupon-code__toggle:hover,
.cart-modal .coupon-code__toggle:hover,
.cart-dropdown .coupon-code__toggle:hover {
    color: var(--bsg-cart-blue-light);
}

.page--cart .coupon-code__form-container,
.cart-drawer .coupon-code__form-container,
.cart-modal .coupon-code__form-container,
.cart-dropdown .coupon-code__form-container {
    padding: 12px 0 0;
}

.page--cart .coupon-code__form--active,
.cart-drawer .coupon-code__form--active,
.cart-modal .coupon-code__form--active,
.cart-dropdown .coupon-code__form--active {
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
}

.page--cart .coupon-code__input,
.cart-drawer .coupon-code__input,
.cart-modal .coupon-code__input,
.cart-dropdown .coupon-code__input {
    height: 44px;
    margin: 0;
    padding: 0 13px;
    border: 1px solid var(--bsg-cart-border);
    border-radius: 11px;
    background: #fff;
    color: var(--bsg-cart-text);
    box-shadow: none;
}

.page--cart .coupon-code__input:focus,
.cart-drawer .coupon-code__input:focus,
.cart-modal .coupon-code__input:focus,
.cart-dropdown .coupon-code__input:focus {
    border-color: var(--bsg-cart-blue-light);
    box-shadow: 0 0 0 3px rgba(3, 113, 254, .12);
}

.page--cart .coupon-code__button,
.cart-drawer .coupon-code__button,
.cart-modal .coupon-code__button,
.cart-dropdown .coupon-code__button {
    height: 44px;
    padding: 0 16px;
    border: 1px #0371FE !important;
    border-radius: 11px;
    background: #fff !important;
    color: #0371FE !important;
    font-size: 13px;
    font-weight: 800;
}

.page--cart .coupon-code__button:hover,
.cart-drawer .coupon-code__button:hover,
.cart-modal .coupon-code__button:hover,
.cart-dropdown .coupon-code__button:hover {
    background: #0371FE;
    color: #fff !important;
}

/* ---------- Main actions ---------- */
.page--cart .cart-actions {
    margin: 0;
}

.page--cart .cart__action,
.page--cart .cart-mobile-checkout,
.cart-drawer__action,
.cart-modal__action,
.cart-dropdown__action,
.cart-drawer__empty-button,
.cart-modal__empty-button,
.cart-dropdown__empty-button {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 13px 20px !important;
    border-radius: 12px !important;
    font-size: 15px;
    font-weight: 900;
    line-height: 1.2;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.page--cart .cart__action--checkout,
.page--cart .cart-mobile-checkout,
.cart-drawer__action--back,
.cart-modal__action--back,
.cart-dropdown__action--back,
.cart-drawer__empty-button,
.cart-modal__empty-button,
.cart-dropdown__empty-button {
    border: 1px solid var(--bsg-cart-yellow) !important;
    background: linear-gradient(135deg, #FFED51 0%, #FFD92F 100%) !important;
    color: #273043 !important;
    box-shadow: 0 8px 20px rgba(255, 217, 47, .28);
}

.page--cart .cart__action--checkout:hover,
.page--cart .cart-mobile-checkout:hover,
.cart-drawer__action--back:hover,
.cart-modal__action--back:hover,
.cart-dropdown__action--back:hover,
.cart-drawer__empty-button:hover,
.cart-modal__empty-button:hover,
.cart-dropdown__empty-button:hover {
    background: linear-gradient(135deg, #FFF06A 0%, #FFE033 100%) !important;
    color: #273043 !important;
    box-shadow: 0 11px 25px rgba(255, 217, 47, .36);
    transform: translateY(-1px);
}

.cart-drawer__action--view-cart,
.cart-modal__action--view-cart,
.cart-dropdown__action--view-cart {
    border: 2px solid #0371FE !important;
    background: #fff !important;
    color: #0371FE !important;
}

.cart-drawer__action--view-cart:hover,
.cart-modal__action--view-cart:hover,
.cart-dropdown__action--view-cart:hover {
    background: #EEF5FF !important;
    color: #0371FE !important;
}

/* ---------- Drawer / modal / dropdown item tables ---------- */
.cart-drawer,
.cart-modal,
.cart-dropdown {
    background: transparent;
}

.drawer-items__table,
.modal-items__table,
.dropdown-items__table {
    border-collapse: separate;
    border-spacing: 0 10px;
    margin: 0;
}

.drawer-items__table tbody tr,
.modal-items__table tbody tr,
.dropdown-items__table tbody tr {
    background: #fff;
    box-shadow: 0 4px 14px rgba(18, 39, 82, .05);
}

.drawer-items__cell,
.modal-items__cell,
.dropdown-items__cell {
    padding: 12px 8px;
    border-top: 1px solid var(--bsg-cart-border);
    border-bottom: 1px solid var(--bsg-cart-border);
    vertical-align: middle;
}

.drawer-items__cell:first-child,
.modal-items__cell:first-child,
.dropdown-items__cell:first-child {
    border-radius: 14px 0 0 14px;
}

.drawer-items__cell:last-child,
.modal-items__cell:last-child,
.dropdown-items__cell:last-child {
    border-right: 1px solid var(--bsg-cart-border);
    border-radius: 0 14px 14px 0;
}

.drawer-items__image,
.modal-items__image,
.dropdown-items__image {
    width: 72px;
    height: 72px;
    padding: 6px;
    overflow: hidden;
    border-radius: 11px;
}

.drawer-items__item-name,
.modal-items__info--item-name,
.dropdown-items__item-name {
    color: var(--bsg-cart-text) !important;
    font-size: 14px;
    font-weight: 800 !important;
    line-height: 1.4;
}

.drawer-items__item-name:hover,
.modal-items__info--item-name:hover,
.dropdown-items__item-name:hover {
    color: var(--bsg-cart-blue-light) !important;
    text-decoration: none !important;
}

.drawer-items__line-total,
.modal-items__cell--price,
.dropdown-items__cell--price {
    color: #0371FE;
    font-weight: 900;
}

/* ---------- Drawer / modal / dropdown totals ---------- */
.cart-drawer__totals-container,
.cart-modal__totals-container,
.cart-dropdown__totals-container {
    margin-top: 14px;
		margin-bottom: 14px;
    padding-left: 15px;
		padding-right: 15px;
    border: 1px solid var(--bsg-cart-border);
    border-radius: 14px;
    background: #F8FAFD;
}

.cart-drawer-totals__item,
.cart-modal-totals__item,
.cart-dropdown-totals__item {
    padding: 8px 0;
    color: var(--bsg-cart-muted);
    font-size: 13px;
}

.cart-drawer-totals__item-value,
.cart-modal-totals__item-value,
.cart-dropdown-totals__item-value {
    color: var(--bsg-cart-text);
    font-weight: 800;
}

.cart-drawer-totals__item--total,
.cart-modal-totals__item--total,
.cart-dropdown-totals__item--total {
    margin-top: 6px;
    padding-top: 14px;
    border-top: 1px solid var(--bsg-cart-border);
    color: #0371FE;
    font-size: 15px;
}

.cart-drawer-totals__item--total > .cart-drawer-totals__item-value,
.cart-modal-totals__item--total > .cart-modal-totals__item-value,
.cart-dropdown-totals__item--total > .cart-dropdown-totals__item-value {
    color: #0371FE;
    font-size: 20px;
    font-weight: 900;
}

.cart-drawer__actions,
.cart-dropdown__actions {
    gap: 10px;
}

.cart-modal__actions {
    gap: 10px;
}

.cart-drawer__actions .btn-wrapper,
.cart-modal__actions .btn-wrapper,
.cart-dropdown__actions .btn-wrapper {
    width: 100%;
    margin: 0;
}

/* ---------- Offcanvas shell ---------- */
.offcanvas[data-overlay="offcanvas"].offcanvas-end {
    width: min(470px, 100%);
    border-left: 0;
    background: var(--bsg-cart-bg);
    box-shadow: -14px 0 42px rgba(18, 39, 82, .18);
}

.offcanvas[data-overlay="offcanvas"] .offcanvas-header {
    min-height: 72px;
    padding: 17px 20px;
    border-bottom: 1px solid var(--bsg-cart-border);
    background: #fff;
}

.offcanvas[data-overlay="offcanvas"] .offcanvas-body {
    padding: 16px;
    background: var(--bsg-cart-bg);
}

.offcanvas[data-overlay="offcanvas"] .cart-drawer__title,
.offcanvas[data-overlay="offcanvas"] .cart-dropdown__title {
    color: var(--bsg-cart-text);
    font-size: 22px;
    font-weight: 900;
    letter-spacing: -.02em;
}

.offcanvas[data-overlay="offcanvas"] .btn-close {
    width: 38px;
    height: 38px;
    padding: 0;
    border: 1px solid var(--bsg-cart-border);
    border-radius: 50%;
    background-color: #F8FAFD;
    background-size: 11px;
    opacity: 1;
}

.offcanvas[data-overlay="offcanvas"] .btn-close:hover {
    border-color: rgba(3, 113, 254, .35);
    background-color: #EAF3FF;
}

/* ---------- Empty states ---------- */
.cart__empty,
.cart-drawer__empty,
.cart-modal__empty,
.cart-dropdown__empty {
    align-items: center;
    justify-content: center;
    min-height: 360px;
    padding: 44px 20px;
    text-align: center;
}

.cart__empty-image,
.cart-drawer__empty-image,
.cart-modal__empty-image,
.cart-dropdown__empty-image {
    width: 130px;
    height: 130px;
    margin: 0 0 22px;
    opacity: .5;
}

.cart-drawer__empty-title,
.cart-modal__empty-title,
.cart-dropdown__empty-title {
    margin: 0 0 8px;
    color: var(--bsg-cart-text);
    font-size: 21px;
    font-weight: 900;
}

.cart-drawer__empty-hint,
.cart-modal__empty-hint,
.cart-dropdown__empty-hint {
    max-width: 290px;
    margin: 0 0 22px;
    color: var(--bsg-cart-muted);
    font-size: 14px;
    line-height: 1.6;
}

/* ---------- Mobile cart page ---------- */
@media (max-width: 767.98px) {

    .page--cart .page__content-wrapper {
        gap: 16px;
    }

    .page--cart .page__aside-head {
        gap: 12px;
        padding: 0 2px;
    }

    .page--cart .cart-mobile-checkout {
        width: 100%;
    }

    .page--cart .page__content:has(table.cart) {
        padding: 0 !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
    }

    .page--cart .cart__body {
        display: flex;
        flex-direction: column;
        gap: 12px;
    }

    .page--cart .cart__item {
        display: grid;
        grid-template-areas:
            "image description"
            "image price"
            "image qty"
            "image total";
        grid-template-columns: 88px minmax(0, 1fr);
        gap: 4px 12px;
        padding: 14px;
        border: 1px solid var(--bsg-cart-border) !important;
        border-radius: 16px;
        background: #fff;
        box-shadow: 0 6px 20px rgba(18, 39, 82, .06);
    }

    .page--cart .cart__item-col {
        padding: 4px 0;
    }

    .page--cart .cart__item-col--image {
        width: 88px;
        padding: 0;
    }

    .page--cart .cart__item-image {
        width: 82px;
        height: 82px;
    }

    .page--cart .cart__item-name {
        font-size: 14px;
        line-height: 1.4;
    }

    .page--cart .cart__item-col[data-label]::before {
        color: var(--bsg-cart-muted);
        font-size: 12px;
        font-weight: 600;
    }

    .page--cart .cart__item-col--quantity {
        align-items: center;
        gap: 8px;
    }

    .page--cart .cart__item-col--line-total {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-top: 4px;
        padding-top: 9px;
        border-top: 1px solid #EDF1F6;
    }

    .page--cart .page__aside-main .page__aside-wrapper {
        padding: 16px;
        border-radius: 16px;
    }

    .page--cart .cart-totals__item--total .cart-totals__item-value {
        font-size: 22px;
    }

    .drawer-items__table,
    .modal-items__table,
    .dropdown-items__table {
        border-spacing: 0 8px;
    }

    .drawer-items__cell,
    .modal-items__cell,
    .dropdown-items__cell {
        padding: 10px 6px;
        font-size: 12px;
    }

    .drawer-items__image,
    .modal-items__image,
    .dropdown-items__image {
        width: 58px;
        height: 58px;
    }

    .drawer-items__item-name,
    .modal-items__info--item-name,
    .dropdown-items__item-name {
        max-width: 155px;
        font-size: 12px;
    }

    .cart-modal__actions {
        grid-template-columns: 1fr;
        flex-direction: column;
    }

    .offcanvas[data-overlay="offcanvas"].offcanvas-end {
        width: min(100%, 430px);
    }

    .offcanvas[data-overlay="offcanvas"] .offcanvas-header {
        min-height: 64px;
        padding: 13px 15px;
    }

    .offcanvas[data-overlay="offcanvas"] .offcanvas-body {
        padding: 12px;
    }

    .offcanvas[data-overlay="offcanvas"] .cart-drawer__title,
    .offcanvas[data-overlay="offcanvas"] .cart-dropdown__title {
        font-size: 19px;
    }
}

@media (max-width: 420px) {
    .page--cart .cart__item {
        grid-template-columns: 76px minmax(0, 1fr);
        gap: 4px 10px;
        padding: 12px;
    }

    .page--cart .cart__item-col--image {
        width: 76px;
    }

    .page--cart .cart__item-image {
        width: 70px;
        height: 70px;
    }

    .page--cart .quantity-spinner,
    .cart-drawer .quantity-spinner,
    .cart-modal .quantity-spinner,
    .cart-dropdown .quantity-spinner {
        width: 102px;
    }

    .coupon-code__form--active {
        grid-template-columns: 1fr !important;
    }

    .coupon-code__button {
        width: 100%;
    }
}


.cart{
    overflow:hidden;
    border-radius:24px;
}

.cart__head{
    background:#F6F8FC;
}

.cart__head th{
    background:#F6F8FC;
    padding:26px 28px;
}

.cart__head tr{
    border-bottom:1px solid #E5ECF7;
}

.quantity-spinner__button{
    background:#0371FE !important;
    color:#fff !important;
    border:0 !important;
    width:40px;
    transition:.2s;
}

.quantity-spinner__button:hover{
    background:#025dd0 !important;
}

.quantity-spinner__button strong{
    color:#3A4258 !important;
    font-size:20px;
    font-weight:700;
}


.cart__item-name{
    color:#0371FE !important;
    font-weight:700;
    font-size:20px;
    line-height:1.4;
}

.cart__item-name:hover{
    color:#025dd0 !important;
}

.cart__item-image{
    border:none !important;
    box-shadow:none !important;
    background:transparent !important;
    padding:0 !important;
}

.cart__item-image img{
    border-radius:10px;
}

.page__aside-wrapper{
    border-radius:24px;
    padding:34px;
    box-shadow:0 10px 35px rgba(8,35,91,.08);
}

.cart-totals{
    background:transparent !important;
    border:none !important;
    box-shadow:none !important;
    padding:0 !important;
    border-radius:0 !important;
}

.coupon-code{
    background:transparent !important;
    border:none !important;
    padding:26px 0 0;
}

.cart-actions{
    padding-top:28px;
}


.coupon-code__input{
    height:48px;
    border-radius:12px;
}

.coupon-code__button{
    height:48px;
    border-radius:12px;
    background:#0371FE;
    color:#fff;
    border:none;
}

/* =========================================================
   BSGMAG CART - SIDEBAR UN SINGUR CARD
   ========================================================= */

.page--cart .page__aside-main{
    background:#fff;
    border:1px solid #e5eaf2;
    border-radius:20px;
    box-shadow:0 10px 30px rgba(18,39,82,.08);
    padding:24px;
    overflow:hidden;
}

/* wrapperul interior nu mai arata ca un al doilea card */
.page--cart .page__aside-wrapper{
    position:sticky;
    top:7.375rem;
    width:100%;
    padding:0 !important;
    margin:0 !important;
    background:transparent !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
}

/* totalurile fara card suplimentar */
.page--cart .cart-totals{
    width:100% !important;
    margin:0 !important;
    padding:0 0 18px !important;
    transform:none !important;
    background:transparent !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    overflow:visible !important;
}

/* randuri sumar */
.page--cart .cart-totals__item{
    padding:9px 0;
    color:#565d6c;
    font-size:15px;
}

.page--cart .cart-totals__item-value{
    color:#3a4258;
    font-weight:700;
}

/* total final */
.page--cart .cart-totals__item--total{
    align-items:center;
    margin-top:10px;
    padding-top:18px;
    border-top:1px solid #e5eaf2;
    color:#3a4258;
    font-weight:800;
}

.page--cart .cart-totals__item--total .cart-totals__item-label{
    max-width:90px;
    font-size:16px;
    line-height:1.25;
}

.page--cart .cart-totals__item--total .cart-totals__item-value{
    color:#0371FE;
    font-size:26px;
    font-weight:800;
    white-space:nowrap;
}

/* cuponul devine doar o sectiune, nu un alt card */
.page--cart .coupon-code{
    margin:0 !important;
    padding:18px 0 0 !important;
    border:0 !important;
    border-top:1px solid #e5eaf2 !important;
    background:transparent !important;
    border-radius:0 !important;
    box-shadow:none !important;
    text-align:left;
}

.page--cart .coupon-code__toggle{
    padding:0 0 12px !important;
    color:#3A4258;
    font-size:14px;
    font-weight:500;
}

.page--cart .coupon-code__form-container{
    padding:0 !important;
}


.page--cart .coupon-code__input{
    min-width:0;
    height:46px;
    margin:0 !important;
    padding:0 12px;
    border:1px solid #dfe5ee;
    border-radius:10px;
    background:#f9fafb;
    box-shadow:none;
}

.page--cart .coupon-code__button{
    min-width:84px;
    height:46px;
    padding:0 14px;
    border:1px solid #0371fe !important;
    border-radius:10px;
    background:#0371fe !important;
    color:#fff !important;
    font-weight:700;
}

/* buton checkout */
.page--cart .cart-actions{
    width:100%;
    margin:0 !important;
    padding-top:18px;
}

.page--cart .cart-actions .btn-wrapper{
    width:100%;
}

.page--cart .cart__action--checkout{
    width:100%;
    min-height:52px;
    border:0 !important;
    border-radius:12px;
    background:#ffed51 !important;
    color:#2f3545 !important;
    box-shadow:0 8px 18px rgba(255,211,32,.2);
    font-size:15px;
    font-weight:800;
}

.page--cart .cart__action--checkout:hover{
    background:#ffe235 !important;
    color:#2f3545 !important;
}

/* mobil */
@media (max-width:991.98px){
    .page--cart .page__aside-main{
        padding:18px;
        border-radius:16px;
    }

    .page--cart .page__aside-wrapper{
        position:static;
    }
}



/* =========================================================
   FIX DEFINITIV - CUPON + CHECKOUT MOBIL
   ========================================================= */

.page--cart .coupon-code__form-container {
    display: none !important;
    width: 100%;
    padding: 12px 0 0 !important;
}

.page--cart .coupon-code.coupon-code--open .coupon-code__form-container {
    display: block !important;
}

.page--cart .coupon-code__form {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    width: 100%;
    margin: 0;
}

.page--cart .coupon-code__form > label {
    display: none !important;
}

.page--cart .coupon-code__toggle {
    cursor: pointer;
    user-select: none;
}

.page--cart .cart-mobile-checkout {
    display: none !important;
}

@media (max-width: 767.98px) {
    .page--cart .cart-mobile-checkout {
        display: inline-flex !important;
        width: 100%;
    }

    .page--cart .coupon-code__form {
        grid-template-columns: 1fr;
    }

    .page--cart .coupon-code__button {
        width: 100%;
    }
}
/* =========================================================
   CART DRAWER – STRUCTURA CORECTA PRODUSE
   Fiecare produs este format din doua randuri de tabel
   ========================================================= */

.cart-drawer .drawer-items__table-wrapper {
    width: 100%;
    padding: 4px 12px 0;
    overflow: visible;
}

.cart-drawer .drawer-items__table {
    width: 100%;
    margin: 0;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    table-layout: fixed;
}

.cart-drawer .drawer-items__body {
    width: 100%;
}

/* Resetăm vechiul aspect de card aplicat fiecărui tr */
.cart-drawer .drawer-items__row {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

/* Toate celulele */
.cart-drawer .drawer-items__cell {
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
    vertical-align: middle;
}

/* =========================================================
   PRIMUL RAND: IMAGINE + TITLU
   ========================================================= */

/* Imaginea ocupă și rândul următor prin rowspan */
.cart-drawer .drawer-items__cell--image {
    width: 80px !important;
    padding: 12px 6px 12px 12px !important;
    border-top: 1px solid #e3e8f0 !important;
    border-bottom: 1px solid #e3e8f0 !important;
    border-left: 1px solid #e3e8f0 !important;
    border-radius: 14px 0 0 14px !important;
}

.cart-drawer .drawer-items__image {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 58px !important;
    height: 68px !important;
    min-width: 58px;
    margin: 0 !important;
    padding: 4px !important;
    overflow: hidden;
    border-radius: 10px !important;
    background: #fff !important;
    box-shadow: none !important;
}

.cart-drawer .drawer-items__image a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.cart-drawer .drawer-items__image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* Celula fără clasă care conține titlul produsului */
.cart-drawer .drawer-items__row:has(.drawer-items__cell--image) > td:not(.drawer-items__cell--image) {
    height: 42px;
    padding: 9px 10px 2px 4px !important;
    border-top: 1px solid #e3e8f0 !important;
    border-right: 1px solid #e3e8f0 !important;
    border-radius: 0 14px 0 0 !important;
    background: #fff !important;
}

.cart-drawer .drawer-items__item-name {
    display: block !important;
    width: 100%;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden;
    background: transparent !important;
    color: #3a4258 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.3;
    text-decoration: none !important;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.cart-drawer .drawer-items__item-name:hover {
    color: #0371fe !important;
}

.cart-drawer .drawer-items__options:empty {
    display: none;
}

/* =========================================================
   AL DOILEA RAND: CANTITATE + PRET
   ========================================================= */

.cart-drawer .drawer-items__cell--details {
    height: 62px;
    padding: 4px 5px 10px 4px !important;
    border-bottom: 1px solid #e3e8f0 !important;
    background: #fff !important;
}

.cart-drawer .drawer-items__cell--price {
    width: 92px !important;
    padding: 4px 12px 10px 5px !important;
    border-right: 1px solid #e3e8f0 !important;
    border-bottom: 1px solid #e3e8f0 !important;
    border-radius: 0 0 14px 0 !important;
    background: #fff !important;
    color: #0035be !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    text-align: right;
    white-space: nowrap;
}

/* Spațiu între produse */
.cart-drawer .drawer-items__row:has(.drawer-items__cell--image):not(:first-child)
    .drawer-items__cell--image {
    border-top-width: 11px !important;
    border-top-color: transparent !important;
}

.cart-drawer .drawer-items__row:has(.drawer-items__cell--image):not(:first-child)
    > td:not(.drawer-items__cell--image) {
    border-top-width: 11px !important;
    border-top-color: transparent !important;
}

/* =========================================================
   CANTITATE – PLUS SI MINUS VIZIBILE
   ========================================================= */

.cart-drawer .quantity-spinner {
    display: inline-flex !important;
    align-items: center;
    width: 112px !important;
    min-width: 112px !important;
    height: 40px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid #dce4f0 !important;
    border-radius: 11px !important;
    background: #f8fafd !important;
}

.cart-drawer .quantity-spinner__button {
    position: static !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    flex: 0 0 34px !important;
    width: 34px !important;
    min-width: 34px !important;
    max-width: 34px !important;
    height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #3a4258 !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
}

.cart-drawer .quantity-spinner__button:hover {
    background: #eaf3ff !important;
    color: #0371fe !important;
}

.cart-drawer .quantity-spinner__button strong {
    position: static !important;
    display: inline-block !important;
    width: auto !important;
    height: auto !important;
    overflow: visible !important;
    color: inherit !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.cart-drawer .quantity-spinner input {
    display: block !important;
    flex: 0 0 42px !important;
    width: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
    height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #3a4258 !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-align: center;
}

/* Asigurăm explicit afișarea butonului plus */
.cart-drawer .quantity-spinner__button--increment,
.cart-drawer .btn-increment {
    display: inline-flex !important;
    flex: 0 0 34px !important;
    width: 34px !important;
    min-width: 34px !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Buton ștergere */
.cart-drawer .drawer-items__remove-item {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    margin: 0 0 0 5px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #0371fe !important;
    box-shadow: none !important;
    vertical-align: middle;
}

/* =========================================================
   CUPON DRAWER – INCHIS INITIAL
   ========================================================= */

.cart-drawer .coupon-code {
    width: auto;
    margin: 18px 18px 12px !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.cart-drawer .coupon-code__toggle {
    display: inline-flex !important;
    align-items: center;
    padding: 0 !important;
    color: #0371FE !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    cursor: pointer;
}

/* Formularul este ascuns înainte de click */
.cart-drawer .coupon-code__form-container {
    display: none !important;
    width: 100%;
    padding: 12px 0 0 !important;
}

/* Scriptul nostru deschide formularul */
.cart-drawer .coupon-code.coupon-code--open
    .coupon-code__form-container {
    display: block !important;
}

.cart-drawer .coupon-code__form {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    width: 100%;
    margin: 0 !important;
}

.cart-drawer .coupon-code__input {
    width: 100%;
    min-width: 0;
    height: 44px !important;
    margin: 0 !important;
    padding: 0 13px !important;
    border: 1px solid #dce4f0 !important;
    border-radius: 11px !important;
    background: #fff !important;
    color: #3a4258 !important;
    box-shadow: none !important;
}

.cart-drawer .coupon-code__form > label {
    display: none !important;
}

.cart-drawer .coupon-code__button {
    min-width: 72px;
    height: 44px !important;
    padding: 0 14px !important;
    border: 1px solid #0371FE !important;
    border-radius: 11px !important;
    background: #fff !important;
    color: #0371FE !important;
    font-size: 13px !important;
    font-weight: 800 !important;
}
.cart-drawer .coupon-code__button:hover {
    background: #0371FE !important;
    color: #fff !important;
}

.drawer-items__quantity-options{
	z-index: 2;
}



/* =========================================================
   BSGMAG CHECKOUT - FIELD, RADIO, COLORS AND STICKY FIXES
   ========================================================= */


.page--checkout,
.page--checkout * {
    color: #3A4258;
}

/* Standard text fields */
.page--checkout input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]):not([type="submit"]):not([type="button"]),
.page--checkout select,
.page--checkout textarea,
.page--checkout .form-control,
.page--checkout .form-select,
.page--checkout .select2-selection {
    min-height: 60px !important;
    height: 60px !important;
    padding: 0 18px !important;
    border: 1px solid #DAE8F0 !important;
    border-radius: 12px !important;
    background: #FFFFFF !important;
    color: #3A4258 !important;
    box-shadow: none !important;
    font-size: 15px !important;
    font-weight: 400 !important;
}

.page--checkout textarea,
.page--checkout textarea.form-control {
    min-height: 120px !important;
    height: auto !important;
    padding: 18px !important;
    line-height: 1.5;
    resize: vertical;
}

.page--checkout input:not([type="radio"]):not([type="checkbox"]):not([type="hidden"]):focus,
.page--checkout select:focus,
.page--checkout textarea:focus,
.page--checkout .form-control:focus,
.page--checkout .form-select:focus,
.page--checkout .select2-container--focus .select2-selection,
.page--checkout .select2-container--open .select2-selection {
    border-color: #0371FE !important;
    box-shadow: 0 0 0 3px rgba(3, 113, 254, .12) !important;
    outline: 0 !important;
}

.page--checkout input::placeholder,
.page--checkout textarea::placeholder {
    color: #7B8798 !important;
    opacity: 1;
}

/* Floating labels */
.page--checkout .form__row--floating > .form__label,
.page--checkout .form__row--floating label,
.page--checkout .coupon-code__form > label {
    color: #3A4258 !important;
    font-weight: 400 !important;
}

/* Shipping and payment option cards */
.page--checkout .form__single-choice-option,
.page--checkout [class*="__single-choice-option"] {
    min-height: 60px !important;
    margin-top: 12px !important;
    border: 1px solid #DAE8F0 !important;
    border-radius: 12px !important;
    background: #FFFFFF !important;
    box-shadow: none !important;
    transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.page--checkout .form__single-choice-option:hover,
.page--checkout [class*="__single-choice-option"]:hover {
    border-color: rgba(3, 113, 254, .55) !important;
}

.page--checkout .form__single-choice-option--selected,
.page--checkout [class*="__single-choice-option--selected"] {
    border-color: #0371FE !important;
    background: #FFFFFF !important;
    box-shadow: 0 0 0 3px rgba(3, 113, 254, .10) !important;
}

.page--checkout .form__single-choice-option > .form__label,
.page--checkout [class*="__single-choice-option"] > label {
    min-height: 60px !important;
    padding: 12px 16px 12px 52px !important;
    color: #3A4258 !important;
}

.page--checkout .label-content__name {
    color: #3A4258 !important;
    font-weight: 700 !important;
    line-height: 1.35;
}

.page--checkout .label-content__hint {
    display: block;
    margin-top: 3px;
    color: #3A4258 !important;
    font-weight: 400 !important;
    line-height: 1.45;
}

.page--checkout .label-extra,
.page--checkout .label-extra * {
    color: #3A4258;
}

/* Custom radio appearance */
.page--checkout input[type="radio"]:not(.form__rating-option) {
    position: absolute !important;
    left: 16px !important;
    top: 50% !important;
    width: 20px !important;
    height: 20px !important;
    margin: 0 !important;
    border: 2px solid #0371FE !important;
    border-radius: 50% !important;
    background: #FFFFFF !important;
    box-shadow: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    transform: translateY(-50%);
    cursor: pointer;
}

.page--checkout input[type="radio"]:not(.form__rating-option)::before {
    content: "";
    position: absolute;
    inset: 3px;
    border-radius: 50%;
    background: #0371FE;
    transform: scale(0);
    transition: transform .15s ease;
}

.page--checkout input[type="radio"]:not(.form__rating-option):checked::before {
    transform: scale(1);
}

.page--checkout input[type="radio"]:not(.form__rating-option):focus-visible {
    outline: 3px solid rgba(3, 113, 254, .18) !important;
    outline-offset: 2px;
}

/* Coupon fields in checkout summary */
.page--checkout .coupon-code__input {
    height: 60px !important;
    min-height: 60px !important;
    border-color: #DAE8F0 !important;
    background: #FFFFFF !important;
    color: #3A4258 !important;
}

.page--checkout .coupon-code__button {
    min-height: 60px !important;
    height: 60px !important;
    border: 1px solid #0371FE !important;
    border-radius: 12px !important;
    background: #0371FE !important;
    color: #FFFFFF !important;
    font-weight: 700 !important;
}

/* Sticky summary starts higher on desktop */
@media (min-width: 992px) {
    .page--checkout .page__aside-main {
        position: sticky !important;
        top: 16px !important;
        align-self: start !important;
        height: fit-content !important;
        max-height: calc(100vh - 32px) !important;
        overflow: auto !important;
        padding-top: 16px !important;
    }

    .page--checkout .page__aside-main-sticky,
    .page--checkout .cart-summary,
    .page--checkout .cart-summary__totals-wrapper {
        top: 0 !important;
    }
}

@media (max-width: 991.98px) {
    .page--checkout .page__aside-main {
        position: relative !important;
        top: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }
}


/* RADIO CHECKOUT – FIX */

.page--checkout input[type="radio"]:not(.form__rating-option) {
    position: absolute !important;
    top: 50% !important;
    left: 18px !important;

    width: 18px !important;
    min-width: 18px !important;
    max-width: 18px !important;

    height: 18px !important;
    min-height: 18px !important;
    max-height: 18px !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 2px solid #0371FE !important;
    border-radius: 50% !important;

    background: #FFFFFF !important;
    background-image: none !important;

    appearance: none !important;
    -webkit-appearance: none !important;

    transform: translateY(-50%) !important;

    cursor: pointer;
    box-shadow: none !important;
    outline: none !important;
    opacity: 1 !important;
    z-index: 2;
}

/* punctul interior */
.page--checkout input[type="radio"]:not(.form__rating-option)::before {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;

    width: 8px !important;
    height: 8px !important;

    border-radius: 50% !important;
    background: #0371FE !important;

    transform: translate(-50%, -50%) scale(0) !important;
    transition: transform 0.15s ease !important;
}

/* radio selectat */
.page--checkout input[type="radio"]:not(.form__rating-option):checked::before {
    transform: translate(-50%, -50%) scale(1) !important;
}

/* focus */
.page--checkout input[type="radio"]:not(.form__rating-option):focus,
.page--checkout input[type="radio"]:not(.form__rating-option):focus-visible {
    outline: none !important;
    box-shadow: 0 0 0 4px rgba(3, 113, 254, 0.12) !important;
}

/* containerul trebuie să permită poziționarea radio-ului */
.page--checkout .form__single-choice-option {
    position: relative !important;
}

/* spațiu pentru radio în interiorul cardului */
.page--checkout .form__single-choice-option > .form__label {
    min-height: 60px !important;
    padding: 10px 16px 10px 52px !important;
}
.customer-details__info-edit .icon {
    color: #0371FE !important;
}

.btn-outline-secondary{
	border-color: #0371FE;
}

.btn-outline-secondary:hover{
	border-color: #0371FE;
	background-color: #0371FE;
}

.progress-steps-breadcrumbs .progress-steps-breadcrumbs__content {
	color: #fff;
}

.progress-steps-breadcrumbs__step--selected {
	color: #FECF12 !important;
}

/* =========================================================
   CUPON CHECKOUT
   Formularul este închis implicit
   ========================================================= */

.checkout .coupon-code {
    width: 100%;
    margin: 14px 0;
}

.checkout .coupon-code__toggle {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #0371fe;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.4;
    cursor: pointer;
    user-select: none;
}



/* Ascuns la încărcarea paginii */
.checkout .coupon-code__form-container {
    display: none;
    width: 100%;
    margin-top: 12px;
}

/*
 * Clasele/stările pe care le poate adăuga MerchantPro
 * după apăsarea textului.
 */
.checkout .coupon-code__form-container.show,
.checkout .coupon-code__form-container.active,
.checkout .coupon-code__form-container.is-active,
.checkout .coupon-code__form-container[aria-hidden="false"] {
    display: block;
}

.checkout .coupon-code__form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    align-items: stretch;
    width: 100%;
    position: relative;
}

.checkout .coupon-code__input {
    width: 100%;
    min-width: 0;
    height: 44px;
    padding: 0 14px;
    border: 1px solid #d8dee9;
    border-radius: 8px;
    background: #fff;
    color: #3a4258;
    font-size: 14px;
    box-shadow: none;
}

.checkout .coupon-code__input:focus {
    border-color: #0371fe;
    outline: none;
    box-shadow: 0 0 0 3px rgba(3, 113, 254, 0.12);
}

.checkout .coupon-code__form > label {
    display: none;
}

.checkout .coupon-code__button {
    min-width: 90px;
    height: 44px;
    padding: 0 18px;
    border: 1px solid #0371fe;
    border-radius: 8px;
    background: #0371fe;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    white-space: nowrap;
}

.checkout .coupon-code__button:hover {
    background: #005edb;
    border-color: #005edb;
    color: #fff;
}

@media (max-width: 575.98px) {
    .checkout .coupon-code__form {
        grid-template-columns: 1fr;
    }

    .checkout .coupon-code__button {
        width: 100%;
    }
}

.coupon-code__form label,
.coupon-code__form > label,
.coupon-code__label {
    display: none !important;
}

.checkout-totals__item-label{
	color: #0371FE;
}

.checkout-totals__item--total>.checkout-totals__item-value{
	color: #0371FE !important;
}


@media (max-width: 767.98px) {
    .page--checkout .label-content__name {
        font-size: 14px !important;
    }

		.page--checkout .label-content__hint{
			font-size: 12px !important;
		}

	.page--checkout .label-extra {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    align-self: center;
    font-size: 12px;
}
}

.page--checkout .btn-link:hover {
	color: #0371FE;
}

.checkout-totals__item checkout-totals__item--total{
	color: #0371FE !important;
}

@media (max-width: 767.98px) {
    .page--checkout .page__content {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .page--checkout .page__heading,
    .page--checkout .customer-details {
        margin-left: auto !important;
        margin-right: auto !important;
				width: 100%;
      
    }

}

.page--checkout .form__row--tab-selector {
    width: 100%;
    margin-bottom: 18px;
}

.page--checkout .form__row--tab-selector
.form__single-choice--tabs {
    display: flex;
    width: fit-content;
    gap: 8px;
}

.page--checkout .form__row--tab-selector
.form__single-choice-option {
    flex: 0 0 auto;
    width: 172px;
    min-width: 172px;
    border: 0;
    background: transparent;
}

.page--checkout .form__row--tab-selector
.form__single-choice-option-input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.page--checkout .form__row--tab-selector
.form__single-choice-option .form__label {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0;
    min-height: 60px;
    margin: 0;
    padding: 10px 16px;
    border: 1px solid #8DBBFF;
    border-radius: 12px;
    background: #EAF2FF;
    color: #0371FE !important;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    cursor: pointer;
    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease,
        box-shadow 0.2s ease,
        transform 0.2s ease;
}

.page--checkout .form__row--tab-selector
.form__single-choice-option .form__label:hover {
    border-color: #0371FE;
    background: #DCEAFF;
    color: #0371FE !important;
}

.page--checkout .form__row--tab-selector
.form__single-choice-option-input:checked + .form__label {
    border-color: #0371FE;
    background: #0371FE;
    color: #FFFFFF !important;
    box-shadow: 0 5px 14px rgba(3, 113, 254, 0.2);
}

.page--checkout .form__row--tab-selector
.form__single-choice-option-input:focus-visible + .form__label {
    outline: 3px solid rgba(3, 113, 254, 0.2);
    outline-offset: 2px;
}

@media (max-width: 767.98px) {
    .page--checkout .form__row--tab-selector
    .form__single-choice--tabs {
        width: 100%;
        gap: 8px;
    }

    .page--checkout .form__row--tab-selector
    .form__single-choice-option {
        flex: 1 1 0;
        width: auto;
        min-width: 0;
    }

    .page--checkout .form__row--tab-selector
    .form__single-choice-option .form__label {
        width: 100%;
        min-height: 60px;
        padding: 9px 8px;
        font-size: 13px;
    }
}


/* SELECTOR PERSOANA FIZICA / JURIDICA */
.page--checkout .form__row--tab-selector {
    width: 100%;
    margin-bottom: 18px;
}

.page--checkout .form__row--tab-selector
.form__single-choice--tabs {
    display: flex !important;
    align-items: stretch;
    gap: 10px;
    width: fit-content;
    max-width: 100%;
}

/* Eliminăm complet cardul alb MerchantPro */
.page--checkout .form__row--tab-selector
.form__single-choice-option {
    display: block !important;
    flex: 0 0 170px !important;
    width: 170px !important;
    min-width: 170px !important;
    max-width: 170px !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
}

/* Radio ascuns */
.page--checkout .form__row--tab-selector
.form__single-choice-option-input {
    position: absolute !important;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

/* Butonul real */
.page--checkout .form__row--tab-selector
.form__single-choice-option .form__label {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    height: 60px !important;
    min-width: 0 !important;
    min-height: 60px !important;
    margin: 0 !important;
    padding: 8px 14px !important;
    border: 1px solid #8DBBFF !important;
    border-radius: 12px !important;
    background: #EAF2FF !important;
    color: #0371FE !important;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.15;
    text-align: center;
    cursor: pointer;
    box-shadow: none;
    overflow: hidden;
}

/* Activ */
.page--checkout .form__row--tab-selector
.form__single-choice-option-input:checked + .form__label {
    border-color: #0371FE !important;
    background: #0371FE !important;
    color: #FFFFFF !important;
    box-shadow: 0 5px 14px rgba(3, 113, 254, 0.22);
}

/* Hover */
.page--checkout .form__row--tab-selector
.form__single-choice-option .form__label:hover {
    border-color: #0371FE !important;
    background: #DCEAFF !important;
}

.page--checkout .form__row--tab-selector
.form__single-choice-option-input:checked + .form__label:hover {
    background: #0371FE !important;
    color: #FFFFFF !important;
}

@media (max-width: 767.98px) {
    .page--checkout .form__row--tab-selector
    .form__single-choice--tabs {
        width: 100%;
        gap: 10px;
    }

    .page--checkout .form__row--tab-selector
    .form__single-choice-option {
        flex: 1 1 0 !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
    }

    .page--checkout .form__row--tab-selector
    .form__single-choice-option .form__label {
        width: 100% !important;
        height: 60px !important;
        min-height: 60px !important;
        padding: 8px !important;
        font-size: 13px;
    }
}

@media (max-width: 767.98px) {
    .page--cart .cart__item-col--quantity {
        display: flex !important;
        align-items: center !important;
        overflow: visible !important;
    }

    .page--cart .cart__item-col--quantity .quantity-spinner {
        display: flex !important;
        align-items: center !important;
        flex-wrap: nowrap !important;
        width: 112px !important;
        min-width: 112px !important;
        height: 40px !important;
        overflow: hidden !important;
        position: relative !important;
    }

    .page--cart .cart__item-col--quantity .quantity-spinner__button {
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex: 0 0 36px !important;
        width: 36px !important;
        min-width: 36px !important;
        max-width: 36px !important;
        height: 38px !important;
        margin: 0 !important;
        padding: 0 !important;
        opacity: 1 !important;
        visibility: visible !important;
        z-index: 3 !important;
    }

    .page--cart .cart__item-col--quantity .quantity-spinner input {
        position: relative !important;
        display: block !important;
        flex: 0 0 40px !important;
        width: 40px !important;
        min-width: 40px !important;
        max-width: 40px !important;
        height: 38px !important;
        margin: 0 !important;
        padding: 0 !important;
        z-index: 1 !important;
    }

    .page--cart .cart__item-col--quantity
    .quantity-spinner__button--increment {
        position: relative !important;
        right: auto !important;
        left: auto !important;
        transform: none !important;
        z-index: 4 !important;
				color: #3A4258 !important;
    }

    .page--cart .cart__item-col--quantity
    .quantity-spinner__button--increment strong {
        display: block !important;
        opacity: 1 !important;
        visibility: visible !important;
        color: inherit !important;
    }
}

/* =========================================================
   FIX CUPON CART DRAWER / OFFCANVAS
   ========================================================= */

.cart-drawer .coupon-code__form-container,
.offcanvas .coupon-code__form-container {
    display: none;
    width: 100%;
    padding: 12px 0 0 !important;
}

.cart-drawer .coupon-code__form-container.show,
.offcanvas .coupon-code__form-container.show,
.cart-drawer .coupon-code.coupon-code--open .coupon-code__form-container,
.offcanvas .coupon-code.coupon-code--open .coupon-code__form-container {
    display: block !important;
}

.checkout-totals__item--total {
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 14px;
}

.checkout-totals__item--total .checkout-totals__item-label,
.checkout-totals__item--total .checkout-totals__item-value {
    display: flex;
    align-items: center;
    height: 100%;
    margin: 0;
    line-height: 1;
}

.form__row--single-selection .form__single-selection-option .form__option-group--select .form__label{
	font-weight: 700;
}