.theme-switch-wrapper {
    z-index: 1000;
    height: 44px;
    display: flex;
    align-items: center;
    padding: 10px;
}

.theme-switch {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 22px;
    margin: 0;
}

.theme-switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ffffff;
    transition: 0.4s;
    border-radius: 24px;
}

.slider:before {
    position: absolute;
    content: "";
    height: 18px;
    width: 18px;
    left: 6px;
    bottom: 3px;
    background-color: white;
    transition: 0.4s;
    border-radius: 50%;
    background-image: url('/image/catalog/icon-svg/moon.svg'); /* Иконка луны */
    background-size: cover;
    background-repeat: no-repeat;
}

input:checked + .slider:before {
    background-image: url('/image/catalog/icon-svg/sun.svg'); /* Иконка солнца */
    transform: translateX(26px);
}


input:checked + .slider {
    background-color: #d4d4d4;
}

input:checked + .slider:before {
    transform: translateX(22px);
}

body.dark-mode {
    background-color: #111;
    color: #fff;
}


body.light-mode {
    background-color: #fff;
    color: #000;
}

body.light-mode {
    background-color: #fff;
    color: #000;
}

body.light-mode .top-panel.catalog-menu__outside {
    background: white;
}

body.light-mode .search-form.d-flex {
    border: 1px solid #b9b9b9;
}

body.light-mode .top-panel__search .btn {
    color: #535353;
}

body.light-mode .top-panel__col .icon-box svg {
    fill: black;
}

body.light-mode svg.icon.icon-phone {
    fill: black;
}

body.light-mode .top-menu__wrapper {
    background: #85b500;
}

body.light-mode .title-banner.html-title.text-right {
    color: white;
}

body.light-mode .banner-desc > .text-left,
body.light-mode .banner-desc > .text-right {
    color: white;
}

body.light-mode legend {
    color: black;
}

@media (min-width: 992px) {
    body.light-mode .site-main.fixed .catalog-menu__outside:before {
        background: #ffffff;
    }
}

body.light-mode .advantage-item {
    background: #f3f3f3;
}

body.light-mode .advantage-item:hover {
    background: #f0f0f0;
}

body.light-mode .wrapper-middle {
    background: #ffffff;
}

body.light-mode .bordered {
    border: 1px solid #ececec;
}
body.light-mode .site-main .swiper-wrapper .product-layout.shadow-lift-hover {
    border: 5px solid #ffffff;
}

body.light-mode .product-item {
    background-color: #f3f3f3;
}

body.light-mode .product-item__title a {
    color: black;
}

body.light-mode .green .btn-primary {
    color: black;
}

body.light-mode .product-more a,
body.light-mode .product-more a:hover {
    color: black;
}

body.light-mode .product-more {
    border: 2px solid #cecece;
}

body.light-mode .testimonial-thumb {
    background: #f3f3f3;
    border: 1px solid #dfdfdf;
}

body.light-mode .site-main .swiper-viewport {
    background: #f3f3f3;
}

body.light-mode .contacts-left {
    background: #f3f3f3;
}

body.light-mode .contacts-main {
    border: 1px solid #dbdbdb;
}

body.light-mode .navigation-button {
    background-color: #ffffff;
}

body.light-mode .header-phone .header-phone__menu {
    background: #ffffff;
}

body.light-mode .header-phone__title {
    color: black;
}

body.light-mode div.site-main > header > div > div.top-panel__wrapper > div > div > div.header-middle.d-flex.align-items-center > div.top-panel__col.top-panel__tfoot.top-panels.right-side.flex-grow-1.ml-lg-5 > div > div.top-panel__col.header-phone.visible-lg > div.header-phone__menu > div.phone-item.header-email > div > svg {
    fill: black;
}

body.light-mode .btn-primary {
    color: #000000;
}

body.light-mode div.site-main > header > div > div.top-menu__wrapper > div > div > div.top-blocks.top-left > ul > li:hover {
    background: #7ba800;
}

body.light-mode .cart-panel {
    background: #ffffff;
}

body.light-mode .header-nav__submenu__content {
    background: #ffffff;
}

body.light-mode .header-submenu .category-link {
    color: black;
}

body.light-mode .submenu-link {
    color: black;
}

body.light-mode .child-link {
    color: #515151;
}

body.light-mode .text-white {
    color: #333;
}


body.light-mode .bg-white {
    background-color: #fff;
}

body.light-mode .header-submenu__col--grey {
    border-right: 1px solid #e8e8e8;
}

body.light-mode .form-control {
    border: 1px solid #b9b9b9;
    background: #ffffff;
    color: black;
}

body.light-mode legend {
    border-bottom: 1px solid #b9b9b9;
}

body.light-mode .category-section a {
    background: #f3f3f3;
    color: black;
}

body.light-mode .ocf-footer {
    background-color: white;
}

@media (min-width: 768px) {
    body.light-mode .ocf-content {
        margin-bottom: 25px;
        border: 1px solid #b9b9b9;
        padding: 10px;
    }
}

body.light-mode .ocf-value, .ocf-value:active, .ocf-value:focus, .ocf-value:visited, .ocf-value:hover {
    color: black;
}

@media (min-width: 768px) {
    body.light-mode .ocf-theme-light .ocf-filter-header, .ocf-theme-light .ocf-module-page-header {
        color: #000000;
    }
}

body.light-mode .ocf-form-control, input.ocf-form-control, textarea.ocf-form-control {
    background-color: #f3f3f3;
    border: 1px solid #b9b9b9;
    color: black;
}

body.light-mode .ocf-input-group-addon {
    background-color: #dddddd;
    color: black;
}

@media (min-width: 768px) {
    body.light-mode .ocf-theme-light .ocf-filter {
        border-bottom: 1px solid #b9b9b9;
    }
}

body.light-mode .ocf-theme-light .ocf-value-count {
    background-color: #b7b7b7;
}

body.light-mode .ocf-value-input::before {
    background-color: #85b500;
    border: #b9b9b9 solid 1px;
}

@media (min-width: 768px) {
    body.light-mode .product-item {
        padding: 15px;
        border-color: #b9b9b9;
    }
}

body.light-mode .product-images__thumb.slick-current.slick-active {
    background: white;
}

body.light-mode .price-container {
    background: #fafafa;
}

body.light-mode #button-one-click {color: #ffffff;}

body.light-mode .clear-button {
    background: #dddddd;
}

body.light-mode .btn-addtools button {
    border: 1px solid #b9b9b9;
}

body.light-mode button.product-compare.tools-toggle.clear-button svg {
    fill: black;
}

body.light-mode button.product-wishlist.tools-toggle.clear-button {
    fill: black;
}

body.light-mode .nav-tabs>li>a:hover {
    color: black;
}

body.light-mode .product-tabs__wrap li a {
    background: #f3f3f3;
    color: black;
}

body.light-mode .show-gradient::before {
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgb(255 255 255) 100%) !important;
}

body.light-mode .social_block .soc_ico svg {
    fill: #8f8f8f;
}

body.light-mode .theme-switch-wrapper {
    padding: 10px;
}


body.light-mode #group-carousel-1-slide01 > div > div > div > div:nth-child(2) {
    color: white;
}

.product-item__delay {
    background: #c5c5c5;
    border-color: #c5c5c5;
}

body.light-mode .mobile-catalog__panel {
    background-color: #dddddd;
    border: #dddddd;
}

body.light-mode #menumobile > div > div.mobile-catalog__panel > button > svg {
    fill: black;
}

body.light-mode .mobile-catalog__list {
    background-color: white;
}

body.light-mode .mobile-catalog__item+.mobile-catalog__item {
    border-top: 1px solid #dfdfdf;
}

body.light-mode .mobile-catalog__back svg {
    fill: black;
}

body.light-mode .mobile-catalog__close svg {
    fill: black;
}

body.light-mode .toolbar-form__input .form-control {
    color: black;
}

body.light-mode .product-item {
    border: 1px solid #ffffff;
}

body.light-mode .slide-header {
    background-color: #dddddd;
}

body.light-mode .slide-close svg {
    fill: black;
}

body.light-mode .header-search__mobile-control-container.slide-search__content.scroll-wrapper {
    background: white;
}

body.light-mode .product-item__delay {
    background: #d9d9d9;
    border-color: #b9b9b9;
}

body.light-mode .product-item__icons .product-item__delay:hover svg {
    fill: #6b6b6b;
}

body.light-mode .product-item__icons .product-item__delay svg {
    fill: #6b6b6b;
}

body.light-mode .btn-default {
    color: #000000;
    background-color: #e4e4e4;
    border-color: #b9b9b9;
}

body.light-mode .alert.alert-cart,.alert.alert-comp,.alert.alert-wish {
    background: #ffffff;
}

body.light-mode div.mfp-wrap.mfp-gallery.mfp-close-btn-in.mfp-auto-cursor.mfp-ready > div {
    background: white;
}

body.light-mode img.mfp-img {
    background: white;
    box-shadow: 0 0 20px 20px #ffffff;
}

body.light-mode .mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
    color: black;
}

@media (max-width: 991px) {
    body.light-mode div.menu-mobile__informations.menu-fixed.d-lg-none.active > div > div.menu-informations-blocks > div.mobile-telephone.menu-info__item > a.mobile-email > svg, body > div.menu-mobile__informations.menu-fixed.d-lg-none.active > div > div.menu-informations-blocks > div.mobile-telephone.menu-info__item > a:nth-child(3) > svg {
    fill: black;
}

     body.light-mode .title-banner.html-title.text-center {
        font-size: 22px;
        line-height: normal;
        margin-bottom: 20px;
        color: white;
    }
    
    body.light-mode .top-panels {
        background: #ffffff;
        border-bottom: 1px solid #ffffff;
    }
    
    body.light-mode .top-panel__users {
        width: 100%;
        border-top: 1px solid #dadada;
        border-bottom: 1px solid #dadada;
        margin-top: 56px;
        position: fixed;
        bottom: 0;
        background: #ffffff;
    }
    body.light-mode .top-users:before {
        background-color: #dadada;
    }
    body.light-mode .menu-information-container .menu-info__item {
        border-bottom: 1px solid #e3e3e3;
    }
       body.light-mode .slide-search .search-form {
        border-bottom: 1px solid #919191;
        background: #ffffff;
    }
    body.light-mode .menu-informations-blocks {
        overflow-y: auto;
        height: calc(100% - 56px);
        background: #ffffff;
    }
    body.light-mode .menu-mobile__informations a {
        color:black;
    }
    body.light-mode div.menu-mobile__informations.menu-fixed.d-lg-none.active > div > div.menu-informations-blocks > div.mobile-telephone.menu-info__item > a:nth-child(2) > div > div.phone-icon.mr-2 > svg {
        fill: #000000;
    }
}

@media (min-width: 991px) {
.theme-switch-wrapper {
    margin-left: 20px;
}
body.light-mode .theme-switch-wrapper {
    margin-left: 20px;
}
}

body.light-mode .pc-builder-filter.panel-default #filter-pc-builder-price input
{
    width: 100%;
    height: 40px;
    margin: 0;
    padding: 10px 15px;
    border: none;
    border-right: 0;
    border-radius: 8px;
    appearance: none;
    transition: all .3s;
    position: relative;
    border: 1px solid #b9b9b9;
    background: #ffffff;
    color: black;
}
body.dark-mode .pc-builder-filter.panel-default #filter-pc-builder-price input
{
    width: 100%;
    height: 40px;
    padding: 10px 15px;
    color: #ffffff;
    font-weight: 400;
    border: 1px solid #3a3a3a;
    box-sizing: border-box;
    border-radius: 8px;
    outline: none;
    font-size: 14px;
    line-height: 20px;
    font-weight: 400;
    resize: none;
    background: #333333;
}

#filter-pc-builder-price tr 
{
    display: flex;
    gap: 10px;
}

body.light-mode .mini-cart svg {
    fill: #000000;
    width: 24px;
}

body.light-mode #extension-pc-builder-pc-builder .pc-builder-container {
    border: 1px solid #b9b9b9;
}

body.light-mode #extension-pc-builder-pc-builder .pc-builder-container .pc-builder-category-container .pc-builder-component-container {
    border: 1px solid #b9b9b9;
}

body.light-mode #extension-pc-builder-pc-builder .pc-builder-container .pc-builder-category-container .pc-builder-component-container .component-image .thumbnail {
    filter: invert(1);
}

body.light-mode .top-info__blocks .phone-link:hover, .horizontal-menu>li:hover>a:not(.special-link) {
    color: white !important;
}

body.light-mode .alert.alert-cart,.alert.alert-comp,.alert.alert-wish {
    background: #ffffff;
}

body.light-mode .cart-panel .mini, .cart-panel.top .mini {
    border-bottom: 1px solid #b9b9b9 !important;
}

body.light-mode .table-bordered>tbody>tr>td, .table-bordered>tbody>tr>th, .table-bordered>tfoot>tr>td, .table-bordered>tfoot>tr>th, .table-bordered>thead>tr>td, .table-bordered>thead>tr>th {
    border: 1px solid #b9b9b9 !important;
}

body.light-mode .table-bordered {
    border: 1px solid #b9b9b9 !important;
}

body.light-mode .img-thumbnail {
    border: 1px solid #b9b9b9 !important;
}
body.light-mode #column-left {
    background-color: white!important;

}

body.light-mode #content > div.conf-total > div {
    background: #ffffff !important;
}

body.light-mode .conf-total .total-cost-text {
    color: black !important;
}

body.light-mode .conf-total .btn {
    border: 1px solid #b9b9b9 !important;
    color: #85b500 !important;
}

body.light-mode .section-box .section {
    border: 1px solid #b9b9b9 !important;
}

body.light-mode #content .conf-total {
    border-bottom: 5px solid #b9b9b9 !important;
}

body.light-mode .section-box.style-cell .section-name {
    /* border-top: 3px solid #ffffff !important; */
}

body.light-mode .conf-total .btn-add-cart:hover {
    background-color: #85b500!important; 
    color: #ffffff!important; 
}

body.light-mode .conf-total .btn-print:hover {
    background-color: #85b500!important; 
    color: #ffffff !important;
}

body.light-mode .conf-total .btn-clean-all:hover {
    background-color: #85b500 !important;
    color: white !important;
}

body.light-mode .ocf-popover>.ocf-arrow {
        background-color: #d3d3d3!important; 
}

body.light-mode .ocf-popover {
        background-color: #d3d3d3!important; 
}

body.light-mode .ocf-theme-light .ocf-selected-card {
    background: white!important; 
}

body.light-mode .ocf-theme-light .ocf-selected-filter {
    background-color: #85b500!important; 
}

body.light-mode #boc_order .modal-body {
    background: white!important;
    border: 1px solid #b9b9b9;
}

body.light-mode #boc_order .form-group label {
    color: black!important; 
}

body.light-mode #simplecheckout_cart .form-control {
    color: black !important;
}

body.light-mode .simplecheckout-cart th {
    background-color: #ffffff !important;
    color: black !important;
}

body.light-mode .simplecheckout-cart td.image {
    background: #ffffff !important;
}

body.light-mode .simplecheckout-cart td.name {
    background: #ffffff !important;
}

body.light-mode .simplecheckout-cart td.model {
    background: #ffffff !important;
}

body.light-mode .simplecheckout-cart td.quantity {
    background: #ffffff !important;
}

body.light-mode .simplecheckout-cart td.price {
    background: #ffffff !important;
}

body.light-mode .simplecheckout-cart td.total {
    background: #ffffff !important; 
}

body.light-mode .simplecheckout-cart td.remove {
    background: #ffffff !important;
}

body.light-mode .simplecheckout-cart-total {
    background: #ffffff !important;
    border-right: 1px solid #b9b9b9 !important;
    border-bottom: 1px solid #b9b9b9 !important;
    border-left: 1px solid #b9b9b9 !important;
}

body.light-mode .simplecheckout-cart {
    border-top: 1px solid #b9b9b9 !important;
    border-right: 1px solid #b9b9b9 !important;
    border-left: 1px solid #b9b9b9 !important;
}

body.light-mode .simplecheckout-cart th {
    border-bottom: 1px solid #b9b9b9 !important;
}

body.light-mode .simplecheckout-cart td {
    border-bottom: 1px solid #b9b9b9 !important;
}

body.light-mode .simple-content .checkout-heading {
    background-color: #e4e4e4 !important;
    border-color: #b9b9b9 !important;
    color: black !important;
}

body.light-mode #simplecheckout_customer .simplecheckout-block-content {
    background: #ffffff !important;
}

body.light-mode .simplecheckout-block-content {
    background: #ffffff !important;
}

body.light-mode #product-selector .product-row {
    background-color: #ffffff !important;
    border-bottom: 1px solid #bcbcbc !important;
}

filters {
    background-color: #3a3a3a;
}
#product-selector .product-content {
    background-color: #3a3a3a;
}

body.light-mode #product-selector .action-bar .header .close {
    color: black;
}
body.light-mode .results {
     background-color: white; 
}
body.light-mode .searchBlock {
    background: white;
}
body.light-mode #product-selector .product-row.msg-not-found {
    color: black;
}
body.light-mode #product-selector .product-row .prod-info .name {
    background-color: #f1f1f1 !important;
    color: black !important;
    border: 1px solid #bcbcbc !important;
}

body.light-mode #product-selector .product-row .add-block .price {
    color: black!important;
}

body.light-mode #product-selector .action-bar {
    background-color: #ffffff !important;
    box-shadow: 0 5px 5px -5px #000 !important;
}

body.light-mode #product-selector .action-bar .filters {
    background-color: #ffffff !important;
}

body.light-mode #category-select,  body.light-mode #filter, body.light-mode #sorting {
    background: white !important;
    color: black!important;
    border: 1px solid #bcbcbc !important;
}
body.light-mode .ocf-header {
    color:black;
}
body.light-mode .pagination>li>a, .pagination>li>span {
    background: #85b500 !important;
    border: 1px solid #85b500 !important;
}

body.light-mode .modal-content {
    background-color: #ffffff !important;
    border: 1px solid #b9b9b9 !important;
}

body.light-mode .modal-header {
    border-bottom: 1px solid #b9b9b9 !important;
}

body.light-mode .dark-color:not(.active), .colored:hover {
    color: black !important;
}

body.light-mode .review-card {
    background-color: #ffffff !important;
}

body.light-mode .review-card__wrap .review-text {
    color: black !important;
}

body.light-mode .colored_table thead tr {
    background: #f3f3f3 !important;
}

body.light-mode .section-box.style-cell .section {
    background: #f8f8f8;
}

body.light-mode .header-phone__title.fw-600.d-flex.align-items-center svg {
    fill: #000000;
}

/* === kwik light-ui polish v1 === */
/* Section headings: the stock .content-title is a 140px dark slab with black text.
   On the light theme that renders as black-on-black, so rebuild it as a plain title. */
body.light-mode .content-title{
  background:transparent !important;
  background-image:none !important;
  color:#16181d !important;
  padding:0 !important;
  margin:38px 0 18px !important;
  min-height:0 !important;
  height:auto !important;
  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  text-align:left !important;
  font:700 28px/1.2 Roboto,Arial,sans-serif !important;
  letter-spacing:normal !important;
  display:block !important;
}
body.light-mode .content-title *{color:#16181d !important;background:transparent !important}

/* Product tiles inside the rails */
body.light-mode .product-layout .product-item,
body.light-mode .product-thumb{
  background:#fff !important;
  border:1px solid #e4e6ea !important;
  border-radius:12px !important;
}
body.light-mode .product-layout .product-item:hover,
body.light-mode .product-thumb:hover{
  border-color:#85B500 !important;
  box-shadow:0 6px 18px rgba(16,24,40,.10) !important;
}

/* Keep the new department grid visually in step with the section titles */
body.light-mode .kwd__title{color:#16181d}

@media(max-width:767px){
  body.light-mode .content-title{font-size:21px !important;margin:26px 0 12px !important}
}


/* === kwik light-ui polish v2 === */
/* Page shell ------------------------------------------------------------------ */
body.light-mode .page-wrapper{background:#fff !important;color:#16181d !important}
body.light-mode .wrapper-middle{background:#fff !important}

/* Reviews / rating card: was a solid black slab dropped onto a white page ------ */
body.light-mode .styled-block-info-reviews-mob,
body.light-mode .styled-block-info-reviews{
  background:#f6f7f9 !important;
  border:1px solid #e4e6ea !important;
  border-radius:14px !important;
  color:#16181d !important;
  box-shadow:none !important;
}
body.light-mode .styled-block-info-reviews-mob *,
body.light-mode .styled-block-info-reviews *{color:#16181d !important}
body.light-mode .styled-block-info-reviews-mob a,
body.light-mode .styled-block-info-reviews a{
  background:#fff !important;
  border:1px solid #d7dae0 !important;
  color:#16181d !important;
  border-radius:10px !important;
}
body.light-mode .styled-block-info-reviews-mob a:hover,
body.light-mode .styled-block-info-reviews a:hover{border-color:#85B500 !important;color:#16181d !important}

/* Info tabs (Гарантия / Почему мы? / Оплата / Доставка) ------------------------ */
body.light-mode li.box-shadow.bordered{
  background:#f2f3f5 !important;
  border:1px solid #e4e6ea !important;
  border-radius:10px !important;
  box-shadow:none !important;
}
body.light-mode li.box-shadow.bordered a,
body.light-mode li.box-shadow.bordered span,
body.light-mode li.box-shadow.bordered *{color:#3d4149 !important}
body.light-mode li.box-shadow.bordered:hover{border-color:#c9ccd2 !important}
body.light-mode li.box-shadow.bordered.active{
  background:#fff !important;
  border-color:#85B500 !important;
}
body.light-mode li.box-shadow.bordered.active *{color:#16181d !important;font-weight:600}

/* Footer ---------------------------------------------------------------------- */
body.light-mode .site-footer{
  background:#f6f7f9 !important;
  color:#3d4149 !important;
  border-top:1px solid #e4e6ea !important;
}
body.light-mode .site-footer a{color:#3d4149 !important}
body.light-mode .site-footer a:hover{color:#85B500 !important}
body.light-mode .site-footer h1,body.light-mode .site-footer h2,
body.light-mode .site-footer h3,body.light-mode .site-footer h4,
body.light-mode .site-footer h5,body.light-mode .site-footer .footer-title{color:#16181d !important}

/* Low-contrast leftovers: stock line and the legal-entity price were near-white  */
body.light-mode .product-stats,
body.light-mode .product-stats *{color:#3d4149 !important}
body.light-mode .stock-status,
body.light-mode .product-stock{color:#2f7d1f !important}


/* === kwik light-ui polish v3 === */
/* Вкладки «Гарантия / Почему мы? / Оплата / Доставка»: фон живёт на ссылке внутри пункта ---- */
body.light-mode li.box-shadow.bordered > a,
body.light-mode li.box-shadow.bordered a{
  background:transparent !important;
  color:#3d4149 !important;
}
body.light-mode li.box-shadow.bordered.active > a,
body.light-mode li.box-shadow.bordered.active a{
  color:#16181d !important;
  font-weight:600;
}

/* «Ранее вы смотрели» и прочие карточки-плитки ------------------------------------------- */
body.light-mode .block-item__inner,
body.light-mode .block-item__inner.bordered,
body.light-mode .block-item,
body.light-mode .looked-item,
body.light-mode .matrosite_looked .product-item{
  background:#fff !important;
  border:1px solid #e4e6ea !important;
  border-radius:12px !important;
  color:#16181d !important;
  box-shadow:none !important;
}
body.light-mode .block-item__inner *,
body.light-mode .block-item *{
  background:transparent !important;
  color:#16181d !important;
}
body.light-mode .block-item__inner a:hover,
body.light-mode .block-item a:hover{color:#85B500 !important}

/* Подстраховка: тёмные заливки внутри контента страницы товара и категории. Шапку, подвал,
   баннеры и слайдер не трогаем — там тёмный фон задуман. */
body.light-mode .product-content .bordered,
body.light-mode .catalog-product__block .bordered{
  background:#fff !important;
  border-color:#e4e6ea !important;
}

/* Подложка шапки. Сейчас её полностью перекрывает белый .top-panel, но на других разрешениях
   тот может не закрывать всю высоту — тогда снизу проглядывала бы чёрная полоса. */
body.light-mode .top-header{background:#fff !important}


/* === kwik hero buttons v1 === */
/* Кнопки на слайдах баннера лежат на фотографии, а не на светлой странице ------------- */
body.light-mode .btn-slide,
body.light-mode .ocdbanner .btn,
body.light-mode .splide__slide .btn{
  color:#fff !important;
}
/* Контурная кнопка: подложка нужна, потому что кадры на слайдах разной яркости */
body.light-mode .btn-slide.btn-primary,
body.light-mode .ocdbanner .btn.btn-primary,
body.light-mode .splide__slide .btn.btn-primary{
  background:rgba(0,0,0,.35) !important;
  border-color:#85B500 !important;
  color:#fff !important;
  backdrop-filter:blur(2px);
}
body.light-mode .btn-slide.btn-primary:hover,
body.light-mode .ocdbanner .btn.btn-primary:hover,
body.light-mode .splide__slide .btn.btn-primary:hover{
  background:#85B500 !important;
  border-color:#85B500 !important;
  color:#fff !important;
}
/* Заголовок и описание слайда — тоже поверх фотографии */
body.light-mode .splide__slide h1,
body.light-mode .splide__slide h2,
body.light-mode .splide__slide h3,
body.light-mode .splide__slide p,
body.light-mode .ocdbanner .banner-desc,
body.light-mode .ocdbanner .title-banner{
  color:#fff !important;
}


/* === kwik wordmark v1 === */
/* Текстовый логотип. Roboto уже подключён на сайте, отдельный файл не нужен. */
.site-wordmark{
  display:inline-block;
  font-family:Roboto,Arial,sans-serif;
  font-weight:900;
  font-size:42px;
  line-height:1;
  letter-spacing:-.02em;
  white-space:nowrap;
  color:#fff;                 /* тёмная тема — по умолчанию */
  -webkit-font-smoothing:antialiased;
}
.site-wordmark span{color:#85B500}   /* последняя буква — фирменный акцент */
.site-wordmark-link,
.site-wordmark-link:hover,
.site-wordmark-link:focus{text-decoration:none}
body.light-mode .site-wordmark{color:#16181d}

/* В шапке телефона места меньше */
@media(max-width:991px){
  .site-wordmark{font-size:30px}
}
@media(max-width:380px){
  .site-wordmark{font-size:26px}
}


/* === kwik ocfilter light v1 === */
/* Панель фильтров ---------------------------------------------------------------------- */
body.light-mode .ocf-content,
body.light-mode .ocf-value-list,
body.light-mode .ocf-filter-body,
body.light-mode .ocf-value-list-body{
  background:#fff !important;
  color:#16181d !important;
}
body.light-mode .ocf-content{
  border:1px solid #e4e6ea !important;
  border-radius:12px !important;
}

/* Названия значений и заголовки фильтров */
body.light-mode .ocf-value-name,
body.light-mode .ocf-value,
body.light-mode .ocf-filter-name,
body.light-mode .ocf-filter-header,
body.light-mode .ocf-option-name{
  color:#16181d !important;
}

/* Счётчик товаров у значения: был белым на светло-сером */
body.light-mode .ocf-value-count{
  background:#eef0f3 !important;
  color:#3d4149 !important;
  border-color:#e4e6ea !important;
}

/* Подписи под ползунком цены */
body.light-mode .ocf-noUi-value,
body.light-mode .ocf-noUi-tooltip{
  color:#6b7280 !important;
}
body.light-mode .ocf-noUi-target{
  background:#eef0f3 !important;
  border-color:#e4e6ea !important;
}

/* Поля ввода диапазона */
body.light-mode .ocf-input,
body.light-mode .ocf-content input[type=text],
body.light-mode .ocf-content input[type=number]{
  background:#fff !important;
  color:#16181d !important;
  border:1px solid #d7dae0 !important;
}

/* Кнопка сброса была полупрозрачно-красной поверх тёмного фона */
body.light-mode .ocf-btn-default{
  background:#f2f3f5 !important;
  color:#3d4149 !important;
  border:1px solid #d7dae0 !important;
}
body.light-mode .ocf-btn-default:hover{
  background:#e9ebee !important;
  color:#16181d !important;
}

/* Разделители между значениями */
body.light-mode .ocf-value + .ocf-value,
body.light-mode .ocf-filter + .ocf-filter{
  border-color:#eef0f3 !important;
}


/* === kwik contrast pass v1 === */
/* Заголовки колонок подвала — были белыми на осветлённой подложке ---------------------- */
body.light-mode .footer-column__title,
body.light-mode .footer-column .title,
body.light-mode .site-footer .footer-title{
  color:#16181d !important;
}
body.light-mode .site-footer,
body.light-mode .site-footer p,
body.light-mode .site-footer li,
body.light-mode .site-footer span{
  color:#3d4149 !important;
}
body.light-mode .site-footer a{color:#3d4149 !important}
body.light-mode .site-footer a:hover{color:#85B500 !important}

/* «В наличии» и прочие зелёные подписи: неон с тёмной темы на белом не читается -------- */
body.light-mode .text-green,
body.light-mode .stock-status,
body.light-mode .product-stock,
body.light-mode .in-stock{
  color:#2f7d1f !important;
}

/* Хлебные крошки */
body.light-mode .breadcrumb,
body.light-mode .breadcrumb a,
body.light-mode .breadcrumb li,
body.light-mode .breadcrumb li a{
  color:#6b7280 !important;
}
body.light-mode .breadcrumb li:last-child,
body.light-mode .breadcrumb li.active{
  color:#3d4149 !important;
}

/* === kwik green links v1 === */
/* Пагинация: ссылки залиты фирменным зелёным, поэтому текст белый */
body.light-mode .pagination a,
body.light-mode .pagination li > a,
body.light-mode .pagination li > span{
  color:#fff !important;
}
body.light-mode .pagination a:hover{
  background:#6E9600 !important;
  color:#fff !important;
}

/* Зелёные ссылки на светлом фоне: мелкому тексту нужен оттенок глубже,
   иначе #85B500 на белом даёт всего 2.44 при норме 4.5 */
body.light-mode .kwd__all,
body.light-mode .product-more a,
body.light-mode .links a{
  color:#5C7D00 !important;
}
body.light-mode .kwd__all:hover,
body.light-mode .product-more a:hover,
body.light-mode .links a:hover{
  color:#4A6300 !important;
}


/* === kwik green contrast final === */
/* Зелёные заливки, несущие белый текст --------------------------------------------------
   #85B500 + белый = 2.44 (мало даже для крупного). #5C7D00 + белый = 4.79. */
body.light-mode .btn-primary:not(.btn-slide),
body.light-mode .green .btn-primary:not(.btn-slide),
body.light-mode .pagination a,
body.light-mode .pagination li > a,
body.light-mode .pagination li > span,
body.light-mode .ocf-btn-block,
body.light-mode .ocf-search-btn-popover,
body.light-mode button[type=submit].btn-primary,
body.light-mode .button-cart,
body.light-mode .btn-cart{
  background-color:#5C7D00 !important;
  border-color:#5C7D00 !important;
  color:#fff !important;
}
body.light-mode .btn-primary:not(.btn-slide):hover,
body.light-mode .pagination a:hover,
body.light-mode .ocf-btn-block:hover,
body.light-mode .button-cart:hover,
body.light-mode .btn-cart:hover{
  background-color:#4A6300 !important;
  border-color:#4A6300 !important;
  color:#fff !important;
}

/* Верхнее меню — белые пункты на зелёной полосе, та же история */
body.light-mode .top-menu__wrapper{background-color:#5C7D00 !important}

/* Зелёный текст на светлом фоне */
body.light-mode a.text-green,
body.light-mode .kwd__all,
body.light-mode .product-more a,
body.light-mode .links a{
  color:#5C7D00 !important;
}

/* Акцент без текста остаётся фирменным: буква логотипа, рамки, иконки, полосы */
body.light-mode .site-wordmark span{color:#85B500 !important}

/* ==========================================================================
   Перенос длинных названий товаров
   Поставщик отдаёт названия одной строкой без пробелов:
   «…/SSD512Gb/RTX5050 8Gb (85W)/18"/IPS/WQXGA/2560x1600/165Hz/NoOS/RJ-45/Black/2.8kg».
   Для браузера это одно неразрывное слово — заголовок карточки и хлебные крошки
   вылезали за край страницы, из-за чего появлялась горизонтальная прокрутка
   и вся вёрстка уезжала вбок.
   ========================================================================== */
.main-title,
.product .main-title,
h1, h2, h3,
.breadcrumb > li,
.breadcrumb > li > a,
.product-thumb .name,
.product-thumb .name a,
.product-layout .name a,
.caption .name a,
.product-name,
.autocomplete-name,
.mini-cart-name {
  overflow-wrap: anywhere;
  word-break: break-word;
}

/* Крошки должны переноситься на вторую строку, а не растягивать страницу. */
.breadcrumb {
  flex-wrap: wrap;
}


/* ==========================================================================
   Плавающая кнопка Telegram на мобильных
   Кнопка 64px висит поверх содержимого и на узких экранах закрывает карточки
   товаров и кнопку покупки. Уменьшаем и приподнимаем — попасть по ней всё ещё
   легко (44px — минимальный комфортный размер для пальца), но она больше
   ничего не перекрывает.
   ========================================================================== */
@media (max-width: 767px) {
  .telegram-float {
    bottom: 104px !important;
    right: 10px !important;
  }

  .telegram-float svg {
    width: 44px !important;
    height: 44px !important;
  }
}

/* ==========================================================================
   Сетка каталога: карточки не должны раздуваться от длинных названий
   Колонки заданы как 1fr, а минимальная ширина такой колонки равна минимальной
   ширине содержимого. Название ноутбука вида
   «7 260/16Gb (1*16 D5)/SSD512Gb/RTX5050 8Gb (85W)/16"/IPS/WUXGA/1920x1200/165Hz/NoOS/RJ-45/Black/2.2kg»
   для браузера одно неразрывное слово — оно распирало колонку, карточки
   становились огромными, а сетка вылезала за пределы экрана. В категориях с
   короткими названиями этого не видно, поэтому ломалось «через одну».
   ========================================================================== */
.catalog-grid > *,
.catalog-list > *,
.product-item__container,
.product-item,
.product-item__basket,
.product-item__title {
  min-width: 0;
}

.product-item__title,
.product-item__heading,
.product-item__heading a,
.product-item__model,
.product-item__model span {
  overflow-wrap: anywhere;
  word-break: break-word;
}

/* Шаблон просит обрезать название до двух строк (класс text-line-2), но обрезка
   не срабатывала, и карточки в ряду получались разной высоты. Возвращаем как задумано —
   полное название всегда есть на странице товара. */
.catalog-grid .product-item__heading.text-line-2 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
}
