/**
 * Signature Series Platform — Book Now ([ssp_book_now])
 * Premium checkout card for the order page. Built on the SSP
 * design system tokens (ssp-design-system.css must load first).
 *
 * Every button property is pinned in every state so the active
 * theme cannot override it (fixes the unreadable hover state).
 *
 * @since 1.8.0
 */

.ssp-book-now-wrap {
	display: flex;
	justify-content: center;
	font-family: var(--ssp-font, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif);
	padding: 8px 0;
}

.ssp-book-now-card {
	background: var(--ssp-white, #ffffff);
	border: 1px solid var(--ssp-gray-200, #e6eaec);
	border-radius: var(--ssp-radius-lg, 16px);
	box-shadow: var(--ssp-shadow-lg, 0 12px 32px rgba(16, 24, 40, 0.12));
	padding: 40px 48px;
	text-align: center;
	max-width: 420px;
	width: 100%;
}

.ssp-book-now-eyebrow {
	display: block;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--ssp-green, #4c7d1c);
	margin-bottom: 8px;
}

.ssp-book-now-title {
	margin: 0 0 20px;
	font-size: 22px;
	font-weight: 700;
	line-height: 1.3;
	color: var(--ssp-ink, #1a1d1f);
}

.ssp-book-now-price {
	margin: 0 0 24px;
}

.ssp-book-now-amount {
	display: block;
	font-size: 44px;
	font-weight: 800;
	line-height: 1.1;
	color: var(--ssp-ink, #1a1d1f);
	letter-spacing: -0.02em;
}

.ssp-book-now-per {
	display: block;
	margin-top: 4px;
	font-size: 13px;
	color: var(--ssp-gray-500, #6b7478);
}

/* ---------------------------------------------------------
   The button — theme-proof. Every property pinned in every
   state. White text is locked in normal, hover, active, and
   focus. Hover goes BRIGHTER green, never darker.
   --------------------------------------------------------- */

.ssp-book-now-wrap button.ssp-book-now-btn,
button.ssp-book-now-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px !important;
	width: 100% !important;
	padding: 16px 32px !important;
	background: var(--ssp-green, #4c7d1c) !important;
	color: #ffffff !important;
	font-family: var(--ssp-font, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif) !important;
	font-size: 17px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	letter-spacing: 0.01em !important;
	text-transform: none !important;
	text-decoration: none !important;
	text-shadow: none !important;
	border: none !important;
	border-radius: var(--ssp-radius, 12px) !important;
	box-shadow: 0 4px 12px rgba(76, 125, 28, 0.35) !important;
	cursor: pointer !important;
	white-space: nowrap !important;
	transition:
		background-color 0.18s cubic-bezier(0.4, 0, 0.2, 1),
		box-shadow 0.18s cubic-bezier(0.4, 0, 0.2, 1),
		transform 0.18s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.ssp-book-now-wrap button.ssp-book-now-btn:hover,
button.ssp-book-now-btn:hover {
	background: var(--ssp-green-bright, #5c9526) !important;
	color: #ffffff !important;
	box-shadow: 0 8px 20px rgba(76, 125, 28, 0.45) !important;
	transform: translateY(-2px) !important;
}

.ssp-book-now-wrap button.ssp-book-now-btn:active,
button.ssp-book-now-btn:active {
	background: var(--ssp-green-deep, #3f6817) !important;
	color: #ffffff !important;
	box-shadow: 0 2px 8px rgba(76, 125, 28, 0.35) !important;
	transform: translateY(0) !important;
}

.ssp-book-now-wrap button.ssp-book-now-btn:focus,
.ssp-book-now-wrap button.ssp-book-now-btn:focus-visible,
button.ssp-book-now-btn:focus,
button.ssp-book-now-btn:focus-visible {
	color: #ffffff !important;
	outline: none !important;
	box-shadow: 0 0 0 4px var(--ssp-green-ring, rgba(76, 125, 28, 0.28)),
		0 4px 12px rgba(76, 125, 28, 0.35) !important;
}

.ssp-book-now-wrap button.ssp-book-now-btn:disabled,
button.ssp-book-now-btn:disabled {
	opacity: 0.55 !important;
	cursor: not-allowed !important;
	transform: none !important;
	box-shadow: none !important;
}

/* Arrow inside the button */
.ssp-book-now-btn .ssp-book-now-arrow {
	display: inline-block;
	transition: transform 0.18s cubic-bezier(0.4, 0, 0.2, 1);
}
.ssp-book-now-btn:hover .ssp-book-now-arrow {
	transform: translateX(4px);
}

/* ---------------------------------------------------------
   Trust line & messages
   --------------------------------------------------------- */

.ssp-book-now-secure {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	margin: 16px 0 0;
	font-size: 12.5px;
	color: var(--ssp-gray-500, #6b7478);
}

.ssp-book-now-secure svg {
	flex-shrink: 0;
}

.ssp-book-now-error {
	margin-top: 16px;
	background: var(--ssp-red-bg, #fee2e2);
	border: 1px solid #f1a9a9;
	color: var(--ssp-red, #b91c1c);
	padding: 12px 16px;
	border-radius: var(--ssp-radius-sm, 8px);
	font-size: 14px;
	text-align: left;
}

.ssp-book-now-notice {
	background: #fff8e1;
	border: 1px solid #ffe082;
	color: #7a5c00;
	padding: 12px 16px;
	border-radius: var(--ssp-radius-sm, 8px);
	font-size: 14px;
	font-family: var(--ssp-font, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif);
}

/* ---------------------------------------------------------
   Mobile
   --------------------------------------------------------- */

@media (max-width: 480px) {
	.ssp-book-now-card {
		padding: 28px 20px;
	}
	.ssp-book-now-amount {
		font-size: 38px;
	}
}
