/*
Theme Name:     Wtyczka kadence
Theme URI:      n/a
Template:       kadence
Author:         Pro Author
Author URI:     n/a
Description:    Child Theme Description
Version:        1.0
License:        GNU General Public License v3.0 (or later)
License URI:    https://www.gnu.org/licenses/gpl-3.0.html
*/


.woocommerce-loop-image-link img,
.attachment-woocommerce_thumbnail,
.secondary-product-image {
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
  aspect-ratio: 3/4 !important; 
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {border:0px;}

#tab-title-description {display:none;}

.single_add_to_cart_button{
	margin-bottom: 20px;
}

/* === SINGLE PRODUCT PAGE CUSTOMIZATION === */

/* Opis produktu */
.product-full-description {
    margin-top: 40px;
    margin-bottom: 40px;
    clear: both;
}

.product-full-description h2 {
    margin-bottom: 20px;
    font-size: 24px;
    font-weight: 600;
}

.product-full-description .description-content {
    font-size: 16px;
    line-height: 1.6;
}

/* Opinie */
.product-reviews-wrapper {
    margin-top: 40px;
    padding-top: 40px;
    border-top: 1px solid #e5e5e5;
    clear: both;
}

.product-reviews-wrapper > h2 {
    margin-bottom: 30px;
    font-size: 24px;
    font-weight: 600;
}

#reviews {
    margin-top: 20px;
}

#reviews h2 {
    display: none; /* Ukryj drugi nagłówek */
}

/* Dodatkowe informacje w meta */
.product-additional-meta {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #e5e5e5;
}

.product-additional-meta h4 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 15px;
}

.product-additional-meta .meta-item {
    margin-bottom: 10px;
    font-size: 14px;
}

.product-additional-meta .meta-item strong {
    font-weight: 600;
    margin-right: 8px;
}

/* Stylowanie tabów - pokazuj tylko opinie */
.woocommerce-tabs {
    margin-top: 40px;
}

.woocommerce-tabs ul.tabs {
    display: none; /* Ukryj nawigację tabów bo mamy tylko jeden tab */
}

.woocommerce-tabs .panel {
    padding: 0;
    margin-top: 0;
}

/* === FULL WIDTH SLIDER STYLES === */

/* Slider na pełną szerokość ekranu - wszystkie bloki Glide */
.wp-block-glide-blocks-slider,
.wp-block-glide-blocks-slider.full-width-slider {
	width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	position: relative;
	z-index: 10;
	overflow: visible !important;
}

/* Usuń marginesy dla slidera na stronie głównej */
body.home .wp-block-glide-blocks-slider,
body.home .wp-block-glide-blocks-slider.full-width-slider {
	margin-top: 0;
	margin-bottom: 60px;
}

/* Slider jako pierwsza sekcja pod menu */
body.home .content-area > .entry-content > .wp-block-glide-blocks-slider:first-child {
	margin-top: -40px; /* Zbliż do menu */
}

/* Kontener dla pozostałej zawartości */
.content-wrap {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}

/* Wrapper dla zawartości strony (z wyłączeniem full-width elementów) */
.entry-content > *:not(.wp-block-glide-blocks-slider) {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}

/* Poprawki dla slidera - ważne! */
.wp-block-glide-blocks-slider .glide,
.wp-block-glide-blocks-slider.full-width-slider .glide {
	overflow: visible !important;
	position: relative;
}

.wp-block-glide-blocks-slider .glide__track,
.wp-block-glide-blocks-slider.full-width-slider .glide__track {
	overflow: visible !important;
}

.wp-block-glide-blocks-slider .glide__slides,
.wp-block-glide-blocks-slider.full-width-slider .glide__slides {
	overflow: visible !important;
}

/* Strzałki - poprawione pozycjonowanie */
.wp-block-glide-blocks-slider .glide__arrows,
.wp-block-glide-blocks-slider.full-width-slider .glide__arrows {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	right: 0;
	z-index: 15;
	pointer-events: none;
	width: 100%;
}

.wp-block-glide-blocks-slider .glide__arrow,
.wp-block-glide-blocks-slider.full-width-slider .glide__arrow {
	position: absolute;
	top: 0;
	pointer-events: auto;
	z-index: 20;
	background: rgba(255, 255, 255, 0.9) !important;
	border: none !important;
	border-radius: 50% !important;
	cursor: pointer !important;
	width: 50px !important;
	height: 50px !important;
	font-size: 24px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2) !important;
}

.wp-block-glide-blocks-slider .glide__arrow--left,
.wp-block-glide-blocks-slider.full-width-slider .glide__arrow--left {
	left: 30px;
}

.wp-block-glide-blocks-slider .glide__arrow--right,
.wp-block-glide-blocks-slider.full-width-slider .glide__arrow--right {
	right: 30px;
}

.wp-block-glide-blocks-slider .glide__arrow:hover,
.wp-block-glide-blocks-slider.full-width-slider .glide__arrow:hover {
	background: #fff !important;
	transform: scale(1.1) !important;
}

/* Slajdy - upewnij się że peek działa */
.wp-block-glide-blocks-slider .glide__slide,
.wp-block-glide-blocks-slider.full-width-slider .glide__slide {
	display: flex;
	align-items: center;
	justify-content: center;
}

.wp-block-glide-blocks-slider .glide__slide img,
.wp-block-glide-blocks-slider.full-width-slider .glide__slide img {
	width: 100%;
	height: auto;
	max-height: 440px;
	object-fit: cover;
	border-radius: 0;
}

/* Responsywność */
@media (max-width: 1024px) {
	.wp-block-glide-blocks-slider .glide__slide img,
	.wp-block-glide-blocks-slider.full-width-slider .glide__slide img {
		max-height: 300px;
	}
	
	.wp-block-glide-blocks-slider .glide__arrow,
	.wp-block-glide-blocks-slider.full-width-slider .glide__arrow {
		width: 40px !important;
		height: 40px !important;
		font-size: 18px !important;
	}
	
	.wp-block-glide-blocks-slider .glide__arrow--left,
	.wp-block-glide-blocks-slider.full-width-slider .glide__arrow--left {
		left: 20px;
	}
	
	.wp-block-glide-blocks-slider .glide__arrow--right,
	.wp-block-glide-blocks-slider.full-width-slider .glide__arrow--right {
		right: 20px;
	}
	
	.entry-content > *:not(.wp-block-glide-blocks-slider) {
		padding-left: 15px;
		padding-right: 15px;
	}
}

@media (max-width: 768px) {
	body.home .wp-block-glide-blocks-slider:first-child {
		margin-top: -20px;
	}
	
	.wp-block-glide-blocks-slider .glide__slide img,
	.wp-block-glide-blocks-slider.full-width-slider .glide__slide img {
		max-height: 250px;
	}
	
	.wp-block-glide-blocks-slider .glide__arrow--left,
	.wp-block-glide-blocks-slider.full-width-slider .glide__arrow--left {
		left: 10px;
	}
	
	.wp-block-glide-blocks-slider .glide__arrow--right,
	.wp-block-glide-blocks-slider.full-width-slider .glide__arrow--right {
		right: 10px;
	}
	
	.entry-content > *:not(.wp-block-glide-blocks-slider) {
		padding-left: 10px;
		padding-right: 10px;
	}
}

/* === FIX FOR KADENCE ADVANCED HEADING === */
/* Naprawa wyświetlania nagłówków Kadence - wymuszenie poziomego tekstu */
.wp-block-kadence-advancedheading,
.wp-block-kadence-advancedheading[data-kb-block],
.kt-adv-heading972_30d746-3f,
h1.kt-adv-heading972_30d746-3f,
h1.wp-block-kadence-advancedheading {
	writing-mode: horizontal-tb !important;
	text-orientation: mixed !important;
	display: block !important;
	white-space: normal !important;
	word-wrap: break-word !important;
	overflow-wrap: break-word !important;
}

.entry.loop-entry{
	box-shadow: 5px 5px 5px 5px rgb(0 0 0 / 4%) !important;
}

.woocommerce .products.align-buttons-bottom li.product .product-action-wrap{
	padding-top: 0;
}

.woocommerce ul.products.woo-archive-btn-button .button:not(.kb-button){
	background-color: white;
	border: 1px solid #1f7c4e !important;
	color: black !important;
}

.woocommerce ul.products.woo-archive-btn-button .button:not(.kb-button):hover{
	background-color: white;
	border: 1px solid #1f7c4e !important;
	color: black !important;
}

.woocommerce-pagination ul{
	text-align: center;
}

.kadence-breadcrumbs{
	color: black;
}

.splide__pagination{
	display: none !important;
}

.splide__arrow{
	background-color: #1f7c4e !important;
	height: 2em !important;
	border-radius: 25px !important;
}

/* Waga produktu w pętli */
.product-loop-weight {
    margin: 10px 0 15px 0;
    font-size: 14px;
    color: #666;
    line-height: 1.4;
}

.product-loop-weight .weight-label {
    font-weight: 600;
    color: #333;
}

.product-loop-weight .weight-value {
    color: #064072;
    font-weight: 500;
}

.woocommerce ul.products.woo-archive-btn-button li.product .price{
	margin-bottom: 0 !important;
}

/* Klikalny badge kategorii */
.kadence-category-badge-link {
    text-decoration: none !important;
    display: inline-block;
}


.kadence-product-category {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 5;
}

.kadence-category-badge {
    display: inline-block;
    padding: 4px 10px;
    background: #1f7c4e;
    color: white;
    font-size: 11px;
    font-weight: 600;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.2s ease;
}

/* === CUSTOM FILTERS === */
.custom-filters-wrapper {
    margin-bottom: 30px;
    position: relative;
}

.filters-toggle-btn {
    background: #1f7c4e;
    color: white;
    border: none;
    padding: 12px 24px;
    border-radius: 8px;
    cursor: pointer;
    font-size: 15px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 10px;
    transition: all 0.3s ease;
}

.filters-toggle-btn:hover {
    background: #064072;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(31, 124, 78, 0.3);
}

.filters-toggle-btn.active {
    background: #064072;
}

.filters-toggle-btn svg {
    width: 20px;
    height: 20px;
}

.filters-panel {
    background: white;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    margin-top: 20px;
    padding: 25px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

.filters-content h3 {
    margin: 0 0 25px 0;
    font-size: 20px;
    color: #064072;
    border-bottom: 2px solid #1f7c4e;
    padding-bottom: 10px;
}

.filter-group {
    margin-bottom: 25px;
}

.filter-group h4 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 20px;
    color: #333;
}

.filter-group h4 span {
    color: #1f7c4e;
    font-weight: 500;
    margin-left: 10px;
}

/* Range Slider Styles */
.range-slider-wrapper {
    position: relative;
    padding: 0 10px;
}

.range-values {
    display: flex;
    justify-content: space-between;
    margin-bottom: 25px;
    font-size: 12px;
    color: #999;
}

.weight-values {
    position: relative;
}

.weight-values span {
    position: relative;
    padding: 0 2px;
}

.dual-range-slider {
    position: relative;
    height: 50px;
    margin-bottom: 25px;
    padding: 5px 0;
}

.slider-track {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 100%;
    height: 8px;
    background: #e8e8e8;
    border-radius: 4px;
    box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
}

.slider-range {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    height: 8px;
    background: linear-gradient(90deg, #1f7c4e, #064072);
    border-radius: 4px;
    pointer-events: none;
    box-shadow: 0 1px 3px rgba(31, 124, 78, 0.3);
    transition: all 0.2s ease;
}

.dual-range-slider input[type="range"] {
    position: absolute;
    width: 100%;
    height: 50px;
    background: transparent;
    pointer-events: none;
    -webkit-appearance: none;
    appearance: none;
    top: 0;
    margin: 0;
}

.dual-range-slider input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 24px;
    height: 24px;
    background: #1f7c4e;
    border: 3px solid white;
    border-radius: 50%;
    cursor: grab;
    pointer-events: auto;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
    transition: all 0.2s ease;
    position: relative;
    z-index: 2;
}

.dual-range-slider input[type="range"]::-moz-range-thumb {
    width: 24px;
    height: 24px;
    background: #1f7c4e;
    border: 3px solid white;
    border-radius: 50%;
    cursor: grab;
    pointer-events: auto;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
    transition: all 0.2s ease;
    position: relative;
    z-index: 2;
}

.dual-range-slider input[type="range"]:active::-webkit-slider-thumb {
    cursor: grabbing;
    transform: scale(1.1);
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.3);
}

.dual-range-slider input[type="range"]:active::-moz-range-thumb {
    cursor: grabbing;
    transform: scale(1.1);
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.3);
}

.dual-range-slider input[type="range"]::-webkit-slider-thumb:hover {
    transform: scale(1.15);
    background: #064072;
    box-shadow: 0 3px 10px rgba(6, 64, 114, 0.4);
}

.dual-range-slider input[type="range"]::-moz-range-thumb:hover {
    transform: scale(1.15);
    background: #064072;
    box-shadow: 0 3px 10px rgba(6, 64, 114, 0.4);
}

.dual-range-slider input[type="range"]::-webkit-slider-runnable-track {
    width: 100%;
    height: 50px;
    cursor: pointer;
    background: transparent;
    border: none;
}

.dual-range-slider input[type="range"]::-moz-range-track {
    width: 100%;
    height: 50px;
    cursor: pointer;
    background: transparent;
    border: none;
}

/* Z-index dla odpowiedniej kolejności */
.dual-range-slider input.range-min {
    z-index: 1;
}

.dual-range-slider input.range-max {
    z-index: 2;
}

/* Nowe style dla filtrów */
.filters-content {
    max-width: 100%;
    overflow: hidden;
}

.filter-group {
    margin-bottom: 15px;
    max-width: 100%;
}

.filter-title {
    font-size: 16px;
    font-weight: 600;
    color: #333;
    margin-bottom: 15px;
    display: block;
}

/* Naprawienie odstępu przed przyciskiem dodaj do koszyka */
.woocommerce .products.align-buttons-bottom li.product .product-action-wrap {
    margin-top: 10px !important;
    padding-top: 0 !important;
}

/* Usunięcie nadmiernej wysokości karty produktu */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
    display: flex;
    flex-direction: column;
}

.woocommerce ul.products li.product .product-details {
    flex-grow: 0;
}

.woocommerce ul.products li.product .price {
    margin-bottom: 10px;
}

.price-filter-group {
    max-width: 100%;
    overflow: hidden;
}

/* Style dla suwaka ceny */
.price-range-display {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px;
    font-size: 16px;
    font-weight: 500;
}

.range-separator {
    color: #999;
    margin: 0 10px;
}

.price-slider-wrapper {
    position: relative;
    height: 30px;
    padding: 5px 0;
    width: 100%;
    max-width: 100%;
    margin-bottom: 10px;
}

.price-slider-track {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    transform: translateY(-50%);
    height: 6px;
    background: #e5e5e5;
    border-radius: 3px;
}

.price-slider-range {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    height: 6px;
    background: linear-gradient(90deg, #1f7c4e, #064072);
    border-radius: 3px;
    transition: all 0.2s;
    left: 0%;
    width: 100%;
}

.price-slider-wrapper input[type="range"] {
    position: absolute;
    width: 100%;
    height: 30px;
    background: transparent;
    pointer-events: none;
    -webkit-appearance: none;
    appearance: none;
    top: 0;
    margin: 0;
}

.price-slider-wrapper input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 20px;
    height: 20px;
    background: white;
    border: 2px solid #1f7c4e;
    border-radius: 50%;
    cursor: grab;
    pointer-events: auto;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
    transition: all 0.2s;
}

.price-slider-wrapper input[type="range"]::-moz-range-thumb {
    width: 20px;
    height: 20px;
    background: white;
    border: 2px solid #1f7c4e;
    border-radius: 50%;
    cursor: grab;
    pointer-events: auto;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
    transition: all 0.2s;
}

.price-slider-wrapper input[type="range"]:active::-webkit-slider-thumb {
    cursor: grabbing;
    transform: scale(1.2);
}

.price-slider-wrapper input[type="range"]:active::-moz-range-thumb {
    cursor: grabbing;
    transform: scale(1.2);
}

.price-slider-wrapper input.price-range-min {
    z-index: 1;
}

.price-slider-wrapper input.price-range-max {
    z-index: 2;
}

/* Style dla checkboxów wagi */
.weight-checkboxes {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
    gap: 10px;
}

.weight-checkbox-label {
    display: flex;
    align-items: center;
    padding: 10px;
    border: 1px solid #e5e5e5;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s;
}

.weight-checkbox-label:hover {
    border-color: #1f7c4e;
    background: #f9f9f9;
}

.weight-checkbox {
    display: none;
}

.checkbox-custom {
    width: 18px;
    height: 18px;
    border: 2px solid #ccc;
    border-radius: 3px;
    margin-right: 8px;
    position: relative;
    transition: all 0.2s;
}

.weight-checkbox:checked ~ .checkbox-custom {
    background: #1f7c4e;
    border-color: #1f7c4e;
}

.weight-checkbox:checked ~ .checkbox-custom::after {
    content: '';
    position: absolute;
    width: 5px;
    height: 10px;
    border: solid white;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    top: 2px;
    left: 5px;
}

.weight-checkbox:checked ~ .weight-label {
    font-weight: 600;
    color: #1f7c4e;
}

.filter-actions {
    display: flex;
    gap: 15px;
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid #e5e5e5;
}

.btn-apply,
.btn-reset {
    padding: 10px 25px;
    border: none;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn-apply {
    background: #1f7c4e;
    color: white;
    flex: 1;
}

.btn-apply:hover {
    background: #064072;
    transform: translateY(-2px);
}

.btn-reset {
    background: white;
    color: #666;
    border: 1px solid #ddd;
}

.btn-reset:hover {
    background: #f5f5f5;
    color: #333;
}

/* Responsywność filtrów */
@media (max-width: 768px) {
    .price-range,
    .weight-range {
        flex-wrap: wrap;
    }
    
    .price-range input,
    .weight-range input {
        width: calc(50% - 15px);
    }
    
    .filter-actions {
        flex-direction: column;
    }
    
    .btn-apply,
    .btn-reset {
        width: 100%;
    }
}

#woocommerce-product-search-field-0{
	color:black;
}

#mobile-header .site-container{
	padding: 0;
}

.header-cart-button .header-cart-total{
	background-color: #41965c;
	color: white;
}

.theme-kadence .kt-product-carousel-wrap:not(.content-style-unboxed) .woocommerce ul.products li.product{
	max-height: 500px !important;
	min-height: 500px !important;
}

/* Naprawienie siatki produktów - 4 w rzędzie - ALE NIE DLA SLIDERÓW */
/* Tylko dla zwykłych list produktów, NIE dla carousel */
.woocommerce ul.products:not(.splide__list):not(.slick-track):not(.glide__slides):not(.kb-product-carousel-init) {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    column-gap: 20px !important;
    row-gap: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    justify-content: start !important;
    align-items: start !important;
}

/* Ukryj carousel do czasu inicjalizacji, żeby uniknąć przeskoku */
.kb-product-carousel-splide:not(.splide-initialized) ul.products,
.kb-product-carousel-splide.carousel-loading ul.products {
    opacity: 0 !important;
    visibility: hidden !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    height: 400px; /* Zarezerwuj miejsce, żeby strona nie skakała */
}

/* Pokaż carousel po inicjalizacji */
.kb-product-carousel-splide.splide-initialized:not(.carousel-loading) ul.products {
    opacity: 1 !important;
    visibility: visible !important;
    height: auto;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

/* Upewnij się, że produkty w carousel są ułożone poziomo */
.kb-product-carousel-splide ul.products {
    display: flex !important;
    flex-wrap: nowrap !important;
    grid-template-columns: none !important;
}

/* ==============================================
   WYRÓWNANIE PRZYCISKÓW "DODAJ DO KOSZYKA"
   ============================================== */

/* Ustaw wszystkie karty produktów jako flex kontenery */
.woocommerce ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    position: relative !important;
}

/* Wrapper dla szczegółów produktu - rozciągnij go */
.woocommerce ul.products li.product .product-details {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
	justify-content: flex-end !important;
}

/* Tytuł i cena - pozostaw na górze */
.woocommerce ul.products li.product .product-title,
.woocommerce ul.products li.product .price {
    flex-shrink: 0 !important;
}

/* Przycisk "Dodaj do koszyka" - przesuń na dół */
.woocommerce ul.products li.product .product-action-wrap {
    margin-top: auto !important;
    padding-top: 15px !important;
    flex-shrink: 0 !important;
    width: 100% !important;
}

/* Dla carousel - upewnij się, że slajdy mają równą wysokość */
.kb-product-carousel-splide .splide__slide {
    height: auto !important;
}

.kb-product-carousel-splide .splide__slide .product {
    height: 100% !important;
}

/* Dla zwykłych siatek produktów - wyrównaj wysokość */
.woocommerce ul.products:not(.splide__list) {
    align-items: stretch !important;
}

