/* ==========================================================================
   IMEXSU · Lista de cotización
   La carga inc/cotizacion.php, detrás de child-style para heredar tokens.
   Botones en ángulo recto, como el resto del sitio (§17 de style.css).
   ========================================================================== */

/* --- Aviso sobre la tabla ------------------------------------------------ */
.imx-cot__aviso{
	margin: 0 0 20px;
	padding: 14px 16px;
	border-left: 4px solid var(--imx-accent);
	background: var(--imx-surface-alt);
	font-size: 14px;
	line-height: 1.55;
	color: var(--imx-text);
}

/* Sin totales ni cupones, la columna de la derecha del carrito sobra. */
.woocommerce-cart .cart-collaterals:empty,
.woocommerce-cart .cart-totals-inner:empty{ display: none; }

/* --- Panel de envío ------------------------------------------------------ */
.imx-cot{
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
	gap: 0;
	margin: 40px 0 16px;
	border: 1px solid var(--imx-line);
	border-radius: var(--imx-r-md);
	background: var(--imx-surface);
	overflow: hidden;
}

.imx-cot__resumen{
	display: flex;
	flex-direction: column;
	gap: 22px;
	padding: 32px;
	background: linear-gradient(115deg, var(--imx-ink) 0%, var(--imx-brand) 100%);
	color: var(--imx-on-ink);
}

.imx-cot__eyebrow{
	margin: 0 0 -12px;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: var(--imx-accent);
}

.imx-cot__titulo{
	margin: 0;
	font-family: var(--imx-display);
	font-size: 26px;
	font-weight: 700;
	line-height: 1.1;
	text-transform: uppercase;
	color: #fff;
}

.imx-cot__cifras{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1px;
	margin: 0;
	background: rgba(255, 255, 255, .14);
	border: 1px solid rgba(255, 255, 255, .14);
}

.imx-cot__cifras > div{ padding: 14px 16px; background: var(--imx-brand); }
.imx-cot__cifras dt{ font-size: 12px; color: var(--imx-on-ink-soft); }
.imx-cot__cifras dd{
	margin: 4px 0 0;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	font-variant-numeric: tabular-nums;
}
.imx-cot__cifras dd .amount{ color: #fff; }

.imx-cot__pasos{
	margin: 0;
	padding: 0;
	list-style: none;
	counter-reset: paso;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.imx-cot__pasos li{
	position: relative;
	padding-left: 38px;
	font-size: 14px;
	line-height: 1.5;
	counter-increment: paso;
}

.imx-cot__pasos li::before{
	content: counter(paso);
	position: absolute;
	left: 0;
	top: -2px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	background: var(--imx-accent);
	color: var(--imx-accent-ink);
	font-size: 13px;
	font-weight: 700;
}

.imx-cot__wa{
	margin-top: auto;
	padding-top: 20px;
	border-top: 1px solid rgba(255, 255, 255, .14);
}

.imx-cot__wa p{ margin: 0 0 12px; font-size: 14px; }

/* --- Botones ------------------------------------------------------------- */
.imx-cot__btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 50px;
	padding: 0 24px;
	border: 0;
	border-radius: 0;
	font-family: inherit;
	font-size: 14.5px;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	cursor: pointer;
	transition: background-color .15s ease, color .15s ease;
}

.imx-cot__btn--enviar{ background: var(--imx-brand); color: #fff; }
.imx-cot__btn--enviar:hover{ background: var(--imx-accent); color: var(--imx-accent-ink); }

.imx-cot__btn--wa{ background: #1FA855; color: #fff; }          /* 3,1:1 en texto grande y negrita */
.imx-cot__btn--wa:hover{ background: #178A45; color: #fff; }

/* --- Formulario ---------------------------------------------------------- */
.imx-cot__form{ padding: 32px; }

.imx-cot__fila{
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0 18px;
}

.imx-cot__campo{ margin: 0 0 16px; }

.imx-cot__campo label{
	display: block;
	margin-bottom: 6px;
	font-size: 13px;
	font-weight: 600;
	color: var(--imx-ink);
}

.imx-cot__campo abbr{ border: 0; text-decoration: none; color: var(--imx-action); }
.imx-cot__opc{ font-weight: 400; color: var(--imx-text-muted); }

.imx-cot__campo input,
.imx-cot__campo select,
.imx-cot__campo textarea{
	width: 100%;
	box-sizing: border-box;
	border: 1px solid var(--imx-line-strong);
	border-radius: 0;
	background: var(--imx-surface);
	font-family: inherit;
	font-size: 14.5px;
	color: var(--imx-text);
}

.imx-cot__campo input,
.imx-cot__campo select{ height: 46px; padding: 0 14px; }
.imx-cot__campo textarea{ padding: 12px 14px; line-height: 1.5; resize: vertical; }

.imx-cot__campo input:focus-visible,
.imx-cot__campo select:focus-visible,
.imx-cot__campo textarea:focus-visible{
	outline: 2px solid var(--imx-action);
	outline-offset: 1px;
	border-color: var(--imx-action);
}

.imx-cot__tel{ display: flex; }
.imx-cot__pref{
	display: flex;
	align-items: center;
	padding: 0 12px;
	border: 1px solid var(--imx-line-strong);
	border-right: 0;
	background: var(--imx-surface-alt);
	font-size: 14.5px;
	color: var(--imx-text);
}

.imx-cot__btn--enviar[type="submit"]{ width: 100%; margin-top: 6px; }

.imx-cot__legal{
	margin: 12px 0 0;
	font-size: 12.5px;
	color: var(--imx-text-muted);
	text-align: center;
}

.imx-cot__trampa{
	position: absolute !important;
	left: -9999px !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

/* --- Confirmación -------------------------------------------------------- */
.imx-cot-ok{
	max-width: 680px;
	margin: 24px auto 48px;
	padding: 40px 32px;
	border: 1px solid var(--imx-line);
	border-top: 4px solid var(--imx-accent);
	background: var(--imx-surface);
	text-align: center;
}

.imx-cot-ok > svg{ color: var(--imx-success-dot); }

.imx-cot-ok h2{
	margin: 16px 0 12px;
	font-family: var(--imx-display);
	font-size: 24px;
	line-height: 1.2;
	text-transform: uppercase;
	color: var(--imx-ink);
}

.imx-cot-ok p{ margin: 0 auto 24px; max-width: 540px; color: var(--imx-text-muted); line-height: 1.6; }

.imx-cot-ok__botones{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px;
}

/* --- Ficha de producto: cómo se cotiza ----------------------------------- */
.imx-fp__cotizar{
	margin: 24px 0 0;
	padding: 22px 24px;
	border: 1px solid var(--imx-line);
	border-left: 4px solid var(--imx-accent);
	background: var(--imx-surface-alt);
}

.imx-fp__cotizar-titulo{
	margin: 0 0 14px;
	font-size: 15px;
	font-weight: 700;
	color: var(--imx-ink);
}

.imx-fp__cotizar ol{
	margin: 0 0 18px;
	padding: 0;
	list-style: none;
	counter-reset: paso;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 14px;
}

.imx-fp__cotizar li{
	position: relative;
	padding-top: 32px;
	font-size: 13px;
	line-height: 1.45;
	color: var(--imx-text-muted);
	counter-increment: paso;
}

.imx-fp__cotizar li::before{
	content: counter(paso);
	position: absolute;
	left: 0;
	top: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	background: var(--imx-brand);
	color: #fff;
	font-size: 12px;
	font-weight: 700;
}

.imx-fp__cotizar-botones{ display: flex; flex-wrap: wrap; gap: 10px; }
.imx-fp__cotizar-botones .imx-cot__btn{ min-height: 44px; padding: 0 18px; font-size: 13.5px; }

.imx-cot__btn--contorno{
	border: 1.5px solid var(--imx-brand);
	background: transparent;
	color: var(--imx-brand);
}
.imx-cot__btn--contorno:hover{ background: var(--imx-brand); color: #fff; }

/* Enlace de WhatsApp bajo el botón de agregar. */
.imx-fp__consultar--wa svg{ color: #1FA855; }

/* --- Adaptación ---------------------------------------------------------- */
@media (max-width: 1024px){
	.imx-cot{ grid-template-columns: 1fr; }
}

@media (max-width: 768px){
	.imx-cot__resumen,
	.imx-cot__form{ padding: 24px 20px; }
	.imx-cot__fila{ grid-template-columns: 1fr; }
	.imx-fp__cotizar ol{ grid-template-columns: 1fr; }
	.imx-cot-ok{ padding: 32px 20px; }
}

/* Woodmart pinta los <button type="submit"> en gris con más especificidad. */
.imx-cot button.imx-cot__btn--enviar,
.imx-cot-ok a.imx-cot__btn--enviar{ background: var(--imx-brand); color: #fff; }
.imx-cot button.imx-cot__btn--enviar:hover,
.imx-cot-ok a.imx-cot__btn--enviar:hover{ background: var(--imx-accent); color: var(--imx-accent-ink); }

/* Los pasos «Pagar · Pedido completado» de la cabecera no existen aquí. */
.woocommerce-cart .wd-checkout-steps li:not(.step-cart){ display: none !important; }
.woocommerce-cart .wd-checkout-steps li::before,
.woocommerce-cart .wd-checkout-steps li::after{ display: none !important; }
.woocommerce-cart .wd-checkout-steps a{ pointer-events: none; }