/*
 * Micgo — toppings en la página del producto.
 * Hereda la fuente y el color del tema; los demás colores salen de las variables --mic-toppings-* de micgo-marca.css.
 * Filas táctiles de 44 px como mínimo.
 */
.mic-toppings {
	clear: both;
	font: inherit;
	color: inherit;
	margin: 0 0 1em;
	width: 100%;
}

.mic-toppings__contador {
	font-weight: 600;
	margin: 0 0 0.5em;
}

.mic-toppings__grupo {
	border: 1px solid var(--mic-toppings-borde);
	border-radius: 8px;
	margin: 0 0 0.75em;
	min-width: 0;
	padding: 0.5em 0.75em 0.25em;
}

.mic-toppings__titulo {
	font-weight: 700;
	padding: 0 0.25em;
}

.mic-toppings__precio-grupo {
	font-weight: 400;
	margin-left: 0.25em;
}

.mic-toppings__descripcion,
.mic-toppings__pista {
	color: var(--mic-toppings-texto-suave);
	font-size: 0.9em;
	margin: 0 0 0.35em;
}

.mic-toppings__fila {
	align-items: center;
	border-top: 1px solid var(--mic-toppings-borde);
	box-sizing: border-box;
	cursor: pointer;
	display: flex;
	gap: 0.6em;
	min-height: 44px;
	padding: 0.25em 0;
}

.mic-toppings__fila--contador {
	cursor: default;
}

.mic-toppings__casilla {
	flex: 0 0 auto;
	height: 22px;
	margin: 0;
	width: 22px;
}

.mic-toppings__nombre {
	flex: 1 1 auto;
	min-width: 0;
}

.mic-toppings__fila--elegido .mic-toppings__nombre {
	font-weight: 700;
}

.mic-toppings__precio {
	color: var(--mic-toppings-texto-suave);
	flex: 0 0 auto;
	white-space: nowrap;
}

.mic-toppings__veces {
	font-weight: 700;
}

.mic-toppings__fila--agotado {
	background: var(--mic-toppings-fondo-agotado);
	color: var(--mic-toppings-texto-suave);
	cursor: not-allowed;
}

.mic-toppings__fila--lleno:not(.mic-toppings__fila--agotado) {
	opacity: 0.55;
}

.mic-toppings__agotado {
	font-size: 0.85em;
	font-style: italic;
}

.mic-toppings__contador-fila {
	align-items: center;
	display: inline-flex;
	flex: 0 0 auto;
	gap: 0.25em;
}

.mic-toppings__cantidad {
	-moz-appearance: textfield;
	appearance: textfield;
	box-sizing: border-box;
	font: inherit;
	height: 44px;
	min-width: 3em;
	text-align: center;
	width: 3.5em;
}

.mic-toppings__cantidad::-webkit-outer-spin-button,
.mic-toppings__cantidad::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/* Los botones − y + solo existen con JS: sin él, el campo numérico se escribe a mano. */
.mic-toppings__menos,
.mic-toppings__mas {
	background: transparent;
	border: 1px solid var(--mic-toppings-borde-elegido);
	border-radius: 6px;
	box-sizing: border-box;
	color: inherit;
	cursor: pointer;
	display: none;
	font: inherit;
	font-size: 1.25em;
	height: 44px;
	line-height: 1;
	min-width: 44px;
	padding: 0;
}

.mic-toppings--js .mic-toppings__menos,
.mic-toppings--js .mic-toppings__mas {
	display: inline-block;
}

.mic-toppings__menos:disabled,
.mic-toppings__mas:disabled {
	cursor: not-allowed;
	opacity: 0.35;
}

.mic-toppings__menos:focus-visible,
.mic-toppings__mas:focus-visible,
.mic-toppings__cantidad:focus-visible,
.mic-toppings__casilla:focus-visible {
	outline: 2px solid var(--mic-toppings-foco);
	outline-offset: 2px;
}

.mic-toppings__aviso {
	background: var(--mic-toppings-aviso-fondo);
	border: 1px solid var(--mic-toppings-aviso-borde);
	border-radius: 6px;
	color: var(--mic-toppings-aviso-texto);
	margin: 0 0 0.75em;
	padding: 0.5em 0.75em;
}

.mic-toppings__total {
	font-weight: 700;
	margin: 0 0 0.75em;
}

/* El botón de agregar queda "desactivado" sin tocar su atributo disabled (WooCommerce también lo maneja). */
.mic-toppings-boton-bloqueado {
	cursor: not-allowed;
	opacity: 0.5;
}

.mic-toppings [hidden] {
	display: none !important;
}
