/* === Кнопки избранного и сравнения === */
.pt-icons {
    display: flex;
    gap: 8px;
    margin-top: 5px;
}



.pt-toggle {
    font-size: 22px;
    text-decoration: none;
    color: #999;
    transition: color 0.2s ease, transform 0.2s;
}

.pt-toggle:hover {
    transform: scale(1.1);
    color: #222;
}

.pt-toggle.active {
    color: #e63946;
}

/* === Обёртка таблицы === */
.pt-compare-wrapper {
    position: relative;
    overflow: hidden;
    margin-bottom: 30px;
}

.pt-compare-scroll {
    overflow-x: auto;
    scroll-behavior: smooth;
}

/* === Таблица сравнения === */
.pt-compare-table table {
    border-collapse: collapse;
    table-layout: fixed;
    border: 1px solid #ddd;
    min-width: 1200px;
    width: auto !important;
}

.pt-compare-table th,
.pt-compare-table td {
    border: 1px solid #ddd;
    padding: 10px;
    text-align: center;
    vertical-align: middle;
    background: #fff;
}

.pt-compare-table thead th,
.pt-compare-table thead td {
    vertical-align: unset;
}

.pt-compare-table th:first-child,
.pt-compare-table td:first-child {
    background: #f8f8f8;
    position: sticky;
    left: 0;
    z-index: 3;
    min-width: 250px;
    font-weight: 600;
}

/* === ПК (≥1200px) === */
@media (min-width: 1200px) {
    .pt-compare-table th:not(:first-child),
    .pt-compare-table td:not(:first-child) {
        min-width: 300px;
    }
    .pt-compare-table table {
        min-width: calc(250px + 3 * 300px);
    }
}

/* === Планшеты (768–1199px) === */
@media (min-width: 768px) and (max-width: 1199px) {
    .pt-compare-table th:not(:first-child),
    .pt-compare-table td:not(:first-child) {
        min-width: 280px;
    }
    .pt-compare-table table {
        min-width: calc(250px + 2 * 280px);
    }
}

/* === Телефоны (<768px) === */
@media (max-width: 767px) {
    .pt-compare-table th:not(:first-child),
    .pt-compare-table td:not(:first-child) {
        min-width: 260px;
    }
    .pt-compare-table table {
        min-width: calc(250px + 260px);
    }
}

/* === Кнопки прокрутки === */
.pt-scroll-btn {
        position: absolute;
    top: 200px;
    background: #fff;
    font-size: 20px;
    cursor: pointer;
    z-index: 10;
    box-shadow: 0 2px 5px rgb(0 0 0 / 38%);
    border-radius: 5px;
    padding: 0;
    height: 50px;
    width: 50px;
    display: flex !important;
    justify-content: center;
    align-items: center;
    transition: 0.2s;
}

.pt-scroll-btn.disabled {
    opacity: 0.7 !important;
}

.pt-scroll-btn svg {
    transition: 0.2s;
}

.pt-scroll-btn:hover {
    background-color: #4781f440;
}

.pt-scroll-left:hover svg {
    transform: translateX(-5px);
}

.pt-scroll-left {
    left: 1%;
}

.pt-scroll-right {
    right: 1%;
}

.pt-scroll-right:hover svg {
    transform: translateX(5px);
}


@media (max-width: 993px) {
    .pt-compare-wrapper {
        padding: 0 30px;
    }
}



@media (min-width: 910px) {
    .pt-compare-scroll {
    overflow-x: auto;
    scroll-behavior: smooth;

    /* Скрываем скроллбар для разных браузеров */
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE 10+ */
}

.pt-compare-scroll::-webkit-scrollbar {
    display: none; /* Chrome, Safari, Opera */
}
}

@media (max-width: 910px) {
    .pt-scroll-left {
        display: none !important;
    }
    .pt-scroll-right {
        display: none !important;
    }
    
    .pt-compare-wrapper {
        padding: 0 0px;
    }
} 

/* === Изображения и названия === */
.pt-compare-product img {
    max-width: 100px;
    height: auto;
}

.pt-name {
    display: block;
    margin: 5px 0;
    font-weight: 500;
}

/* === Кнопка удаления === */
.pt-remove {
    border: none;
    background: none;
    cursor: pointer;
    color: #c7c7c7;
    font-size: 18px;
    position: relative;
    right: calc(-50% + 10px);
    transition: 0.2s;
}

.pt-remove:hover {
    color: #ff5555;
}

/* === Сброс sticky при ширине < 700px === */
@media (max-width: 910px) {
    .pt-compare-table th:first-child,
    .pt-compare-table td:first-child {
        position: static;
        left: auto;
        z-index: 1;
    }
}


.compate__prod__title {
    display: -webkit-box;
  -webkit-line-clamp: 2; /* количество строк */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  color: black !important;
}

.pt-compare .add_to_cart_button {
    margin-top: 10px;
}

.pt-compare .compare__prod__cont {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
    max-height: none;
}

.pt-compare .compare__cat__link a {
    transition: 0.2s;
}

.pt-compare .compare__cat__link a:hover {
    color: #1e68c4bd;
}

.compare__empty {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    gap: 10px;
    margin: 0 auto;
}

.compare__empty__title {
    font-size: 32px !important;
}

.compare__empty__sub-title {
    font-size: 22px;
}

.compare__empty__text {
    font-size: 18px;
}

.compare__empty__button {
    background-color: #1c61e7;
    color: white;
    padding: 10px;
    border-radius: 4px;
    transition: 0.2s;
    margin-bottom: 30px;
}

.compare__empty__button:hover {
    opacity: 0.8;
    transform: translateY(2px);
    color: white !important;
}

.pt-favorites-list {
        display: flex;
    flex-direction: row;
    gap: 20px;
    flex-wrap: wrap;
}

.product.pt-fav-item {
    display: flex;
    flex-direction: column;
    width: calc(25% - 15px);
    padding: 15px;
}

.pt-fav-item img {
    filter: brightness(98%);
}

.product.pt-fav-item h3 {
    display: -webkit-box;
  -webkit-line-clamp: 2; /* количество строк */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  color: black !important;
}

.pt-fav-icons {
    display: flex;
    justify-content: end;
}

.pt-fav-icons .pt-remove {
    position: unset !important;
}

.pt-favorites-list .button {
    text-align: center;
}

.pt-favorites-list  .fav__cat__link {
    font-size: 12px;
    color: #444444;
}

.pt-favorites-list  .fav__cat__link:hover {
    color: #1e68c4;
}

.pt-favorites-list h3 {
    font-size: 16px;
}

@media (max-width: 800px) {
    
    .product.pt-fav-item {
    width: calc(33.33% - 13.33px);
}
}

@media (max-width: 650px) {
    
    .product.pt-fav-item {
    width: calc(50% - 10px);
}
}



/* ===== Уведомления ===== */
.pt-notification {
    position: fixed;
    top: 30px;
    left: 50%;
    transform: translateX(-50%) translateY(-20px);
    z-index: 99999;
    background: #e6ffed;
    color: #0b7a3a;
    padding: 14px 22px;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 500;
    box-shadow: 0 6px 20px rgba(0,0,0,0.15);
    opacity: 0;
    text-align: center;
    pointer-events: none;
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.pt-notification.show {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

.pt-notification.success {
    background: #e6ffed;
    color: #0b7a3a;
}

.pt-notification.warning {
    background: #fff6e6;
    color: #8a5a00;
}


.pt-comp-fav-title {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 10px;
}

.pt-comp-fav-title * {
    margin-bottom: 0 !important;
}

.pt-count {
   margin: 0;
}


.pt-icons {
	display: none;
	position: absolute !important; 
	flex-direction: column;
	gap: 8px;
	top: 0px;
	right: 20px;
	background-color: white;
	border-radius: 5px;
	align-items: center;
	padding: 6px;
}

.pt-icons svg path {
	fill: #2c2d33;
}

.pt-icons .pt-fav-svg.active path {
	fill: #ff4747;
}

.pt-icons .pt-cmp-svg.active path {
	fill: #1c61e7cf;
}

.product:hover .pt-icons {
	display: flex;
}

.product-details-wrapper .pt-icons {
	display: flex;
} 

.pt-icons .pt-toggle {
	display: flex;
	justify-content: center;
	align-items: center;
}

@media screen and (max-width: 993px) {
	.product-details-wrapper .pt-icons {
	position: unset !important;
	flex-direction: row;
	max-width: 70px;
	justify-content: space-between;
} 
}


/* .pt-header-icons:nth-child(2) {
  display: none;
}  */

@media screen and (max-width: 992px) {
    .pt-header-icons:nth-child(1) {
  display: none;
}  
}

.pt-header-icons:nth-of-type(n+3) {
    display: none !important;
}

.site-header-cart .pt-header-icons:nth-of-type(n+2) {
    display: none !important;
}

.site-header-cart {
    display: flex;
    gap: 10px;
    align-items: center;
}

.pt-header-icons {
    display: flex;
    align-items: center;
    height: 100%;
    gap: 5px;
}

.pt-header-icons .pt-icon-link {
    display: flex;
    align-items: center;
    height: 100%;
}

.pt-header-icons .pt-icon-count {
    position: relative;
    top: -10px;
    left: -5px;
    background-color: #1c61e7;
    border-radius: 50%;
    height: 15px;
    width: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 12px;
    color: white;
    font-weight: 500;
    opacity: 0;
    transition: opacity 0.3s ease !important;
}

.pt-header-icons svg path {
    transition: 0.2s;
}

.pt-header-icons svg:hover path {
    fill: #1c61e7;
}

@media screen and (max-width: 992px) {
    .pt-header-icons svg path {
        fill: #1c61e7;
    }
    
    .pt-header-icons svg:hover path {
        opacity: 0.8;
    }
}

@media screen and (max-width: 442px) {
    .pt-header-icons {
        gap: 5px;
    }
    
    .site-header-cart {
        gap: 5px;
    }
    
    .site-branding {
        width: 60% !important;
    }
    
    .site-branding .menu-toggle {
        width: 30px !important;
    }
}

@media screen and (max-width: 365px) {
    .site-branding {
        width: 69% !important;
    }
}

.pt-favorites-list .add_to_cart_button {
    width: 100% !important;
}

.header-widget-region #custom_html-18 {
	display: flex;
	justify-content: end;
	    position: relative;
    height: 0px !important;
    padding: 0;
    top: -22px;
}

.pt-header-icons-white {
	display: none !important;
	gap: 15px !important;
}

.pt-header-icons-white .pt-icon-compare {
	border-right: white solid 1px;
    height: 24px;
	width: 42px;
}

.pt-header-icons-white a {
    pointer-events: visible !important;
}

.pt-header-icons-white svg {
	width: 22px;
	fill: white !important;
}

.pt-header-icons-white svg path {
	fill: white !important;
}

.pt-header-icons-white a {
    text-decoration: none !important;
}

.pt-header-icons-white .pt-icon-count {
	top: -10px !important;
    left: -5px !important;
    background-color: #222222 !important;
}



@media screen and (max-width: 550px) {
	.header-widget-region #custom_html-12 {
		text-align: start;
	}
}

@media screen and (max-width: 1080px) {
	
		.pt-header-icons {
		display: none !important;
	}
	
	.header-widget-region #custom_html-18 .pt-header-icons-white {
		display: flex !important;
	}
	

}