




@media (min-width: 768px) {
	.woocommerce-checkout .storex-content > .st-py-default {
		padding-inline: 0 !important;
	}

	.woocommerce-checkout .storex-content > .st-py-default > .container {
		width: var(--ct-contenedor-ancho);
		max-width: var(--ct-contenedor-max);
		margin-inline: auto;
		padding-inline: 0;
		box-sizing: border-box;
	}

	.woocommerce-checkout .storex-content > .st-py-default > .container > .row {
		width: 100%;
		margin-inline: 0;
	}

	.woocommerce-checkout .storex-content > .st-py-default > .container > .row > [class*='col-'] {
		width: 100%;
		max-width: 100%;
		flex: 0 0 100%;
		padding-inline: 0;
	}

	.woocommerce-checkout .ctsys-checkout,
	.woocommerce-checkout .ctsys-checkout-guest {
		width: 100%;
		margin-inline: auto;
		box-sizing: border-box;
	}

	.woocommerce-checkout .ctsys-checkout-guest {
		max-width: 940px;
	}

	.woocommerce-checkout .ctsys-checkout-intro,
	.woocommerce-checkout .ctsys-checkout-guest__intro,
	.woocommerce-checkout .ctsys-checkout-card,
	.woocommerce-checkout .ctsys-acceso-cuenta {
		width: 100%;
		max-width: none;
		box-sizing: border-box;
	}

	.woocommerce-checkout .ctsys-checkout__grid {
		min-width: 0;
	}
}



.ctsys-checkout-intro {
	margin: 0 0 20px;
}

/* Avisos de la pasarela: misma jerarquía visual que el checkout, sin jerga técnica. */
body.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-info {
	margin: 0 0 1rem;
	border-top-color: var(--ct-borde-fuerte);
	border-radius: var(--ct-radio-campo);
	background: var(--ct-superficie-suave);
	box-shadow: none;
	color: var(--ct-tinta);
}

body.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-info::before {
	color: var(--ct-tinta-suave);
}

body.woocommerce-checkout .woocommerce-notices-wrapper .woocommerce-info a:focus-visible {
	outline: var(--ct-foco-teclado);
	outline-offset: 3px;
}

.ctsys-checkout-intro h1 {
	margin: 0 0 10px;
	color: var(--ct-tinta);
	font-size: clamp(1.5rem, 2.4vw, 1.875rem);
	font-weight: 700;
	line-height: 1.15;
}

.ctsys-checkout-eyebrow {
	margin: 0 0 4px;
	color: var(--ct-naranja-osc);
	font-size: .75rem;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}


.ctsys-identidad {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 4px 12px;
	margin: 0;
	color: var(--ct-tinta-suave);
	font-size: .9375rem;
}

.ctsys-identidad__texto {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 4px 8px;
}

.ctsys-identidad strong {
	color: var(--ct-tinta);
	font-weight: 700;
}

.ctsys-identidad__correo {
	color: var(--ct-tinta-tenue);
}




.ctsys-checkout__grid {
	display: grid;
	grid-template-columns: minmax(280px, 32fr) minmax(0, 68fr);
	grid-template-areas: 'datos transaccion';
	gap: 20px;
	align-items: start;
}

.ctsys-checkout__grid--con-acceso {
	grid-template-areas:
		'acceso       transaccion'
		'datos        transaccion';

	grid-template-rows: max-content minmax(0, 1fr);
}

.ctsys-checkout__grid--con-acceso .ctsys-checkout__transaccion {
	grid-template-areas:
		'pago'
		'resumen';
}

.ctsys-checkout__grid--con-acceso .ctsys-checkout-card--resumen { grid-area: resumen; }
.ctsys-checkout__grid--con-acceso .ctsys-checkout-card--pago { grid-area: pago; }

.ctsys-checkout-card--acceso { grid-area: acceso; }
.ctsys-checkout-card--identidad { grid-area: identidad; }
.ctsys-checkout__datos { grid-area: datos; }
.ctsys-checkout__transaccion { grid-area: transaccion; }


.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) {
	grid-template-areas:
		'identidad resumen'
		'pago resumen';
}

.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) .ctsys-checkout__datos {
	display: none;
}

.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) .ctsys-checkout__transaccion {
	display: contents;
}

.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) .ctsys-checkout-card--pago {
	grid-area: pago;
}

.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) .ctsys-checkout-card--resumen {
	grid-area: resumen;
}


form.ctsys-checkout {
	display: contents;
}

.ctsys-checkout__datos,
.ctsys-checkout__transaccion {
	position: relative;
	display: grid;
	gap: 16px;
	min-width: 0;
}



.ctsys-checkout-card,
.ctsys-acceso-cuenta,
.ctsys-checkout-guest__intro {
	border: 1px solid var(--ct-borde);
	border-radius: var(--ct-radio);
	background: var(--ct-superficie);
	box-shadow: var(--ct-sombra);
}

.ctsys-checkout-card {
	padding: 18px;
}

.ctsys-checkout-card__titulo {
	margin: 0 0 12px;
	color: var(--ct-tinta);
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 1.25;
}


.ctsys-checkout-card__titulo::after {
	display: block;
	width: 40px;
	height: 2px;
	margin-top: 6px;
	background: var(--ct-borde-fuerte);
	content: '';
}

.ctsys-checkout-card__cabecera {
	margin-bottom: 20px;
}

.ctsys-checkout-card__cabecera .ctsys-checkout-card__titulo {
	margin-bottom: 10px;
}

.ctsys-checkout-card__cabecera p:last-child {
	margin: 0;
	color: var(--ct-tinta-suave);
	font-size: .875rem;
	line-height: 1.5;
}




.woocommerce :is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row {
	display: block;
	float: none;
	width: 100%;
	margin: 0 0 14px;
	padding: 0;
}

:is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row label {
	display: block;
	margin: 0 0 6px;
	color: var(--ct-tinta);
	font-size: .875rem;
	font-weight: 500;
	line-height: 1.3;
}

:is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row abbr.required,
:is(.ctsys-checkout, .ctsys-checkout-card--acceso) abbr.required {
	border: 0;
	color: var(--ct-naranja-osc);
	text-decoration: none;
}

:is(.ctsys-checkout, .ctsys-checkout-card--acceso) .woocommerce-input-wrapper {
	display: block;
	width: 100%;
}


.woocommerce :is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row input:not([type='checkbox']):not([type='radio']),
.woocommerce :is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row select,
.woocommerce :is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row textarea {
	box-sizing: border-box;
	width: 100%;
	min-height: 40px;
	padding: 9px 12px;
	border: 1px solid var(--ct-borde-fuerte);
	border-radius: var(--ct-radio-campo);
	background: var(--ct-superficie);
	color: var(--ct-tinta);
	font: inherit;
	font-size: .9375rem;
	line-height: 1.3;
	transition: border-color var(--ct-transicion), box-shadow var(--ct-transicion);
}

.woocommerce :is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row textarea {
	min-height: 96px;
	padding: 10px 12px;
	resize: vertical;
}

:is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row input::placeholder,
:is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row textarea::placeholder {
	color: var(--ct-tinta-tenue);
	opacity: 1;
}

.woocommerce :is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row input:focus,
.woocommerce :is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row select:focus,
.woocommerce :is(.ctsys-checkout, .ctsys-checkout-card--acceso) .form-row textarea:focus {
	border-color: var(--ct-cyan);
	box-shadow: var(--ct-foco);
	outline: 0;
}

:is(.ctsys-checkout, .ctsys-checkout-card--acceso) .woocommerce-invalid input.input-text,
:is(.ctsys-checkout, .ctsys-checkout-card--acceso) .woocommerce-invalid select {
	border-color: var(--ct-error);
}

:is(.ctsys-checkout, .ctsys-checkout-card--acceso) .woocommerce-validated input.input-text {
	border-color: var(--ct-exito);
}


.woocommerce .ctsys-checkout-card--facturacion .form-row,
.woocommerce .ctsys-cuenta-nueva .form-row {
	display: grid;
	grid-template-columns: 128px minmax(0, 1fr);
	align-items: center;
	column-gap: 12px;
	min-height: 38px;
	margin: 0 0 8px;
}

.ctsys-checkout-card--facturacion .form-row > label,
.ctsys-cuenta-nueva .form-row > label {
	grid-column: 1;
	grid-row: 1;
	margin: 0;
	padding: 8px 0;
	font-size: .75rem;
	white-space: normal;
	line-height: 1.3;
}

.ctsys-checkout-card--facturacion .form-row > .woocommerce-input-wrapper,
.ctsys-checkout-card--facturacion .form-row > input:not([type='checkbox']),
.ctsys-checkout-card--facturacion .form-row > select,
.ctsys-cuenta-nueva .form-row > .woocommerce-input-wrapper,
.ctsys-cuenta-nueva .form-row > input:not([type='checkbox']),
.ctsys-cuenta-nueva .form-row > select {
	grid-column: 2;
	grid-row: 1;
}


.ctsys-checkout .woocommerce-billing-fields__field-wrapper {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ctsys-checkout .woocommerce-billing-fields__field-wrapper > .form-row-wide {
	grid-column: 1 / -1;
}


.ctsys-checkout .select2-container .select2-selection--single {
	height: 40px;
	border: 1px solid var(--ct-borde-fuerte);
	border-radius: var(--ct-radio-campo);
	background: var(--ct-superficie);
}

.ctsys-checkout .select2-container .select2-selection--single .select2-selection__rendered {
	padding-left: 12px;
	color: var(--ct-tinta);
	font-size: .9375rem;
	line-height: 38px;
}

.ctsys-checkout .select2-container .select2-selection--single .select2-selection__arrow {
	height: 38px;
}

.ctsys-checkout .select2-container--focus .select2-selection--single,
.ctsys-checkout .select2-container--open .select2-selection--single {
	border-color: var(--ct-cyan);
	box-shadow: var(--ct-foco);
}




.ctsys-checkout-card--acceso {
	padding: 20px 24px;
}

.ctsys-checkout-card--acceso .ctsys-checkout-card__titulo {
	margin-bottom: 16px;
	font-size: 1.0625rem;
}


.ctsys-acceso-checkout__selector {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 28px;
}

.ctsys-acceso-checkout__selector label {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--ct-tinta);
	font-size: .9375rem;
	font-weight: 500;
	cursor: pointer;
}

.ctsys-acceso-checkout__selector input[type='radio'] {
	width: 18px;
	height: 18px;
	margin: 0;
	accent-color: var(--ct-cyan);
}


.ctsys-acceso-checkout__login {
	display: none;
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid var(--ct-borde);
}

.ctsys-checkout-card--acceso:has(#ctsys-modo-login:checked) .ctsys-acceso-checkout__login {
	display: block;
}

.ctsys-acceso-checkout__login .ctsys-modal-form__acciones {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 12px;
	margin: 4px 0 0;
}

.ctsys-acceso-checkout__login .ctsys-modal-form__acciones label.checkbox {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	color: var(--ct-tinta-suave);
	font-size: .875rem;
	font-weight: 400;
	cursor: pointer;
}

.ctsys-acceso-checkout__login .ctsys-modal-form__acciones input[type='checkbox'] {
	width: 16px;
	height: 16px;
	margin: 0;
	accent-color: var(--ct-cyan);
}

.ctsys-acceso-checkout__login .woocommerce-LostPassword {
	margin: 8px 0 0;
	font-size: .875rem;
}

.ctsys-acceso-checkout__login .woocommerce-LostPassword a {
	color: var(--ct-cyan);
	font-weight: 600;
}

.ctsys-acceso-checkout__login .ctsys-boton-login {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 44px;
	margin: 0;
	padding: 10px 22px;
	border: 0;
	border-radius: var(--ct-radio-campo);
	background: var(--ct-boton-principal-fondo);
	color: var(--ct-boton-principal-texto);
	font: inherit;
	font-size: .9375rem;
	font-weight: 700;
	cursor: pointer;
	transition: background-color var(--ct-transicion);
}

.ctsys-acceso-checkout__login .ctsys-boton-login:hover,
.ctsys-acceso-checkout__login .ctsys-boton-login:focus-visible {
	background: var(--ct-boton-principal-hover);
	color: var(--ct-boton-principal-texto);
}

.ctsys-acceso-checkout__login .ctsys-boton-login:focus-visible {
	outline: 2px solid var(--ct-azul);
	outline-offset: 3px;
}


.ctsys-checkout__grid--con-acceso:has(#ctsys-modo-login:checked) .ctsys-checkout__datos {
	display: none;
}

.ctsys-checkout__grid--con-acceso:has(#ctsys-modo-login:checked) .ctsys-checkout__transaccion {
	pointer-events: none;
}


.ctsys-checkout__grid--con-acceso:has(#ctsys-modo-login:checked) .ctsys-checkout__transaccion::before {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 5;
	border-radius: var(--ct-radio);
	background: rgba(248, 250, 252, .84);
	-webkit-backdrop-filter: blur(5px);
	backdrop-filter: blur(5px);
}


.ctsys-cuenta-nueva {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid var(--ct-borde);
}

.ctsys-cuenta-nueva__titulo {
	margin: 0 0 6px;
	color: var(--ct-tinta);
	font-size: 1rem;
	font-weight: 600;
}

.ctsys-cuenta-nueva__nota {
	margin: 0 0 14px;
	color: var(--ct-tinta-suave);
	font-size: .875rem;
	line-height: 1.5;
}

.ctsys-cuenta-nueva__campos {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ctsys-cuenta-nueva__campos > .form-row-wide {
	grid-column: 1 / -1;
}


.ctsys-gmail-drive {
	margin-top: 22px;
	padding: 18px;
	border: 1px solid var(--ct-borde);
	border-radius: 10px;
	background: var(--ct-superficie);
}

.ctsys-gmail-drive h3 {
	margin: 0 0 8px;
	color: var(--ct-tinta);
	font-size: 1rem;
	font-weight: 700;
}

.ctsys-gmail-drive__aviso {
	margin: 0 0 14px;
	color: var(--ct-tinta-suave);
	font-size: .875rem;
	line-height: 1.5;
}

.ctsys-gmail-drive__nota {
	display: block;
	margin-top: 6px;
	color: var(--ct-tinta-suave);
	font-size: .8125rem;
	line-height: 1.4;
}



.ctsys-checkout .wc_payment_methods {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.ctsys-checkout .wc_payment_methods > li {
	min-width: 0;
	margin: 0;
	padding: 0;
	border: 1px solid var(--ct-borde);
	border-radius: 10px;
	background: var(--ct-superficie);
	list-style: none;
	transition: border-color var(--ct-transicion), background-color var(--ct-transicion);
}


.ctsys-checkout .wc_payment_methods > li > label {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0;
	padding: 15px 16px;
	color: var(--ct-tinta);
	font-size: .9375rem;
	font-weight: 600;
	cursor: pointer;
}

.ctsys-checkout .wc_payment_methods > li input[type='radio'] {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	margin: 0;
	accent-color: var(--ct-cyan);
}

.ctsys-checkout .wc_payment_methods > li img {
	max-height: 24px;
	width: auto;
	margin-left: auto;
}

.ctsys-checkout .wc_payment_methods > li:hover {
	border-color: var(--ct-borde-fuerte);
}

.ctsys-checkout .wc_payment_methods > li:has(input[type='radio']:checked) {
	border-color: var(--ct-cyan);
	background: var(--ct-cyan-tinte);
	box-shadow: inset 0 0 0 1px var(--ct-cyan);
}

.ctsys-checkout .wc_payment_methods > li:focus-within {
	box-shadow: var(--ct-foco);
}


.ctsys-checkout .wc_payment_methods .payment_box {
	min-width: 0;
	max-width: 100%;
	overflow-x: auto;
	margin: 0;
	padding: 0 16px 15px 46px;
	border-radius: 0;
	background: none;
	color: var(--ct-tinta-suave);
	font-size: .875rem;
	line-height: 1.5;
}

.ctsys-checkout .wc_payment_methods .payment_box::before {
	display: none;
}

.ctsys-checkout .wc_payment_methods .payment_box p:last-child {
	margin-bottom: 0;
}

.ctsys-checkout .wc_payment_methods > li .woocommerce-info,
.ctsys-pago__sin-cobro {
	margin: 0;
	padding: 14px 16px;
	border: 0;
	border-radius: 10px;
	background: var(--ct-aviso-tinte);
	color: var(--ct-aviso);
	font-size: .875rem;
	line-height: 1.5;
}

.ctsys-checkout .wc_payment_methods > li .woocommerce-info::before {
	display: none;
}



.ctsys-resumen__cabecera {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
}

.ctsys-checkout .woocommerce-checkout-review-order-table {
	width: 100%;
	margin: 0;
	border: 0;
	border-collapse: collapse;
	font-size: .9375rem;
}


.woocommerce .ctsys-checkout .woocommerce-checkout-review-order-table thead th {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	white-space: nowrap;
}


.woocommerce .ctsys-checkout .woocommerce-checkout-review-order-table td,
.woocommerce .ctsys-checkout .woocommerce-checkout-review-order-table th {
	padding: 12px 0;
	border: 0;
	border-bottom: 1px solid var(--ct-borde);
	background: none;
	vertical-align: middle;
}

.ctsys-checkout .woocommerce-checkout-review-order-table .product-name {
	display: flex;
	align-items: center;
	gap: 12px;
	padding-right: 16px;
	color: var(--ct-tinta);
}

.ctsys-resumen__miniatura {
	flex: 0 0 auto;
	width: 44px;
	height: 44px;
	border: 1px solid var(--ct-borde);
	border-radius: 8px;
	background: var(--ct-superficie-suave);
	object-fit: contain;
}

.ctsys-resumen__nombre {
	flex: 1 1 auto;
	font-weight: 600;
	line-height: 1.35;
}

.ctsys-checkout .woocommerce-checkout-review-order-table .product-quantity {
	flex: 0 0 auto;
	color: var(--ct-tinta-suave);
	font-weight: 500;
	white-space: nowrap;
}

.ctsys-checkout .woocommerce-checkout-review-order-table .product-total {
	text-align: right;
	white-space: nowrap;
	font-variant-numeric: tabular-nums;
}

.ctsys-checkout .woocommerce-checkout-review-order-table tfoot th {
	color: var(--ct-tinta-suave);
	font-weight: 500;
	text-align: left;
}

.ctsys-checkout .woocommerce-checkout-review-order-table tfoot td {
	color: var(--ct-tinta);
	font-variant-numeric: tabular-nums;
	text-align: right;
	white-space: nowrap;
}

.ctsys-checkout .woocommerce-checkout-review-order-table tfoot .order-total th,
.ctsys-checkout .woocommerce-checkout-review-order-table tfoot .order-total td {
	padding-top: 14px;
	border-bottom: 0;
	color: var(--ct-tinta);
	font-size: 1.125rem;
	font-weight: 700;
}

.ctsys-checkout .woocommerce-checkout-review-order-table tfoot .cart-discount td {
	color: var(--ct-exito);
}


.ctsys-checkout-productos {
	width: 100%;
	margin: 0;
	font-size: .9375rem;
}

.ctsys-checkout-productos__totales {
	display: grid;
	gap: 10px;
	margin-top: 14px;
}

.ctsys-checkout-productos__totales .ctsys-resumen-fila {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	font-size: .92rem;
	font-variant-numeric: tabular-nums;
}

.ctsys-checkout-productos__totales .ctsys-resumen-fila--descuento {
	color: var(--ct-exito);
}

.ctsys-checkout-productos__totales .ctsys-resumen-fila--total {
	padding-top: 12px;
	border-top: 1px solid var(--ct-borde);
	color: var(--ct-tinta);
	font-size: 1.15rem;
	font-weight: 800;
}


.ctsys-confirmar__consentimientos {
	display: grid;
	gap: 10px;
	margin: 16px 0 20px;
}

.ctsys-checkout .ctsys-consentimiento,
.ctsys-checkout .woocommerce-terms-and-conditions-wrapper .form-row {
	margin: 0;
}


.woocommerce form.ctsys-checkout .ctsys-consentimiento label.checkbox,
.woocommerce form.ctsys-checkout .woocommerce-terms-and-conditions-wrapper label.checkbox {
	display: grid;
	grid-template-columns: 18px minmax(0, 1fr);
	align-items: start;
	gap: 10px;
	margin: 0;
	color: var(--ct-tinta-suave);
	font-size: .875rem;
	font-weight: 400;
	line-height: 1.45;
	cursor: pointer;
}

.ctsys-checkout .ctsys-consentimiento input[type='checkbox'],
.ctsys-checkout .woocommerce-terms-and-conditions-wrapper input[type='checkbox'] {
	width: 18px;
	height: 18px;
	margin: 0;
	accent-color: var(--ct-cyan);
}

.ctsys-checkout .ctsys-consentimiento a,
.ctsys-checkout .woocommerce-terms-and-conditions-wrapper a {
	color: var(--ct-cyan);
	font-weight: 600;
	text-decoration: underline;
}

.ctsys-checkout .ctsys-consentimiento abbr.required {
	grid-column: 2;
	margin-top: -4px;
}

.ctsys-checkout .ctsys-consentimiento--obligatorio abbr.required {
	display: inline;
	grid-column: auto;
	margin: 0 0 0 2px;
	color: #dc2626;
	font-size: .95em;
	vertical-align: baseline;
}

.ctsys-checkout .woocommerce-terms-and-conditions-checkbox-text abbr.required {
	display: inline;
	margin-left: 2px;
	color: #dc2626;
	font-size: .95em;
	vertical-align: baseline;
}

.ctsys-checkout .place-order {
	margin: 0;
	padding: 0;
}

.ctsys-confirmar__total {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 14px;
	padding: 14px 16px;
	border-radius: 10px;
	background: var(--ct-superficie-suave);
}

.ctsys-confirmar__total-etiqueta {
	color: var(--ct-tinta-suave);
	font-size: .9375rem;
	font-weight: 500;
}

.ctsys-confirmar__total-cifra {
	color: var(--ct-tinta);
	font-size: 1.375rem;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
}

.ctsys-confirmar__total-cifra .includes_tax {
	display: block;
	color: var(--ct-tinta-suave);
	font-size: .8125rem;
	font-weight: 400;
}


.ctsys-checkout .ctsys-boton-pagar,
.ctsys-checkout #place_order {
	display: block;
	width: 100%;
	min-height: 56px;
	padding: 15px 24px;
	border: 0;
	border-radius: var(--ct-radio-pill);
	background: var(--ct-boton-principal-fondo);
	color: var(--ct-boton-principal-texto);
	font-size: .9375rem;
	font-weight: 800;
	letter-spacing: .03em;
	line-height: 1.2;
	text-align: center;
	text-transform: none;
	cursor: pointer;
	transition: background-color var(--ct-transicion), transform var(--ct-transicion);
}

.ctsys-checkout .ctsys-boton-pagar:hover,
.ctsys-checkout #place_order:hover {
	background: var(--ct-boton-principal-hover);
	color: var(--ct-boton-principal-texto);
}

.ctsys-checkout .ctsys-boton-pagar:focus-visible,
.ctsys-checkout #place_order:focus-visible {
	box-shadow: var(--ct-foco);
	outline: 0;
}

.ctsys-checkout .ctsys-boton-pagar:active,
.ctsys-checkout #place_order:active {
	transform: scale(.99);
}

.ctsys-confirmar__seguridad {
	margin: 12px 0 0;
	color: var(--ct-tinta-tenue);
	font-size: .8125rem;
	line-height: 1.45;
	text-align: center;
}

.ctsys-confirmar__noscript {
	margin: 0 0 14px;
	padding: 12px 14px;
	border-radius: 8px;
	background: var(--ct-aviso-tinte);
	color: var(--ct-aviso);
	font-size: .875rem;
}




@media (min-width: 992px) {
	.woocommerce-checkout .ctsys-confianza-banda {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		margin-bottom: 24px;
	}
}



.ctsys-checkout-guest {
	max-width: 940px;
	margin: 0 auto;
}

.ctsys-checkout-guest__intro {
	padding: 28px 32px;
	margin-bottom: 18px;
}

.ctsys-checkout-guest__intro h1 {
	margin: 3px 0 8px;
	color: var(--ct-tinta);
}

.ctsys-checkout-guest__intro p:last-child {
	margin: 0;
	color: var(--ct-tinta-suave);
}

.ctsys-acceso-cuenta {
	overflow: hidden;
}

.ctsys-acceso-cuenta__cabecera {
	padding: 30px 32px 18px;
}

.ctsys-acceso-cuenta__cabecera h2 {
	margin: 4px 0 8px;
}

.ctsys-acceso-cuenta__cabecera p:last-child {
	margin: 0;
	color: var(--ct-tinta-suave);
}

.ctsys-acceso-cuenta__selector {
	display: grid;
	grid-template-columns: 1fr 1fr;
	border-top: 1px solid var(--ct-borde);
	border-bottom: 1px solid var(--ct-borde);
}

.ctsys-acceso-cuenta__selector button {
	border: 0;
	padding: 15px;
	background: var(--ct-superficie-suave);
	color: var(--ct-tinta-suave);
	font-weight: 800;
	cursor: pointer;
}

.ctsys-acceso-cuenta__selector button[aria-selected='true'] {
	background: var(--ct-boton-principal-fondo);
	color: var(--ct-boton-principal-texto);
}

.ctsys-acceso-cuenta__panel {
	padding: 28px 32px 32px;
}

.ctsys-acceso-cuenta__panel[hidden] {
	display: none;
}

.ctsys-acceso-cuenta__panel h3 {
	margin-top: 0;
}

.ctsys-acceso-cuenta__acciones {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
}

.ctsys-acceso-cuenta__acciones .button {
	margin-left: auto;
}

.ctsys-acceso-cuenta label {
	font-weight: 700;
}

.ctsys-acceso-cuenta input {
	min-height: 42px;
	border-radius: var(--ct-radio-campo);
}

.ctsys-aceptacion-terminos {
	clear: both;
	margin-top: 4px;
}

.ctsys-registro-perfil .form-row {
	margin-bottom: 16px;
}

.ctsys-registro-perfil label {
	font-weight: 700;
}

.ctsys-registro-perfil input,
.ctsys-registro-perfil select {
	min-height: 42px;
	border-radius: var(--ct-radio-campo);
}

.ctsys-registro-perfil__campos::after {
	display: table;
	clear: both;
	content: '';
}

.ctsys-registro-perfil__aviso {
	clear: both;
	margin: 2px 0 18px;
	padding: 12px;
	border-radius: 8px;
	background: var(--ct-naranja-tinte);
	color: var(--ct-naranja-osc);
	font-size: 14px;
}




.ctsys-cuenta-acceso {
	box-sizing: border-box;
	width: min(100%, 820px);
	margin: 0 auto 48px;
	padding: clamp(24px, 4vw, 40px) clamp(18px, 4vw, 40px) 0;
	border: 1px solid var(--ct-borde);
	border-radius: 16px;
	background: var(--ct-superficie);
	color: var(--ct-tinta);
	font-family: var(--ct-fuente);
}

.ctsys-cuenta-acceso h1,
.ctsys-cuenta-acceso h2,
.ctsys-cuenta-acceso p,
.ctsys-cuenta-acceso label,
.ctsys-cuenta-acceso input,
.ctsys-cuenta-acceso select,
.ctsys-cuenta-acceso button {
	font-family: var(--ct-fuente) !important;
}

.ctsys-cuenta-acceso__cabecera {
	padding: 0 0 20px;
	border-bottom: 1px solid var(--ct-borde);
}

.ctsys-cuenta-acceso h1,
.ctsys-cuenta-acceso h2 {
	margin: 0;
	font-weight: 400;
	line-height: 1.2;
}

.ctsys-cuenta-acceso h1 {
	font-size: clamp(1.35rem, 2.4vw, 1.65rem);
	letter-spacing: -0.02em;
}

.ctsys-cuenta-acceso h2 {
	font-size: 1.1rem;
	font-weight: 600;
	letter-spacing: -0.01em;
}

.ctsys-cuenta-acceso h1::after,
.ctsys-cuenta-acceso h2::after {
	display: block;
	width: 56px;
	height: 2px;
	margin-top: 10px;
	background: var(--ct-naranja);
	content: '';
}

.ctsys-cuenta-acceso__nuevo {
	margin-top: 24px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
}

.ctsys-cuenta-acceso__panel {
	padding-top: 28px;
}

.ctsys-cuenta-acceso__nuevo p {
	max-width: 65ch;
	margin: 14px 0 18px;
	color: var(--ct-tinta-suave);
	font-size: .95rem;
	line-height: 1.6;
}

.ctsys-cuenta-acceso .button {
	display: inline-flex;
	box-sizing: border-box;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	padding: 11px 16px;
	border: 0;
	border-radius: var(--ct-radio-campo);
	background: var(--ct-boton-principal-fondo);
	color: var(--ct-boton-principal-texto);
	font-size: .9rem;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	text-transform: none;
	transition: background-color var(--ct-transicion), box-shadow var(--ct-transicion), transform var(--ct-transicion);
}

.ctsys-cuenta-acceso__nuevo .button,
.ctsys-cuenta-acceso__accion .button {
	width: 100%;
}


.ctsys-cuenta-acceso__nuevo .button {
	background: var(--ct-boton-principal-fondo) !important;
	border-color: var(--ct-boton-principal-fondo) !important;
	color: var(--ct-boton-principal-texto) !important;
}

.ctsys-cuenta-acceso__nuevo .button:hover,
.ctsys-cuenta-acceso__nuevo .button:focus-visible {
	background: var(--ct-boton-principal-hover) !important;
	border-color: var(--ct-boton-principal-hover) !important;
	color: var(--ct-boton-principal-texto) !important;
}

.ctsys-cuenta-acceso .button:focus-visible {
	outline: 0;
	box-shadow: var(--ct-foco);
}

.ctsys-cuenta-acceso .button:active {
	transform: translateY(1px);
}

.ctsys-cuenta-acceso__accion .button,
.ctsys-acceso-cuenta__acciones .button,
.ctsys-modal-form .button {
	background: var(--ct-boton-principal-fondo) !important;
	border-color: var(--ct-boton-principal-fondo) !important;
	color: var(--ct-boton-principal-texto) !important;
}

.ctsys-cuenta-acceso__accion .button:hover,
.ctsys-cuenta-acceso__accion .button:focus-visible,
.ctsys-acceso-cuenta__acciones .button:hover,
.ctsys-acceso-cuenta__acciones .button:focus-visible,
.ctsys-modal-form .button:hover,
.ctsys-modal-form .button:focus-visible {
	background: var(--ct-boton-principal-hover) !important;
	border-color: var(--ct-boton-principal-hover) !important;
	color: var(--ct-boton-principal-texto) !important;
}

.ctsys-checkout-card--cupon .button {
	border: 1px solid var(--ct-boton-secundario-borde) !important;
	background: var(--ct-boton-secundario-fondo) !important;
	color: var(--ct-boton-secundario-texto) !important;
}

.ctsys-checkout-card--cupon .button:hover,
.ctsys-checkout-card--cupon .button:focus-visible {
	border-color: var(--ct-cyan) !important;
	background: var(--ct-cyan-tinte) !important;
	color: var(--ct-tinta) !important;
}

.ctsys-cuenta-acceso__panel[hidden] {
	display: none;
}

.ctsys-cuenta-acceso__panel form {
	max-width: none;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent;
	box-shadow: none !important;
}

.ctsys-cuenta-acceso .woocommerce-LostPassword {
	margin: 2px 0 18px;
}

.ctsys-cuenta-acceso .woocommerce-LostPassword a {
	color: var(--ct-cyan);
	font-weight: 700;
	text-underline-offset: 3px;
}

.ctsys-cuenta-acceso__acerca {
	margin-top: 28px;
	padding: 26px 0 30px;
	border-top: 1px solid var(--ct-borde);
}

.ctsys-cuenta-acceso__acerca p {
	margin: 12px 0 0;
	color: var(--ct-tinta-suave);
	line-height: 1.55;
}

/* El footer ya contiene esta información; no duplicarla en Mi cuenta. */
.ctsys-cuenta-acceso__acerca {
	display: none !important;
}

@media (min-width: 768px) {

	.ctsys-cuenta-acceso {
		width: min(100%, 980px);
		display: grid;
		grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
		column-gap: clamp(24px, 4vw, 48px);
		align-items: start;
	}

	.ctsys-cuenta-acceso__cabecera {
		grid-column: 1 / -1;
	}

	.ctsys-cuenta-acceso__nuevo {
		margin-top: 24px;
		padding: 0;
	}

	.ctsys-cuenta-acceso__panel {
		min-width: 0;
		padding-top: 24px;
	}

	.ctsys-cuenta-acceso .woocommerce-form-register,
	.ctsys-cuenta-acceso .ctsys-registro-perfil__campos {
		display: block;
	}
}

@media (max-width: 767px) {

	.ctsys-cuenta-acceso .woocommerce-form-register,
	.ctsys-cuenta-acceso .ctsys-registro-perfil__campos {
		display: block;
	}
}

.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) {
	display: block !important;
	width: 100% !important;
	min-height: 0;
	margin: 0 0 18px !important;
	padding: 0 !important;
	float: none !important;
}

.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > label {
	display: block;
	margin: 0 0 7px !important;
	padding: 0 !important;
	color: var(--ct-tinta);
	font-size: .9375rem !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	white-space: normal;
	overflow-wrap: anywhere;
}

.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > .woocommerce-input-wrapper,
.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > .password-input,
.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > input:not([type='checkbox']),
.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > select {
	display: block;
	width: 100%;
	min-width: 0;
	margin: 0 !important;
}

.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > .woocommerce-input-wrapper > input,
.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > .woocommerce-input-wrapper > select,
.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > .password-input > input,
.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > input:not([type='checkbox']),
.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) > select {
	box-sizing: border-box !important;
	width: 100% !important;
	height: auto !important;
	min-height: 48px !important;
	padding: 10px 14px !important;
	border: 1px solid var(--ct-borde-fuerte) !important;
	border-radius: var(--ct-radio-campo) !important;
	background: var(--ct-superficie);
	font-size: 1rem !important;
	line-height: 1.35 !important;
}

.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) input:not([type='checkbox'])::placeholder {
	color: var(--ct-tinta-tenue);
	opacity: 1;
}

.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) input:not([type='checkbox']):focus,
.ctsys-cuenta-acceso .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion):not(.ctsys-aceptacion-terminos) select:focus {
	border-color: var(--ct-cyan) !important;
	box-shadow: var(--ct-foco) !important;
}

.ctsys-cuenta-acceso__sesion,
.ctsys-cuenta-acceso__accion,
.ctsys-cuenta-acceso .ctsys-aceptacion-terminos {
	display: block !important;
	min-height: 0 !important;
}

.ctsys-cuenta-acceso__sesion {
	margin: 2px 0 16px !important;
}

.ctsys-cuenta-acceso__sesion label {
	display: inline-flex;
	min-height: 44px;
	align-items: center;
	gap: 10px;
	margin: 0;
	color: var(--ct-tinta-suave);
	font-size: .9375rem !important;
	font-weight: 400 !important;
	cursor: pointer;
}

.ctsys-cuenta-acceso__sesion input[type='checkbox'] {
	width: 16px;
	height: 16px;
	margin: 0;
	accent-color: var(--ct-cyan);
}

.ctsys-cuenta-acceso__accion {
	margin: 4px 0 0 !important;
}

.ctsys-cuenta-acceso .ctsys-aceptacion-terminos {
	margin: 18px 0 12px !important;
}

.ctsys-cuenta-acceso .ctsys-aceptacion-terminos label.checkbox {
	display: flex;
	min-height: 44px;
	align-items: flex-start;
	gap: 10px;
	margin: 0;
	color: var(--ct-tinta-suave);
	font-size: .9rem !important;
	font-weight: 400 !important;
	line-height: 1.45 !important;
}

.ctsys-cuenta-acceso .ctsys-aceptacion-terminos input[type='checkbox'] {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	margin: 2px 0 0;
	accent-color: var(--ct-cyan);
}

.ctsys-cuenta-acceso .ctsys-aceptacion-terminos a {
	color: var(--ct-cyan);
	font-weight: 700;
	text-underline-offset: 3px;
}

.ctsys-cuenta-acceso .ctsys-registro-perfil__aviso {
	margin: 2px 0 0;
	padding: 12px 14px;
	border: 1px solid var(--ct-borde);
	border-radius: var(--ct-radio-campo);
	background: var(--ct-superficie-suave);
	color: var(--ct-tinta-suave);
	font-size: .875rem;
	line-height: 1.5;
}

.ctsys-cuenta-acceso .ctsys-registro-perfil__campos {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 16px;
}

.ctsys-cuenta-acceso .ctsys-registro-perfil__campos > .form-row-wide {
	grid-column: 1 / -1;
}

.ctsys-cuenta-acceso .ctsys-registro-perfil__campos > .form-row-first {
	grid-column: 1;
}

.ctsys-cuenta-acceso .ctsys-registro-perfil__campos > .form-row-last {
	grid-column: 2;
}

.ctsys-cuenta-acceso .woocommerce-form-register {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	column-gap: 16px;
}

.ctsys-cuenta-acceso .woocommerce-form-register > h2,
.ctsys-cuenta-acceso .woocommerce-form-register > .ctsys-form-aviso,
.ctsys-cuenta-acceso .woocommerce-form-register > .ctsys-trampa,
.ctsys-cuenta-acceso .woocommerce-form-register > .ctsys-registro-perfil,
.ctsys-cuenta-acceso .woocommerce-form-register > .ctsys-aceptacion-terminos,
.ctsys-cuenta-acceso .woocommerce-form-register > .ctsys-cuenta-acceso__accion,
.ctsys-cuenta-acceso .woocommerce-form-register > wc-order-attribution-inputs,
.ctsys-cuenta-acceso .woocommerce-form-register > .woocommerce-privacy-policy-text {
	grid-column: 1 / -1;
}

.ctsys-cuenta-acceso .woocommerce-form-register > .form-row-first {
	grid-column: 1;
}

.ctsys-cuenta-acceso .woocommerce-form-register > .form-row-last {
	grid-column: 2;
}



@media (min-width: 992px) {

	.ctsys-cuenta .storex-content .row > .col-lg-9 {
		width: 100%;
		max-width: 100%;
		flex: 0 0 100%;
	}
}

@media (min-width: 1024px) {

	html body.ctsys-cuenta .storex-content > .post-section > .container {
		box-sizing: border-box;
		width: var(--ct-contenedor-ancho);
		max-width: var(--ct-contenedor-max);
		margin-inline: auto;
		padding-inline: 0;
	}

	html body.ctsys-cuenta .storex-content > .post-section > .container > .row {
		display: block;
		width: 100%;
		margin-inline: 0;
	}

	html body.ctsys-cuenta .storex-content > .post-section > .container > .row > .col-lg-9 {
		box-sizing: border-box;
		width: 100%;
		max-width: 100%;
		flex: 0 0 100%;
		padding-inline: 0;
	}

	.ctsys-cuenta-acceso {
		margin-top: 0;
		margin-right: auto;
		margin-left: auto;
	}
}



@media (max-width: 1023px) {
	.ctsys-checkout__grid {
		grid-template-columns: minmax(0, 1fr);
		grid-template-areas:
			'datos'
			'transaccion';
		grid-template-rows: none;
		gap: 16px;
	}

	.ctsys-checkout__grid--con-acceso {
		grid-template-areas:
			'acceso'
			'datos'
			'transaccion';
		grid-template-rows: none;
	}

	.ctsys-checkout__grid--con-acceso:has(#ctsys-modo-login:checked) {
		grid-template-areas:
			'acceso'
			'transaccion';
	}

	.ctsys-checkout__grid:not(.ctsys-checkout__grid--con-acceso) {
		grid-template-areas:
			'identidad'
			'pago'
			'resumen';
	}

	/* En móvil, la confirmación sigue al pago y al resumen. */
	.ctsys-checkout__grid--con-acceso:not(:has(#ctsys-modo-login:checked)) {
		grid-template-areas:
			'acceso'
			'datos'
			'pago'
			'resumen';
	}

	.ctsys-checkout__grid--con-acceso:not(:has(#ctsys-modo-login:checked)) .ctsys-checkout__transaccion {
		display: contents;
	}

	.ctsys-checkout__grid--con-acceso:not(:has(#ctsys-modo-login:checked)) .ctsys-checkout-card--resumen {
		grid-area: resumen;
	}

	.ctsys-checkout__grid--con-acceso:not(:has(#ctsys-modo-login:checked)) .ctsys-checkout-card--pago {
		grid-area: pago;
	}

}

@media (max-width: 600px) {
	.ctsys-checkout-card {
		padding: 16px;
	}


	.woocommerce .ctsys-checkout-card--facturacion .form-row,
	.woocommerce .ctsys-cuenta-nueva .form-row {
		grid-template-columns: 96px minmax(0, 1fr);
		column-gap: 10px;
	}

	.ctsys-checkout-card--facturacion .form-row > label,
	.ctsys-cuenta-nueva .form-row > label {
		font-size: .75rem;
	}

	.ctsys-checkout-guest__intro,
	.ctsys-acceso-cuenta__cabecera,
	.ctsys-acceso-cuenta__panel {
		padding-left: 20px;
		padding-right: 20px;
	}

	.ctsys-acceso-cuenta__acciones .button {
		width: 100%;
		margin-left: 0;
	}

	.ctsys-registro-perfil .form-row-first,
	.ctsys-registro-perfil .form-row-last,
	.ctsys-acceso-cuenta .form-row-first,
	.ctsys-acceso-cuenta .form-row-last,
	.ctsys-cuenta-acceso .form-row-first,
	.ctsys-cuenta-acceso .form-row-last {
		float: none;
		width: 100%;
	}

	.ctsys-cuenta-acceso {
		width: 100%;
	margin: 0 auto 32px;
	padding: 22px 18px 0;
	border-radius: 14px;
}

	.ctsys-cuenta-acceso__nuevo {
		margin-top: 20px;
		padding: 0;
	}

	.ctsys-cuenta-acceso__panel {
		padding-top: 24px;
	}

	.ctsys-cuenta-acceso__acerca {
		margin-top: 24px;
		padding: 22px 0 24px;
	}

	.ctsys-cuenta-acceso .woocommerce-form-register {
		display: block;
	}

	.ctsys-cuenta-acceso .ctsys-registro-perfil__campos {
		display: block;
	}
}


.woocommerce .ctsys-checkout-card--facturacion .form-row,
.woocommerce .ctsys-cuenta-nueva .form-row {
	display: block;
	width: 100%;
	min-height: 0;
	margin: 0 0 9px;
}

.ctsys-checkout-card--facturacion .form-row > label,
.ctsys-cuenta-nueva .form-row > label {
	display: block;
	margin: 0 0 4px;
	padding: 0;
	font-family: var(--ct-fuente);
	font-size: .875rem;
	font-weight: 400;
	line-height: 1.2;
	white-space: normal;
}

.ctsys-checkout-card--facturacion .form-row > .woocommerce-input-wrapper,
.ctsys-cuenta-nueva .form-row > .woocommerce-input-wrapper,
.ctsys-cuenta-nueva .form-row > .password-input {
	display: block;
	width: 100%;
}

.ctsys-cuenta-nueva .show-password-input,
.ctsys-cuenta-nueva button.show-password-input {
	display: none !important;
}

.woocommerce .ctsys-cuenta-nueva input[type='password'] {
	padding-right: 12px;
}


.ctsys-checkout-card--facturacion .required,
.ctsys-cuenta-nueva .required,
.ctsys-checkout-card--facturacion abbr.required,
.ctsys-cuenta-nueva abbr.required {
	border: 0;
	color: #d92d20;
	font-size: .875em;
	font-weight: 400;
	line-height: inherit;
	text-decoration: none;
}


.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login {
	margin-top: 24px;
	padding-top: 0;
	border-top: 0;
}

.ctsys-checkout-card--acceso .ctsys-modal-form.ctsys-modal-form--login {
	margin: 0;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0;
	background: transparent;
	box-shadow: none !important;
	color: var(--ct-tinta);
	font-family: var(--ct-fuente);
}

.woocommerce .ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row:not(.ctsys-modal-form__acciones) {
	display: block;
	min-height: 0;
	margin: 0 0 16px;
}

.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row:not(.ctsys-modal-form__acciones) > label {
	display: block;
	margin: 0 0 6px;
	padding: 0;
	font-family: var(--ct-fuente);
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.2;
}


.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .required {
	display: none;
}


body.woocommerce-checkout .storex-content,
body.woocommerce-checkout .storex-content > .st-py-default {
	background: #f8f8f8;
}


.woocommerce .ctsys-checkout-card--facturacion .form-row,
.woocommerce .ctsys-cuenta-nueva .form-row {
	column-gap: 20px;
}

.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row:not(.ctsys-modal-form__acciones) > .woocommerce-input-wrapper,
.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row:not(.ctsys-modal-form__acciones) > .password-input {
	display: block;
	width: 100%;
}

.woocommerce .ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row:not(.ctsys-modal-form__acciones) input:not([type='checkbox']):not([type='radio']) {
	width: 100%;
	min-height: 44px;
	height: 44px;
	padding: 9px 12px;
	border-color: var(--ct-borde);
	border-radius: var(--ct-radio-campo);
	font-family: var(--ct-fuente);
	font-size: 1rem;
}

.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .woocommerce-LostPassword {
	margin: 0 0 16px;
	font-family: var(--ct-fuente);
	font-size: 1rem;
}

.ctsys-checkout-card--acceso .ctsys-modal-form__acciones {
	gap: 14px;
}


.woocommerce .ctsys-checkout-card--facturacion .form-row,
.woocommerce .ctsys-cuenta-nueva .form-row {
	grid-template-columns: max-content minmax(0, 1fr);
}

.ctsys-checkout-card--facturacion .form-row > label,
.ctsys-cuenta-nueva .form-row > label {
	white-space: nowrap;
	overflow-wrap: normal;
}


.ctsys-checkout-card--acceso .ctsys-modal-form__acciones input[type='checkbox'] {
	accent-color: var(--ct-cyan);
}

.ctsys-checkout-card--acceso .ctsys-boton-login {
	background: var(--ct-boton-principal-fondo) !important;
	border-color: var(--ct-boton-principal-fondo) !important;
	color: var(--ct-boton-principal-texto) !important;
}

.ctsys-checkout-card--acceso .ctsys-boton-login:hover,
.ctsys-checkout-card--acceso .ctsys-boton-login:focus-visible {
	background: var(--ct-boton-principal-hover) !important;
	border-color: var(--ct-boton-principal-hover) !important;
	color: var(--ct-boton-principal-texto) !important;
}




.ctsys-checkout-card--acceso,
.ctsys-checkout-card--facturacion {
	border: 1px solid var(--ct-borde);
	border-radius: var(--ct-radio);
	box-shadow: var(--ct-sombra);
	font-family: var(--ct-fuente);
}

.ctsys-checkout-card--acceso {
	padding: 16px;
}

.ctsys-checkout-card--facturacion {
	padding: 16px;
}

.ctsys-checkout-card--acceso .ctsys-checkout-card__titulo,
.ctsys-checkout-card--facturacion .ctsys-checkout-card__titulo,
.ctsys-cuenta-nueva__titulo {
	font-family: var(--ct-fuente);
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.3;
}

.ctsys-checkout-card--acceso .ctsys-checkout-card__titulo,
.ctsys-checkout-card--facturacion .ctsys-checkout-card__titulo {
	margin-bottom: 12px;
}

.ctsys-checkout-card--acceso .ctsys-checkout-card__titulo::after,
.ctsys-checkout-card--facturacion .ctsys-checkout-card__titulo::after,
.ctsys-cuenta-nueva__titulo::after {
	width: 50px;
	margin-top: 7px;
}

.ctsys-checkout-card--facturacion .ctsys-checkout-card__cabecera {
	margin-bottom: 14px;
}

.ctsys-checkout-card--facturacion .ctsys-checkout-card__cabecera p:last-child,
.ctsys-cuenta-nueva__nota {
	font-family: var(--ct-fuente);
	font-size: .875rem;
	line-height: 1.4;
}

.ctsys-acceso-checkout__selector {
	gap: 8px 18px;
}

.ctsys-acceso-checkout__selector label {
	font-family: var(--ct-fuente);
	font-size: 1rem;
	font-weight: 400;
}

.woocommerce .ctsys-checkout-card--facturacion .form-row,
.woocommerce .ctsys-cuenta-nueva .form-row {
	display: grid;
	grid-template-columns: minmax(128px, 42%) minmax(0, 1fr);
	align-items: center;
	column-gap: 12px;
	min-height: 36px;
	margin: 0 0 8px;
}

.ctsys-checkout-card--facturacion .form-row > label,
.ctsys-cuenta-nueva .form-row > label {
	grid-column: 1;
	grid-row: 1;
	margin: 0;
	padding: 0;
	color: var(--ct-tinta);
	font-family: var(--ct-fuente);
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.2;
	white-space: normal;
}

.ctsys-checkout-card--facturacion .form-row > .woocommerce-input-wrapper,
.ctsys-checkout-card--facturacion .form-row > .password-input,
.ctsys-checkout-card--facturacion .form-row > input:not([type='checkbox']),
.ctsys-cuenta-nueva .form-row > .woocommerce-input-wrapper,
.ctsys-cuenta-nueva .form-row > .password-input,
.ctsys-cuenta-nueva .form-row > input:not([type='checkbox']),
.ctsys-cuenta-nueva .form-row > input:not([type='checkbox']) {
	grid-column: 2;
	grid-row: 1;
	min-width: 0;
}

.woocommerce .ctsys-checkout-card--facturacion .form-row input:not([type='checkbox']):not([type='radio']),
.woocommerce .ctsys-cuenta-nueva .form-row input:not([type='checkbox']):not([type='radio']),
.woocommerce .ctsys-checkout-card--facturacion .form-row select,
.woocommerce .ctsys-cuenta-nueva .form-row select {
	min-height: 36px;
	height: 36px;
	padding: 5px 12px;
	border-color: #ddd;
	border-radius: 3px;
	font-family: var(--ct-fuente);
	font-size: 1rem;
	line-height: 1.2;
}

.ctsys-checkout-card--facturacion .form-row input::placeholder,
.ctsys-cuenta-nueva .form-row input::placeholder,
.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row input::placeholder {
	color: #9aa2ad;
}

.ctsys-cuenta-nueva {
	margin-top: 0;
	padding-top: 0;
	border-top: 0;
}

.ctsys-cuenta-nueva__titulo {
	margin-bottom: 5px;
}

.ctsys-cuenta-nueva__nota {
	margin-bottom: 10px;
}

.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login {
	margin-top: 14px;
	padding-top: 14px;
}

.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .woocommerce-LostPassword {
	margin: 4px 0 10px;
	font-family: var(--ct-fuente);
	font-size: 1rem;
}

.ctsys-checkout-card--acceso .ctsys-modal-form__acciones {
	display: grid;
	gap: 12px;
	margin: 0;
}

.ctsys-checkout-card--acceso .ctsys-modal-form__acciones label.checkbox {
	font-family: var(--ct-fuente);
	font-size: 1rem;
}

.ctsys-checkout-card--acceso .ctsys-boton-login {
	width: 100%;
	min-height: 44px;
	margin: 0;
	border-radius: var(--ct-radio-campo);
	font-family: var(--ct-fuente);
	font-size: .9375rem;
	text-transform: none;
}

@media (max-width: 600px) {
	.ctsys-checkout-card--acceso,
	.ctsys-checkout-card--facturacion {
		padding: 14px;
	}

	.woocommerce .ctsys-checkout-card--facturacion .form-row,
	.woocommerce .ctsys-cuenta-nueva .form-row {
		grid-template-columns: minmax(128px, 42%) minmax(0, 1fr);
		column-gap: 10px;
	}

	.ctsys-checkout-card--facturacion .form-row > label,
	.ctsys-cuenta-nueva .form-row > label,
	.ctsys-checkout-card--acceso .ctsys-acceso-checkout__login .form-row:not(.ctsys-modal-form__acciones) > label {
		font-size: .9375rem;
	}


	.woocommerce .ctsys-checkout-card--facturacion .form-row,
	.woocommerce .ctsys-cuenta-nueva .form-row {
		grid-template-columns: max-content minmax(0, 1fr);
		column-gap: 16px;
	}

	.ctsys-checkout-card--facturacion .form-row > label,
	.ctsys-cuenta-nueva .form-row > label {
		white-space: nowrap;
		overflow-wrap: normal;
	}
}

@media (max-width: 600px) {
	.ctsys-checkout-card--facturacion .form-row > label,
	.ctsys-cuenta-nueva .form-row > label {
		font-size: .875rem;
		white-space: normal;
	}
}

/* El acceso de visitante no comparte la retícula lateral del tablero autenticado. */
html body.ctsys-cuenta .woocommerce:has(> .ctsys-cuenta-acceso) {
	display: block;
}

@media (min-width: 768px) {
	html body.ctsys-cuenta .storex-content > #post-section:has(.ctsys-cuenta-acceso) > .container > .row {
		--bs-gutter-y: 0;
		margin-top: 0;
	}

	html body.ctsys-cuenta .woocommerce:has(> .ctsys-cuenta-acceso) > .woocommerce-notices-wrapper:empty {
		display: none;
	}

	html body.ctsys-cuenta .woocommerce:has(> .ctsys-cuenta-acceso) > .ctsys-cuenta-acceso {
		margin-top: 0;
	}
}


.woocommerce .ctsys-checkout-card--facturacion .form-row,
.woocommerce .ctsys-cuenta-nueva .form-row {
	display: block !important;
	float: none !important;
	width: 100% !important;
	min-height: 0;
	margin: 0 0 9px !important;
	padding: 0;
}

.ctsys-checkout-card--facturacion .form-row > label,
.ctsys-cuenta-nueva .form-row > label {
	display: block;
	margin: 0 0 4px;
	padding: 0;
	font-family: var(--ct-fuente);
	font-size: .875rem;
	font-weight: 400;
	line-height: 1.2;
	white-space: normal;
}

.ctsys-checkout-card--facturacion .form-row > .woocommerce-input-wrapper,
.ctsys-cuenta-nueva .form-row > .woocommerce-input-wrapper,
.ctsys-cuenta-nueva .form-row > .password-input {
	display: block;
	width: 100%;
}

.woocommerce .ctsys-checkout-card--facturacion .form-row input:not([type='checkbox']):not([type='radio']),
.woocommerce .ctsys-checkout-card--facturacion .form-row select,
.woocommerce .ctsys-cuenta-nueva .form-row input:not([type='checkbox']):not([type='radio']) {
	width: 100%;
	height: 46px;
	min-height: 46px;
	padding: 10px 12px;
	border-radius: var(--ct-radio-campo);
	font-family: var(--ct-fuente);
	font-size: 16px;
}

:is(.ctsys-checkout-card--facturacion, .ctsys-cuenta-nueva) .ctsys-checkout-field--flotante {
	position: relative;
	min-height: 52px;
}

:is(.ctsys-checkout-card--facturacion, .ctsys-cuenta-nueva) .ctsys-checkout-field--flotante > label {
	position: absolute;
	z-index: 1;
	top: 50%;
	left: 13px;
	width: calc(100% - 26px);
	margin: 0;
	padding: 0;
	color: var(--ct-tinta-suave);
	font-size: .9375rem;
	font-weight: 400;
	line-height: 1.2;
	transform: translateY(-50%);
	transition: top 120ms ease, transform 120ms ease, color 120ms ease, font-size 120ms ease;
	cursor: text;
}

.woocommerce :is(.ctsys-checkout-card--facturacion, .ctsys-cuenta-nueva) .ctsys-checkout-field--flotante input:not([type='checkbox']):not([type='radio']) {
	height: 52px;
	min-height: 52px;
	padding: 18px 12px 5px;
	border-color: var(--ct-borde);
}

:is(.ctsys-checkout-card--facturacion, .ctsys-cuenta-nueva) .ctsys-checkout-field--flotante input::placeholder {
	color: transparent;
	opacity: 0;
}

:is(.ctsys-checkout-card--facturacion, .ctsys-cuenta-nueva) .ctsys-checkout-field--flotante:focus-within input::placeholder {
	color: var(--ct-tinta-tenue);
	opacity: 1;
}

:is(.ctsys-checkout-card--facturacion, .ctsys-cuenta-nueva) .ctsys-checkout-field--flotante:focus-within > label,
:is(.ctsys-checkout-card--facturacion, .ctsys-cuenta-nueva) .ctsys-checkout-field--flotante:has(input:not(:placeholder-shown)) > label {
	top: 7px;
	color: var(--ct-tinta-suave);
	font-size: .6875rem;
	line-height: 1;
	transform: none;
}

:is(.ctsys-checkout-card--facturacion, .ctsys-cuenta-nueva) .ctsys-checkout-field--selector {
	position: relative;
	min-height: 54px;
}

:is(.ctsys-checkout-card--facturacion, .ctsys-cuenta-nueva) .ctsys-checkout-field--selector > label {
	position: absolute;
	z-index: 2;
	top: 6px;
	left: 13px;
	width: calc(100% - 52px);
	margin: 0;
	padding: 0;
	color: var(--ct-tinta-suave);
	font-size: .6875rem;
	font-weight: 400;
	line-height: 1.1;
	pointer-events: none;
}

.woocommerce :is(.ctsys-checkout-card--facturacion, .ctsys-cuenta-nueva) .ctsys-checkout-field--selector select {
	height: 54px;
	min-height: 54px;
	padding: 18px 36px 5px 12px;
	border-color: var(--ct-borde);
}

.woocommerce :is(.ctsys-checkout-card--facturacion, .ctsys-cuenta-nueva) .ctsys-checkout-field--selector input:not([type='checkbox']):not([type='radio']) {
	height: 54px;
	min-height: 54px;
	padding: 18px 12px 5px;
	border-color: var(--ct-borde);
}

.ctsys-checkout .ctsys-checkout-card--facturacion .ctsys-checkout-field--selector .select2-container .select2-selection--single {
	height: 54px;
	border-color: var(--ct-borde);
}

.ctsys-checkout .ctsys-checkout-card--facturacion .ctsys-checkout-field--selector .select2-container {
	height: 54px;
}

.ctsys-checkout .ctsys-checkout-card--facturacion .ctsys-checkout-field--selector .select2-selection__rendered {
	padding: 17px 36px 3px 12px;
	font-size: 16px;
	line-height: 30px;
}

.ctsys-checkout .ctsys-checkout-card--facturacion .ctsys-checkout-field--selector .select2-selection__arrow {
	height: 52px;
}

.woocommerce :is(.ctsys-checkout-card--facturacion, .ctsys-cuenta-nueva) :is(.ctsys-checkout-field--flotante, .ctsys-checkout-field--selector) :is(input:focus, select:focus),
:is(.ctsys-checkout-card--facturacion, .ctsys-cuenta-nueva) .ctsys-checkout-field--selector :is(.select2-container--focus, .select2-container--open) .select2-selection--single {
	border-color: var(--ct-focus-color);
	box-shadow: var(--ct-foco);
	outline: 0;
}

.woocommerce :is(.ctsys-checkout-card--facturacion, .ctsys-cuenta-nueva) :is(.ctsys-checkout-field--flotante, .ctsys-checkout-field--selector).woocommerce-invalid :is(input:not([type='checkbox']):not([type='radio']), select),
.woocommerce :is(.ctsys-checkout-card--facturacion, .ctsys-cuenta-nueva) .ctsys-checkout-field--selector.woocommerce-invalid .select2-selection--single {
	border-color: var(--ct-error);
}

.woocommerce :is(.ctsys-checkout-card--facturacion, .ctsys-cuenta-nueva) :is(.ctsys-checkout-field--flotante, .ctsys-checkout-field--selector).woocommerce-validated :is(input:not([type='checkbox']):not([type='radio']), select),
.woocommerce :is(.ctsys-checkout-card--facturacion, .ctsys-cuenta-nueva) .ctsys-checkout-field--selector.woocommerce-validated .select2-selection--single {
	border-color: var(--ct-exito);
}

.ctsys-cuenta-nueva .show-password-input,
.ctsys-cuenta-nueva button.show-password-input {
	display: none !important;
}

.ctsys-checkout-card--facturacion .required,
.ctsys-cuenta-nueva .required,
.ctsys-checkout-card--facturacion abbr.required,
.ctsys-cuenta-nueva abbr.required {
	border: 0;
	color: #d92d20;
	font-size: .875em;
	font-weight: 400;
	text-decoration: none;
}


@media (max-width: 619px) {
	.woocommerce-checkout .ctsys-checkout-card {
		padding: 16px 12px;
		border-radius: 16px;
	}

	.woocommerce-checkout .ctsys-checkout-card--resumen {
		padding: 18px 12px 16px;
	}

	.woocommerce-checkout .ctsys-resumen__cabecera {
		align-items: center;
		gap: 0;
		margin-bottom: 14px;
	}

	.woocommerce-checkout .ctsys-checkout-card--resumen .ctsys-checkout-card__titulo {
		margin-bottom: 0;
		font-size: 1.08rem;
		line-height: 1.2;
	}

	.woocommerce-checkout .ctsys-checkout-card--resumen .ctsys-checkout-card__titulo::after {
		width: 42px;
		height: 2px;
		margin-top: 8px;
	}

	.woocommerce-checkout .ctsys-checkout-productos__totales {
		gap: 8px;
		margin-top: 12px;
		padding-inline: 2px;
	}

	.woocommerce-checkout .ctsys-checkout-productos__totales .ctsys-resumen-fila {
		font-size: .88rem;
	}
}



.ctsys-campo-error,
.ctsys-campo--error {

	--ctsys-icono-alerta: url("data:image/svg+xml,%3Csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 24 24%27%3E%3Cpath d=%27M12 2a10 10 0 1 0 0 20 10 10 0 0 0 0-20zm-1 5h2v8h-2V7zm0 10h2v2h-2v-2z%27/%3E%3C/svg%3E");
}

.ctsys-campo-error {
	display: block;
	margin-top: 6px;
	color: var(--ct-error);
	font-size: .82rem;
	font-weight: 600;
	line-height: 1.35;
	animation: ctsys-error-entra 260ms var(--ct-ease) both;
}


.ctsys-campo-error::before {
	content: "";
	display: inline-block;
	width: 14px;
	height: 14px;
	margin-right: 6px;
	vertical-align: -2px;
	background: currentColor;
	-webkit-mask: var(--ctsys-icono-alerta) center / contain no-repeat;
	mask: var(--ctsys-icono-alerta) center / contain no-repeat;
}

.ctsys-campo--error input:not([type="checkbox"]),
.ctsys-campo--error select,
.ctsys-campo--error textarea {
	border-color: var(--ct-error) !important;
	box-shadow: 0 0 0 3px rgba(207, 54, 6, .18);
}


.ctsys-campo--error {
	animation: ctsys-campo-sacude 320ms var(--ct-ease) both;
}

.ctsys-campo--error .woocommerce-form__label-for-checkbox {
	color: var(--ct-error);
}

@keyframes ctsys-error-entra {
	from { opacity: 0; transform: translateY(-4px); }
	to   { opacity: 1; transform: none; }
}

@keyframes ctsys-campo-sacude {
	0%, 100% { transform: none; }
	20%      { transform: translateX(-5px); }
	40%      { transform: translateX(4px); }
	60%      { transform: translateX(-3px); }
	80%      { transform: translateX(2px); }
}


.ctsys-checkout .ctsys-boton-pagar.ctsys-boton-pagar--pendiente,
.ctsys-boton-pagar--pendiente {
	background: var(--ct-borde-fuerte) !important;
	border-color: var(--ct-borde-fuerte) !important;
	color: var(--ct-tinta-tenue) !important;
	box-shadow: none !important;
	cursor: not-allowed;
}

.ctsys-checkout .ctsys-boton-pagar.ctsys-boton-pagar--pendiente:hover,
.ctsys-checkout .ctsys-boton-pagar.ctsys-boton-pagar--pendiente:focus-visible,
.ctsys-boton-pagar--pendiente:hover,
.ctsys-boton-pagar--pendiente:focus-visible {
	background: var(--ct-borde-fuerte) !important;
	border-color: var(--ct-borde-fuerte) !important;
	color: var(--ct-tinta-tenue) !important;
}

@media (prefers-reduced-motion: reduce) {
	.ctsys-campo-error,
	.ctsys-campo--error {
		animation: none;
	}

	:is(.ctsys-checkout-card--facturacion, .ctsys-cuenta-nueva) .ctsys-checkout-field--flotante > label {
		transition: none;
	}
}

.ctsys-cuenta-acceso {
	--ctsys-acceso-azul: #111111;
	--ctsys-acceso-azul-oscuro: #262626;
	--ctsys-acceso-naranja: #333333;
	--ctsys-acceso-borde: #dedede;
	--ctsys-acceso-borde-suave: #eeeeee;
	--ctsys-acceso-texto: #111111;
	--ctsys-acceso-texto-suave: #666666;
	--ctsys-acceso-icono-correo: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235e6a85' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E");
	--ctsys-acceso-icono-candado: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235e6a85' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='10' width='16' height='10' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3C/svg%3E");
	--ctsys-acceso-ojo: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 12s3.4-5.5 9.5-5.5S21.5 12 21.5 12 18.1 17.5 12 17.5 2.5 12 2.5 12Z'/%3E%3Ccircle cx='12' cy='12' r='2.5'/%3E%3C/svg%3E");
	--ctsys-acceso-ojo-tachado: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 3l18 18'/%3E%3Cpath d='M10.5 6.7A10.9 10.9 0 0 1 12 6.5c6.1 0 9.5 5.5 9.5 5.5a16.5 16.5 0 0 1-3.1 3.6M6.1 6.1A16.5 16.5 0 0 0 2.5 12s3.4 5.5 9.5 5.5c1.2 0 2.3-.2 3.3-.6'/%3E%3Cpath d='M9.8 9.8a3.1 3.1 0 0 0 4.4 4.4'/%3E%3C/svg%3E");
	box-sizing: border-box;
	width: min(100%, 1160px);
	margin: 0 auto clamp(28px, 4vw, 44px);
	padding: clamp(24px, 3vw, 36px);
	border: 1px solid var(--ctsys-acceso-borde);
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 10px 24px rgba(0, 0, 0, .05);
	color: var(--ctsys-acceso-texto);
}

.ctsys-cuenta-acceso h1,
.ctsys-cuenta-acceso h2 {
	font-family: var(--ct-fuente) !important;
}

.ctsys-cuenta-acceso p,
.ctsys-cuenta-acceso label,
.ctsys-cuenta-acceso input,
.ctsys-cuenta-acceso button {
	font-family: var(--ct-fuente) !important;
}

.ctsys-cuenta-acceso h1 {
	font-size: clamp(1.5rem, 2.2vw, 1.75rem);
	font-weight: 400;
	letter-spacing: -.025em;
}

.ctsys-cuenta-acceso h2 {
	font-size: 1.12rem;
	font-weight: 400;
	letter-spacing: -.015em;
}

.ctsys-cuenta-acceso h1::after,
.ctsys-cuenta-acceso h2::after {
	width: 42px;
	height: 2px;
	margin-top: 8px;
	background: var(--ctsys-acceso-naranja);
}

.ctsys-cuenta-acceso__cabecera {
	padding-bottom: 16px;
	border-bottom-color: var(--ctsys-acceso-borde-suave);
}

.ctsys-cuenta-acceso__nuevo,
.ctsys-cuenta-acceso__panel {
	margin-top: 22px;
	padding-top: 0;
}

.ctsys-cuenta-acceso__nuevo p {
	max-width: 50ch;
	margin: 12px 0 16px;
	color: var(--ctsys-acceso-texto-suave);
	font-size: .94rem;
	line-height: 1.5;
}

.ctsys-cuenta-acceso:has([data-ctsys-access-panel='register']:not([hidden])) .ctsys-cuenta-acceso__nuevo p {
	color: var(--ct-texto-negro) !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='register'] .woocommerce-form-register > h2 {
	margin: 0 0 16px !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='register'] .ctsys-registro-perfil label,
.ctsys-cuenta-acceso [data-ctsys-access-panel='register'] .woocommerce-form-register > .form-row > label,
.ctsys-cuenta-acceso [data-ctsys-access-panel='register'] .woocommerce-form-register input,
.ctsys-cuenta-acceso [data-ctsys-access-panel='register'] .woocommerce-form-register select {
	color: var(--ct-texto-negro) !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='register'] .woocommerce-form-register input::placeholder {
	color: var(--ct-texto-negro) !important;
	opacity: 1;
}

.ctsys-cuenta-acceso .button {
	display: inline-flex !important;
	min-height: 48px;
	align-items: center;
	justify-content: center;
	padding: 0 20px !important;
	border: 1px solid transparent;
	border-radius: 8px !important;
	background-image: none !important;
	font-family: var(--ct-fuente) !important;
	font-size: .95rem;
	font-weight: 700;
	letter-spacing: .01em;
	line-height: 1.2;
	transition: background-color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.ctsys-cuenta-acceso__nuevo .button {
	background-color: var(--ct-boton-principal-fondo) !important;
	border-color: var(--ct-boton-principal-fondo) !important;
	color: var(--ct-boton-principal-texto) !important;
}

.ctsys-cuenta-acceso__nuevo .button:hover,
.ctsys-cuenta-acceso__nuevo .button:focus-visible {
	background-color: var(--ct-boton-principal-hover) !important;
	border-color: var(--ct-boton-principal-hover) !important;
	color: var(--ct-boton-principal-texto) !important;
}

.ctsys-cuenta-acceso__accion .button {
	background-color: var(--ct-boton-principal-fondo) !important;
	border-color: var(--ct-boton-principal-fondo) !important;
	color: var(--ct-boton-principal-texto) !important;
}

.ctsys-cuenta-acceso__accion .button:hover,
.ctsys-cuenta-acceso__accion .button:focus-visible {
	background-color: var(--ct-boton-principal-hover) !important;
	border-color: var(--ct-boton-principal-hover) !important;
	color: var(--ct-boton-principal-texto) !important;
}

.ctsys-cuenta-acceso .button:focus-visible {
	box-shadow: 0 0 0 3px rgba(17, 17, 17, .22);
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion) {
	margin-bottom: 10px !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion) > label {
	margin-bottom: 5px !important;
	color: var(--ctsys-acceso-texto);
	font-family: var(--ct-fuente) !important;
	font-size: .95rem !important;
	font-weight: 700 !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input.woocommerce-Input.input-text {
	box-sizing: border-box;
	min-height: 46px !important;
	border-color: #d4d4d4 !important;
	border-radius: 8px !important;
	background-color: #fff !important;
	background-repeat: no-repeat !important;
	background-position: 14px 50% !important;
	background-size: 17px 17px !important;
	color: var(--ctsys-acceso-texto) !important;
	font-family: var(--ct-fuente) !important;
	font-size: 1rem !important;
	line-height: 1.3 !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input[name='username'] {
	padding-left: 44px !important;
	background-image: var(--ctsys-acceso-icono-correo) !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .password-input {
	position: relative !important;
	display: block !important;
	width: 100% !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input[name='password'] {
	padding-right: 48px !important;
	padding-left: 44px !important;
	background-image: var(--ctsys-acceso-icono-candado) !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input.woocommerce-Input.input-text::placeholder {
	color: #666666;
	opacity: 1;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input.woocommerce-Input.input-text:focus {
	border-color: var(--ctsys-acceso-azul) !important;
	box-shadow: 0 0 0 3px rgba(17, 17, 17, .18) !important;
	outline: 0;
}

html body.ctsys-cuenta .ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion) > input.woocommerce-Input.input-text,
html body.ctsys-cuenta .ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion) > .password-input > input.woocommerce-Input.input-text {
	height: 46px !important;
	min-height: 46px !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	border-color: #d4d4d4 !important;
	border-radius: 8px !important;
}

html body.ctsys-cuenta .ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion) > input[name='username'] {
	padding-left: 44px !important;
	background-image: var(--ctsys-acceso-icono-correo) !important;
}

html body.ctsys-cuenta .ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion) > .password-input > input[name='password'] {
	padding-right: 48px !important;
	padding-left: 44px !important;
	background-image: var(--ctsys-acceso-icono-candado) !important;
}

html body.ctsys-cuenta .ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion) > input.woocommerce-Input.input-text:focus,
html body.ctsys-cuenta .ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .form-row:not(.ctsys-cuenta-acceso__sesion):not(.ctsys-cuenta-acceso__accion) > .password-input > input.woocommerce-Input.input-text:focus {
	border-color: var(--ctsys-acceso-azul) !important;
	box-shadow: 0 0 0 3px rgba(17, 17, 17, .18) !important;
	outline: 0;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input,
.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input:hover,
.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input:focus,
.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input:active,
.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input:focus-visible {
	position: absolute !important;
	top: 50% !important;
	right: 1px !important;
	z-index: 2;
	display: grid !important;
	width: 44px !important;
	height: 44px !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	transform: translateY(-50%) !important;
	border: 0 !important;
	border-radius: 0 !important;
	outline: 0 !important;
	background: transparent !important;
	background-image: none !important;
	box-shadow: none !important;
	color: var(--ctsys-acceso-texto-suave) !important;
	font-size: 0 !important;
	line-height: 1 !important;
	place-items: center;
	appearance: none !important;
	-webkit-appearance: none !important;
	cursor: pointer;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input:hover,
.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input:focus-visible {
	color: var(--ctsys-acceso-azul) !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input:focus-visible {
	outline: 2px solid var(--ctsys-acceso-azul) !important;
	outline-offset: -4px;
	border-radius: 8px !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input::before {
	display: block !important;
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
	background: currentColor !important;
	content: '' !important;
	-webkit-mask: var(--ctsys-acceso-ojo-tachado) center / contain no-repeat !important;
	mask: var(--ctsys-acceso-ojo-tachado) center / contain no-repeat !important;
	pointer-events: none;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input.display-password::before {
	-webkit-mask-image: var(--ctsys-acceso-ojo) !important;
	mask-image: var(--ctsys-acceso-ojo) !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] .show-password-input::after {
	display: none !important;
	content: none !important;
}

.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input[name='password']::-ms-reveal,
.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input[name='password']::-ms-clear,
.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input[name='password']::-webkit-credentials-auto-fill-button,
.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input[name='password']::-webkit-clear-button {
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
}

.ctsys-cuenta-acceso__sesion {
	margin: 0 0 8px !important;
}

.ctsys-cuenta-acceso__accion {
	margin: 0 !important;
	padding: 0 !important;
}

.ctsys-cuenta-acceso__sesion label {
	min-height: 24px;
	gap: 8px;
	color: var(--ctsys-acceso-texto-suave);
	font-family: var(--ct-fuente) !important;
	font-size: .9rem !important;
}

.ctsys-cuenta-acceso__sesion input[type='checkbox'] {
	width: 16px;
	height: 16px;
	accent-color: var(--ctsys-acceso-azul);
}

.ctsys-cuenta-acceso .woocommerce-LostPassword {
	margin: 0 0 8px;
}

.ctsys-cuenta-acceso .woocommerce-LostPassword a {
	color: var(--ctsys-acceso-azul);
	font-family: var(--ct-fuente) !important;
	font-size: .9rem;
	font-weight: 700;
	text-decoration: underline;
	text-underline-offset: 3px;
}

@media (min-width: 768px) {
	.ctsys-cuenta-acceso {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		column-gap: 0;
		align-items: start;
	}

	.ctsys-cuenta-acceso__cabecera {
		grid-column: 1 / -1;
	}

	.ctsys-cuenta-acceso__nuevo {
		padding-right: clamp(28px, 3.5vw, 44px);
	}

	.ctsys-cuenta-acceso__panel {
		min-width: 0;
		padding-left: clamp(28px, 3.5vw, 44px);
		border-left: 1px solid var(--ctsys-acceso-borde-suave) !important;
	}
}


@media (max-width: 767px) {
	.ctsys-cuenta-acceso {
		display: grid;
		grid-template-columns: minmax(0, 1fr);
		padding: 18px 18px 22px;
		border-radius: 16px;
	}

	.ctsys-cuenta-acceso__cabecera {
		order: 0;
		padding-bottom: 14px;
	}

	.ctsys-cuenta-acceso__nuevo {
		order: 1;
		margin-top: 16px;
	}

	.ctsys-cuenta-acceso__panel {
		order: 2;
		margin-top: 20px;
		padding-top: 18px;
		border-top: 1px solid var(--ctsys-acceso-borde-suave);
	}

	.ctsys-cuenta-acceso__nuevo p {
		margin-bottom: 14px;
		font-size: .94rem;
		line-height: 1.48;
	}

	.ctsys-cuenta-acceso h1 {
		font-size: 1.5rem;
	}

	.ctsys-cuenta-acceso h2 {
		font-size: 1.08rem;
	}

	.ctsys-cuenta-acceso [data-ctsys-access-panel='login'] input.woocommerce-Input.input-text,
	.ctsys-cuenta-acceso .button {
		min-height: 48px !important;
	}
}


/*
 * Checkout conversion pass.
 * Keep the store header useful without making the payment task compete with
 * the catalogue navigation. The mobile category trigger remains available;
 * desktop keeps only the identity/search/actions row while paying.
 */
@media (min-width: 768px) {
	body.woocommerce-checkout .main-header .header-lower {
		display: none;
	}
}

@media (min-width: 1024px) {
	body.woocommerce-checkout .ctsys-checkout__grid {
		grid-template-columns: minmax(300px, 38fr) minmax(0, 62fr);
		gap: 24px;
	}

	body.woocommerce-checkout .ctsys-checkout__grid--con-acceso {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}
}

body.woocommerce-checkout .ctsys-checkout-intro {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	align-items: end;
	gap: 8px;
	margin-bottom: 16px;
}

body.woocommerce-checkout .ctsys-checkout-intro h1 {
	grid-column: 1;
	margin-bottom: 8px;
}

.ctsys-identidad {
	grid-column: 1;
}

body.woocommerce-checkout .ctsys-checkout-card--resumen .ctsys-confianza-banda {
	margin: 18px 0 0;
}

body.woocommerce-checkout .ctsys-confianza-banda__item {
	padding: 10px 12px;
}

body.woocommerce-checkout .ctsys-confianza-banda__item p {
	font-size: .78rem;
	line-height: 1.35;
}

/* La línea de producto ya es una tarjeta: el listado no debe crear un marco anidado. */
body.woocommerce-checkout .ctsys-checkout-productos__lista {
	max-height: none;
	border: 0;
	border-radius: 0;
	background: transparent;
	overflow: visible;
}

.ctsys-checkout-entorno-badge {
	display: inline-flex;
	min-height: 28px;
	align-items: center;
	margin: -4px 0 12px;
	padding: 4px 10px;
	border: 1px solid var(--ct-borde);
	border-radius: 999px;
	background: var(--ct-superficie-suave);
	color: var(--ct-tinta);
	font-size: .75rem;
	font-weight: 800;
	letter-spacing: .02em;
}

body.woocommerce-checkout .ctsys-checkout .wc_payment_methods > li > label {
	padding: 12px 14px;
}

body.woocommerce-checkout .ctsys-checkout .wc_payment_methods .payment_box {
	padding-right: 14px;
	padding-bottom: 12px;
	padding-left: 42px;
}

body.woocommerce-checkout .ctsys-checkout .bold_co_checkout_page_footer {
	margin-top: 10px;
}

@media (max-width: 767px) {
	.ctsys-checkout .woocommerce-billing-fields__field-wrapper,
	.ctsys-cuenta-nueva__campos {
		grid-template-columns: minmax(0, 1fr);
	}

	body.woocommerce-checkout .ctsys-checkout-intro {
	grid-template-columns: 1fr;
	gap: 8px;
	}

	body.woocommerce-checkout .ctsys-checkout-intro h1,
	body.woocommerce-checkout .ctsys-identidad {
		grid-column: 1;
		grid-row: auto;
	}

	body.woocommerce-checkout .ctsys-checkout-card--pago {
		padding: 18px 14px;
	}

	body.woocommerce-checkout .ctsys-checkout-entorno-badge {
		margin-top: -2px;
	}
}

@media (max-width: 430px) {
	body.woocommerce-checkout .ctsys-checkout-intro {
		gap: 6px;
	}

}

/* Checkout compacto: conserva la capa de bloqueo cuando se elige iniciar sesión. */
.ctsys-checkout .woocommerce-billing-fields__field-wrapper,
.ctsys-cuenta-nueva__campos { column-gap: 12px; }

@media (min-width: 1024px) {
 body.woocommerce-checkout .ctsys-checkout__grid--con-acceso:not(:has(#ctsys-modo-login:checked)) {
  grid-template-areas: 'acceso resumen' 'datos resumen' 'pago resumen';
  grid-template-rows: auto;
 }
 body.woocommerce-checkout .ctsys-checkout__grid--con-acceso:not(:has(#ctsys-modo-login:checked)) .ctsys-checkout__transaccion { display: contents; }
}

html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) {
	grid-template-columns: 48px minmax(0, 1fr) 64px;
 grid-template-areas: 'imagen datos quitar' 'compra compra compra';
 gap: 4px 10px;
 padding: 8px 0;
 border: 0;
 border-bottom: 1px solid var(--ct-borde);
 border-radius: 0;
 box-shadow: none;
}
html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-checkout-linea__eliminar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	justify-self: end;
	align-self: start;
	width: 64px;
	min-width: 64px;
	min-height: 44px;
	padding: 0 4px;
	border: 0;
	border-radius: 8px;
	background: transparent;
	color: var(--ct-azul-interactivo);
	font-size: .75rem;
	font-weight: 600;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	touch-action: manipulation;
}
html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-checkout-linea__eliminar:is(:hover, :focus-visible) {
	background: transparent;
	color: var(--ct-azul-interactivo);
	text-decoration: underline;
	text-underline-offset: 3px;
}
html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-checkout-linea__eliminar:focus-visible {
	outline: 2px solid var(--ct-azul-interactivo);
	outline-offset: -2px;
}
html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__compra {
	grid-template-columns: 120px max-content;
	justify-content: end;
 gap: 6px;
}

body.woocommerce-checkout .ctsys-checkout-card--resumen .ctsys-checkout-card--confirmar {
 margin-top: 18px;
 padding-top: 18px;
 border-top: 1px solid var(--ct-borde);
}

/* Fila de compra compacta, con objetivos táctiles de 44 px. */
html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__unitario {
 white-space: nowrap; overflow: visible; line-height: 1.25;
}
html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__cantidad { width: 120px; min-width: 120px; }
html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) :is(.ctsys-sync-cantidad, .quantity) {
 position: relative; grid-template-columns: 44px 32px 44px; width: 120px; min-width: 120px; border: 0; background: transparent;
}
html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) :is(.ctsys-sync-cantidad, .quantity)::before {
 content: ''; position: absolute; inset: 6px 0; border: 1px solid var(--ct-borde); border-radius: 10px; pointer-events: none;
}
html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) :is(.ctsys-sync-cantidad__accion, .ctsys-cantidad__accion, .quantity input.qty) {
 position: relative; z-index: 1; background: transparent;
}
html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .quantity input.qty { width: 32px; border: 0; }
html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea--unidad-fija:not(#ctsys-carrito-panel) .ctsys-carrito-linea__compra { grid-template-columns: max-content; }

/* En escritorio, la unidad comparte la fila de entrega y los controles suben a su lado. */
@media (min-width: 1024px) {
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) {
		grid-template-columns: 56px minmax(0, 1fr) 120px max-content 64px;
		grid-template-rows: auto 44px;
		grid-template-areas: none;
		column-gap: 12px;
		row-gap: 4px;
		padding-block: 10px;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__imagen {
		grid-area: auto;
		grid-column: 1;
		grid-row: 1 / span 2;
		align-self: center;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__datos {
		grid-area: auto;
		grid-column: 2;
		grid-row: 1 / span 2;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		align-self: stretch;
		gap: 4px;
		min-width: 0;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__nombre {
		margin-bottom: 0;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__detalle-secundario {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		gap: 8px 12px;
		min-height: 44px;
		margin-top: auto;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__datos:has(.ctsys-carrito-linea__plazo) {
		justify-content: flex-start;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__detalle-secundario:has(.ctsys-carrito-linea__plazo) {
		flex-direction: column;
		align-items: flex-start;
		gap: 4px;
		min-height: 0;
		margin-top: 0;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__plazo,
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__unitario {
		margin: 0;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__unitario {
		max-width: 100%;
		flex: 0 1 auto;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__compra {
		grid-area: auto;
		grid-column: 3 / span 2;
		grid-row: 2;
		grid-template-columns: 120px max-content;
		align-items: center;
		justify-content: end;
		gap: 12px;
		width: max-content;
		max-width: 100%;
		align-self: center;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__cantidad {
		grid-column: 1;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__total {
		grid-column: 2;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-checkout-linea__eliminar {
		grid-area: auto;
		grid-column: 5;
		grid-row: 1;
		align-self: start;
		justify-self: end;
		margin-top: -6px;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea--unidad-fija:not(#ctsys-carrito-panel) .ctsys-carrito-linea__compra {
		grid-template-columns: max-content;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea--unidad-fija:not(#ctsys-carrito-panel) .ctsys-carrito-linea__total {
		grid-column: 1;
	}
}

/* Mensajes de servicio: dos columnas amplias y trazos discretos. */
body.woocommerce-checkout .ctsys-checkout-card--resumen .ctsys-confianza-banda {
 grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 16px; background: transparent; border: 0; border-radius: 0;
}
body.woocommerce-checkout .ctsys-confianza-banda__item { padding: 12px 0; border-bottom: 1px solid var(--ct-borde); }
body.woocommerce-checkout .ctsys-confianza-banda__cabecera { gap: 8px; margin-bottom: 5px; }
body.woocommerce-checkout .ctsys-confianza-banda__icono { width: 18px; height: 18px; color: var(--ct-tinta); }
body.woocommerce-checkout .ctsys-confianza-banda__item h3 { font-size: .8rem; font-weight: 700; letter-spacing: 0; text-transform: none; }
body.woocommerce-checkout .ctsys-confianza-banda__item p { font-size: .8rem; line-height: 1.45; }

html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) :is(.ctsys-sync-cantidad__accion, .ctsys-cantidad__accion) { border: 0; }
html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) :is(.ctsys-sync-cantidad__accion, .ctsys-cantidad__accion):hover { background: #f1f5f9; box-shadow: inset 0 6px #fff, inset 0 -6px #fff; }
html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) :is(.ctsys-sync-cantidad__accion, .ctsys-cantidad__accion):focus-visible { outline: 2px solid var(--ct-focus-color); outline-offset: -4px; }
html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__nombre {
 display: block; overflow: visible; -webkit-line-clamp: unset; font-size: .875rem;
}

/* Resúmenes móviles: una vista informativa y una sola lista editable. */
@media (max-width: 767px) {
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) {
		grid-template-columns: 48px minmax(0, 1fr) 120px;
		grid-template-areas: none;
		grid-template-rows: auto auto auto;
		gap: 2px 8px;
		align-items: start;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__imagen {
		grid-area: auto;
		grid-column: 1;
		grid-row: 1 / span 3;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__datos {
		grid-area: auto;
		grid-column: 2;
		grid-row: 1 / span 3;
		min-width: 0;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__unitario {
		white-space: normal;
		overflow-wrap: anywhere;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__compra { display: contents; }
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-checkout-linea__eliminar {
		grid-area: auto;
		grid-column: 3;
		grid-row: 1;
		justify-self: end;
		margin-top: -10px;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__total {
		grid-area: auto;
		grid-column: 3;
		grid-row: 2;
		justify-self: end;
	}
	html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__cantidad {
		grid-area: auto;
		grid-column: 3;
		grid-row: 3;
		justify-self: end;
	}
}
.ctsys-checkout-vista-rapida { display: none; }
.ctsys-resumen-desplegable { padding-bottom: 4px; margin-bottom: 4px; border-bottom: 1px solid var(--ct-borde); }
.ctsys-resumen-desplegable > summary { list-style: none; }
.ctsys-resumen-desplegable > summary::-webkit-details-marker,
.ctsys-checkout-vista-rapida > summary::-webkit-details-marker { display: none; }
.ctsys-resumen-desplegable__titulo { margin: 0; color: var(--ct-azul-interactivo); font-size: 1.125rem; font-weight: 700; }
.ctsys-resumen-desplegable__total, .ctsys-resumen-desplegable__miniatura { display: none; }
.ctsys-resumen-desplegable > summary { cursor: pointer; }
.ctsys-resumen-flecha { display: block; flex: 0 0 16px; width: 16px; height: 16px; }
.ctsys-resumen-desplegable[open] > summary .ctsys-resumen-flecha,
.ctsys-checkout-vista-rapida[open] > summary .ctsys-resumen-flecha { transform: rotate(180deg); }
.ctsys-vista-rapida__etiqueta { display: inline-flex; align-items: center; gap: 6px; color: var(--ct-azul-interactivo); }
body.woocommerce-checkout:not(.woocommerce-order-received) .ctsys-footer { display: none; }
@media (max-width: 767px) {
 .ctsys-checkout-vista-rapida:not([hidden]) { display: block; margin: 0 0 16px; border: 1px solid var(--ct-borde); border-radius: 12px; background: var(--ct-superficie-suave); }
 .ctsys-checkout-vista-rapida > summary, .ctsys-resumen-desplegable > summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 48px; cursor: pointer; list-style: none; }
 .ctsys-checkout-vista-rapida > summary { padding: 0 14px; }
 .ctsys-checkout-vista-rapida > summary:focus-visible, .ctsys-resumen-desplegable > summary:focus-visible { outline: var(--ct-foco-teclado); outline-offset: 2px; }
 .ctsys-checkout-vista-rapida__contenido { padding: 0 14px 14px; }
 .ctsys-vista-linea { display: grid; grid-template-columns: 44px minmax(0,1fr) auto; align-items: center; gap: 10px; padding: 7px 0; font-size: .8rem; line-height: 1.35; }
 .ctsys-vista-linea img { width: 44px; height: 44px; object-fit: contain; border-radius: 8px; }
 .ctsys-vista-linea > span:not(.ctsys-vista-linea__imagen) { min-width: 0; overflow-wrap: anywhere; }
 .ctsys-vista-linea strong { font-size: .8rem; font-weight: 600; white-space: nowrap; }
 .ctsys-vista-total-fila { display: flex; justify-content: space-between; gap: 12px; padding-top: 7px; font-size: .8rem; line-height: 1.35; }
 .ctsys-vista-total-fila:last-child { font-size: .875rem; font-weight: 700; }
 .ctsys-resumen-desplegable__miniatura:has(img) { display: block; flex: 0 0 32px; }
 .ctsys-resumen-desplegable__miniatura img { width: 32px; height: 32px; border-radius: 8px; object-fit: contain; }
 .ctsys-resumen-desplegable__total { display: inline; margin-left: auto; font-size: .8125rem; font-weight: 650; white-space: nowrap; }
 .woocommerce-checkout .ctsys-resumen-desplegable > .ctsys-resumen__cabecera { gap: 8px; }
 .ctsys-resumen-desplegable__titulo { min-width: 0; font-size: .875rem; line-height: 1.25; white-space: nowrap; }
 .ctsys-vista-rapida__etiqueta { min-width: 0; gap: 5px; font-size: .875rem; white-space: nowrap; }
 .ctsys-vista-rapida__etiqueta .ctsys-resumen-flecha { flex-basis: 14px; width: 14px; height: 14px; }
 .ctsys-vista-rapida__unidades { color: var(--ct-tinta-suave); font-size: .6875rem; font-weight: 500; }
 .ctsys-checkout-vista-rapida > summary > strong { flex: 0 0 auto; font-size: .8125rem; font-weight: 650; white-space: nowrap; }
 body.woocommerce-checkout .ctsys-checkout-card--resumen .ctsys-confianza-banda { margin-top: 8px; }
 body.woocommerce-checkout .ctsys-checkout-card--resumen .ctsys-confianza-banda__item { padding-block: 8px; }
 html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__nombre,
 html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__nombre a { font-size: .8125rem; line-height: 1.3; font-weight: 400; }
 html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__unitario { font-size: .75rem; }
 html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__total { font-size: .8125rem; font-weight: 600; }
 html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .quantity input.qty { color: var(--ct-tinta-suave); font-weight: 600; }
 html body.woocommerce-checkout .ctsys-checkout-productos__totales .ctsys-resumen-fila { font-size: .8125rem; }
 html body.woocommerce-checkout .ctsys-checkout-productos__totales .ctsys-resumen-fila--total { font-size: .9375rem; }
}
@media (max-width: 360px) {
 .woocommerce-checkout .ctsys-resumen-desplegable > .ctsys-resumen__cabecera { gap: 6px; }
 .ctsys-resumen-desplegable__miniatura:has(img) { flex-basis: 24px; }
 .ctsys-resumen-desplegable__miniatura img { width: 24px; height: 24px; }
 .ctsys-resumen-desplegable__titulo { font-size: .8125rem; }
 .ctsys-resumen-desplegable__total { font-size: .75rem; }
 .ctsys-resumen-desplegable > summary .ctsys-resumen-flecha { flex-basis: 14px; width: 14px; height: 14px; }
 .ctsys-vista-rapida__etiqueta { gap: 3px; font-size: .8125rem; }
 .ctsys-vista-rapida__etiqueta .ctsys-resumen-flecha { flex-basis: 12px; width: 12px; height: 12px; }
 .ctsys-vista-rapida__unidades { font-size: .625rem; }
 .ctsys-checkout-vista-rapida > summary > strong { font-size: .75rem; }
 .ctsys-vista-linea { grid-template-columns: 40px minmax(0,1fr) auto; gap: 8px; font-size: .75rem; }
 .ctsys-vista-linea img { width: 40px; height: 40px; }
 .ctsys-vista-linea strong { font-size: .75rem; }
 .ctsys-vista-total-fila { font-size: .75rem; }
 html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__nombre,
 html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__nombre a { font-size: .75rem; }
 html body.woocommerce-checkout .ctsys-checkout-productos__lista .ctsys-checkout-linea:not(#ctsys-carrito-panel) .ctsys-carrito-linea__total { font-size: .75rem; }
}

/* Pago de pedido: el aviso de invitado lo pinta el tema como error rojo; se iguala al checkout. */
body.woocommerce-checkout.woocommerce-order-pay .woocommerce > .woocommerce-error {
	list-style: none;
	margin: 0 0 1rem;
	padding: 1rem 1.25rem;
	border: 1px solid var(--ct-borde-fuerte);
	border-radius: var(--ct-radio-campo);
	background: var(--ct-superficie-suave);
	box-shadow: none;
	color: var(--ct-tinta);
	font-size: 0.95rem;
	line-height: 1.5;
}

body.woocommerce-checkout.woocommerce-order-pay .woocommerce > .woocommerce-error::before,
body.woocommerce-checkout.woocommerce-order-pay .woocommerce > .woocommerce-error > li::before {
	color: var(--ct-tinta-suave);
}

/* Icono del aviso de invitado: se coloca dentro de un margen propio para no tapar el texto. */
body.woocommerce-checkout.woocommerce-order-pay .woocommerce > .woocommerce-error {
	padding-left: 3.25rem;
}

body.woocommerce-checkout.woocommerce-order-pay .woocommerce > .woocommerce-error::before {
	left: 1.25rem;
	top: 1.1rem;
}
