/**
 * Tecno Baires — cotizador Andreani embebido bajo cuotas (v1.9.52).
 * Variables --andr-*: el CSS del plugin define fallbacks; aquí mapeamos al tema (--tb-*).
 * Contrato de clases .andreani-calc-* del plugin: no renombrar.
 */

.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed {
	--andr-color-brand: var(--tb-accent, #00daff);
	--andr-color-brand-hover: var(--tb-accent-d, #00b8d9);
	--andr-color-success: #178a45;
	--andr-color-success-subtle: rgba(23, 138, 69, 0.12);
	--andr-color-text: var(--tb-dark, #1b1717);
	--andr-color-text-subtle: var(--tb-muted, #666);
	--andr-color-text-muted: var(--tb-muted, #666);
	--andr-color-surface: var(--tb-bg, #fff);
	--andr-color-border: var(--tb-line, #e6e6e6);
	--andr-gray-50: #fafafa;
	--andr-gray-100: #f3f4f6;
	--andr-gray-200: #e5e7eb;
	--andr-gray-600: #6b7280;
	--andr-gray-800: #1f2937;
	--andr-gray-900: #111827;
	--andr-font-body: var(--tb-body, system-ui, sans-serif);
	--andr-sp-1: 4px;
	--andr-sp-2: 8px;
	--andr-sp-3: 12px;
	--andr-sp-4: 16px;
	--andr-sp-5: 20px;
	--andr-radius-xs: 6px;
	--andr-radius-md: 12px;
	--andr-transition-base: 0.2s ease;
	--andr-transition-slow: 0.35s ease;
	--andr-text-sm: 13px;
	--andr-fw-medium: 500;
	--andr-fw-semibold: 600;

	position: relative;
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	max-width: 100%;
	font-family: var(--tb-body, inherit);
}

.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .andreani-calc-logo-fixed,
.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .andreani-calc-bubble {
	display: none;
}

.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .andreani-calc-content {
	/*
	 * Plugin (frontend-cotizador.css): .andreani-calc-content { z-index: 101 } para UI burbuja flotante.
	 * Tema: .tb-header { position: sticky; z-index: 50 }. Sin override, 101 > 50 y el panel embebido
	 * queda por encima del header al hacer scroll (Safari/iPhone). Solo embed en #tb-pay.
	 */
	z-index: auto;
	position: relative;
	opacity: 1;
	pointer-events: auto;
	width: 100%;
	max-width: 100%;
	height: auto;
	padding: var(--andr-sp-5);
	border-radius: var(--andr-radius-md);
	transform: none;
	box-sizing: border-box;
	overflow: visible;
	/* Borde uniforme (sin acento solo a un lado) */
	border: 1px solid var(--tb-line, var(--andr-color-border));
	box-shadow: none;
	background: var(--tb-surface, var(--tb-bg, var(--andr-color-surface)));
}

.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .andreani-calc-content > * {
	opacity: 1;
	transform: none;
	transition: none;
}

.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .andreani-calc-header {
	padding-left: 0;
	margin-bottom: var(--andr-sp-4);
}

.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .andreani-calc-header__title {
	color: var(--tb-dark, var(--andr-color-text));
	font-family: var(--tb-head, var(--tb-body));
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .tb-andreani-calc__hint {
	display: none;
	margin: -8px 0 12px;
	font-size: 13px;
	line-height: 1.4;
	color: var(--tb-muted, #666);
}

.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed.tb-andreani-calc--needs-variation .tb-andreani-calc__hint {
	display: block;
}

.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .andreani-calc-postcode {
	border-radius: 10px;
	background: var(--tb-field, var(--tb-bg, #fff));
	color: var(--tb-dark, inherit);
	font-family: inherit;
}

.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .andreani-calc-button {
	border-radius: 10px;
	min-width: 48px;
	background: var(--tb-accent, var(--andr-color-brand));
	color: var(--tb-dark, #1b1717);
	border: 0;
}

.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .andreani-calc-button:hover {
	filter: brightness(0.95);
}

.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .andreani-calc-button svg {
	stroke: currentColor;
}

/* Embebido: el loading nativo oculta el formulario (.andreani-calc-widget--loading .andreani-calc-form {display:none});
 * eso puede dejar un “overlay” percibido y deshabilitar el botón. Forzar el formulario visible; el spinner sigue ocupando la línea inferior. */
.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed.andreani-calc-widget--loading .andreani-calc-form {
	display: flex !important;
}

/*
 * Mientras `--loading`, el bloque `.andreani-calc-loading` (hijo de flow, ver plugin frontend-cotizador.css)
 * sigue recibiendo eventos de puntero si el usuario hace clic ahí; no hace falta “overlay” absolute.
 */
.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .andreani-calc-content .andreani-calc-loading {
	pointer-events: none;
}

.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .tb-andreani-calc__recalc {
	display: none;
	margin: 8px 0 0;
	font-size: 13px;
	line-height: 1.35;
	color: var(--tb-muted, #666);
}

.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .tb-andreani-calc__recalc:not([hidden]):not(:empty) {
	display: block;
}

.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed.tb-andreani-calc--needs-variation .andreani-calc-form,
.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed.tb-andreani-calc--needs-variation .andreani-calc-results,
.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed.tb-andreani-calc--needs-variation .andreani-calc-loading {
	opacity: 0.45;
	pointer-events: none;
}

.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .andreani-calc-error--visible {
	font-size: 13px;
	line-height: 1.35;
}

[data-theme="dark"] .tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed {
	--andr-color-text: var(--tb-fg, #f3f4f6);
	--andr-color-text-subtle: var(--tb-fg-2, #d1d5db);
	--andr-color-text-muted: var(--tb-muted, #9ca3af);
	--andr-color-surface: var(--tb-surface, #231e20);
	--andr-color-border: var(--tb-line, #3f3a3c);
}

[data-theme="dark"] .tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .andreani-calc-header__title {
	color: var(--tb-fg, #fff);
}

[data-theme="dark"] .tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .tb-andreani-calc__hint {
	color: var(--tb-muted, #9ca3af);
}

[data-theme="dark"] .tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .andreani-calc-postcode {
	background: var(--tb-field, #2a2427);
	color: var(--tb-fg, #fff);
	border-color: var(--tb-line, #444);
}

[data-theme="dark"] .tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .andreani-calc-button {
	color: var(--tb-dark, #1b1717);
}

/* Badge CP (mismo rol que LDP `[data-ldp-cp-badge]` → TB `data-tb-cp-badge`) */
.tb-pay__ship .tb-cp-badge {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 12px;
	margin-bottom: 12px;
	font-size: 13px;
	line-height: 1.35;
	color: var(--tb-muted, #666);
}

.tb-pay__ship .tb-cp-badge__value {
	font-weight: 600;
	color: var(--tb-dark, #1b1717);
}

.tb-pay__ship .tb-cp-badge.is-empty .tb-cp-badge__value {
	color: var(--tb-muted, #666);
	font-weight: 500;
}

.tb-pay__ship .tb-cp-badge__btn {
	border: 0;
	background: transparent;
	color: var(--tb-accent, #00daff);
	text-decoration: underline;
	cursor: pointer;
	font: inherit;
	padding: 0;
}

.tb-pay__ship .tb-cp-badge__form {
	display: none;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	width: 100%;
	margin-top: 4px;
}

.tb-pay__ship .tb-cp-badge__form:not([hidden]) {
	display: flex;
}

.tb-pay__ship .tb-cp-badge__form input {
	flex: 1;
	min-width: 120px;
	max-width: 200px;
	padding: 8px 10px;
	border: 1px solid var(--tb-line, #e6e6e6);
	border-radius: 8px;
	font: inherit;
	background: var(--tb-field, var(--tb-bg, #fff));
	color: var(--tb-dark, inherit);
}

.tb-pay__ship .tb-cp-badge__save {
	padding: 8px 14px;
	border-radius: 8px;
	border: 0;
	background: var(--tb-accent, #00daff);
	color: var(--tb-dark, #1b1717);
	font-family: var(--tb-head, inherit);
	font-weight: 700;
	font-size: 12px;
	text-transform: uppercase;
	cursor: pointer;
}

[data-theme="dark"] .tb-pay__ship .tb-cp-badge__value {
	color: var(--tb-fg, #fff);
}

[data-theme="dark"] .tb-pay__ship .tb-cp-badge__form input {
	background: var(--tb-field, #2a2427);
	border-color: var(--tb-line, #444);
	color: var(--tb-fg, #fff);
}

@media (max-width: 400px) {
	.tb-pay__ship .tb-cp-badge,
	.tb-pay__ship .andreani-calc-widget.tb-andreani-calc--embed .andreani-calc-content {
		max-width: 100%;
		overflow-x: hidden;
	}
}
