.bnc-filtri { 
	font-size: initial; 
}
.bnc-filtri-wrapper p {
	margin:0 !important;
}
.bnc-filtri-sezione { 
	margin-bottom: 1.5rem;
}
.bnc-filtri-titolo { 
	font-size: 1.25rem; 
	font-weight: 600; 
	margin-bottom: 1rem; 
	border-bottom: 1px solid #eee; 
	padding-bottom: .25rem;
	margin-top: 1rem;
}

.bnc-ean {
	font-size: var(--wp--preset--font-size--small);
    font-weight: 600;
	display: flex;
    align-items: center;
    gap: .25rem;
    margin-top: 0;
}

.bnc-cat-tree, 
.bnc-cat-subtree, 
.bnc-brand-list  { 
	list-style: none; 
	margin: 0; 
	padding: 0; 
}
.bnc-cat-subtree { 
	padding-left: 1rem; 
}
.bnc-brand-item, 
.bnc-cat-item { 
	margin: 0;
}
.bnc-cat-row { 
	display: flex;
	align-items: center;
	gap: .5rem;
	margin-bottom: .5rem;
}
.bnc-cat-toggle { 
	cursor: pointer; 
	font-size: 1rem; 
	color: #999; 
	width: 1.5rem;
	height:1.5rem;
	user-select: none;
    display: flex;
    align-items: center;
    justify-content: center;
}
.bnc-cat-toggle i {
	width: 1.5rem;
	height:1.5rem;
	font-size:1.5rem;
	transition: transform 0.2s ease;
}
.bnc-cat-toggle.aperto i {
    transform: rotate(45deg);
}
/*.bnc-cat-toggle-placeholder { width: 1rem; }*/
/*.bnc-cat-row label { cursor: pointer; display: flex; align-items: center; gap: 5px; }*/

/* Brand */
.bnc-brand-item label { cursor: pointer; display: flex; align-items: center; gap: 5px; }
.bnc-brand-hidden { display: none; }
.bnc-mostra-tutti { 
	background: none; 
	border: none; 
	color: var(--wp--preset--color--accent-3); 
	cursor: pointer; 
	padding: 0; 
	font-size: .8rem; 
	font-family:inherit;
}
.bnc-mostra-tutti:hover {
	text-decoration: underline; 
}

/* Contatori */
.bnc-count { 
	color: #999; 
	font-size: .8rem; 
	min-width:1.5rem;
}

/* Bottoni */
.bnc-filtri-actions { 
	margin-bottom: 1.5rem; 
	display: flex; 
	gap: 1rem; 
	align-items: center; 
}
.bnc-btn-applica { 
	background: var(--wp--preset--color--accent-3);
	color: #fff; 
	border: none; 
	padding: .5rem 1rem; 
	border-radius: 4px; 
	cursor: pointer; 
	font-size: .9rem; 
}
.bnc-btn-applica:hover { background: #005a87; }
.bnc-btn-reset { 
	color: #666; 
	font-size: .8rem; 
	text-decoration: none; 
}
.bnc-btn-reset:hover { 
	color: var(--wp--preset--color--accent-3); 
}


.bnc-cat-link {
    text-decoration: none;
    color: inherit;
    display: flex;
    align-items: center;
    gap: .5rem;
}
.bnc-cat-link.attiva {
    font-weight: bold;
    color: var(--wp--preset--color--accent-3);
}
.bnc-cat-link:hover {
    color: var(--wp--preset--color--accent-3);
}

.bnc-disabilitato .bnc-cat-link,
.bnc-disabilitato label {
    opacity: 0.4;
    cursor: not-allowed;
}

.bnc-filtri-wrapper { position: relative; }

.bnc-filtri-toggle {
    display: none; /* visibile solo su mobile */
    width: 100%;
    padding: 10px 15px;
    background: #FFF;
    border: solid 1px hsla(0,0%,7%,.11);
    border-radius: 1.5rem;
    cursor: pointer;
    text-align: left;
    align-items: center;
    gap: 1rem;
	font-family:inherit;
}

.bnc-filtri-badge {
    background: var(--wp--preset--color--accent-3);
    color: #fff;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    font-size: 11px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
	font-size:1rem;
}

.bnc-filtri-toggle i {
    margin-left: auto;
    transition: transform 0.2s ease;
}

.bnc-filtri-toggle.aperto i {
    transform: rotate(180deg);
}

/* Nascondi checkbox nativo */
.bnc-brand-check {
    display: none;
}

/* Label con icona dashicons */
.bnc-brand-item label {
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: .5rem;
	color:inherit;
	transition: color 0.2s ease;
}

.bnc-brand-item:has(.bnc-brand-check:checked) label {
    color: var(--wp--preset--color--accent-3);
    font-weight: 600;
}

.bnc-brand-item label::before {
    font-family: dashicons;
    content: "\f159"; /* marker vuoto / unchecked */
    font-size: 1.5rem;
	width: 1.5rem;
    height: 1.5rem;
    line-height: normal;
    color: #999;
    transition: color 0.2s ease;
    flex-shrink: 0;
}

.bnc-brand-item:has(.bnc-brand-check:checked) label::before {
    content: "\f147"; /* checked */
    color: var(--wp--preset--color--accent-3);
}

#bnc-filtri {
    display: block;
	border: solid 1px hsla(0, 0%, 7%, .11);
	padding: 0 1rem;
	border-radius:15px;
}

@media (max-width: 768px) {
    #bnc-filtri {
        display: none;
		border:none;
		padding:0;
    }
    #bnc-filtri.aperto {
        display: block;
    }
	.bnc-filtri-toggle {
        display: flex;
    }
}


.woocommerce img, .woocommerce-page img {
	object-fit: contain !important;
    aspect-ratio: 1 / 1;
}

.wp-block-woocommerce-product-image-gallery {
	position: sticky !important;
    top: 0;
}

.woocommerce-product-gallery__wrapper {
	border: solid 1px hsla(0, 0%, 7%, .11);
	border-radius:15px;
	overflow:hidden;
}

.wc-block-mini-cart__badge {
	background: var(--wp--preset--color--accent-3) !important;
	color: #FFF !important;
}

ul li.wc-block-product {
	display: flex;
    flex-direction: column;
    justify-content: space-between;
}

:where(.woocommerce) .select2-container .select2-dropdown, :where(.woocommerce) .select2-container .select2-selection, 
.woocommerce form .form-row .input-text, .woocommerce form .form-row select {
	border-color:hsla(0,0%,7%,.11);
}