/**
 * Turn On — back-in-stock alert sign-up (task_018)
 * Markup: inc/stock-alerts.php · Palette as the product page.
 */

/* Out of stock: the buy controls cannot be used, the sign-up replaces them. */
.tosp-info.is-out-of-stock .tosp-buy-row,
.tosp-info.is-out-of-stock .tosp-buy-secondary,
.tosp-info.is-out-of-stock .tosp-qty-notice {
	display: none !important;
}

.tosa {
	margin: 8px 0 16px;
	padding: 20px;
	border: 1px solid #e8e4da;
	border-radius: 16px;
	background: #fbfaf7;
	font-family: 'Noto Sans', sans-serif;
}
.tosa__badge {
	display: inline-block;
	margin: 0 0 10px;
	padding: 4px 10px;
	border-radius: 999px;
	background: #fdecec;
	color: #b91c1c;
	font-size: 12px;
	font-weight: 600;
}
.tosa__title {
	margin: 0 0 4px;
	font-size: 17px;
	font-weight: 700;
	color: #0b2545;
}
.tosa__text {
	margin: 0 0 14px;
	font-size: 14px;
	line-height: 1.5;
	color: #6b6b6b;
}
.tosa__row {
	display: flex;
	gap: 10px;
}
.tosa__row input[type="email"] {
	flex: 1;
	min-width: 0;
	height: 48px;
	padding: 0 16px;
	border: 1px solid #e8e4da;
	border-radius: 999px;
	background: #ffffff;
	font: inherit;
	font-size: 14px;
	color: #1a1a1a;
}
.tosa__row input[type="email"]:focus {
	outline: none;
	border-color: #3cb371;
	box-shadow: 0 0 0 3px rgba(60, 179, 113, 0.12);
}
.tosa__btn {
	height: 48px;
	padding: 0 22px;
	border: 0;
	border-radius: 999px;
	background: #0b2545;
	color: #ffffff;
	font: inherit;
	font-size: 14px;
	font-weight: 600;
	white-space: nowrap;
	cursor: pointer;
}
.tosa__btn:hover { background: #163a66; }
.tosa__btn:disabled { opacity: 0.6; cursor: default; }

.tosa__consent {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	margin-top: 12px;
	font-size: 12.5px;
	line-height: 1.45;
	color: #3a3a3a;
	cursor: pointer;
}
.tosa__consent input { margin-top: 2px; flex-shrink: 0; }
.tosa__consent a { color: #0b2545; text-decoration: underline; }

.tosa__hp {
	position: absolute !important;
	left: -9999px !important;
	width: 1px;
	height: 1px;
	opacity: 0;
}

.tosa__msg {
	margin: 12px 0 0;
	font-size: 13.5px;
	font-weight: 600;
}
.tosa__msg[hidden] { display: none; }
.tosa__msg.is-ok { color: #2e8b57; }
.tosa__msg.is-error { color: #b91c1c; }

.tosa.is-done .tosa__row,
.tosa.is-done .tosa__consent { display: none; }

@media (max-width: 480px) {
	.tosa { padding: 16px; }
	.tosa__row { flex-direction: column; }
	.tosa__btn { width: 100%; }
}
