/* ==========================================================================
   Formulario de «Pedir presupuesto»
   Se abre desde los productos sin precio. Mismo lenguaje visual que el modal
   de la agenda: panel blanco centrado sobre un velo oscuro.
   ========================================================================== */

.mwm-presupuesto {
	inset:    0;
	position: fixed;
	z-index:  10000;
}

.mwm-presupuesto[hidden] {
	display: none;
}

body.mwm-presupuesto-abierto {
	overflow: hidden;
}

.mwm-presupuesto__fondo {
	background: rgba(16, 46, 62, .55);
	inset:      0;
	position:   absolute;
}

.mwm-presupuesto__panel {
	background:    var(--mwm-white, #fff);
	border-radius: 16px;
	box-shadow:    0 24px 60px rgba(16, 46, 62, .25);
	left:          50%;
	max-height:    90vh;
	max-width:     560px;
	overflow-y:    auto;
	padding:       32px;
	position:      absolute;
	top:           50%;
	transform:     translate(-50%, -50%);
	width:         calc(100% - 32px);
}

.mwm-presupuesto__cerrar {
	background:  none;
	border:      0;
	color:       var(--vit-slate, #415c6b);
	cursor:      pointer;
	font-size:   28px;
	line-height: 1;
	padding:     4px 8px;
	position:    absolute;
	right:       16px;
	top:         12px;
}

.mwm-presupuesto__cerrar:hover,
.mwm-presupuesto__cerrar:focus-visible {
	color: var(--vit-dark, #102e3e);
}

.mwm-presupuesto__titulo {
	color:       var(--vit-dark, #102e3e);
	font-family: var(--vit-font-heading, sans-serif);
	font-size:   1.5rem;
	margin:      0 0 4px;
}

.mwm-presupuesto__producto {
	color:      var(--vit-teal-ink, #158070);
	font-weight: 600;
	margin:     0 0 20px;
}

.mwm-presupuesto__fila {
	display:               grid;
	gap:                   12px;
	grid-template-columns: 1fr 1fr;
}

@media (max-width: 600px) {
	.mwm-presupuesto__panel { padding: 24px 20px; }
	.mwm-presupuesto__fila  { grid-template-columns: 1fr; }
}

.mwm-presupuesto__campo {
	display:       flex;
	flex-direction: column;
	gap:           4px;
	margin-bottom: 12px;
}

.mwm-presupuesto__campo > span {
	color:       var(--vit-slate, #415c6b);
	font-size:   .9rem;
	font-weight: 600;
}

.mwm-presupuesto__campo input,
.mwm-presupuesto__campo textarea {
	background:    var(--mwm-white, #fff);
	border:        1px solid #cfd9de;
	border-radius: 8px;
	color:         var(--vit-dark, #102e3e);
	font-family:   inherit;
	font-size:     1rem;
	padding:       10px 12px;
	width:         100%;
}

.mwm-presupuesto__campo input:focus,
.mwm-presupuesto__campo textarea:focus {
	border-color: var(--vit-teal-ink, #158070);
	outline:      2px solid rgba(21, 128, 112, .25);
	outline-offset: 1px;
}

.mwm-presupuesto__privacidad {
	align-items: flex-start;
	color:       var(--vit-slate, #415c6b);
	display:     flex;
	font-size:   .9rem;
	gap:         8px;
	margin:      8px 0 16px;
}

.mwm-presupuesto__privacidad a {
	color:           var(--vit-teal-ink, #158070);
	text-decoration: underline;
}

.mwm-presupuesto__aviso {
	margin: 0 0 12px;
}

.mwm-presupuesto__aviso:empty {
	display: none;
}

.mwm-presupuesto__aviso.is-ok {
	background:    #edf7ee;
	border-radius: 8px;
	color:         #1c5c22;
	padding:       10px 12px;
}

.mwm-presupuesto__aviso.is-error {
	background:    #fdecea;
	border-radius: 8px;
	color:         #8a1c13;
	padding:       10px 12px;
}

.mwm-presupuesto__aviso.is-info {
	color: var(--vit-slate, #415c6b);
}

.mwm-presupuesto__enviar {
	background:    var(--vit-teal, #25dbbf);
	border:        0;
	border-radius: 999px;
	color:         var(--vit-dark, #102e3e);
	cursor:        pointer;
	font-family:   inherit;
	font-size:     1rem;
	font-weight:   700;
	padding:       14px 28px;
	width:         100%;
}

.mwm-presupuesto__enviar:hover:not(:disabled),
.mwm-presupuesto__enviar:focus-visible:not(:disabled) {
	background: var(--vit-teal-ink, #158070);
	color:      var(--mwm-white, #fff);
}

.mwm-presupuesto__enviar:disabled {
	cursor:  progress;
	opacity: .7;
}

/* El botón de cancelar suscripción de Mi cuenta hereda un capitalize que deja
   «Cancelar La Suscripción»; aquí se le devuelve su mayúscula única. */
.woocommerce-MyAccount-content .wps_sfw_cancel_subscription {
	text-transform: none;
}
