/**
 * CWG In-Stock Notifier — Leon theme overrides
 * Targets the .cwginstock-subscribe-form rendered on single product pages
 * when a variation is out of stock. Uses !important throughout to defeat
 * the plugin's own styles.
 */

.single-product .cwginstock-subscribe-form,
.cwginstock-subscribe-form.cwginstock-outofstock {
	margin: 24px 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	font-family: inherit !important;
}

.cwginstock-subscribe-form .panel,
.cwginstock-subscribe-form .panel.panel-primary,
.cwginstock-subscribe-form .cwginstock-panel-primary {
	margin: 0 !important;
	padding: 0 !important;
	background: #ffffff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 8px !important;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04) !important;
	overflow: hidden !important;
}

.cwginstock-subscribe-form .panel-heading,
.cwginstock-subscribe-form .cwginstock-panel-heading {
	margin: 0 !important;
	padding: 16px 20px !important;
	background: #003366 !important;
	border: 0 !important;
	border-bottom: 0 !important;
	border-radius: 0 !important;
	color: #ffffff !important;
}

.cwginstock-subscribe-form .panel-heading h4,
.cwginstock-subscribe-form .cwginstock-panel-heading h4 {
	margin: 0 !important;
	padding: 0 !important;
	color: #ffffff !important;
	font-size: 0.95rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	text-align: center !important;
	line-height: 1.4 !important;
}

.cwginstock-subscribe-form .panel-body,
.cwginstock-subscribe-form .cwginstock-panel-body {
	margin: 0 !important;
	padding: 20px !important;
	background: #ffffff !important;
}

.cwginstock-subscribe-form .row {
	display: block !important;
	margin: 0 !important;
}

.cwginstock-subscribe-form .row > [class*="col-"] {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	flex: none !important;
	padding: 0 !important;
	margin: 0 !important;
	float: none !important;
}

.cwginstock-subscribe-form .form-group {
	display: flex !important;
	flex-direction: column !important;
	gap: 10px !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
	width: 100% !important;
	text-align: left !important;
}

.cwginstock-subscribe-form .form-group:last-child {
	margin-bottom: 0 !important;
}

.cwginstock-subscribe-form input.cwgstock_name,
.cwginstock-subscribe-form input.cwgstock_email {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 12px 14px !important;
	background: #ffffff !important;
	border: 1px solid #d1d5db !important;
	border-radius: 6px !important;
	box-shadow: none !important;
	color: #1f2937 !important;
	font-family: inherit !important;
	font-size: 0.9rem !important;
	line-height: 1.4 !important;
	text-align: left !important;
	box-sizing: border-box !important;
	transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
}

.cwginstock-subscribe-form input.cwgstock_name::placeholder,
.cwginstock-subscribe-form input.cwgstock_email::placeholder {
	color: #9ca3af !important;
	opacity: 1 !important;
}

.cwginstock-subscribe-form input.cwgstock_name:focus,
.cwginstock-subscribe-form input.cwgstock_email:focus {
	outline: 0 !important;
	border-color: #003366 !important;
	box-shadow: 0 0 0 3px rgba(0, 51, 102, 0.15) !important;
}

.cwginstock-subscribe-form input.cwgstock_button,
.cwginstock-subscribe-form input[type="submit"].cwgstock_button {
	display: inline-block !important;
	width: 100% !important;
	margin: 4px 0 0 !important;
	padding: 13px 20px !important;
	background: #003366 !important;
	border: 1px solid #003366 !important;
	border-radius: 6px !important;
	box-shadow: none !important;
	color: #ffffff !important;
	font-family: inherit !important;
	font-size: 0.85rem !important;
	font-weight: 600 !important;
	letter-spacing: 0.08em !important;
	text-transform: uppercase !important;
	text-align: center !important;
	cursor: pointer !important;
	box-sizing: border-box !important;
	transition: background-color 0.15s ease, border-color 0.15s ease, transform 0.05s ease !important;
}

.cwginstock-subscribe-form input.cwgstock_button:hover,
.cwginstock-subscribe-form input[type="submit"].cwgstock_button:hover {
	background: #002244 !important;
	border-color: #002244 !important;
	color: #ffffff !important;
}

.cwginstock-subscribe-form input.cwgstock_button:active,
.cwginstock-subscribe-form input[type="submit"].cwgstock_button:active {
	transform: translateY(1px) !important;
}

.cwginstock-subscribe-form input.cwgstock_button:focus-visible,
.cwginstock-subscribe-form input[type="submit"].cwgstock_button:focus-visible {
	outline: 0 !important;
	box-shadow: 0 0 0 3px rgba(0, 51, 102, 0.25) !important;
}

.cwginstock-subscribe-form .cwgstock_output {
	margin: 12px 0 0 !important;
	padding: 0 !important;
	font-size: 0.85rem !important;
	line-height: 1.5 !important;
	color: #1f2937 !important;
	text-align: center !important;
}

.cwginstock-subscribe-form .cwgstock_output:empty {
	display: none !important;
}

.cwginstock-subscribe-form .cwgstock_output .cwg-success,
.cwginstock-subscribe-form .cwgstock_output .updated {
	padding: 10px 12px !important;
	background: #ecfdf5 !important;
	border: 1px solid #a7f3d0 !important;
	border-radius: 6px !important;
	color: #065f46 !important;
}

.cwginstock-subscribe-form .cwgstock_output .cwg-error,
.cwginstock-subscribe-form .cwgstock_output .error {
	padding: 10px 12px !important;
	background: #fef2f2 !important;
	border: 1px solid #fecaca !important;
	border-radius: 6px !important;
	color: #991b1b !important;
}

@media (min-width: 480px) {
	.cwginstock-subscribe-form .form-group {
		flex-direction: row !important;
	}

	.cwginstock-subscribe-form .form-group input.cwgstock_name,
	.cwginstock-subscribe-form .form-group input.cwgstock_email {
		flex: 1 1 0 !important;
		min-width: 0 !important;
	}
}
