/*
 * Seat picker panel widget styles (sc_ticket_seat_picker).
 *
 * Ported from the inline <style> block in mockups/ticket_page_draft1.html
 * (.seat-picker / .seat-legend / .tc_seating_map_button overrides, lines
 * 548-618). Scoped under .sc-seat-picker-widget.
 *
 * The outer .sc-seat-picker-bg wrapper reproduces the inline style on mockup
 * line 1222 (background: var(--bg-alt); border-top: 1px solid var(--border);).
 * The secure-checkout strip replaces the mockup's inline styles on lines
 * 1242-1247 with proper class-based rules.
 */

.sc-seat-picker-widget {
	display: block;
}

.sc-seat-picker-widget .sc-seat-picker-bg {
	background: var(--bg-alt);
	border-top: 1px solid var(--border);
}

.sc-seat-picker-widget .section {
	max-width: 860px;
	margin: 0 auto;
	padding: 60px 24px;
}

.sc-seat-picker-widget .section-label {
	font-family: 'Barlow Condensed', sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 5px;
	text-transform: uppercase;
	color: var(--accent);
	margin-bottom: 12px;
}

.sc-seat-picker-widget h2 {
	font-family: 'Barlow Condensed', sans-serif;
	font-weight: 900;
	font-size: clamp(26px, 4vw, 38px);
	margin: 0 0 20px;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: #ffffff;
}

.sc-seat-picker-widget .seat-picker-intro {
	color: var(--muted);
}

.sc-seat-picker-widget .seat-picker {
	background: var(--card);
	border: 1px solid var(--border);
	border-radius: 8px;
	padding: 32px 28px;
	margin-top: 32px;
	text-align: center;
}

.sc-seat-picker-widget .seat-picker h3 {
	font-family: 'Barlow Condensed', sans-serif;
	font-size: 22px;
	font-weight: 700;
	color: var(--text);
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 10px;
}

.sc-seat-picker-widget .seat-picker p {
	color: var(--muted);
	font-size: 14px;
	line-height: 1.6;
	max-width: 560px;
	margin: 0 auto 22px;
}

.sc-seat-picker-widget .seat-legend {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 18px;
	margin-bottom: 24px;
	font-size: 13px;
	color: var(--muted);
}

.sc-seat-picker-widget .seat-legend .swatch {
	display: inline-block;
	width: 14px;
	height: 14px;
	border-radius: 3px;
	margin-right: 6px;
	vertical-align: middle;
	border: 1px solid rgba(255, 255, 255, 0.15);
	background: transparent;
}

/* Tickera seat-chart button override — the legacy live-site green is
 * intentionally NOT inherited here. Every seat-chart button on the ticket
 * page must read as the same --primary conversion target so buyers don't
 * have to re-orient between sections. Match hero/mid-CTA/footer-CTA. */
.sc-seat-picker-widget .seat-picker .tc_seating_map_button {
	background-color: var(--primary) !important;
	border-color: var(--primary) !important;
	color: #ffffff !important;
	font-family: 'Barlow Condensed', sans-serif !important;
	font-weight: 800 !important;
	font-size: 18px !important;
	line-height: 54px !important;
	padding: 0 40px;
	letter-spacing: 2px;
	text-transform: uppercase;
	box-shadow: 0 4px 20px rgba(181, 33, 33, 0.35);
	transition: background-color 0.2s, box-shadow 0.2s, transform 0.2s;
}

.sc-seat-picker-widget .seat-picker .tc_seating_map_button:hover {
	background-color: var(--primary-hv) !important;
	border-color: var(--primary-hv) !important;
	color: #ffffff !important;
	box-shadow: 0 6px 28px rgba(212, 48, 48, 0.45);
	transform: translateY(-1px);
}

/* Secure checkout strip — class-based port of the mockup inline styles. */
.sc-seat-picker-widget .secure-checkout-strip {
	margin-top: 24px;
	padding: 16px 20px;
	background: var(--card);
	border-radius: 6px;
	border: 1px solid var(--border);
	display: flex;
	align-items: center;
	gap: 12px;
	flex-wrap: wrap;
}

.sc-seat-picker-widget .secure-checkout-strip__icon {
	font-size: 22px;
}

.sc-seat-picker-widget .secure-checkout-strip__title {
	font-weight: 700;
	font-size: 14px;
	color: var(--text);
}

.sc-seat-picker-widget .secure-checkout-strip__body {
	font-size: 13px;
	color: var(--muted);
}

@media (max-width: 767px) {
	.sc-seat-picker-widget .section {
		padding: 40px 16px;
	}

	.sc-seat-picker-widget .seat-picker {
		padding: 24px 18px;
	}
}
