.shimge-curvas{--shimge-teal:#009da3;--shimge-teal-soft:#e7f7f7;--shimge-border:#d9e3e5;--shimge-text:#16252b;--shimge-muted:#617178;--shimge-chart-width:80%;width:100%;color:var(--shimge-text);font-family:Inter,ui-sans-serif,system-ui,sans-serif}.shimge-curvas *,.shimge-curvas *::before,.shimge-curvas *::after{box-sizing:border-box}.shimge-curvas__header,.shimge-curvas__toolbar,.shimge-curvas__chart-card,.shimge-curvas__controls{border:1px solid var(--shimge-border);border-radius:14px;background:#fff}.shimge-curvas__header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:17px 20px;margin-bottom:13px}.shimge-curvas__badge{margin-bottom:5px;color:var(--shimge-teal);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.shimge-curvas__title{margin:0!important;color:#0e1b21;font-size:clamp(19px,2.1vw,26px)!important;line-height:1.18!important;font-weight:800!important}.shimge-curvas__count{flex:0 0 auto;color:var(--shimge-muted);font-size:14px;white-space:nowrap}.shimge-curvas__toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;margin-top:13px;margin-bottom:0;width:var(--shimge-chart-width,100%);max-width:100%;margin-inline:auto}.shimge-curvas__legend{display:flex;flex:1 1 auto;flex-wrap:wrap;gap:5px}.shimge-curvas__legend-button,.shimge-curvas__reset{appearance:none;border:1px solid #cfe0e2;border-radius:8px;background:#fff;color:var(--shimge-text);cursor:pointer;font:inherit}.shimge-curvas__legend-button{display:inline-flex;align-items:center;gap:5px;min-height:20px;padding:4px 6px;border-radius:5px;font-size:7.8px;line-height:1.15;font-weight:700}.shimge-curvas__legend-button.is-hidden{opacity:.4;filter:grayscale(.7)}.shimge-curvas__legend-swatch{width:9px;height:6px;border-radius:2px;background:var(--curve-color)}.shimge-curvas__reset{flex:0 0 auto;align-self:center;padding:6px 10px;border-radius:6px;font-size:10.4px;line-height:1.2;font-weight:700}.shimge-curvas__legend-button:hover,.shimge-curvas__reset:hover{border-color:var(--shimge-teal);background:var(--shimge-teal-soft)}.shimge-curvas__chart-card{width:var(--shimge-chart-width,100%);max-width:100%;margin-inline:auto;overflow:hidden;padding:16px;border-color:#cce2e4}.shimge-curvas__canvas-wrap{position:relative;width:100%;height:clamp(210px,26vw,325px)}.shimge-curvas__controls{display:grid;grid-template-columns:minmax(220px,1.4fr) repeat(5,minmax(115px,.55fr));gap:14px;align-items:end;padding:18px;margin-top:14px;width:var(--shimge-chart-width,100%);max-width:100%;margin-inline:auto}.shimge-curvas__operation-summary{align-self:center}.shimge-curvas__control-kicker{display:block;margin-bottom:6px;color:var(--shimge-muted);font-size:11px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.shimge-curvas__operation-text{display:block;font-size:16px;line-height:1.35}.shimge-curvas__field label{display:block;margin-bottom:6px;color:var(--shimge-muted);font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.shimge-curvas__field input,.shimge-curvas__field select{width:100%;height:40px;padding:7px 9px;border:1px solid var(--shimge-border);border-radius:8px;background:#fff;color:var(--shimge-text);font:inherit;font-size:14px}.shimge-curvas__field input:focus,.shimge-curvas__field select:focus{outline:2px solid rgba(0,157,163,.18);border-color:var(--shimge-teal)}.shimge-curvas__slider-row{grid-column:1/-1}.shimge-curvas__slider-row input{width:100%;accent-color:var(--shimge-teal)}.shimge-curvas__results{grid-column:1/-1;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px 16px;padding-top:4px;font-size:13px}.shimge-curvas__result{display:flex;align-items:center;gap:8px}.shimge-curvas__result-swatch{width:10px;height:10px;border-radius:50%;background:var(--curve-color)}.shimge-curvas__notice{padding:15px;border:1px solid #ead7a5;border-radius:9px;background:#fff9e8;color:#5b4817;font-size:14px}@media(max-width:1024px){.shimge-curvas__controls{grid-template-columns:repeat(3,minmax(0,1fr))}.shimge-curvas__operation-summary{grid-column:1/-1}}@media(max-width:700px){.shimge-curvas__header,.shimge-curvas__toolbar{align-items:stretch;flex-direction:column}.shimge-curvas__count{white-space:normal}.shimge-curvas__reset{align-self:flex-start}.shimge-curvas__chart-card{width:100%;max-width:100%;padding:8px}.shimge-curvas__toolbar,.shimge-curvas__controls{width:100%;max-width:100%}.shimge-curvas__canvas-wrap{height:230px}.shimge-curvas__controls{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px}.shimge-curvas__field:first-of-type{grid-column:1/-1}}@media(max-width:430px){.shimge-curvas__controls{grid-template-columns:1fr}.shimge-curvas__operation-summary,.shimge-curvas__field:first-of-type,.shimge-curvas__slider-row,.shimge-curvas__results{grid-column:1}}


/* Modelos de la misma serie */
.shimge-series-models {
	width: 100%;
	margin: 28px 0 34px;
	color: #101820;
	font-family: inherit;
}

.shimge-series-models *,
.shimge-series-models *::before,
.shimge-series-models *::after {
	box-sizing: border-box;
}

.shimge-series-models__header {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 20px;
	margin-bottom: 16px;
}

.shimge-series-models__eyebrow {
	display: block;
	margin-bottom: 5px;
	color: #009da3;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .13em;
}

.shimge-series-models__title {
	margin: 0 !important;
	color: #0b1420;
	font-size: clamp(22px, 2.4vw, 32px) !important;
	line-height: 1.15 !important;
	font-weight: 800 !important;
}

.shimge-series-models__count {
	color: #637078;
	font-size: 14px;
	white-space: nowrap;
}

.shimge-series-models__track {
	display: flex;
	flex-wrap: nowrap;
	gap: 16px;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: thin;
	-webkit-overflow-scrolling: touch;
	padding: 2px 1px 8px;
}

.shimge-series-model {
	position: relative;
	display: flex;
	flex: 0 0 calc((100% - 32px) / 3);
	min-width: 360px;
	max-width: 640px;
	overflow: hidden;
	border: 1px solid #dce5e7;
	border-radius: 14px;
	background: #fff;
	scroll-snap-align: start;
	transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}

.shimge-series-model:hover {
	transform: translateY(-2px);
	border-color: #9fcfd2;
	box-shadow: 0 10px 24px rgba(16, 36, 42, .08);
}

.shimge-series-model.is-current {
	border: 2px solid #009da3;
	background: #f4fbfb;
}

.shimge-series-model__current {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 2;
	padding: 5px 8px;
	border-radius: 999px;
	background: #009da3;
	color: #fff;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.shimge-series-model__image {
	display: flex;
	flex: 0 0 38%;
	align-items: center;
	justify-content: center;
	min-height: 210px;
	padding: 16px;
	background: #f2f6f7;
}

.shimge-series-model__image img {
	display: block;
	width: 100%;
	height: 180px;
	object-fit: contain;
}

.shimge-series-model__placeholder {
	color: #7d8a90;
	font-size: 13px;
}

.shimge-series-model__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	min-width: 0;
	padding: 18px 16px 16px;
}

.shimge-series-model__name {
	margin: 0 0 14px !important;
	font-size: 19px !important;
	line-height: 1.2 !important;
	font-weight: 800 !important;
}

.shimge-series-model__name a {
	color: #0b1420;
	text-decoration: none;
}

.shimge-series-model__specs {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 12px 14px;
	margin-bottom: 18px;
}

.shimge-series-model__specs span {
	display: block;
	margin-bottom: 3px;
	color: #6f7d84;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .07em;
	text-transform: uppercase;
}

.shimge-series-model__specs strong {
	color: #14242b;
	font-size: 13px;
	line-height: 1.3;
}

.shimge-series-model__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	margin-top: auto;
	padding: 8px 12px;
	border: 1px solid #009da3;
	border-radius: 9px;
	background: #009da3;
	color: #fff !important;
	font-size: 13px;
	font-weight: 800;
	text-align: center;
	text-decoration: none !important;
}

.shimge-series-model__button:hover {
	background: #007f84;
	border-color: #007f84;
}

.shimge-series-model__button.is-disabled {
	background: #e6f5f5;
	border-color: #b9dfe1;
	color: #087f84 !important;
	cursor: default;
}

.shimge-series-models__nav {
	display: none;
	justify-content: flex-end;
	gap: 8px;
	margin-top: 10px;
}

.shimge-series-models__arrow {
	width: 38px;
	height: 38px;
	border: 1px solid #cbdadd;
	border-radius: 9px;
	background: #fff;
	color: #0d252c;
	cursor: pointer;
	font-size: 18px;
	font-weight: 700;
}

@media (max-width: 1100px) {
	.shimge-series-model {
		flex-basis: calc((100% - 12px) / 2);
		min-width: 320px;
	}
	.shimge-series-models__nav {
		display: flex;
	}
}

@media (max-width: 700px) {
	.shimge-series-models__header {
		align-items: flex-start;
		flex-direction: column;
	}
	.shimge-series-models__track {
		gap: 12px;
		padding-bottom: 10px;
	}
	.shimge-series-model {
		flex: 0 0 86%;
		min-width: 86%;
		max-width: none;
		flex-direction: column;
	}
	.shimge-series-model__image {
		flex-basis: auto;
		min-height: 210px;
	}
	.shimge-series-model__image img {
		height: 190px;
	}
}


/* Badge del modelo actual sobre la imagen */
.shimge-series-model__current {
	top: 12px;
	left: 12px;
	right: auto;
}

.shimge-series-model__image {
	position: relative;
}

/* Selector desplegable de modelos */
.shimge-model-selector {
	display: flex;
	flex-direction: column;
	gap: 5px;
	min-width: 0;
}

.shimge-model-selector__label {
	display: block;
	color: #66747b;
	font-size: 10px;
	font-weight: 800;
	letter-spacing: .08em;
	line-height: 1.2;
	text-transform: uppercase;
}

.shimge-model-selector__control {
	position: relative;
	width: 100%;
	max-width: 280px;
}

.shimge-model-selector__select {
	width: 100%;
	min-height: 42px;
	padding: 9px 38px 9px 12px;
	border: 1px solid #cfdcdf;
	border-radius: 8px;
	background: #fff;
	color: #0d1720;
	appearance: none;
	font: inherit;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.2;
	cursor: pointer;
}

.shimge-model-selector__select:hover,
.shimge-model-selector__select:focus {
	border-color: #009da3;
	outline: 2px solid rgba(0, 157, 163, .13);
}

.shimge-model-selector__chevron {
	position: absolute;
	top: 50%;
	right: 13px;
	transform: translateY(-53%);
	color: #009da3;
	font-size: 21px;
	font-weight: 800;
	pointer-events: none;
}

.shimge-model-selector--static strong {
	color: #0d1720;
	font-size: 15px;
}

/* v0.6: secondary units are controlled by each series, not by visitors. */
.shimge-curvas [hidden],
.shimge-curvas__field[hidden],
.shimge-curvas__legend[hidden] {
	display: none !important;
}


/* v0.6.1: altura visual de la gráfica reducida al 50%. */

/* v0.6.3: recomendación automática por caudal y altura. */
.shimge-curvas__recommendation {
	grid-column: 1 / -1;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	min-height: 66px;
	padding: 14px 16px;
	border: 1px solid #9fd8d3;
	border-radius: 11px;
	background: #eefaf7;
	color: #123a38;
}

.shimge-curvas__recommendation[hidden] {
	display: none !important;
}

.shimge-curvas__recommendation.is-no-match {
	border-color: #ebc78a;
	background: #fff8e8;
	color: #684815;
}

.shimge-curvas__recommendation-copy {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.shimge-curvas__recommendation strong {
	display: block;
	font-size: 17px;
	line-height: 1.25;
}

.shimge-curvas__recommendation span {
	display: block;
	font-size: 13px;
	line-height: 1.4;
}

.shimge-curvas__recommendation-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	min-height: 40px;
	padding: 8px 14px;
	border: 1px solid #009da3;
	border-radius: 8px;
	background: #009da3;
	color: #fff !important;
	font-size: 13px;
	font-weight: 800;
	text-decoration: none !important;
}

.shimge-curvas__recommendation-link:hover {
	border-color: #007f84;
	background: #007f84;
}

@media (max-width: 700px) {
	.shimge-curvas__recommendation {
		align-items: flex-start;
		flex-direction: column;
	}
}


/* v0.6.4: globo de recomendación anclado al punto de operación. */
.shimge-curvas__canvas-wrap {
	overflow: visible;
}

.shimge-curvas__recommendation {
	position: absolute;
	z-index: 4;
	max-width: min(360px, calc(100% - 24px));
	min-height: 0;
	box-shadow: 0 10px 24px rgba(16, 36, 42, .12);
}

.shimge-curvas__recommendation::after {
	content: '';
	position: absolute;
	width: 14px;
	height: 14px;
	background: inherit;
	border-right: inherit;
	border-bottom: inherit;
	transform: rotate(45deg);
}

.shimge-curvas__recommendation[data-anchor="above-right"]::after {
	left: 16px;
	bottom: -8px;
}
.shimge-curvas__recommendation[data-anchor="above-left"]::after {
	right: 16px;
	bottom: -8px;
}
.shimge-curvas__recommendation[data-anchor="below-right"]::after {
	left: 16px;
	top: -8px;
	transform: rotate(225deg);
}
.shimge-curvas__recommendation[data-anchor="below-left"]::after {
	right: 16px;
	top: -8px;
	transform: rotate(225deg);
}

.shimge-curvas__callout-stem {
	position: absolute;
	z-index: 3;
	height: 2px;
	background: #7c8b91;
	transform-origin: 0 50%;
	pointer-events: none;
}

.shimge-curvas__callout-stem[hidden] {
	display: none !important;
}

@media (max-width: 700px) {
	.shimge-curvas__recommendation {
		max-width: min(300px, calc(100% - 20px));
	}
}


/* v0.6.6: cierre del globo y cola anclada desde el punto sin tapar el marcador. */
.shimge-curvas__recommendation {
	padding-right: 44px;
}

.shimge-curvas__recommendation-close {
	position: absolute;
	top: 8px;
	right: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: #5f7379;
	font-size: 20px;
	line-height: 1;
	cursor: pointer;
}

.shimge-curvas__recommendation-close:hover {
	background: rgba(19, 37, 44, 0.08);
	color: #13252c;
}

.shimge-curvas__callout-stem {
	height: 2px;
	background: #7c8b91;
}

.shimge-curvas__callout-stem::after {
	content: '';
	position: absolute;
	right: -1px;
	top: 50%;
	width: 0;
	height: 0;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 8px solid #7c8b91;
	transform: translateY(-50%);
}


/* v0.6.7: centrar la punta del globo con el punto de operación. */
.shimge-curvas__recommendation::after {
	left: var(--shimge-pointer-x, 24px);
	right: auto;
	transform: translateX(-50%) rotate(45deg);
}

.shimge-curvas__recommendation[data-anchor="above"]::after {
	left: var(--shimge-pointer-x, 24px);
	right: auto;
	bottom: -8px;
	top: auto;
	transform: translateX(-50%) rotate(45deg);
}

.shimge-curvas__recommendation[data-anchor="below"]::after {
	left: var(--shimge-pointer-x, 24px);
	right: auto;
	top: -8px;
	bottom: auto;
	transform: translateX(-50%) rotate(225deg);
}


/* v0.6.8: globo más compacto y desplazamiento lateral inteligente cuando el punto está centrado. */
.shimge-curvas__recommendation {
	max-width: min(300px, calc(100% - 24px));
	gap: 12px;
	padding: 12px 40px 12px 14px;
	border-radius: 10px;
}

.shimge-curvas__recommendation-copy {
	gap: 3px;
}

.shimge-curvas__recommendation strong {
	font-size: 15px;
	line-height: 1.15;
}

.shimge-curvas__recommendation span {
	font-size: 12px;
	line-height: 1.35;
}

.shimge-curvas__recommendation-link {
	min-height: 36px;
	padding: 7px 12px;
	font-size: 12px;
}

.shimge-curvas__recommendation-close {
	top: 6px;
	right: 6px;
	width: 22px;
	height: 22px;
	font-size: 18px;
}


/* v0.6.9: globo consistente sin línea adicional y controles más compactos. */
.shimge-curvas__callout-stem,
.shimge-curvas__callout-stem::after {
	display: none !important;
}

.shimge-curvas__slider-row {
	display: none !important;
}

.shimge-curvas__recommendation {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	justify-content: initial;
	gap: 10px;
	max-width: min(360px, calc(100% - 24px));
	min-height: 0;
	padding: 10px 38px 10px 12px;
	border-radius: 11px;
	overflow: visible;
}

.shimge-curvas__recommendation-copy {
	gap: 2px;
}

.shimge-curvas__recommendation strong {
	font-size: 16px;
	line-height: 1.12;
}

.shimge-curvas__recommendation span {
	font-size: 12.5px;
	line-height: 1.28;
}

.shimge-curvas__recommendation-link {
	min-height: 36px;
	padding: 7px 11px;
	font-size: 12px;
	white-space: nowrap;
}

.shimge-curvas__recommendation-close {
	top: 6px;
	right: 6px;
	z-index: 6;
	display: inline-flex !important;
	width: 23px;
	height: 23px;
	font-size: 18px;
	background: rgba(255,255,255,.72);
}

.shimge-curvas__recommendation::after {
	content: '';
	position: absolute;
	width: 14px;
	height: 14px;
	background: inherit;
	border-right: inherit;
	border-bottom: inherit;
}

.shimge-curvas__recommendation[data-anchor="above"]::after {
	left: var(--shimge-pointer-x, 50%);
	right: auto;
	top: auto;
	bottom: -8px;
	transform: translateX(-50%) rotate(45deg);
}

.shimge-curvas__recommendation[data-anchor="below"]::after {
	left: var(--shimge-pointer-x, 50%);
	right: auto;
	top: -8px;
	bottom: auto;
	transform: translateX(-50%) rotate(225deg);
}

.shimge-curvas__recommendation[data-anchor="left"]::after {
	left: auto;
	right: -8px;
	top: var(--shimge-pointer-y, 50%);
	bottom: auto;
	transform: translateY(-50%) rotate(-45deg);
}

.shimge-curvas__recommendation[data-anchor="right"]::after {
	left: -8px;
	right: auto;
	top: var(--shimge-pointer-y, 50%);
	bottom: auto;
	transform: translateY(-50%) rotate(135deg);
}

@media (max-width: 700px) {
	.shimge-curvas__recommendation {
		display: block;
		max-width: min(278px, calc(100% - 20px));
		padding: 9px 34px 9px 11px;
	}

	.shimge-curvas__recommendation strong {
		font-size: 14px;
		line-height: 1.12;
	}

	.shimge-curvas__recommendation span {
		font-size: 11.5px;
		line-height: 1.25;
	}

	.shimge-curvas__recommendation-link {
		min-height: 34px;
		margin-top: 7px;
		padding: 6px 10px;
		font-size: 11.5px;
	}

	.shimge-curvas__recommendation-close {
		top: 5px;
		right: 5px;
	}
}


/* v0.6.10: popup móvil con overflow permitido y tamaño más compacto. */
.shimge-curvas__chart-card {
	overflow: visible;
}

@media (max-width: 700px) {
	.shimge-curvas__chart-card {
		overflow: visible;
		padding: 8px 8px 14px;
	}

	.shimge-curvas__recommendation {
		max-width: min(250px, calc(100vw - 28px));
		padding: 8px 30px 8px 10px;
		border-radius: 10px;
	}

	.shimge-curvas__recommendation strong {
		font-size: 13px;
		line-height: 1.08;
	}

	.shimge-curvas__recommendation span {
		font-size: 11px;
		line-height: 1.2;
	}

	.shimge-curvas__recommendation-link {
		min-height: 31px;
		margin-top: 6px;
		padding: 5px 10px;
		font-size: 11px;
	}

	.shimge-curvas__recommendation-close {
		top: 4px;
		right: 4px;
		width: 20px;
		height: 20px;
		font-size: 16px;
	}
}


/* v0.6.14: solo Q (m³/h) y H (m) son campos de entrada; la doble escala es solo visual. */
.shimge-curvas__controls{grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(115px,.55fr));}


/* ======================================================
   v0.7.3 — controles de la gráfica seguros en móvil
   ====================================================== */
.shimge-curvas,
.shimge-curvas__controls,
.shimge-curvas__controls > *,
.shimge-curvas__field {
	min-width: 0 !important;
	max-width: 100% !important;
}

.shimge-curvas__field input,
.shimge-curvas__field select {
	display: block !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
}

@media (max-width: 767px) {
	.shimge-curvas__controls {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) !important;
		gap: 14px !important;
		width: 100% !important;
		max-width: 100% !important;
		padding: 16px !important;
		overflow: hidden !important;
	}

	.shimge-curvas__operation-summary,
	.shimge-curvas__field,
	.shimge-curvas__results,
	.shimge-curvas__slider-row {
		grid-column: 1 / -1 !important;
		width: 100% !important;
		min-width: 0 !important;
		max-width: 100% !important;
	}

	.shimge-curvas__field select,
	.shimge-curvas__field input {
		height: 46px !important;
		padding-left: 12px !important;
		padding-right: 12px !important;
		font-size: 16px !important;
		text-overflow: ellipsis !important;
	}

	.shimge-curvas__results {
		grid-template-columns: minmax(0, 1fr) !important;
	}
}


/* ======================================================
   v0.7.4 — gráfica más alta en móvil
   ====================================================== */
@media (max-width: 767px) {
	.shimge-curvas__chart-card {
		padding-top: 14px !important;
		padding-bottom: 14px !important;
	}

	.shimge-curvas__canvas-wrap {
		height: 360px !important;
		min-height: 360px !important;
	}
}

@media (max-width: 430px) {
	.shimge-curvas__canvas-wrap {
		height: 390px !important;
		min-height: 390px !important;
	}
}

/* ======================================================
   v0.7.6 — descargas tipo carpeta y ajustes finales móvil
   ====================================================== */
.shimge-curvas__recommendation,
.shimge-curvas__callout-stem {
	display: none !important;
}

.shimge-downloads-folder {
	overflow: hidden;
	border: 1px solid #d6e3e5;
	border-radius: 14px;
	background: #ffffff;
}

.shimge-downloads-folder__header {
	display: flex;
	align-items: center;
	gap: 13px;
	padding: 17px 18px;
	border-bottom: 1px solid #d6e3e5;
	background: #f2f8f8;
}

.shimge-downloads-folder__folder-icon {
	position: relative;
	flex: 0 0 38px;
	width: 38px;
	height: 28px;
	border-radius: 5px;
	background: #009da3;
}

.shimge-downloads-folder__folder-icon::before {
	content: "";
	position: absolute;
	left: 3px;
	top: -6px;
	width: 17px;
	height: 9px;
	border-radius: 4px 4px 0 0;
	background: #009da3;
}

.shimge-downloads-folder__header strong,
.shimge-downloads-folder__header span {
	display: block;
}

.shimge-downloads-folder__header strong {
	color: #102229;
	font-size: 17px;
	line-height: 1.2;
}

.shimge-downloads-folder__header span {
	margin-top: 3px;
	color: #617178;
	font-size: 13px;
}

.shimge-downloads-folder__files {
	display: grid;
	gap: 10px;
	padding: 14px;
}

.shimge-downloads-folder__file {
	position: relative;
	display: grid !important;
	grid-template-columns: 38px minmax(0, 1fr) auto;
	align-items: center;
	gap: 12px;
	width: 100%;
	min-height: 68px;
	margin: 0 !important;
	padding: 11px 14px !important;
	border: 1px solid #d6e3e5 !important;
	border-radius: 11px !important;
	background: #ffffff !important;
	box-shadow: none !important;
	color: #16252b !important;
	font: inherit !important;
	text-align: left !important;
	text-decoration: none !important;
	cursor: pointer;
}

.shimge-downloads-folder__file:hover {
	border-color: #009da3 !important;
	background: #f5fbfb !important;
}

.shimge-downloads-folder__file-icon,
.shimge-downloads-folder__file--generated::before {
	content: "PDF";
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 42px;
	border-radius: 5px;
	background: #e7f7f7;
	color: #008f95;
	font-size: 10px;
	font-weight: 900;
	letter-spacing: .04em;
}

.shimge-downloads-folder__file-copy {
	min-width: 0;
}

.shimge-downloads-folder__file-copy strong,
.shimge-downloads-folder__file-copy small {
	display: block;
}

.shimge-downloads-folder__file-copy strong,
.shimge-downloads-folder__file--generated .shimge-pdf-button__label {
	color: #16252b;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.25;
}

.shimge-downloads-folder__file-copy small {
	margin-top: 4px;
	color: #617178;
	font-size: 12px;
	line-height: 1.3;
}

.shimge-downloads-folder__download,
.shimge-downloads-folder__file--generated::after {
	content: "Descargar";
	color: #009da3;
	font-size: 13px;
	font-weight: 800;
	white-space: nowrap;
}

.shimge-downloads-folder__file--generated .shimge-pdf-button__status {
	grid-column: 2;
	color: #617178;
	font-size: 12px;
}

@media (max-width: 700px) {
	.shimge-curvas__chart-card {
		padding: 2px !important;
	}

	.shimge-curvas__canvas-wrap {
		width: calc(100% + 2px) !important;
		height: 430px !important;
		min-height: 430px !important;
		margin-left: -1px !important;
	}

	.shimge-downloads-folder__files {
		padding: 10px;
	}

	.shimge-downloads-folder__file {
		grid-template-columns: 34px minmax(0, 1fr);
		padding: 10px !important;
	}

	.shimge-downloads-folder__download,
	.shimge-downloads-folder__file--generated::after {
		grid-column: 2;
		margin-top: 2px;
	}
}

@media (max-width: 430px) {
	.shimge-curvas__canvas-wrap {
		height: 455px !important;
		min-height: 455px !important;
	}
}

/* Gráfica paralela de selección para bombas de pozo profundo */
.shimge-deepwell-selection{--shimge-deepwell-chart-width:80%;width:100%;margin-top:16px;color:var(--shimge-text)}
.shimge-deepwell-selection *,.shimge-deepwell-selection *::before,.shimge-deepwell-selection *::after{box-sizing:border-box}
.shimge-deepwell-selection__header,.shimge-deepwell-selection__panel{border:1px solid var(--shimge-border);border-radius:14px;background:#fff}
.shimge-deepwell-selection__header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:17px 20px;margin-bottom:13px}
.shimge-deepwell-selection__panel{width:100%;max-width:100%;overflow:hidden;padding:0 0 8px}
.shimge-deepwell-selection__eyebrow{margin-bottom:5px;color:var(--shimge-teal);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.shimge-deepwell-selection__title{margin:0!important;color:#0e1b21;font-size:clamp(19px,2.1vw,26px)!important;line-height:1.18!important;font-weight:800!important}
.shimge-deepwell-selection__count{flex:0 0 auto;color:var(--shimge-muted);font-size:14px;white-space:nowrap}
.shimge-deepwell-selection__toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px;margin-top:4px;margin-bottom:0;width:var(--shimge-deepwell-chart-width,100%);max-width:100%;margin-inline:auto;border:0;border-radius:0;background:transparent}
.shimge-deepwell-selection__legend{display:flex;flex:1 1 auto;flex-wrap:wrap;justify-content:center;gap:5px}
.shimge-deepwell-selection__legend-button,.shimge-deepwell-selection__reset{appearance:none;border:1px solid #cfe0e2;border-radius:8px;background:#fff;color:var(--shimge-text);cursor:pointer;font:inherit}
.shimge-deepwell-selection__legend-button{display:inline-flex;align-items:center;gap:5px;min-height:20px;padding:4px 6px;border-radius:5px;font-size:7.8px;line-height:1.15;font-weight:700}
.shimge-deepwell-selection__legend-button.is-hidden{opacity:.4;filter:grayscale(.7)}
.shimge-deepwell-selection__legend-swatch{width:9px;height:6px;border-radius:2px;background:var(--curve-color)}
.shimge-deepwell-selection__reset{flex:0 0 auto;align-self:center;padding:6px 10px;border-radius:6px;font-size:10.4px;line-height:1.2;font-weight:700}
.shimge-deepwell-selection__legend-button:hover,.shimge-deepwell-selection__reset:hover{border-color:var(--shimge-teal);background:var(--shimge-teal-soft)}
.shimge-deepwell-selection__chart-card{width:var(--shimge-deepwell-chart-width,100%);max-width:100%;margin-inline:auto;overflow:hidden;padding:16px 16px 10px;border:0;border-radius:0;background:transparent}
.shimge-deepwell-selection__canvas-wrap{position:relative;width:100%;height:clamp(290px,32vw,420px)}
@media(max-width:700px){.shimge-deepwell-selection__header,.shimge-deepwell-selection__toolbar{align-items:stretch;flex-direction:column}.shimge-deepwell-selection__count{white-space:normal}.shimge-deepwell-selection__reset{align-self:flex-start}.shimge-deepwell-selection__chart-card,.shimge-deepwell-selection__toolbar{width:100%;max-width:100%;padding:8px}.shimge-deepwell-selection__canvas-wrap{height:320px}}


/* Ajustes móviles: gráfica más ancha y etiquetas más compactas */
@media (max-width: 700px) {
	.shimge-curvas__chart-card,
	.shimge-deepwell-selection__chart-card {
		padding: 2px !important;
	}

	.shimge-curvas__canvas-wrap,
	.shimge-deepwell-selection__canvas-wrap {
		width: calc(100% + 24px) !important;
		margin-left: -12px !important;
		margin-right: -12px !important;
	}

	.shimge-curvas__canvas-wrap {
		height: 440px !important;
		min-height: 440px !important;
	}

	.shimge-deepwell-selection__canvas-wrap {
		height: 360px !important;
		min-height: 360px !important;
	}
}

@media (max-width: 430px) {
	.shimge-curvas__canvas-wrap,
	.shimge-deepwell-selection__canvas-wrap {
		width: calc(100% + 30px) !important;
		margin-left: -15px !important;
		margin-right: -15px !important;
	}

	.shimge-curvas__canvas-wrap {
		height: 430px !important;
		min-height: 430px !important;
	}

	.shimge-deepwell-selection__canvas-wrap {
		height: 350px !important;
		min-height: 350px !important;
	}
}


/* v0.7.57 — ajustes exclusivamente móviles */
@media (max-width: 700px) {
  .shimge-curvas__chart-card,
  .shimge-deepwell-selection__chart-card {
    overflow: hidden;
    padding: 4px !important;
  }

  .shimge-curvas__canvas-wrap,
  .shimge-deepwell-selection__canvas-wrap {
    width: calc(100% - 2px) !important;
    margin-left: 8px !important;
    margin-right: -6px !important;
  }

  .shimge-curvas__canvas-wrap {
    height: 186px !important;
    min-height: 186px !important;
  }

  .shimge-deepwell-selection__canvas-wrap {
    height: 156px !important;
    min-height: 156px !important;
  }
}

@media (max-width: 430px) {
  .shimge-curvas__canvas-wrap,
  .shimge-deepwell-selection__canvas-wrap {
    width: calc(100% - 2px) !important;
    margin-left: 7px !important;
    margin-right: -5px !important;
  }

  .shimge-curvas__canvas-wrap {
    height: 180px !important;
    min-height: 180px !important;
  }

  .shimge-deepwell-selection__canvas-wrap {
    height: 152px !important;
    min-height: 152px !important;
  }
}


/* v0.7.58 — ajustes exclusivamente móviles; escritorio intacto */
@media (max-width: 700px) {
  .shimge-curvas__chart-card,
  .shimge-deepwell-selection__chart-card {
    overflow: hidden;
    padding: 4px !important;
  }

  .shimge-curvas__canvas-wrap,
  .shimge-deepwell-selection__canvas-wrap {
    width: calc(100% + 8px) !important;
    margin-left: -6px !important;
    margin-right: -2px !important;
  }

  .shimge-curvas__canvas-wrap {
    height: 242px !important;
    min-height: 242px !important;
  }

  .shimge-deepwell-selection__canvas-wrap {
    height: 203px !important;
    min-height: 203px !important;
  }
}

@media (max-width: 430px) {
  .shimge-curvas__canvas-wrap,
  .shimge-deepwell-selection__canvas-wrap {
    width: calc(100% + 6px) !important;
    margin-left: -5px !important;
    margin-right: -1px !important;
  }

  .shimge-curvas__canvas-wrap {
    height: 234px !important;
    min-height: 234px !important;
  }

  .shimge-deepwell-selection__canvas-wrap {
    height: 198px !important;
    min-height: 198px !important;
  }
}


/* v0.7.59 — ajustes exclusivamente móviles */
@media (max-width: 700px) {
  .shimge-curvas__chart-card,
  .shimge-deepwell-selection__chart-card {
    overflow: hidden;
    padding-left: 2px !important;
    padding-right: 2px !important;
  }

  .shimge-curvas__canvas-wrap,
  .shimge-deepwell-selection__canvas-wrap {
    width: calc(100% + 16px) !important;
    margin-left: -10px !important;
    margin-right: -6px !important;
  }
}

@media (max-width: 430px) {
  .shimge-curvas__canvas-wrap,
  .shimge-deepwell-selection__canvas-wrap {
    width: calc(100% + 14px) !important;
    margin-left: -9px !important;
    margin-right: -5px !important;
  }
}


/* v0.7.67 — ambas gráficas tienen la misma altura exclusivamente en móvil */
@media (max-width: 700px) {
  .shimge-curvas__canvas-wrap {
    height: 203px !important;
    min-height: 203px !important;
  }
}

@media (max-width: 430px) {
  .shimge-curvas__canvas-wrap {
    height: 198px !important;
    min-height: 198px !important;
  }
}


/* v0.7.98 — POZO PROFUNDO: panel único para gráfica + leyenda.
   El borde exterior ocupa el mismo ancho que el encabezado, mientras
   gráfica y leyenda conservan sus dimensiones internas existentes. */


/* v0.7.99 — centra las filas envueltas de la leyenda y acerca la barra de leyenda/restablecer a la gráfica, sin alterar el tamaño de sus controles. */


/* v0.7.100 — aplica a la curva de rendimiento el mismo orden visual del panel de pozo profundo.
   El panel exterior ocupa todo el ancho del encabezado; gráfica, leyenda y botón conservan sus tamaños internos. */
.shimge-curvas__panel{width:100%;max-width:100%;overflow:hidden;padding:0 0 8px;border:1px solid var(--shimge-border);border-radius:14px;background:#fff}
.shimge-curvas__panel .shimge-curvas__chart-card{border:0;border-radius:0;background:transparent;padding:16px 16px 10px}
.shimge-curvas__panel .shimge-curvas__toolbar{border:0;border-radius:0;background:transparent;margin-top:4px;margin-bottom:0}
.shimge-curvas__panel .shimge-curvas__legend{justify-content:center}
@media(max-width:700px){.shimge-curvas__panel{padding-bottom:8px}.shimge-curvas__panel .shimge-curvas__chart-card,.shimge-curvas__panel .shimge-curvas__toolbar{width:100%;max-width:100%}}


/* ======================================================
   v0.7.104 — ETIQUETAS DE CURVAS MÁS GRANDES

   Rendimiento y pozo profundo comparten el mismo tamaño,
   relleno e indicador de color. El margen superior de la
   barra mantiene las etiquetas separadas de la gráfica.
   El ajuste se limita a escritorio para conservar el encaje
   compacto de la leyenda en teléfonos.
   ====================================================== */
@media (min-width: 701px) {
	.shimge-curvas__panel .shimge-curvas__toolbar,
	.shimge-deepwell-selection__toolbar {
		gap: 16px;
		margin-top: 10px;
		padding: 10px 12px 14px;
	}

	.shimge-curvas__panel .shimge-curvas__legend,
	.shimge-deepwell-selection__legend {
		column-gap: 8px;
		row-gap: 9px;
	}

	.shimge-curvas__legend-button,
	.shimge-deepwell-selection__legend-button {
		min-height: 31px;
		gap: 7px;
		padding: 7px 10px;
		border-radius: 7px;
		font-size: 11.2px;
		line-height: 1.15;
	}

	.shimge-curvas__legend-swatch,
	.shimge-deepwell-selection__legend-swatch {
		flex: 0 0 auto;
		width: 13px;
		height: 9px;
		border-radius: 3px;
	}

	.shimge-curvas__reset {
		min-height: 31px;
		padding: 7px 12px;
		font-size: 12px;
	}
}


/* ======================================================
   v0.7.105 — POZO PROFUNDO SIEMPRE VISIBLE

   En esta gráfica las etiquetas son referencias estáticas:
   no aceptan clic, no alteran la visibilidad de las curvas y
   la barra queda centrada porque ya no existe Restablecer.
   La curva de rendimiento conserva todos sus controles.
   ====================================================== */
.shimge-deepwell-selection__toolbar {
	justify-content: center;
}

.shimge-deepwell-selection__legend-button {
	cursor: default;
	pointer-events: none;
	user-select: none;
}

/* v0.7.141: leyenda específica para la curva NPSH. */
.shimge-curvas__legend-swatch--npsh {
	width: 14px;
	height: 0;
	border-radius: 0;
	background: transparent;
	border-top: 2px dashed var(--curve-color);
}

/* v0.7.170 — Página general de curvas alineada con la retícula global SHIMGE.
   Replica la misma caja horizontal que usa la cabecera y el resto del sitio. */
.shimge-curves-hub {
	box-sizing: border-box;
	width: min(var(--shimge-layout-max, 1344px), calc(100% - 48px));
	max-width: var(--shimge-layout-max, 1344px);
	min-width: 0;
	margin-right: auto;
	margin-left: auto;
	padding: 32px var(--shimge-layout-gutter-desktop, 24px) 56px;
	scroll-margin-top: 90px;
}
.shimge-curves-hub__hero {
	padding-bottom: 24px;
	margin-bottom: 18px;
	border-bottom: 1px solid #e5eaed;
}
.shimge-curves-hub__eyebrow {
	margin-bottom: 8px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: #009da3;
}
.shimge-curves-hub__title {
	margin: 0 0 8px;
	font-size: clamp(30px, 4vw, 42px);
	line-height: 1.08;
	font-weight: 800;
	color: #122029;
}
.shimge-curves-hub__description {
	max-width: 760px;
	margin: 0;
	font-size: 15px;
	line-height: 1.65;
	color: #4f6673;
}
.shimge-curves-hub .shimge-curves-hub__filters {
	margin: 0 0 20px;
	padding: 20px 22px;
	border: 1px solid #d9e4e7;
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 18px 50px rgba(20,47,56,.055);
}
.shimge-curves-hub .shimge-curves-hub__filters-grid {
	display: grid;
	grid-template-columns: repeat(3,minmax(0,1fr));
	gap: 18px;
	align-items: end;
}
.shimge-curves-hub .shimge-curves-hub__filter-field {
	display: grid;
	gap: 8px;
	min-width: 0;
}
.shimge-curves-hub .shimge-curves-hub__filter-label {
	display: block;
	margin: 0;
	padding: 0;
	color: #111c25;
	font-family: Inter,ui-sans-serif,system-ui,sans-serif;
	font-size: 13px;
	font-weight: 720;
	line-height: 1.35;
	letter-spacing: 0;
	text-transform: none;
}
.shimge-curves-hub .shimge-curves-hub__filter-select {
	box-sizing: border-box;
	width: 100%;
	height: 54px;
	min-height: 54px;
	margin: 0;
	padding: 0 44px 0 15px;
	border: 1px solid #d5e0e3;
	border-radius: 7px;
	background-color: #fff;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2317242c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 15px center;
	background-size: 16px 16px;
	color: #17242c;
	font-family: Inter,ui-sans-serif,system-ui,sans-serif;
	font-size: 15px;
	font-weight: 650;
	line-height: 1.35;
	outline: none;
	box-shadow: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	cursor: pointer;
	transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}
.shimge-curves-hub .shimge-curves-hub__filter-select:hover {
	border-color: #b9cfd4;
	background-color: #fff;
}
.shimge-curves-hub .shimge-curves-hub__filter-select:focus {
	border-color: #009da3;
	box-shadow: 0 0 0 3px rgba(0,157,163,.12);
}
.shimge-curves-hub .shimge-curves-hub__filter-select::-ms-expand {
	display: none;
}
@media (max-width: 900px) {
	.shimge-curves-hub .shimge-curves-hub__filters-grid {
		grid-template-columns: repeat(2,minmax(0,1fr));
	}
	.shimge-curves-hub .shimge-curves-hub__filter-field:last-child {
		grid-column: 1 / -1;
	}
}
@media (max-width: 640px) {
	.shimge-curves-hub .shimge-curves-hub__filters {
		padding: 18px 16px;
		border-radius: 12px;
	}
	.shimge-curves-hub .shimge-curves-hub__filters-grid {
		grid-template-columns: 1fr;
		gap: 14px;
	}
	.shimge-curves-hub .shimge-curves-hub__filter-field:last-child {
		grid-column: auto;
	}
	.shimge-curves-hub .shimge-curves-hub__filter-select {
		height: 52px;
		min-height: 52px;
		font-size: 14px;
	}
}
.shimge-curves-hub__chart {
	margin-top: 0;
}
@media (max-width: 700px) {
	.shimge-curves-hub {
		width: calc(100% - 32px);
		max-width: none;
		padding: 22px 0 40px;
	}
}

/* v0.7.169 — Etiquetas fijas del selector de pozo profundo.
   Se superponen al canvas para evitar que Chart.js las recorte u oculte. */
.shimge-deepwell-selection__canvas-wrap > canvas {
	position: relative;
	z-index: 1;
}
.shimge-deepwell-axis-labels {
	position: absolute;
	inset: 0;
	z-index: 3;
	pointer-events: none;
	overflow: visible;
	color: #13252c;
	font-family: Inter, Arial, sans-serif;
	font-size: var(--shimge-deepwell-axis-label-size, 10px);
	font-weight: 500;
	line-height: 1;
}
.shimge-deepwell-axis-label {
	position: absolute;
	display: block;
	white-space: nowrap;
}
.shimge-deepwell-axis-label--q-primary,
.shimge-deepwell-axis-label--q-secondary {
	transform: translateY(-50%);
	text-align: left;
}
.shimge-deepwell-axis-label--psi,
.shimge-deepwell-axis-label--height {
	transform: translateY(-50%) rotate(-90deg);
	transform-origin: 0 50%;
	text-align: left;
}

/* v0.7.172 — Curvas de rendimiento usa EXACTAMENTE la retícula global.
   No define un ancho propio: comparte la misma variable, gutters y breakpoints
   que Cabecera y Catálogo. De este modo cualquier cambio futuro en
   --shimge-layout-max se propaga a esta página sin crear otra retícula. */
body.shimge-curves-page .shg-curves-page-host {
	--container-max-width: none !important;
	--content-width: 100% !important;
	--width: 100% !important;
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	padding-right: 0 !important;
	padding-left: 0 !important;
}

body.shimge-curves-page .shg-curves-page-host > :is(.e-con-inner, .elementor-container),
body.shimge-curves-page .shg-curves-page-host :is(.elementor-widget-container, .elementor-shortcode) {
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	padding-right: 0 !important;
	padding-left: 0 !important;
}

/* La ruta ya recibe shimge-route-curves desde PHP. Esta variante se aplica en
 * el primer render y no espera a que shimge-curvas.js encuentre el contenedor. */
body.shimge-route-curves :is(.e-con, .elementor-section):has(.shimge-curves-hub),
body.shimge-route-curves :is(.e-con, .elementor-section):has(.shimge-curves-hub) > :is(.e-con-inner, .elementor-container),
body.shimge-route-curves :is(.e-con, .elementor-section):has(.shimge-curves-hub) :is(.elementor-widget-container, .elementor-shortcode) {
	--container-max-width: none !important;
	--content-width: 100% !important;
	--width: 100% !important;
	box-sizing: border-box !important;
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
	margin-right: 0 !important;
	margin-left: 0 !important;
	padding-right: 0 !important;
	padding-left: 0 !important;
}

/* Escritorio: idéntico a .shimge-catalog__content y al header. */
@media (min-width: 1181px) {
	body.shimge-curves-page .shimge-curves-hub {
		box-sizing: border-box !important;
		width: min(
			var(--shimge-layout-max, 1344px),
			calc(100% - (var(--shimge-layout-gutter-desktop, 24px) * 2))
		) !important;
		max-width: var(--shimge-layout-max, 1344px) !important;
		min-width: 0 !important;
		margin-right: auto !important;
		margin-left: auto !important;
		/* El Catálogo y la cabecera usan una caja exterior de 1344 px,
		   pero su contenido real comienza 24 px dentro de esa caja.
		   Curvas replica ese gutter interior para compartir el mismo eje X. */
		padding: 32px var(--shimge-layout-gutter-desktop, 24px) 56px !important;
	}
}

/* Tablet grande: mismo breakpoint del Catálogo. */
@media (min-width: 851px) and (max-width: 1180px) {
	body.shimge-curves-page .shimge-curves-hub {
		box-sizing: border-box !important;
		width: min(1120px, calc(100% - 48px)) !important;
		max-width: 1120px !important;
		min-width: 0 !important;
		margin-right: auto !important;
		margin-left: auto !important;
		padding: 26px 0 46px !important;
	}
}

/* Tablet pequeño: misma caja de 760 px del Catálogo. */
@media (min-width: 601px) and (max-width: 850px) {
	body.shimge-curves-page .shimge-curves-hub {
		box-sizing: border-box !important;
		width: min(760px, calc(100% - 32px)) !important;
		max-width: 760px !important;
		min-width: 0 !important;
		margin-right: auto !important;
		margin-left: auto !important;
		padding: 24px 0 42px !important;
	}
}

/* Móvil: mismo margen lateral que Catálogo. */
@media (max-width: 600px) {
	body.shimge-curves-page .shimge-curves-hub {
		box-sizing: border-box !important;
		width: calc(100% - 24px) !important;
		max-width: none !important;
		min-width: 0 !important;
		margin-right: auto !important;
		margin-left: auto !important;
		padding: 22px 0 40px !important;
	}
}


/* ======================================================
   v0.7.173 — ALINEACIÓN EXACTA CON CABECERA / CATÁLOGO

   La caja exterior sigue siendo la retícula global de 1344 px.
   En escritorio, el contenido utiliza el mismo gutter interior de
   24 px que .shg-header__interior y las columnas exteriores del
   Catálogo. No altera gráficas, escalas ni sus etiquetas.
   ====================================================== */
@media (min-width: 1201px) {
	body.shimge-curves-page .shimge-curves-hub {
		padding-left: var(--shimge-layout-gutter-desktop, 24px) !important;
		padding-right: var(--shimge-layout-gutter-desktop, 24px) !important;
	}
}

/* v0.8.6 — La paleta de botones de la leyenda pertenece a SHIMGE.
 * Algunos temas aplican su color de acento rosa a todos los <button>;
 * estos selectores impiden que ese estilo alcance la interfaz de curvas. */
.shimge-curvas :is(
	.shimge-curvas__legend-button,
	.shimge-curvas__reset,
	.shimge-deepwell-selection__legend-button,
	.shimge-deepwell-selection__reset
) {
	border-color: #cfe0e2 !important;
	background: #fff !important;
	box-shadow: none !important;
	color: #16252b !important;
	text-decoration: none !important;
	outline: 0 !important;
}

.shimge-curvas :is(
	.shimge-curvas__legend-button,
	.shimge-curvas__reset,
	.shimge-deepwell-selection__legend-button,
	.shimge-deepwell-selection__reset
):is(:hover, :focus-visible) {
	border-color: #009da3 !important;
	background: #e7f7f7 !important;
	color: #007f85 !important;
	box-shadow: 0 0 0 2px rgba(0,157,163,.12) !important;
}

/* v0.8.7 — La leyenda general replica las píldoras con muestra de color
 * que se utilizan dentro de la ficha de producto. Las propiedades críticas
 * llevan prioridad para evitar que Elementor o el tema oculten la muestra. */
.shimge-curvas__panel .shimge-curvas__toolbar,
.shimge-deepwell-selection__toolbar {
	gap: 18px;
	padding: 14px 16px 18px;
}

.shimge-curvas__panel .shimge-curvas__legend,
.shimge-deepwell-selection__legend {
	justify-content: center;
	column-gap: 10px;
	row-gap: 10px;
}

.shimge-curvas .shimge-curvas__legend-button,
.shimge-curvas .shimge-deepwell-selection__legend-button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 9px !important;
	min-height: 42px !important;
	padding: 9px 14px !important;
	border: 1px solid #cfe0e2 !important;
	border-radius: 9px !important;
	background: #fff !important;
	color: #16252b !important;
	font-size: 13px !important;
	font-weight: 750 !important;
	line-height: 1.15 !important;
	white-space: nowrap;
}

.shimge-curvas .shimge-curvas__legend-swatch,
.shimge-curvas .shimge-deepwell-selection__legend-swatch {
	display: inline-block !important;
	flex: 0 0 18px !important;
	width: 18px !important;
	height: 10px !important;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 3px !important;
	background-color: var(--curve-color) !important;
	opacity: 1 !important;
}

.shimge-curvas .shimge-curvas__legend-swatch--npsh {
	height: 0 !important;
	border-top: 3px dashed var(--curve-color) !important;
	border-radius: 0 !important;
	background: transparent !important;
}

.shimge-curvas .shimge-curvas__reset {
	min-height: 42px !important;
	padding: 9px 14px !important;
	border-radius: 9px !important;
	font-size: 13px !important;
}

@media (max-width: 700px) {
	.shimge-curvas__panel .shimge-curvas__toolbar,
	.shimge-deepwell-selection__toolbar {
		gap: 12px;
		padding: 12px 8px 14px;
	}

	.shimge-curvas .shimge-curvas__legend-button,
	.shimge-curvas .shimge-deepwell-selection__legend-button {
		min-height: 36px !important;
		padding: 7px 10px !important;
		font-size: 11px !important;
		white-space: normal;
	}

	.shimge-curvas .shimge-curvas__legend-swatch,
	.shimge-curvas .shimge-deepwell-selection__legend-swatch {
		flex-basis: 14px !important;
		width: 14px !important;
		height: 8px !important;
	}

	.shimge-curvas .shimge-curvas__legend-swatch--npsh {
		height: 0 !important;
	}
}

/* v0.9.91 — ficha individual: curva del modelo actual + acceso a la serie completa. */
.shimge-curvas__toolbar-actions{display:flex;flex:0 0 auto;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.shimge-curvas__show-all{
	display:inline-flex;align-items:center;justify-content:center;gap:8px;appearance:none;
	min-height:42px;padding:9px 18px;border:1px solid #008f95;border-radius:10px;
	background:#009da3;color:#fff;cursor:pointer;font:inherit;font-size:13px;line-height:1.2;font-weight:800;
	box-shadow:0 6px 16px rgba(0,157,163,.16);transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease
}
.shimge-curvas__show-all::before{content:'+';display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:rgba(255,255,255,.18);font-size:16px;line-height:1;font-weight:700}
.shimge-curvas__show-all:hover{background:#00888e;border-color:#00888e;box-shadow:0 8px 20px rgba(0,139,145,.22);transform:translateY(-1px)}
.shimge-curvas__show-all:focus-visible{outline:3px solid rgba(0,157,163,.2);outline-offset:2px}
.shimge-tabs__panel--selector{--shimge-teal:#009da3;--shimge-teal-soft:#e7f7f7;--shimge-border:#d9e3e5;--shimge-text:#16252b;--shimge-muted:#617178;font-family:Inter,ui-sans-serif,system-ui,sans-serif}
.shimge-tabs__panel--selector .shimge-deepwell-selection{margin-top:0;color:var(--shimge-text)}
@media(max-width:700px){
	.shimge-curvas__toolbar-actions{justify-content:flex-start;width:100%}
	.shimge-curvas__show-all{align-self:flex-start}
}


/* v0.9.94 — restaura la posición histórica de la leyenda y usa el lugar de Restablecer para Mostrar todas las curvas. */
.shimge-curvas__panel .shimge-curvas__toolbar{
	display:flex!important;
	align-items:center!important;
	justify-content:space-between!important;
	gap:12px!important;
}
.shimge-curvas__panel .shimge-curvas__legend{
	display:flex!important;
	flex:1 1 auto!important;
	min-width:0!important;
	justify-content:center!important;
	align-items:center!important;
	align-content:center!important;
	flex-wrap:wrap!important;
}
.shimge-curvas__show-all--reset-slot{
	flex:0 0 auto!important;
	align-self:center!important;
	min-height:38px!important;
	padding:7px 12px!important;
	border-radius:8px!important;
	font-size:10.8px!important;
	line-height:1.15!important;
	white-space:nowrap!important;
	box-shadow:0 4px 12px rgba(0,157,163,.14)!important;
}
.shimge-curvas__show-all--reset-slot::before{
	width:17px!important;
	height:17px!important;
	font-size:13px!important;
}
@media(max-width:700px){
	.shimge-curvas__panel .shimge-curvas__toolbar{align-items:stretch!important;flex-direction:column!important;}
	.shimge-curvas__show-all--reset-slot{align-self:center!important;}
}


/* v0.9.95 — botón principal para revelar todas las curvas. Mantiene el lugar del antiguo Restablecer. */
.shimge-curvas__panel .shimge-curvas__show-all--reset-slot{
	position:relative!important;
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	gap:8px!important;
	min-height:44px!important;
	padding:9px 17px!important;
	border:1px solid #008f95!important;
	border-radius:10px!important;
	background:linear-gradient(135deg,#00a5ab 0%,#008f95 100%)!important;
	color:#fff!important;
	font-size:12px!important;
	font-weight:800!important;
	line-height:1.15!important;
	letter-spacing:.01em!important;
	white-space:nowrap!important;
	box-shadow:0 7px 18px rgba(0,143,149,.20)!important;
	text-decoration:none!important;
	transition:transform .16s ease,box-shadow .16s ease,filter .16s ease!important;
}
.shimge-curvas__panel .shimge-curvas__show-all--reset-slot::before{
	content:'+'!important;
	display:grid!important;
	place-items:center!important;
	width:20px!important;
	height:20px!important;
	border-radius:50%!important;
	background:rgba(255,255,255,.20)!important;
	color:#fff!important;
	font-size:15px!important;
	font-weight:800!important;
	line-height:1!important;
}
.shimge-curvas__panel .shimge-curvas__show-all--reset-slot:hover{
	filter:brightness(.97)!important;
	transform:translateY(-1px)!important;
	box-shadow:0 10px 22px rgba(0,143,149,.27)!important;
}
.shimge-curvas__panel .shimge-curvas__show-all--reset-slot:focus-visible{
	outline:3px solid rgba(0,157,163,.22)!important;
	outline-offset:3px!important;
}


/* v0.9.100 — ficha de modelo: leyenda completa y botón debajo con estado visual claro. */
.shimge-curvas--product-page .shimge-curvas__panel .shimge-curvas__toolbar{
	display:flex!important;
	flex-direction:column!important;
	align-items:center!important;
	justify-content:center!important;
	gap:16px!important;
	padding-top:12px!important;
}
.shimge-curvas--product-page .shimge-curvas__panel .shimge-curvas__legend{
	display:flex!important;
	width:100%!important;
	flex:0 0 auto!important;
	justify-content:center!important;
	align-items:center!important;
	align-content:center!important;
	flex-wrap:wrap!important;
	gap:10px!important;
}
.shimge-curvas--product-page .shimge-curvas__show-all--reset-slot{
	order:2!important;
	align-self:center!important;
	min-height:44px!important;
	padding:10px 18px!important;
	border:1.5px solid #009da3!important;
	border-radius:10px!important;
	background:#fff!important;
	color:#008f95!important;
	font-size:12.5px!important;
	font-weight:800!important;
	line-height:1.15!important;
	box-shadow:0 5px 14px rgba(0,157,163,.09)!important;
	filter:none!important;
	transform:none!important;
	transition:background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease!important;
}
.shimge-curvas--product-page .shimge-curvas__show-all--reset-slot::before{
	background:#e7f7f7!important;
	color:#009da3!important;
	transition:background .18s ease,color .18s ease!important;
}
.shimge-curvas--product-page .shimge-curvas__show-all--reset-slot:hover{
	background:#009da3!important;
	border-color:#009da3!important;
	color:#fff!important;
	box-shadow:0 8px 20px rgba(0,157,163,.20)!important;
	transform:translateY(-1px)!important;
}
.shimge-curvas--product-page .shimge-curvas__show-all--reset-slot:hover::before{
	background:rgba(255,255,255,.20)!important;
	color:#fff!important;
}
.shimge-curvas--product-page .shimge-curvas__show-all--reset-slot.is-all-visible{
	background:#009da3!important;
	border-color:#009da3!important;
	color:#fff!important;
	box-shadow:0 7px 18px rgba(0,157,163,.18)!important;
}
.shimge-curvas--product-page .shimge-curvas__show-all--reset-slot.is-all-visible::before{
	background:rgba(255,255,255,.20)!important;
	color:#fff!important;
}
.shimge-curvas--product-page .shimge-curvas__show-all--reset-slot.is-all-visible:hover{
	background:#fff!important;
	border-color:#009da3!important;
	color:#008f95!important;
	box-shadow:0 6px 16px rgba(0,157,163,.10)!important;
}
.shimge-curvas--product-page .shimge-curvas__show-all--reset-slot.is-all-visible:hover::before{
	background:#e7f7f7!important;
	color:#009da3!important;
}
@media(max-width:700px){
	.shimge-curvas--product-page .shimge-curvas__panel .shimge-curvas__toolbar{gap:12px!important;padding-inline:8px!important;}
	.shimge-curvas--product-page .shimge-curvas__show-all--reset-slot{width:auto!important;max-width:100%!important;}
}


/* v0.9.109 — selector de tipo de gráfica en la página general de análisis. */
.shimge-curves-hub__graph-tabs{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:14px 0 16px;padding:12px 14px;border:1px solid #dce7e9;border-radius:12px;background:#f8fbfb}
.shimge-curves-hub__graph-label{margin-right:2px;color:#60737b;font-size:13px;font-weight:800}
.shimge-curves-hub__graph-tab{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 14px;border:1px solid #cfe0e2;border-radius:9px;background:#fff;color:#263840;text-decoration:none!important;font-size:13px;font-weight:800;line-height:1.2;transition:border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease}
.shimge-curves-hub__graph-tab:hover{border-color:#009da3;background:#eefafa;color:#007f85}
.shimge-curves-hub__graph-tab.is-active{border-color:#009da3;background:#009da3;color:#fff;box-shadow:0 6px 16px rgba(0,157,163,.13)}
.shimge-curves-hub__graph-tab.is-active:hover{background:#fff;color:#007f85}
@media(max-width:620px){.shimge-curves-hub__graph-tabs{align-items:stretch}.shimge-curves-hub__graph-label{flex:0 0 100%}.shimge-curves-hub__graph-tab{flex:1 1 calc(50% - 5px);text-align:center}}
