/* 
Theme Name: Twenty Twenty-Five Child 
Description: Child theme per Twenty Twenty-Five 
Template: twentytwentyfive
Version: 1.0 
*/

:where(.wp-site-blocks *:focus) {
	outline-width: 0 !important;
    outline-style: none !important;
}
body {
    font-size:1em;
}

.wp-block-group.product-filter {
	position: sticky;
    top: 15px;
}

header .custom-logo-link {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-decoration: none;
}
header .custom-logo-link:after {
	content: "ABBIGLIAMENTO";
	margin-top: 10px;
    font-size: 0.6em;
    letter-spacing: 10px;
}
.wp-block-navigation-item.current-menu-item {
	text-decoration:underline
}
.wp-block-woocommerce-product-collection, 
.wp-block-post-title, 
.wc-block-product-template__responsive, 
.wp-block-post-title, 
.wp-block-post-content-is-layout-constrained .woocommerce {
    max-width:var(--wp--style--global--wide-size) !important;
}
.woocommerce div.product div.images .flex-control-thumbs li {
    width:19%;
    clear:none !important;
    margin-top:1%;
    padding-right:1%
}
.flex-control-nav.flex-control-thumbs {
    width:101%;
}
.woocommerce-variation-availability .in-stock {
	display:inline-block;
	padding:5px 10px;
	color:#000;
	background:#00d66f;
	margin-top:0;
	margin-bottom:0;
	border-radius:5px;
	font-size:0.75em !important;
	font-weight:600
}
.woocommerce div.product .woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(5n) {
}
footer {
    margin-top:60px;
}
.wp-block-button__link {
    border-radius:0;
}
.wc-block-components-totals-coupon__button {
    padding-top:5px;
    padding-bottom:5px;
}
.woocommerce-Tabs-panel > h2, .woocommerce-Reviews-title {
    display:none
}
.woocommerce-ordering .orderby {
    padding:10px
}
.wp-block-group {
    margin-top:0 !important
}
.wc-block-product .wc-block-components-product-button {
    display:none
}
.woocommerce span.onsale, 
.wc-block-grid__product-image .wc-block-grid__product-onsale {
    left: -10px;
    top: 10px;
    border-radius: 0;
    min-height: 1em;
    line-height: 1em;
    padding: 10px;
    background-color: var(--wp--preset--color--contrast);
}
.wc-block-grid__product-image .wc-block-grid__product-onsale {
    right: unset;
    color: #FFF;
    border: none;
}
.wp-block-search__inside-wrapper {
    padding:0;
}
.wp-block-search__button.has-icon {
    margin-left:0;
    padding:10px;
    border-left:solid 1px;
}
.wp-block-search__input {
    padding-left: 15px !important;
    padding-right: 5px !important;
}
footer .wp-block-search {
    display:none !important;
}
/* Sovrascrittura per il blocco immagine */
.wp-block-woocommerce-product-image {
    position: relative !important;
}
.variant-count-badge {
    position: absolute;
    bottom: 10px;
    left: 10px;
    background: var(--wp--preset--color--contrast);
    color: #FFF;
    padding: 3px 5px 3px 10px;
    border-radius: 15px;
    font-size: 0.7em;
    text-align:left;
    font-weight: 500;
    text-transform: uppercase;
    z-index: 3;
	display:flex;
}

.color-variation-pill {
	width:15px;
	height:15px;
	border-radius:100%;
	display:inline-block;
	margin-left:-3px;
	border:solid 1px;
}

/* Contenitore hover per la seconda immagine */
.hover-image-product-list {
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(0, 0, 0, 0.6);
    z-index: 2;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}
.wp-block-woocommerce-product-image:hover .hover-image-product-list {
    opacity: 1;
    visibility: visible;
}
.free-shipping-notice {
	position: relative;
	transition: opacity 0.3s ease;
	display: inline-block;
    padding: 15px;
    border: solid;
    font-weight: 600;
}
.free-shipping-notice.loading {
	opacity: 0.7;
}
.free-shipping-notice.loading:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 20px;
	height: 20px;
	margin: -10px 0 0 -10px;
	border: 3px solid rgba(0,0,0,0.1);
	border-radius: 50%;
	border-top-color: #333;
	animation: spin 1s ease-in-out infinite;
}
@keyframes spin {
	to { transform: rotate(360deg); }
}
#wc-stripe-express-checkout-element {
	display: inline-flex;
    justify-content:start !important;
}
#wc-stripe-express-checkout-element > div {
    max-width:240px;
}
.shipping-notice {
	display:flex;
	align-items:center;
	font-weight:600;
    text-decoration: underline;
}
.shipping-notice .emoji {
	font-size:2em;
    margin: 0 5px 0 0 !important;
}
.shipping-notice.notice-cart {
	padding: 0 16px 16px;
}
.wc-cat-filter-dropdown label {margin-bottom:0}

.review_form .comment {
	border-radius:5px
}

@media (max-width:768px) {
    #wc-stripe-express-checkout-element > div {
        max-width:768px;
    }  

    .product-filter {

    }
    .wc-block-components-checkbox-list li {
        display: inline-flex;
        margin-right: 15px;
    }
    .wc-block-components-checkbox .wc-block-components-checkbox__input[type=checkbox] {
        margin-right:5px;
    }
	footer, footer ul, footer p {
		text-align: center !important;
		justify-content: center !important;
	}
    .number-result-alignwide {
        flex-direction:column;
        align-items: start;
    }
    .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
        width:100%;
    }
    .wc-block-components-price-slider {
        margin-bottom:0;
    }
	header .wp-block-site-logo {
		max-width:175px
	}
	header .custom-logo-link:after {
		letter-spacing: 3px;
	}
	
}

.social-icon {
    display: inline-flex;
    width: 30px;
    height: 30px;
    align-items: center;
    justify-content: center;
    border-radius: 0;
    margin-right:8px;
    transition: transform 0.2s ease;
}

.social-icon:hover {
    transform: scale(1.1);
}

/* Colori di default (puoi personalizzare) */
.social-icon.facebook { background: #1877f2;color:#FFF;}
.social-icon.x { background: #000;color:#FFF;}
.social-icon.pinterest { background: #e60023;color:#FFF;}
.social-icon.linkedin { background: #0077b5;color:#FFF;}
.social-icon.whatsapp { background: #25d366;color:#FFF;}
/* Instagram gradient */
.social-icon.instagram {
    background: radial-gradient(circle at 30% 107%, 
        #fdf497 0%, #fdf497 5%, 
        #fd5949 45%, #d6249f 60%, 
        #285AEB 90%);
    color:#FFF;
}

/* TikTok (nero/verde) */
.social-icon.tiktok {
    background: #000;
    position: relative;
    overflow: hidden;
    color:#FFF;
}
.social-icon.tiktok::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, 
        transparent, 
        rgba(37, 244, 238, 0.5), 
        rgba(254, 44, 85, 0.5), 
        transparent);
    color:#FFF;
    transition: 0.5s;
}
.social-icon.tiktok:hover::before {
    left: 100%;
}

.social-icon svg {
    width: 18px;
    height: 18px;
}
.share-label {
    margin-right:8px;
}

.wc-block-product-categories-list {
    list-style:none;
    padding-left:0;
}

.wc-block-product-categories-list a {
    text-decoration:none;
}

/*
.yith-wcan-filters .yith-wcan-filter .filter-items .filter-item.label {padding:0;overflow:hidden}
.yith-wcan-filters .yith-wcan-filter .filter-items .filter-item.label a {padding:3px 15px}
.yith-wcan-filters .yith-wcan-filter .filter-items .filter-item > a:hover, .yith-wcan-filters .yith-wcan-filter .filter-items .filter-item > label > a:hover {
	 background: var(--wp--preset--color--contrast);
	 border:none;
}
.yith-wcan-filters .yith-wcan-filter .filter-items .filter-item.label.active:not(.with-image),
.yith-wcan-filters .yith-wcan-filter .filter-items .filter-item.label:not(.with-image):not(.disabled):hover {
	 background-color: var(--wp--preset--color--contrast);
	 box-shadow: 0 0 0 2px var(--wp--preset--color--contrast)
}

.filter-item.color {width:40px !important;height:40px;line-height:1em;position:relative;border:solid 1px #D7D7D7;border-radius:4px;overflow:hidden}
.filter-item.color.active a:after {
	display:block;
	position:absolute;
	content: url(icons/check.svg);
	line-height:1em;
	width: 15px;
    height: 15px;
    background: #FFF;
    color: #000;
    opacity: 0.8;
    border-radius: 100%;
    margin: 0;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border: solid 1px #000;
    padding: 5px;
}
.filter-item.color .term-label {display:none !important}
.filter-item.color a {width:100%;height:100%;}
.yith-wcan-filters .yith-wcan-filter {margin-bottom:15px;}
.yith-wcan-filters .yith-wcan-filter .filter-title {margin-top:0;margin-bottom:10px}
.filters-container p {margin:0}
.yith-wcan-reset-filters {
	background: transparent;
    border: none;
    padding: 0;
    min-height: auto;
    height: auto;
	font-family:inherit;
	cursor:pointer;
	float:left;
	border-bottom:solid 1px;
}

.yith-wcan-filters .yith-wcan-filter .filter-items .filter-item > a:hover, .yith-wcan-filters .yith-wcan-filter .filter-items .filter-item > label > a:hover {
    background: initial;
    border: none;
    color:initial;
}
.yith-wcan-filters .yith-wcan-filter .filter-items .filter-item.active > a, .yith-wcan-filters .yith-wcan-filter .filter-items .filter-item.active > label > a {
    color:initial;
    text-decoration:underline;
}
*/



.wc-block-attribute-filter.style-dropdown .components-form-token-field__input, 
.wc-block-attribute-filter.style-dropdown .components-form-token-field__input-container {
    cursor:pointer;
}

.wp-block-woocommerce-attribute-filter.color-swatch li {
    display:inline-flex;
    margin-right:0;
    margin-bottom:0;
}

.wp-block-woocommerce-attribute-filter.color-swatch li .wc-block-components-checkbox__input {
    display:none !important;
}

.wp-block-woocommerce-attribute-filter.color-swatch li .wc-block-components-checkbox__mark {
    width: 15px;
    height: 15px;
    background: #FFF;
    color: #FFF;
    opacity: 0.8;
    border-radius: 100%;
    margin: 0;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border: solid 1px #000;
    padding: 5px;
}

.wp-block-woocommerce-attribute-filter.color-swatch li .wc-block-components-checkbox {
    margin-top:5px;
    margin-right:5px;
	border-radius:0.375rem;
	border: solid 1px #DDD;
	overflow:hidden;
}

.wp-block-woocommerce-attribute-filter.color-swatch li .wc-block-components-checkbox__label {
    width: 35px;
    height: 35px;
    
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.7em;
    overflow: hidden;
}

.wc-blocks-components-form-token-field-wrapper .components-form-token-field__input-container input[type=text].components-form-token-field__input {
    font-size:initial;
}
.wp-block-woocommerce-mini-cart-title-items-counter-block {font-size:0.5em}





.wc-cat-filter-form {
    position: relative;
    --filter-border: 1px solid #757575!important;
    --filter-radius: 0.375rem;
    --filter-padding: 0.75rem;
    --filter-bg: var(--wp--preset--color--base);
    --filter-color: var(--wp--preset--color--foreground);
    --filter-highlight: var(--wp--preset--color--primary);
    --filter-gap: 0.5rem;
}


.wc-cat-filter-header {
    display: flex;
    align-items: center;
    gap: var(--filter-gap);
    
    background: var(--filter-bg);
    border: var(--filter-border);
    border-radius: var(--filter-radius);
    cursor: pointer;
}

.wc-cat-filter-selection {
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: var(--filter-padding);
    font-weight:500;
}


.wc-cat-filter-dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin-top: 0.25rem;
    background: var(--filter-bg);
    border: var(--filter-border);
    border-radius: var(--filter-radius);
    padding: var(--filter-padding);
    max-height: 300px;
    overflow-y: auto;
    z-index: 100;
    display: none;
}

.wc-cat-filter-form.is-open .wc-cat-filter-dropdown {
    display: block;
}


.wc-cat-filter-toggle {
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    color: inherit;
    padding: 0 var(--filter-padding) 0 0;
}

.wc-cat-filter-arrow {
    transition: transform 0.2s ease;
}

.wc-cat-filter-form.is-open .wc-cat-filter-arrow {
    transform: rotate(180deg);
}


.wc-cat-filter-options {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.wc-cat-filter-option {
    display: flex;
    align-items: center;
    padding: 0.5rem;
    border-radius: calc(var(--filter-radius) / 2);
    cursor: pointer;
    transition: all 0.2s ease;
    text-decoration: none;
}

.wc-cat-filter-option:hover {
    background: var(--wp--preset--color--base-2);
}

.wc-cat-filter-option.active {
    text-decoration:underline;
}

.wc-cat-filter-option input {
    margin-right: 0.5rem;
}

.wc-cat-filter-option-text {
    flex: 1;
}


.wc-cat-filter-group {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.wc-cat-filter-subgroup {
    padding-left: 1.5rem;
    margin-top: 0.25rem;
    border-left: 2px solid var(--wp--preset--color--base-3);
}


.wc-cat-filter-reset {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    padding: 0;
    background: none;
    border: none;
    color: inherit;
    cursor: pointer;
    opacity: 0.7;
    transition: all 0.2s ease;
    padding: var(--filter-padding) 5px var(--filter-padding);
    margin-right: -10px;
    
}

.wc-cat-filter-reset:hover {
    opacity: 1;
    color: var(--wp--preset--color--primary);
}

.wc-cat-filter-count {
    margin-left: 0.5rem;
    font-size: 0.85em;
    opacity: 0.8;
}

.wc-cat-filter-option.active .wc-cat-filter-count {
    
}

@media (prefers-color-scheme: dark) {
    .wc-cat-filter-form {
        --filter-bg: var(--wp--preset--color--contrast);
        --filter-color: var(--wp--preset--color--base);
        --filter-border: 1px solid var(--wp--preset--color--base-3);
    }
    
    .wc-cat-filter-option:hover {
        background: var(--wp--preset--color--contrast-2);
    }


}