/* ======================================
   CAJA GENERAL
====================================== */

.oxea-dynamic-filters {
	width: 100%;
	padding: 20px 18px;
	background: #fff;
	border: 1px solid #e4e7eb;
	border-radius: 10px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, .025);
}

/* El bloque de widgets (Gutenberg) que aloja el shortcode envuelve su
   contenido en un <p> -- los shortcodes que devuelven markup de bloque
   (como este, un <div>) no pueden anidarse dentro de un <p>, así que el
   navegador lo cierra vacío justo antes de este div. Blocksy le pone
   `margin-block-end: var(--theme-content-spacing)` a todo <p>, y ese <p>
   vacío era el que corría el panel hacia abajo (confirmado en vivo con
   DevTools, 2026-09-08). Se anula acá en el propio párrafo roto, en vez de
   compensar con un offset fijo en `.oxea-dynamic-filters` -- así no depende
   de adivinar el valor de `--theme-content-spacing` ni de qué bloque/ID de
   Gutenberg lo genera. */
p:has(+ .oxea-dynamic-filters) {
	margin: 0;
}

/* Nombre de la categoría dentro del box: solo en escritorio, donde el título grande
   de arriba pasa a ser solo para lectores de pantalla (ver category-landing.css). */
.oxea-filter-category-name {
	display: none;
	margin-bottom: 8px;
	font-size: 15px;
	line-height: 1.3;
	font-weight: 500;
	color: #4b5563;
}

@media (min-width: 1000px) {
	.oxea-filter-category-name {
		display: block;
	}
}

.oxea-main-filter-title {
	margin-bottom: 22px;
	font-size: 18px;
	line-height: 1.2;
	font-weight: 700;
	color: #151515;
}

/* ======================================
   SECCIONES
====================================== */

.oxea-filter-section {
	width: 100%;
	margin-bottom: 27px;
}

.oxea-filter-section:last-child {
	margin-bottom: 0;
}

.oxea-filter-section + .oxea-filter-section {
	padding-top: 3px;
}

.oxea-filter-title {
	margin: 0 0 13px;
	font-size: 14px;
	line-height: 1.3;
	font-weight: 700;
	color: #171717;
}

/* ======================================
   CATEGORÍAS
====================================== */

.oxea-category-navigation {
	list-style: none;
	margin: 0;
	padding: 0;
}

.oxea-category-navigation li {
	margin: 0;
	padding: 0;
}

.oxea-category-navigation li + li {
	margin-top: 1px;
}

.oxea-category-navigation a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding: 5px 0;
	color: #4d5560;
	font-size: 13.5px;
	line-height: 1.35;
	text-decoration: none;
	transition: color .2s ease, padding-left .2s ease;
}

.oxea-category-navigation a:hover {
	color: #14852b;
	padding-left: 2px;
}

.oxea-category-name {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	min-width: 0;
}

.oxea-category-count {
	flex-shrink: 0;
	color: #a1a7ae;
	font-size: 12px;
}

.oxea-category-arrow {
	flex-shrink: 0;
	margin-left: 10px;
	color: #333;
	font-size: 21px;
	line-height: 1;
	opacity: .8;
}

/* ======================================
   VOLVER
====================================== */

.oxea-category-back {
	margin-bottom: 10px;
}

.oxea-category-back a {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: #6c737c;
	font-size: 12.5px;
	font-weight: 500;
	text-decoration: none;
}

.oxea-category-back a:hover {
	color: #14852b;
}

.oxea-back-arrow {
	font-size: 19px;
	line-height: 1;
}

/* ======================================
   PROVINCIA
   Reusa la lista de categorías; son 24 ítems, así que el listado
   tiene alto máximo y scroll propio.
====================================== */

.oxea-province-navigation {
	max-height: 240px;
	overflow-y: auto;
	padding-right: 4px;
}

.oxea-province-navigation a.is-active {
	color: #14852b;
	font-weight: 600;
}

.oxea-province-clear a {
	color: #14852b;
}

/* ======================================
   PRECIO
====================================== */

.oxea-filter-price {
	padding-top: 2px;
}

.oxea-filter-price .ct-price-filter {
	width: 100%;
}

.oxea-filter-price input[type="range"] {
	accent-color: #16963a;
}

/* ======================================
   MARCAS
====================================== */

.oxea-filter-brands input[type="search"] {
	width: 100%;
	min-height: 36px;
	margin-bottom: 11px;
	padding: 7px 10px;
	border: 1px solid #e0e3e7;
	border-radius: 5px;
	background: #fff;
	font-size: 13px;
}

.oxea-filter-brands input[type="search"]:focus {
	border-color: #15963a;
	outline: none;
}

/* ======================================
   CHECKBOXES BLOCKSY
====================================== */

.oxea-filter-brands .ct-filter-widget,
.oxea-filter-attribute .ct-filter-widget {
	font-size: 13.5px;
}

/* ======================================
   ATRIBUTOS
====================================== */

.oxea-filter-attribute {
	padding-top: 2px;
}

/* ======================================
   BLOCKSY
====================================== */

.oxea-filter-section .ct-block-wrapper,
.oxea-filter-section .ct-filter-widget {
	margin: 0;
}

/* ======================================
   MOBILE
====================================== */

@media (max-width: 767px) {

	.oxea-dynamic-filters {
		padding: 17px 15px;
	}

	.oxea-filter-section {
		margin-bottom: 23px;
	}

	.oxea-main-filter-title {
		font-size: 17px;
	}

}
