/* MAIN */
:root {
    --up-bg-main: #f9f9f9!important;
}
html {
    scroll-behavior: smooth;
    /* если есть липкий хедер, добавь отступ: */
    scroll-padding-top: 72px;        /* подстрой высоту */
}
body {
    font-size: 16px;
    line-height: 24px;
}
h2, h3, h4, h5, h6 {
    margin-top: 20px;
    margin-bottom: 10px;
}
.h1, h1 {
    font-size: 22px;
}
.h1-prod-name {margin-bottom: 0; padding: 10px;}
.h2, h2 {
    font-size: 20px;
}
.h3, h3 {
    font-size: 18px;
}
.h4, h4 {
    font-size: 16px;
}
hr {width: 100%;}
.btn-primary {
    color: var(--up-color-mod-add-to-cart);
    background: var(--up-bg-mod-add-to-cart);
    border: 1px solid var(--up-bc-mod-add-to-cart);
}
.alert-info{
    background: var(--up-color-rating-passive) !important;
    color: var(--up-color-mod-dop-btn) !important;
    border-color: #c2c2c2!important;
}
.btn-primary:hover, .btn-primary:active {
    color: var(--up-color-mod-add-to-cart-hover) !important;
    background-color: var(--up-bg-mod-add-to-cart-hover) !important;
    border: 1px solid var(--up-bc-mod-add-to-cart-hover) !important;
}

#login-popup:hover, #wishlist-total:hover {background-color: var(--up-bg-pp-wishlist-hover);}
.opc-loader-circle::before,
.opc-loader-circle::after,
.switch input:checked + .slider {
    border-top-color: #ffffff !important;
}
.switch input:focus + .slider {
    box-shadow: 0 0 1px #5f6a52!important;
}
.smsclub-enroute {
    background: #5f6a52!important;
}
.opc-loader-circle::after {
    border-bottom-color: #cec5b7!important;
}
#demoBasic, #demoBasic2 {display: none;}
.feedback_widget_button, #fm-fixed-mobile-bottom.fm_type_design_bottom_2, #fm-fixed-mobile-bottom.fm_type_design_bottom_3 {
    background-color:var(--up-bg-btn-primary)!important;
}
.light-theme .swiper-scrollbar-drag {
    background: #d6cbc7;
}
.light-theme .product-thumb .product-name a:hover, .light-theme .subcategory:hover .sc-name {
    color: var(--up-color-link);
}
.light-theme .btn-general.is-active {
    background: #9DAE9C !important;
}
.checkbox-input[type="radio"]:checked, .chm-radio label input[type="radio"]:checked {
    background-color: var(--up-bg-mod-dop-btn-hover)!important;
    border-color: var(--up-border-color-menu)!important;
}



/* HOME */
.type-btn-stories.light a, .type-btn-stories.dark a {
    height: auto!important;
    line-height: 22px!important;
    padding: 5px 15px!important;
}
.type-btn-stories.dark a {
    background-color: rgb(0 0 0 / 50%)!important;
    color: #ffffff!important;
}
.articles__title a:hover,
.module-articles__title a:hover {
    color: var(--up-color-link);
}
/* Slider */
.megasliderpro__content-title, .megasliderpro__content-price,
.small-slider__content-title, .small-slider__content-price {
    background-color: rgba(255, 255, 255, 0.3);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    padding: 0.5rem;
}
.megasliderpro__content-price, .small-slider__content-price {
    padding: 0.5rem;
    border-radius: 12px;
}
.megasliderpro__content-price {
    left: 25px!important;
    top: 15px;
    bottom: initial !important;
}
.megasliderpro__content-title {
    top: initial !important;
    left: 25px !important;
    bottom: 15px;
    padding: 1rem;
    border-radius: 12px;
}
.small-slider__content-title {
    top: 0!important;
    left: 0!important;
    width: 100%;
}
.small-slider__content-price {
    left: 25px !important;
    bottom: 15px !important;
}
.megasliderpro__title {
    font-weight: 500!important;
}
.megasliderpro__sub-title {
	font-weight: 400!important;
}
@media (min-width: 992px) {
    .megasliderpro__sub-title {
        font-size: 26px!important;
    }
}
/* END slider */
/* stories */
.type-btn-stories.dark.chm-st a, .type-btn-stories.light.chm-st a {
    bottom: 5px !important;
    top: auto!important;
}
.type-btn-stories.light a, .type-btn-stories.dark a {
    left: 5px !important;
    right: 5px !important;
    line-height: 1.2em !important;
    font-size: 0.8em !important;
}
@media (max-width: 768px) {
    .chm-stories .swiper-scrollbar.stories-scrollbar {
        display: block !important;
    }
}

/* END stories */

/* CATALOG CATEGORY */
.product-thumb .price {
    min-height: 25px;
    flex-direction: row;
}
.product-thumb .price-new {
    margin-left: 1em;
}
.light-theme .btn-general.is-active:focus, .light-theme .btn-general.is-active:hover, .light-theme .btn-general.is-active:active {
    background-color: #9DAE9C !important;
}
.light-theme .category_description {
    line-height: 1.2em;
    border-top: 1px solid #dfdddd;
    margin: 1em 0px 0em;
    padding-top: 3em;
}
.container-module .product-thumb .cart, .product-grid .product-thumb .cart {margin-bottom: 15px;}
.mod-categories .mc-item.is-active-item > span > a, .mod-categories .mc-child-item.is-active-item > span > a, .mod-categories .mc-child-item.is-active-item > .mc-children > .mc-child-item.is-active-item > a {
    color: var(--up-color-link)!important;
}
.ocf-noUi-connect:before, .ocf-noUi-handle {
    background-color: var(--up-bg-btn-primary)!important;
}
.light-theme .product-thumb .image, .subcategory.bg_item .sc-image, .subcategory.bg_image .sc-image {
    padding: 0;
}
@media (max-width: 767px) {
    .ocf-page-list-top .ocf-category-page-list {
        max-height: 150px;!important;
    }

    html body #column-left-grid,
    html body #column-right-grid,
    html body #column-left,
    html body #column-right,
    html body .ocf-container {
        /* Должно быть выше нижней фикс-панели #fm-fixed-mobile-bottom
           (её z-index 1006–1009, см. megamenu.css), иначе панель перекрывает фильтр */
        z-index: 1010 !important;
    }
}

.product-thumb .product-name {
    margin-bottom: 0px!important;
}
.product-thumb__attribute {
    margin: 0 0 10px;
    font-size: .95em;
    word-wrap: break-word;
}
.product-thumb__attribute span {
    display: block;
    text-align: center;
    color: #788a57;
    position: relative;
    padding: 3px 3px 8px;
}
.product-thumb__attribute span:after {
    content: '';
    width: 30px;
    height: 2px;
    display: block;
    margin: 0 auto 0;
    background: var(--up-bg-btn-primary);
}
@media (max-width: 767px) {
    .ocf-btn-mobile-fixed .ocf-btn {
        background-color: var(--up-color-status-in-stock)!important;
    }
}
.sticker-ns.jan {
    color: #ffffff;
    background: #85756fd9;
}

/* затенение для товаров, которых нет в наличии */
.product-thumb:has(button.btn-general[disabled]) {
    position: relative;
}

/* Светлый полупрозрачный слой */
.product-thumb:has(button.btn-general[disabled])::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.3); /* белый оверлей с ~60% непрозрачности */
    pointer-events: none;
}

/* Черно-белый и размытый контент */
.product-thumb:has(button.btn-general[disabled]) {
    filter: grayscale(80%);
}
.product-thumb:has(.btn-general[disabled]) .stickers-ns { display: none !important; } /* Скрыть стикеры когда кнопка отключена (например, “Продано”) */
/* END затенение для товаров, которых нет в наличии */


/* PRODUCT */
/* Start Product page -> menu */
.light-theme .tab-white-bg {
    -webkit-backdrop-filter: blur(12px) saturate(160%);
    backdrop-filter: blur(27px) saturate(106%);
    background: rgb(255 255 255 / 0%);
    border: 1px solid rgba(255, 255, 255, 0.45);
    border-radius: 10px;
}
@media (max-width: 991px) {
    .light-theme .tab-white-bg {
        background: rgb(255 255 255 / 0.067);

    }
}
.tabs__header {
    filter: drop-shadow(0 1px 5px rgba(0, 0, 0, 0.28));
    -webkit-backdrop-filter: blur(12px) saturate(160%);
    backdrop-filter: blur(12px) saturate(160%);
}
.tabs__header .nav-tabs .tabs__active_line {
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.35);
    border: 1px solid rgba(255, 255, 255, 0.45);
    transition: background 0.2s, transform 0.2s;
    box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.067);
}
.tabs__header__scroll {
    padding-bottom: 0px;
}
.my-tabs {
    background: none;
    border-radius: 0px;
}

.tabs__header.active-tab-sticky:before, .light-theme .tabs__header.tabs_top.active-tab-sticky:before {
    background: none;
    box-shadow: none;
}

/* END Product page -> menu */

#popup-quickview .quantity-adder .add-action, #product .quantity-adder .add-action { width: 20px;}
#product .text_short_description {
    font-size: 1em;
    padding: 10px;
    margin-bottom: 10px;
}
#product .text_short_description p {
    margin-bottom: 0;
    line-height: 22px;
}
#product .text_short_description p:first-of-type {
    margin-bottom: 8px;
}
#product div.short-attribute > .attr-text {
    max-width: 100%; !important;
    text-align: left !important;
}
@media (max-width: 992px) {
    #fm-fixed-mobile-bottom:not(.fm_type_design_bottom_3) .btn-go-home .up-icon-home,
    #fm-fixed-mobile-bottom:not(.fm_type_design_bottom_3) .btn-go-home .text-a-icon,
    #fm-fixed-mobile-bottom .icon-chats, #fm-fixed-mobile-bottom .icon-close-chats,
    #fm-fixed-mobile-bottom .text-a-icon,
    #fm-fixed-mobile-bottom .btn-fm-bottom [class^="up-icon-"] {
        color: #FFFFFF;
    }
}
.container-module .product-description {
    height: 68px;
}
.product-timer {
    border: none!important;
}
.info-manufacturer a {
    color: var(--up-color-link);
}
#product .btn-wishlist, #popup-quickview .btn-wishlist {
    background-color: var(--up-bg-main)!important;
}
#product .btn-wishlist:hover, #popup-quickview .btn-wishlist:hover {
    background-color: var(--up-bg-pp-wishlist-hover)!important;
}
@media (max-width:991px) {
    .product-delivery {
        margin-top: 30px;
    }
}
.cart-item-prod-name a {
    color: var(--up-color-link)!important;
}

/* NEWS PAGE */
.image-atricle img, .description-article img {
    max-width: 35%!important;
    float: left;
    margin: 0 10px 10px 0!important;
    border-radius: 10px;
}
@media (max-width:768px) {
    .image-atricle img, .description-article img {
        max-width: 100%!important;
        width:100%!important;
    }
}
.image-atricle img, .description-article img,
.description-article p:has(img),
.description-article h2:has(img),
.description-article h3:has(img),
.description-article h4:has(img),
.description-article li {
    clear: both;
}
.info-article {
    clear: both;
}
/* Скрыть "поделиться в статьях" */
.a2a_kit.a2a_kit_size_32.a2a_default_style {
    display: none!important;
}

/* CART */
/* Страница checkout/cart, скрыть блок с расчетом стоимости доставки (возможно в будущем пригодится для списания ББ */
.checkout-cart-accordion#accordion{display: none;}

/* CHECKOUT */
#opc-shipping-address .form-group:has(> #input-payment-zone) {
    display: none;
}
.checkout-address-info-container {
    margin: 0.5em 0 0.5em 2em;
}
#onepcheckout .form-group .opc-text-error {
    position: relative!important;
    top: 0!important;
}

.prmn-cmngr-cities__search-item_selected {
    background-color: #9DAE9C !important;
    background-image: linear-gradient(to bottom, #9dae9c, #98a197) !important;
}

.confirm-block #button-register {
    background-color: #5C6D5B!important;
}

/* ACCOUNT */
.ch-alert-success, .ch-alert-danger, .option-danger {
    max-height: none;
    height: inherit;
}
.compare-product__name a:hover {color: var(--up-color-link);}
.chm-account-button {
    background: var(--up-border-color-menu-hover);
}
.chm-btn-outline-primary {
    background: transparent;
    border: 1px solid var(--up-color-mod-dop-btn);
    color: var(--up-color-mod-dop-btn);
}
.chm-btn-outline-primary:hover {
    background: var(--up-bg-btn-primary-hover);
    border: 1px solid var(--up-color-mod-dop-btn);
    color: var(--up-color-btn-primary);
}
.chm-list-group-item.active::before {background: var(--bestseller-bg-color)!important;}

/* HEADER */
#menu-vertical .cat-label {
    top: 15px!important;
}
.up-header .btn-open-contact, .up-header .btn-open-search,
.box-account .btn-account,
.btn-wishlist-top, .btn-compare-top,
#cart > .btn,
#login-popup, #wishlist-total i,
.btn-open-contact i, .btn-open-search i,
.up-header__btn-mobile-menu i,
.btn-search i, .header-search .categories i,
.light-theme .up-header-phones__top {
    color: var(--up-border-color-menu);
}
@media (min-width:767px) {
    .up-icon-cart {color: #fff;}
}
@media (max-width:767px) {
    #cart i {color: var(--up-bg-header-cart)!important;}
}
.light-theme #top .btn-link {
    color: var(--up-color-menu);
}
.up-header-phones__top .up-header-phones__item, .up-header-phones__top .up-header-phones__item a {
    color: var(--up-color-menu);
}
.up-header-phones__dropdown.ch-dropdown > li > div, .up-header-phones__dropdown.ch-dropdown > li > a {
    color: var(--up-color-menu);
}
.up-header-phones {
    color: var(--up-color-menu);
}
/* ---- SMS modal: форма имени нового пользователя ---- */
.sms-name-state .form-group {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 0;
}
.sms-name-state .sms-new-user-title {
    font-size: 14px;
    font-weight: normal;
    color: var(--up-text-color-secondary, #666);
    margin-bottom: 16px;
}

/* FOOTER */
.description_store_footer {
    padding-bottom: 0px!important;
}
.copyright__payments {
    padding-top: 0px;
}
footer .ch-socials i, footer .ch-socials img {
    width: 19px;
    font-size: 20px;
}
footer .ch-socials .fa-instagram {
    color: #fd00af;
}
footer .ch-socials .fa-youtube-play {
    color: #ff0133;
}
footer .newsletter-info, .footer-top {
    display: none!important;
}

/* ============================================================
   ONEPCHECKOUT — рестайл под прототип «Корзина и оформление» (десктоп)
   Все правки только здесь (my_styles.css грузится поверх opc/style.css).
   HTML-структуру блоков не меняем; мобильные брейкпоинты не трогаем.
   ============================================================ */
#onepcheckout {
    --opc-green: #5d6f4e;
    --opc-green-dark: #52613f;
    --opc-green-soft: #eef1ea;
    --opc-green-fill: #7d9162;
    --opc-green-track: #dbe2d2;
    --opc-card-border: #ece9e4;
    --opc-field-border: #e3e0da;
    --opc-row-divider: #f0eee9;
    --opc-text: #2c2c2c;
    --opc-text-2: #3a3a3a;
    --opc-muted: #a09b94;
    --opc-star: #d65a4a;
}

/* H1 страницы */
#content h1.opc-h1 {
    font-size: 26px;
    font-weight: 800;
    color: var(--opc-text);
}

/* --- Карточки колонок --- */
#onepcheckout .checkout-сustomer,
#onepcheckout .checkout-shipping-method,
#onepcheckout .checkout-payment-method,
#onepcheckout .checkout-shipping-address,
#onepcheckout .checkout-address,
#onepcheckout .checkout-free-text,
#onepcheckout .opc_block_cart .cart-list,
#onepcheckout .opc_block_totals .totals-inner {
    background: #fff;
    border: 1px solid var(--opc-card-border) !important;
    box-shadow: none !important;
    border-radius: 18px !important;
}

/* --- Заголовки секций --- */
#onepcheckout .checkout-heading,
#onepcheckout .title-text-next,
#onepcheckout .opc-cart-title {
    color: var(--opc-text);
    font-weight: 700;
    font-size: 16px;
}
#onepcheckout .opc-cart-title { font-size: 17px; }
#onepcheckout .shipping_method_title {
    color: #5a564f;
    font-weight: 600;
    font-size: 13px;
    margin: 6px 0 8px;
}

/* --- Строки товаров --- */
#onepcheckout .cart-item + div.cart-item {
    border-top: 1px solid var(--opc-row-divider) !important;
}
#onepcheckout .cart-item-left img {
    border-radius: 10px;
}
#onepcheckout .cart-item-prod-name a {
    color: var(--opc-text-2) !important;
    font-weight: 600;
    font-size: 14.5px;
}
#onepcheckout .cart-item .product-model {
    color: var(--opc-muted);
}
#onepcheckout .cart-item-price {
    color: var(--opc-muted);
}
#onepcheckout .cart-item-total {
    color: var(--opc-text-2);
    font-weight: 700;
}

/* --- Степпер количества (пилюля) --- */
#onepcheckout .ch-cart-quantity {
    border: 1px solid var(--opc-field-border);
    border-radius: 22px;
    overflow: hidden;
}
#onepcheckout .ch-cart-quantity .btn-quantity-minus,
#onepcheckout .ch-cart-quantity .btn-quantity-plus {
    background: #fff !important;
    border: 0 !important;
    width: 32px !important;
    height: 34px !important;
    border-radius: 0 !important;
}
#onepcheckout .ch-cart-quantity .btn-quantity-minus svg,
#onepcheckout .ch-cart-quantity .btn-quantity-plus svg {
    stroke: #8a857e !important;
}
#onepcheckout .ch-cart-quantity .form-control {
    border: 0 !important;
    background: #fff !important;
    height: 34px !important;
    width: 34px !important;
    max-width: 34px;
    min-width: 34px;
    padding: 0 !important;
    text-align: center !important;
    border-radius: 0 !important;
}

/* --- Кнопка удаления --- */
#onepcheckout .cart-item .cart-item-price-quantity .btn-remove {
    width: 36px;
    height: 36px;
    border: 1px solid #ebe8e3 !important;
    border-radius: 9px !important;
    color: #b5b0a9 !important;
}

/* --- Поля ввода --- */
#onepcheckout input.form-control,
#onepcheckout .prmn-cmngr-cities__search.form-control {
    border: 1px solid var(--opc-field-border) !important;
    height: 46px !important;
    padding: 12px 16px;
}
#onepcheckout .opc-label {
    color: #5a564f;
    font-weight: 600;
    font-size: 13px;
}
#onepcheckout .required > .opc-label:after,
#onepcheckout .required > .control-label:after {
    content: " *";
    color: var(--opc-star);
}

/* --- Радио-карточки доставки и оплаты --- */
#onepcheckout .shipping-method {
    margin-top: 4px;
}
#onepcheckout .shipping-method .chm-radio,
#onepcheckout .payment-method .chm-radio {
    border: 1px solid var(--opc-field-border);
    border-radius: 12px;
    padding: 14px 16px;
    margin-bottom: 10px;
    transition: border-color .15s ease, background-color .15s ease;
}
#onepcheckout .shipping-method .chm-radio:hover,
#onepcheckout .payment-method .chm-radio:hover {
    border-color: #cdd5c4;
}
#onepcheckout .shipping-method .chm-radio:has(input:checked),
#onepcheckout .payment-method .chm-radio:has(input:checked) {
    border: 1.5px solid var(--opc-green);
    background: #fbfcf9;
}
/* Подпись способа: радио + текст в один ряд */
#onepcheckout .shipping-method .chm-radio label,
#onepcheckout .payment-method .chm-radio label {
    display: flex;
    align-items: center;
    margin: 0 0 0 10px !important;
    font-size: 13.5px;
    font-weight: 500;
    color: var(--opc-text);
    cursor: pointer;
}
#onepcheckout .shipping-method .chm-radio label img,
#onepcheckout .payment-method .chm-radio label img {
    margin: 0 8px 0 0;
}
/* Кружок-радио: кольцо с зелёной точкой (как в прототипе) */
#onepcheckout .shipping-method .chm-radio label input[type="radio"],
#onepcheckout .payment-method .chm-radio label input[type="radio"] {
    width: 20px !important;
    height: 20px !important;
    margin-right: 12px !important;
    border: 2px solid #cfcbc4 !important;
    background-color: #fff !important;
    background-image: none !important;
}
#onepcheckout .shipping-method .chm-radio label input[type="radio"]:checked,
#onepcheckout .payment-method .chm-radio label input[type="radio"]:checked {
    border-color: var(--opc-green) !important;
    background-color: #fff !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Ccircle cx='10' cy='10' r='4.5' fill='%235d6f4e'/%3E%3C/svg%3E") !important;
}

/* --- Плашка бесплатной доставки (зелёная) --- */
#onepcheckout .free-shipping-left {
    background: var(--opc-green-soft);
    border-radius: 12px;
    padding: 13px 14px;
    margin-bottom: 16px;
}
#onepcheckout .free-shipping-left .free-ship-progress-bar {
    background: var(--opc-green-track) !important;
    height: 6px !important;
    border-radius: 3px !important;
    margin-bottom: 0 !important;
}
#onepcheckout .free-shipping-left .free-ship-bar-fill {
    background: var(--opc-green-fill) !important;
    height: 6px !important;
    border-radius: 3px !important;
}
#onepcheckout .free-shipping-left .sum-free-shipping-left {
    color: var(--opc-green) !important;
    background: rgba(125, 145, 98, 0.18) !important;
}
#onepcheckout .free-ship-info.active-free-ship {
    color: var(--opc-green) !important;
    border: 0 !important;
    padding: 0 !important;
    justify-content: flex-start !important;
    font-weight: 700;
    margin-bottom: 0 !important;
}

/* --- Итог заказа --- */
#onepcheckout .opc_block_totals .table-cart .total-text {
    color: var(--opc-text);
}
#onepcheckout .opc_block_totals .table-cart tr:last-child .total-title,
#onepcheckout .opc_block_totals .table-cart tr:last-child .total-text {
    font-size: 19px;
    font-weight: 800;
    color: var(--opc-text);
}

/* --- Кнопка «Оформить заказ» --- */
#onepcheckout .confirm-block #button-register {
    width: 100%;
    background-color: var(--opc-green) !important;
    border: 0 !important;
    border-radius: 12px !important;
    padding: 16px !important;
    font-weight: 700;
    font-size: 15px;
    line-height: 1.2;
}
#onepcheckout .confirm-block #button-register:hover,
#onepcheckout .confirm-block #button-register:active,
#onepcheckout .confirm-block #button-register:focus {
    background-color: var(--opc-green-dark) !important;
}
/* Подпись под кнопкой «Оформить заказ» (статика из прототипа) */
#onepcheckout .confirm-block .opc-order-hint {
    margin-top: 12px;
    text-align: center;
    font-size: 11.5px;
    line-height: 1.5;
    color: var(--opc-muted);
}

/* --- Плашка бесплатной доставки: иконка-галочка, отступы, подпись --- */
#onepcheckout .free-shipping-left .free-ship-info {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12.5px;
    margin-bottom: 0;
}
#onepcheckout .free-shipping-left .free-ship-info .opc-fs-check {
    flex: none;
}
/* Отступ между подписью и прогресс-баром (в обоих состояниях) */
#onepcheckout .free-shipping-left .free-ship-progress-bar {
    margin-top: 9px;
}
#onepcheckout .free-shipping-left .opc-free-ship-hint {
    margin-top: 7px;
    font-size: 11px;
    color: #8a8a84;
}

/* --- Плашка лояльности «Бонусами вернётся» (статика из прототипа) --- */
#onepcheckout .opc_block_totals .table-cart tr.opc-loyalty-row td {
    padding: 0;
    border: 0;
}
#onepcheckout .opc-loyalty {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #faf6f3;
    border-radius: 8px;
    padding: 9px 12px;
    margin: 6px 0;
    font-size: 13px;
    color: #8f7d72;
}
#onepcheckout .opc-loyalty__value {
    font-weight: 700;
}
/* Разделитель перед строкой «Итого» (как в прототипе) */
#onepcheckout .opc_block_totals .table-cart tr:last-child .total-title,
#onepcheckout .opc_block_totals .table-cart tr:last-child .total-text {
    border-top: 1px solid var(--opc-card-border);
    padding-top: 12px;
}

/* --- Инлайн-виджет SMS-подтверждения телефона --- */
/* Телефон и блок «код + повтор» — две колонки col-sm-6 (как Фамилия/Имя).
   Без фиксированной ширины; на мобильных встают стопкой за счёт col-xs-12. */
#onepcheckout .opc-tel-field {
    position: relative;
    width: 100%;
}
/* «Подтверждён» внутри поля справа */
#onepcheckout .opc-tel-field .opc-phone-confirmed {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: var(--opc-green, #5d6f4e);
    font-weight: 600;
    font-size: 12px;
    padding-left: 8px;
    pointer-events: none;
}
#onepcheckout input.form-control.opc-tel-input--confirmed {
    padding-right: 120px;
}
/* Подтверждённый номер заблокирован, но поле остаётся белым (как в прототипе) */
#onepcheckout .opc-tel-field input.form-control[readonly] {
    background-color: #fff;
    opacity: 1;
    cursor: default;
}
/* Колонка действий: содержимое занимает всю ширину своей col-sm-6 */
#onepcheckout .opc-phone-actions {
    width: 100%;
}
/* Пустая подпись над кнопкой выравнивает её с полем телефона; на мобильных не нужна */
@media (max-width: 767px) {
    #onepcheckout .opc-actions-label {
        display: none;
    }
}
#onepcheckout .opc-phone-actions .opc-get-code {
    width: 100%;
    background: var(--opc-green, #5d6f4e);
    color: #fff;
    border: 0;
    border-radius: 12px;
    height: 46px;
    padding: 0 18px;
    font-weight: 600;
    font-size: 13px;
    white-space: nowrap;
    transition: background .15s ease;
}
#onepcheckout .opc-phone-actions .opc-get-code:hover {
    background: var(--opc-green-dark, #52613f);
}
#onepcheckout .opc-code-box {
    display: flex;
    align-items: center;
    gap: 8px;
}
#onepcheckout .opc-code-box .form-control {
    flex: 1 1 auto;
    width: auto !important;
    text-align: center;
    font-weight: 700;
    font-size: 18px;
}
#onepcheckout .opc-resend {
    flex: 0 0 auto;
}
#onepcheckout .opc-resend {
    background: transparent;
    border: 1.5px solid #cdd5c4;
    color: var(--opc-green, #5d6f4e);
    border-radius: 12px;
    height: 46px;
    padding: 0 14px;
    font-weight: 600;
    font-size: 12px;
    white-space: nowrap;
}
#onepcheckout .opc-resend:disabled {
    opacity: .5;
    cursor: not-allowed;
}
#onepcheckout .opc-resend-timer {
    font-variant-numeric: tabular-nums;
}
/* --- Баннер возврата корзины + приписка «из прошлой сессии» --- */
.opc-restored-banner {
    display: flex;
    align-items: center;
    gap: 14px;
    background: #eef1ea;
    border: 1px solid #cfdcbf;
    border-radius: 14px;
    padding: 15px 18px;
    margin: 0 0 24px;
}
.opc-restored-banner__icon {
    width: 34px;
    height: 34px;
    flex: none;
    border-radius: 50%;
    background: #7d9162;
    display: flex;
    align-items: center;
    justify-content: center;
}
.opc-restored-banner__title {
    font-weight: 700;
    font-size: 14px;
    color: #2c2c2c;
}
.opc-restored-banner__sub {
    font-weight: 500;
    font-size: 12.5px;
    color: #6c7a5c;
    margin-top: 2px;
}
/* Приписка у возвращённого товара */
#onepcheckout .cart-item-prev-badge {
    display: inline-block;
    background: #eef1ea;
    color: #5d6f4e;
    font-weight: 600;
    font-size: 10px;
    border-radius: 12px;
    padding: 3px 9px;
    margin-left: 8px;
    vertical-align: middle;
    white-space: nowrap;
}
/* Лёгкий оттенок строки возвращённого товара */
#onepcheckout .cart-item.cart-item--restored {
    background: #fbfcf9;
}
/* ============ END ONEPCHECKOUT рестайл ============ */

