/**
 * LocalXAds Business Growth Potential Scanner - Frontend Stylesheet
 *
 * @package LocalXAds\Scanner\Frontend
 */

:root {
	--lx-fe-primary: #10b981;
	--lx-fe-primary-hover: #059669;
	--lx-fe-primary-light: rgba(16, 185, 129, 0.12);
	--lx-fe-primary-glow: rgba(16, 185, 129, 0.35);
	--lx-fe-dark: #090e17;
	--lx-fe-card-bg: rgba(15, 23, 42, 0.75);
	--lx-fe-card-border: rgba(255, 255, 255, 0.12);
	--lx-fe-text-title: #ffffff;
	--lx-fe-text-body: #cbd5e1;
	--lx-fe-text-muted: #94a3b8;
	--lx-fe-radius: 16px;
	--lx-fe-radius-input: 12px;
	--lx-fe-shadow: 0 20px 40px -15px rgba(0, 0, 0, 0.5);
}

.localxads-hero-scanner-wrapper {
	width: 100%;
	position: relative;
	display: flow-root;
	height: auto;
	min-height: 0;
	background: radial-gradient(circle at 50% 20%, rgba(16, 185, 129, 0.15) 0%, transparent 60%),
	            radial-gradient(circle at 80% 80%, rgba(30, 58, 138, 0.18) 0%, transparent 50%),
	            #0b0f19;
	padding: 72px 20px;
	box-sizing: border-box;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	color: var(--lx-fe-text-title);
	overflow: visible;
}

.lx-hero-container {
	max-width: 860px;
	margin: 0 auto;
	text-align: center;
	position: relative;
	z-index: 2;
	display: flow-root;
	height: auto;
	min-height: 0;
	box-sizing: border-box;
}

/* Pill Badge */
.lx-hero-pill-badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: rgba(16, 185, 129, 0.14);
	border: 1px solid rgba(16, 185, 129, 0.35);
	padding: 6px 16px;
	border-radius: 9999px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.1em;
	color: #34d399;
	text-transform: uppercase;
	margin-bottom: 20px;
	backdrop-filter: blur(8px);
}

.lx-pulse-dot {
	width: 8px;
	height: 8px;
	background-color: #10b981;
	border-radius: 50%;
	box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.7);
	animation: lx-pulse 2s infinite cubic-bezier(0.66, 0, 0, 1);
}

@keyframes lx-pulse {
	to {
		box-shadow: 0 0 0 10px rgba(16, 185, 129, 0);
	}
}

/* Headlines */
.lx-hero-headline {
	font-size: clamp(32px, 5vw, 48px);
	font-weight: 800;
	line-height: 1.15;
	color: #ffffff;
	margin: 0 0 18px 0;
	letter-spacing: -0.02em;
}

.lx-hero-subheadline {
	font-size: clamp(16px, 2.5vw, 19px);
	line-height: 1.5;
	color: var(--lx-fe-text-body);
	margin: 0 auto 36px auto;
	max-width: 680px;
	font-weight: 400;
}

/* Card & Form */
.lx-hero-form-card {
	background: var(--lx-fe-card-bg);
	border: 1px solid var(--lx-fe-card-border);
	border-radius: var(--lx-fe-radius);
	padding: 24px;
	box-shadow: var(--lx-fe-shadow);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.lx-hero-form-card:focus-within {
	border-color: rgba(16, 185, 129, 0.5);
	box-shadow: 0 20px 40px -10px rgba(16, 185, 129, 0.25);
}

.lx-input-group {
	display: flex;
	align-items: center;
	background: #0f172a;
	border: 1.5px solid rgba(255, 255, 255, 0.15);
	border-radius: var(--lx-fe-radius-input);
	padding: 6px 8px 6px 18px;
	gap: 12px;
	position: relative;
	transition: border-color 0.15s ease;
}

.lx-input-group:focus-within {
	border-color: var(--lx-fe-primary);
}

.lx-input-icon-wrap {
	display: flex;
	align-items: center;
	color: var(--lx-fe-text-muted);
}

.lx-url-input {
	flex: 1;
	background: transparent !important;
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
	color: #ffffff !important;
	font-size: 17px !important;
	font-weight: 500 !important;
	padding: 12px 0 !important;
	margin: 0 !important;
	width: 100%;
}

.lx-url-input::placeholder {
	color: #64748b;
}

/* CTA Button */
.lx-submit-btn {
	background: linear-gradient(135deg, #10b981 0%, #059669 100%);
	color: #ffffff !important;
	border: none;
	border-radius: 9px;
	padding: 16px 28px;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.04em;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	white-space: nowrap;
	text-transform: uppercase;
	transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: 0 4px 12px var(--lx-fe-primary-glow);
}

.lx-submit-btn:hover {
	background: linear-gradient(135deg, #34d399 0%, #10b981 100%);
	transform: translateY(-1px);
	box-shadow: 0 6px 18px var(--lx-fe-primary-glow);
}

.lx-submit-btn:active {
	transform: translateY(1px);
}

.lx-submit-btn:disabled {
	opacity: 0.7;
	cursor: not-allowed;
	transform: none !important;
}

/* Spinner */
.lx-btn-spinner {
	display: none;
	width: 16px;
	height: 16px;
	border: 2px solid rgba(255, 255, 255, 0.3);
	border-top-color: #ffffff;
	border-radius: 50%;
	animation: lx-spin 0.8s linear infinite;
}

.is-loading .lx-btn-spinner {
	display: inline-block;
}

@keyframes lx-spin {
	to { transform: rotate(360deg); }
}

/* Form Alert */
.lx-form-alert {
	margin-top: 14px;
	padding: 10px 14px;
	border-radius: 8px;
	font-size: 14px;
	font-weight: 500;
	text-align: left;
}

.lx-form-alert.is-error {
	background: rgba(239, 68, 68, 0.15);
	border: 1px solid rgba(239, 68, 68, 0.4);
	color: #fca5a5;
}

.lx-form-alert.is-success {
	background: rgba(16, 185, 129, 0.15);
	border: 1px solid rgba(16, 185, 129, 0.4);
	color: #6ee7b7;
}

/* Trust Badges */
.lx-trust-badges {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 28px;
	margin-top: 20px;
	flex-wrap: wrap;
}

.lx-badge-item {
	display: flex;
	align-items: center;
	gap: 6px;
	color: var(--lx-fe-text-muted);
	font-size: 13px;
	font-weight: 500;
}

.lx-badge-item .lx-check-icon {
	color: var(--lx-fe-primary);
}

/* Responsive adjustment */
@media (max-width: 680px) {
	.lx-input-group {
		flex-direction: column;
		padding: 14px;
		gap: 14px;
	}

	.lx-input-icon-wrap {
		display: none;
	}

	.lx-submit-btn {
		width: 100%;
		padding: 16px;
	}

	.lx-trust-badges {
		gap: 14px;
		flex-direction: column;
		align-items: flex-start;
		padding-left: 8px;
	}
}

/* Scanning Progress Panel */
.lx-scan-progress-panel {
	margin-top: 28px;
	position: relative;
	display: flow-root;
	height: auto;
	min-height: 0;
	box-sizing: border-box;
	background: rgba(15, 23, 42, 0.85);
	border: 1px solid rgba(16, 185, 129, 0.35);
	border-radius: var(--lx-fe-radius);
	padding: 28px;
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.4);
	text-align: left;
	backdrop-filter: blur(12px);
	animation: lx-fadeIn 0.3s ease;
}

@keyframes lx-fadeIn {
	from { opacity: 0; transform: translateY(8px); }
	to { opacity: 1; transform: translateY(0); }
}

.lx-progress-header {
	display: flex;
	align-items: center;
	gap: 20px;
	margin-bottom: 24px;
	padding-bottom: 20px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.lx-radar-animation {
	position: relative;
	width: 54px;
	height: 54px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.lx-radar-circle {
	position: absolute;
	border: 2px solid var(--lx-fe-primary);
	border-radius: 50%;
	opacity: 0;
	animation: lx-radar-wave 2.2s infinite ease-out;
}

.circle-1 { width: 100%; height: 100%; animation-delay: 0s; }
.circle-2 { width: 100%; height: 100%; animation-delay: 0.7s; }
.circle-3 { width: 100%; height: 100%; animation-delay: 1.4s; }

.lx-radar-center {
	width: 42px;
	height: 42px;
	background: #10b981;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 2;
}

@keyframes lx-radar-wave {
	0% { transform: scale(0.6); opacity: 0.8; }
	100% { transform: scale(1.6); opacity: 0; }
}

.lx-scanning-badge {
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.1em;
	color: #34d399;
	text-transform: uppercase;
	display: block;
}

.lx-progress-target {
	font-size: 20px;
	font-weight: 700;
	color: #ffffff;
	margin: 2px 0 4px 0;
}

.lx-progress-status-text {
	font-size: 13px;
	color: var(--lx-fe-text-muted);
	margin: 0;
}

.lx-progress-steps {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.lx-step-item {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 10px 14px;
	border-radius: 8px;
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid rgba(255, 255, 255, 0.06);
	transition: all 0.2s ease;
}

.lx-step-item.is-active {
	background: rgba(16, 185, 129, 0.08);
	border-color: rgba(16, 185, 129, 0.3);
}

.lx-step-item.is-completed {
	background: rgba(16, 185, 129, 0.12);
	border-color: rgba(16, 185, 129, 0.45);
}

.lx-step-bullet {
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.1);
	color: #ffffff;
	font-size: 12px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.2s ease;
}

.lx-step-item.is-active .lx-step-bullet {
	background: #10b981;
	box-shadow: 0 0 10px rgba(16, 185, 129, 0.5);
}

.lx-step-item.is-completed .lx-step-bullet {
	background: #10b981 !important;
	color: #ffffff !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	box-shadow: 0 0 12px rgba(16, 185, 129, 0.4);
}

.lx-step-item.is-loading .lx-step-bullet {
	background: #0284c7 !important;
	box-shadow: 0 0 10px rgba(2, 132, 199, 0.6);
	animation: lx-pulse 1.5s infinite;
}

.lx-step-text strong {
	display: block;
	font-size: 13px;
	color: #ffffff;
}

.lx-step-text span {
	font-size: 12px;
	color: var(--lx-fe-text-muted);
}

/* Phase 3 Confirmation Card Styles */
.lx-confirmation-container {
	margin-top: 24px;
	animation: lx-fadeIn 0.3s ease;
}

.lx-confirmation-card {
	background: rgba(30, 41, 59, 0.7);
	border: 1px solid rgba(16, 185, 129, 0.4);
	border-radius: var(--lx-fe-radius);
	padding: 22px;
	backdrop-filter: blur(8px);
}

.lx-confirmation-header {
	margin-bottom: 16px;
}

.lx-confirmation-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px 10px;
	border-radius: 999px;
	background: rgba(16, 185, 129, 0.15);
	border: 1px solid rgba(16, 185, 129, 0.3);
	margin-bottom: 10px;
}

.lx-conf-pct {
	font-size: 13px;
	font-weight: 800;
	color: #10b981;
}

.lx-conf-txt {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--lx-fe-text-muted);
}

.lx-confirmation-title {
	font-size: 18px;
	font-weight: 700;
	color: #ffffff;
	margin: 0 0 4px 0;
}

.lx-confirmation-sub {
	font-size: 13px;
	color: var(--lx-fe-text-muted);
	margin: 0;
}

.lx-profile-details {
	background: rgba(15, 23, 42, 0.6);
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: 8px;
	padding: 14px 18px;
	margin-bottom: 18px;
}

.lx-detail-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 6px 0;
	font-size: 13px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.04);
}

.lx-detail-row:last-child {
	border-bottom: none;
}

.lx-detail-lbl {
	color: var(--lx-fe-text-muted);
}

.lx-detail-val {
	color: #ffffff;
	text-align: right;
}

.lx-confirmation-actions {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
}

.lx-btn-confirm-yes {
	flex: 2;
	min-width: 220px;
	background: linear-gradient(135deg, #10b981 0%, #059669 100%);
	color: #ffffff;
	font-size: 14px;
	font-weight: 700;
	padding: 12px 20px;
	border-radius: 8px;
	border: none;
	cursor: pointer;
	box-shadow: 0 4px 14px rgba(16, 185, 129, 0.35);
	transition: all 0.2s ease;
	text-align: center;
}

.lx-btn-confirm-yes:hover {
	transform: translateY(-1px);
	box-shadow: 0 6px 18px rgba(16, 185, 129, 0.45);
}

.lx-btn-confirm-no {
	flex: 1;
	min-width: 140px;
	background: transparent;
	color: var(--lx-fe-text-muted);
	font-size: 13px;
	font-weight: 600;
	padding: 12px 16px;
	border-radius: 8px;
	border: 1px solid rgba(255, 255, 255, 0.15);
	cursor: pointer;
	transition: all 0.2s ease;
	text-align: center;
}

.lx-btn-confirm-no:hover {
	color: #ffffff;
	border-color: rgba(255, 255, 255, 0.35);
	background: rgba(255, 255, 255, 0.05);
}

/* Fallback Location Form */
.lx-location-fallback-form {
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.lx-fallback-title {
	font-size: 16px;
	font-weight: 700;
	color: #ffffff;
	margin: 0 0 4px 0;
}

.lx-fallback-sub {
	font-size: 13px;
	color: var(--lx-fe-text-muted);
	margin: 0 0 14px 0;
}

.lx-field-group {
	margin-bottom: 12px;
}

.lx-field-group label {
	display: block;
	font-size: 12px;
	font-weight: 600;
	color: var(--lx-fe-text-muted);
	margin-bottom: 6px;
}

.lx-field-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}

.lx-input-control {
	width: 100%;
	background: rgba(15, 23, 42, 0.8) !important;
	border: 1px solid rgba(255, 255, 255, 0.15) !important;
	border-radius: 6px !important;
	padding: 10px 14px !important;
	color: #ffffff !important;
	font-size: 13px !important;
	box-sizing: border-box;
}

.lx-input-control:focus {
	outline: none !important;
	border-color: var(--lx-fe-primary) !important;
	box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.25) !important;
}

/* Phase 4 Local Search Demand Styles */
.lx-keywords-container {
	margin-top: 24px;
	animation: lx-fadeIn 0.35s ease;
}

.lx-keywords-card {
	background: rgba(30, 41, 59, 0.7);
	border: 1px solid rgba(16, 185, 129, 0.4);
	border-radius: var(--lx-fe-radius);
	padding: 22px;
	backdrop-filter: blur(8px);
}

.lx-keywords-header {
	margin-bottom: 18px;
}

.lx-demand-badge {
	display: inline-flex;
	align-items: baseline;
	gap: 10px;
	padding: 8px 14px;
	border-radius: 8px;
	background: rgba(16, 185, 129, 0.15);
	border: 1px solid rgba(16, 185, 129, 0.35);
	margin-bottom: 12px;
}

.lx-demand-num {
	font-size: 26px;
	font-weight: 800;
	color: #10b981;
	line-height: 1;
}

.lx-demand-label {
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: #ffffff;
	font-weight: 600;
}

.lx-keywords-title {
	font-size: 18px;
	font-weight: 700;
	color: #ffffff;
	margin: 0 0 4px 0;
}

.lx-keywords-sub {
	font-size: 13px;
	color: var(--lx-fe-text-muted);
	margin: 0;
}

.lx-keywords-list {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-bottom: 18px;
}

.lx-keyword-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: rgba(15, 23, 42, 0.6);
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: 6px;
	padding: 10px 14px;
	transition: all 0.2s ease;
}

.lx-keyword-row:hover {
	border-color: rgba(16, 185, 129, 0.3);
	background: rgba(15, 23, 42, 0.85);
}

.lx-kw-text {
	font-size: 13px;
	font-weight: 600;
	color: #ffffff;
}

.lx-kw-meta {
	display: flex;
	align-items: center;
	gap: 8px;
}

.lx-vol-pill {
	font-size: 12px;
	font-weight: 700;
	color: #38bdf8;
	background: rgba(56, 189, 248, 0.12);
	border: 1px solid rgba(56, 189, 248, 0.25);
	border-radius: 4px;
	padding: 3px 8px;
}

.lx-intent-pill {
	font-size: 11px;
	color: var(--lx-fe-text-muted);
	background: rgba(255, 255, 255, 0.05);
	border-radius: 4px;
	padding: 3px 6px;
}

.lx-keywords-footer {
	padding-top: 14px;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.lx-opp-score-pill {
	font-size: 13px;
	color: #ffffff;
}

.lx-opp-score-pill strong {
	color: #10b981;
	font-size: 15px;
	margin-left: 4px;
}

.lx-opp-footer-desc {
	font-size: 12px;
	color: var(--lx-fe-text-muted);
	margin: 0;
}

/* ==========================================================================
   Phase 5: Search Visibility & Competitor Dominance Gap Styles
   ========================================================================== */
.lx-visibility-container {
	margin-top: 24px;
	animation: lx-fadeIn 0.35s ease;
}

.lx-visibility-card {
	background: rgba(30, 41, 59, 0.7);
	border: 1px solid rgba(56, 189, 248, 0.35);
	border-radius: var(--lx-fe-radius);
	padding: 22px;
	backdrop-filter: blur(8px);
}

.lx-visibility-header {
	margin-bottom: 18px;
}

.lx-vis-score-badge {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 6px 14px;
	border-radius: 999px;
	background: rgba(56, 189, 248, 0.12);
	border: 1px solid rgba(56, 189, 248, 0.35);
	margin-bottom: 12px;
}

.lx-vis-score-num {
	font-size: 26px;
	font-weight: 800;
	color: #38bdf8;
	line-height: 1;
}

.lx-vis-score-label {
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: #ffffff;
	font-weight: 600;
}

.lx-visibility-title {
	font-size: 18px;
	font-weight: 700;
	color: #ffffff;
	margin: 0 0 4px 0;
}

.lx-visibility-sub {
	font-size: 13px;
	color: var(--lx-fe-text-muted);
	margin: 0;
}

/* Competitor Alert Banner */
.lx-competitor-alert-banner {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	background: rgba(245, 158, 11, 0.12);
	border: 1px solid rgba(245, 158, 11, 0.35);
	border-radius: 8px;
	padding: 14px 16px;
	margin-bottom: 18px;
}

.lx-alert-icon {
	font-size: 22px;
	line-height: 1;
}

.lx-alert-content {
	flex: 1;
}

.lx-alert-headline {
	display: block;
	font-size: 14px;
	font-weight: 700;
	color: #fef08a;
	margin-bottom: 3px;
}

.lx-alert-desc {
	font-size: 12px;
	color: #fde68a;
	margin: 0;
	line-height: 1.45;
}

/* Visibility Metrics Breakdown Grid */
.lx-vis-breakdown-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
	margin-bottom: 18px;
}

@media (max-width: 640px) {
	.lx-vis-breakdown-grid {
		grid-template-columns: 1fr;
	}
}

.lx-vis-stat-box {
	background: rgba(15, 23, 42, 0.6);
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: 8px;
	padding: 14px;
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.lx-vis-stat-lbl {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--lx-fe-text-muted);
	font-weight: 600;
}

.lx-vis-stat-val {
	font-size: 22px;
	font-weight: 800;
	color: #ffffff;
}

.lx-vis-stat-val.lx-accent-warning {
	color: #f59e0b;
}

.lx-vis-stat-sub {
	font-size: 11px;
	color: var(--lx-fe-text-muted);
}

/* Rank Tiers Distribution Bar */
.lx-rank-tiers-bar {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 16px;
}

.lx-tier-pill {
	font-size: 11px;
	font-weight: 700;
	padding: 4px 10px;
	border-radius: 999px;
}

.lx-tier-top3 {
	background: rgba(16, 185, 129, 0.15);
	color: #10b981;
	border: 1px solid rgba(16, 185, 129, 0.3);
}

.lx-tier-page1 {
	background: rgba(56, 189, 248, 0.15);
	color: #38bdf8;
	border: 1px solid rgba(56, 189, 248, 0.3);
}

.lx-tier-page2 {
	background: rgba(245, 158, 11, 0.15);
	color: #fbbf24;
	border: 1px solid rgba(245, 158, 11, 0.3);
}

.lx-tier-invisible {
	background: rgba(239, 68, 68, 0.12);
	color: #f87171;
	border: 1px solid rgba(239, 68, 68, 0.25);
}

/* Rankings List */
.lx-rankings-list {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-bottom: 18px;
}

.lx-ranking-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: rgba(15, 23, 42, 0.6);
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: 6px;
	padding: 10px 14px;
	transition: all 0.2s ease;
}

.lx-ranking-row:hover {
	border-color: rgba(56, 189, 248, 0.3);
	background: rgba(15, 23, 42, 0.85);
}

.lx-rank-badge {
	font-size: 11px;
	font-weight: 700;
	padding: 3px 8px;
	border-radius: 4px;
}

.lx-rank-badge.is-top3 {
	background: rgba(16, 185, 129, 0.2);
	color: #10b981;
	border: 1px solid rgba(16, 185, 129, 0.4);
}

.lx-rank-badge.is-page1 {
	background: rgba(56, 189, 248, 0.18);
	color: #38bdf8;
	border: 1px solid rgba(56, 189, 248, 0.35);
}

.lx-rank-badge.is-page2 {
	background: rgba(245, 158, 11, 0.18);
	color: #fbbf24;
	border: 1px solid rgba(245, 158, 11, 0.3);
}

.lx-rank-badge.is-invisible {
	background: rgba(255, 255, 255, 0.06);
	color: var(--lx-fe-text-muted);
	border: 1px solid rgba(255, 255, 255, 0.1);
}

.lx-local-pack-tag {
	font-size: 10px;
	font-weight: 700;
	background: rgba(16, 185, 129, 0.15);
	color: #10b981;
	border: 1px solid rgba(16, 185, 129, 0.3);
	border-radius: 4px;
	padding: 2px 6px;
	margin-left: 6px;
}

/* Visibility Footer */
.lx-visibility-footer {
	padding-top: 14px;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.lx-vis-footer-pill {
	font-size: 13px;
	color: #ffffff;
}

.lx-vis-footer-pill strong {
	color: #38bdf8;
	font-size: 15px;
	margin-left: 4px;
}

.lx-vis-footer-desc {
	font-size: 12px;
	color: var(--lx-fe-text-muted);
	margin: 0;
}

/* ==========================================================================
   Phase 6: Customer Enquiry & Revenue Potential Model Styles
   ========================================================================== */
.lx-growth-container {
	margin-top: 24px;
	animation: lx-fadeIn 0.35s ease;
}

.lx-growth-card {
	background: rgba(30, 41, 59, 0.75);
	border: 1px solid rgba(16, 185, 129, 0.45);
	border-radius: var(--lx-fe-radius);
	padding: 24px;
	backdrop-filter: blur(8px);
}

.lx-growth-header {
	margin-bottom: 20px;
}

.lx-multiplier-badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 6px 14px;
	border-radius: 999px;
	background: rgba(16, 185, 129, 0.15);
	border: 1px solid rgba(16, 185, 129, 0.4);
	margin-bottom: 12px;
}

.lx-multiplier-num {
	font-size: 26px;
	font-weight: 800;
	color: #10b981;
	line-height: 1;
}

.lx-multiplier-label {
	font-size: 12px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: #ffffff;
	font-weight: 600;
}

.lx-growth-title {
	font-size: 20px;
	font-weight: 700;
	color: #ffffff;
	margin: 0 0 6px 0;
}

.lx-growth-sub {
	font-size: 13px;
	color: var(--lx-fe-text-muted);
	margin: 0;
}

/* Side-by-Side Enquiry Comparison Box */
.lx-enquiry-comparison-box {
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	align-items: center;
	gap: 14px;
	background: rgba(15, 23, 42, 0.6);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 10px;
	padding: 20px;
	margin-bottom: 20px;
}

@media (max-width: 680px) {
	.lx-enquiry-comparison-box {
		grid-template-columns: 1fr;
		gap: 16px;
		text-align: center;
	}
}

.lx-enquiry-col {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.lx-col-curr {
	opacity: 0.85;
}

.lx-col-pot {
	background: rgba(16, 185, 129, 0.08);
	border: 1px solid rgba(16, 185, 129, 0.3);
	border-radius: 8px;
	padding: 14px 18px;
}

.lx-enquiry-tag {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--lx-fe-text-muted);
	font-weight: 700;
}

.lx-enquiry-tag.lx-tag-pot {
	color: #10b981;
}

.lx-enquiry-stat {
	display: flex;
	align-items: baseline;
	gap: 6px;
}

@media (max-width: 680px) {
	.lx-enquiry-stat {
		justify-content: center;
	}
}

.lx-enquiry-number {
	font-size: 32px;
	font-weight: 800;
	color: #ffffff;
	line-height: 1;
}

.lx-enquiry-number.lx-accent-emerald {
	color: #10b981;
}

.lx-enquiry-unit {
	font-size: 13px;
	color: var(--lx-fe-text-muted);
}

.lx-enquiry-note {
	font-size: 11px;
	color: var(--lx-fe-text-muted);
}

.lx-comparison-arrow-wrap {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 4px;
}

.lx-growth-pill-badge {
	font-size: 11px;
	font-weight: 800;
	background: rgba(16, 185, 129, 0.2);
	color: #10b981;
	border: 1px solid rgba(16, 185, 129, 0.4);
	border-radius: 999px;
	padding: 3px 10px;
	white-space: nowrap;
}

.lx-arrow-icon {
	font-size: 22px;
	color: #10b981;
	font-weight: 700;
}

@media (max-width: 680px) {
	.lx-arrow-icon {
		transform: rotate(90deg);
	}
}

/* Revenue Upside Highlight Box */
.lx-revenue-upside-box {
	display: flex;
	align-items: center;
	gap: 16px;
	background: linear-gradient(135deg, rgba(16, 185, 129, 0.12) 0%, rgba(56, 189, 248, 0.10) 100%);
	border: 1px solid rgba(16, 185, 129, 0.35);
	border-radius: 8px;
	padding: 18px 22px;
	margin-bottom: 20px;
}

.lx-rev-icon {
	font-size: 32px;
	line-height: 1;
}

.lx-rev-content {
	flex: 1;
}

.lx-rev-label {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: #a7f3d0;
	font-weight: 700;
	display: block;
}

.lx-rev-highlight {
	font-size: 28px;
	font-weight: 800;
	color: #ffffff;
	display: block;
	margin: 4px 0 2px 0;
}

.lx-rev-context {
	font-size: 12px;
	color: var(--lx-fe-text-muted);
	margin: 0;
}

/* 3-Pillar Growth Levers Grid */
.lx-growth-levers-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
	margin-bottom: 20px;
}

@media (max-width: 640px) {
	.lx-growth-levers-grid {
		grid-template-columns: 1fr;
	}
}

.lx-lever-card {
	background: rgba(15, 23, 42, 0.6);
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: 8px;
	padding: 14px;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.lx-lever-label {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: var(--lx-fe-text-muted);
	font-weight: 600;
}

.lx-lever-val {
	font-size: 16px;
	font-weight: 700;
	color: #ffffff;
}

.lx-lever-val.lx-accent-emerald {
	color: #10b981;
}

.lx-lever-sub {
	font-size: 11px;
	color: var(--lx-fe-text-muted);
}

/* Growth Footer */
.lx-growth-footer {
	padding-top: 14px;
	border-top: 1px solid rgba(255, 255, 255, 0.08);
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.lx-growth-score-pill {
	font-size: 13px;
	color: #ffffff;
}

.lx-growth-score-pill strong {
	color: #10b981;
	font-size: 15px;
	margin-left: 4px;
}

.lx-growth-footer-desc {
	font-size: 12px;
	color: var(--lx-fe-text-muted);
	margin: 0;
}

/* ==========================================================================
   Phase 7: Custom Growth Blueprint & Lead Capture Styles
   ========================================================================== */
.lx-lead-container {
	margin-top: 24px;
	animation: lx-fadeIn 0.4s ease;
}

.lx-lead-card {
	background: linear-gradient(145deg, rgba(30, 41, 59, 0.85), rgba(15, 23, 42, 0.95));
	border: 1px solid rgba(16, 185, 129, 0.5);
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.45), 0 0 24px rgba(16, 185, 129, 0.12);
	border-radius: var(--lx-fe-radius);
	padding: 28px;
	backdrop-filter: blur(10px);
}

.lx-lead-header {
	text-align: center;
	margin-bottom: 24px;
}

.lx-lead-badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 5px 12px;
	border-radius: 999px;
	background: rgba(16, 185, 129, 0.15);
	border: 1px solid rgba(16, 185, 129, 0.4);
	margin-bottom: 10px;
}

.lx-lead-badge-icon {
	font-size: 14px;
}

.lx-lead-badge-text {
	font-size: 11px;
	font-weight: 700;
	color: #10b981;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.lx-lead-title {
	font-size: 22px;
	font-weight: 800;
	color: #ffffff;
	margin: 0 0 8px 0;
	letter-spacing: -0.01em;
}

.lx-lead-sub {
	font-size: 13px;
	color: var(--lx-fe-text-muted);
	margin: 0 auto;
	max-width: 620px;
	line-height: 1.5;
}

/* Value Deliverables 3-Box Row */
.lx-blueprint-deliverables {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
	margin-bottom: 24px;
}

.lx-deliverable-item {
	background: rgba(15, 23, 42, 0.6);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 8px;
	padding: 14px;
	display: flex;
	align-items: flex-start;
	gap: 10px;
}

.lx-deliv-icon {
	width: 22px;
	height: 22px;
	min-width: 22px;
	border-radius: 50%;
	background: rgba(16, 185, 129, 0.2);
	color: #10b981;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	font-weight: 700;
	margin-top: 1px;
}

.lx-deliv-text {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.lx-deliv-text strong {
	font-size: 12px;
	color: #ffffff;
	font-weight: 600;
	line-height: 1.3;
}

.lx-deliv-text span {
	font-size: 11px;
	color: var(--lx-fe-text-muted);
	line-height: 1.35;
}

/* Form Styling */
.lx-lead-form {
	margin-top: 10px;
}

.lx-lead-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 14px;
	margin-bottom: 18px;
}

.lx-lead-field {
	display: flex;
	flex-direction: column;
	gap: 6px;
	text-align: left;
}

.lx-lead-label {
	font-size: 12px;
	font-weight: 600;
	color: #e2e8f0;
}

.lx-lead-label .lx-req {
	color: #ef4444;
}

.lx-lead-input {
	background: rgba(15, 23, 42, 0.85);
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: 8px;
	padding: 12px 14px;
	font-size: 13px;
	color: #ffffff;
	width: 100%;
	box-sizing: border-box;
	transition: all 0.2s ease;
}

.lx-lead-input:focus {
	outline: none;
	border-color: #10b981;
	box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.25);
	background: rgba(15, 23, 42, 0.95);
}

.lx-lead-actions {
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
}

.lx-lead-submit-btn {
	background: linear-gradient(135deg, #10b981, #059669);
	color: #ffffff;
	border: none;
	border-radius: 8px;
	padding: 14px 28px;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.03em;
	cursor: pointer;
	width: 100%;
	max-width: 480px;
	box-shadow: 0 4px 14px rgba(16, 185, 129, 0.35);
	transition: all 0.2s ease;
}

.lx-lead-submit-btn:hover:not(:disabled) {
	background: linear-gradient(135deg, #059669, #047857);
	box-shadow: 0 6px 20px rgba(16, 185, 129, 0.5);
	transform: translateY(-1px);
}

.lx-lead-submit-btn:disabled {
	opacity: 0.7;
	cursor: not-allowed;
	transform: none;
}

.lx-lead-guarantee {
	font-size: 12px;
	color: var(--lx-fe-text-muted);
	margin: 0;
	display: flex;
	align-items: center;
	gap: 5px;
}

.lx-lock-icon {
	font-size: 12px;
}

/* Success Confirmation State */
.lx-lead-success-card {
	text-align: center;
	padding: 16px 8px;
	animation: lx-fadeIn 0.35s ease;
}

.lx-success-icon-badge {
	font-size: 40px;
	line-height: 1;
	margin-bottom: 12px;
}

.lx-success-title {
	font-size: 22px;
	font-weight: 800;
	color: #ffffff;
	margin: 0 0 6px 0;
}

.lx-success-sub {
	font-size: 13px;
	color: var(--lx-fe-text-muted);
	margin: 0 auto 16px auto;
	max-width: 580px;
	line-height: 1.5;
}

.lx-success-summary-pill {
	display: inline-block;
	background: rgba(16, 185, 129, 0.12);
	border: 1px solid rgba(16, 185, 129, 0.35);
	border-radius: 999px;
	padding: 8px 18px;
	font-size: 13px;
	color: #ffffff;
	margin-bottom: 22px;
}

.lx-whatsapp-cta-box {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
}

.lx-whatsapp-direct-btn {
	background: #25D366;
	color: #ffffff !important;
	text-decoration: none !important;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 14px 28px;
	border-radius: 8px;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.02em;
	box-shadow: 0 4px 14px rgba(37, 211, 102, 0.4);
	transition: all 0.2s ease;
	width: 100%;
	max-width: 480px;
	box-sizing: border-box;
}

.lx-whatsapp-direct-btn:hover {
	background: #20BA5A;
	box-shadow: 0 6px 20px rgba(37, 211, 102, 0.55);
	transform: translateY(-1px);
}

.lx-wa-icon {
	font-size: 18px;
}

.lx-wa-note {
	font-size: 11px;
	color: var(--lx-fe-text-muted);
}

/* ==========================================================================
   Comprehensive Mobile & Responsive Media Queries (Phases 1 - 7)
   ========================================================================== */

@media (max-width: 768px) {
	.lx-blueprint-deliverables {
		grid-template-columns: 1fr;
	}

	.lx-lead-grid {
		grid-template-columns: 1fr;
	}

	.lx-lead-card {
		padding: 22px 18px;
	}

	.lx-lead-title {
		font-size: 19px;
	}
}

@media (max-width: 640px) {
	/* Hero Section */
	.localxads-hero-scanner-wrapper,
	.lx-growth-scanner-hero {
		padding: 32px 14px;
	}

	.lx-hero-headline {
		font-size: clamp(22px, 6.5vw, 30px);
		line-height: 1.25;
		margin-bottom: 12px;
	}

	.lx-hero-subheadline {
		font-size: 14px;
		line-height: 1.45;
		margin-bottom: 22px;
	}

	.lx-hero-form-card {
		padding: 16px 12px;
	}

	.lx-input-group {
		flex-direction: column;
		padding: 10px;
		gap: 10px;
	}

	.lx-input-icon-wrap {
		display: none;
	}

	.lx-url-input {
		font-size: 16px !important; /* Prevents auto-zoom in iOS Safari */
		text-align: center;
		padding: 10px 0 !important;
	}

	.lx-submit-btn {
		width: 100%;
		padding: 14px;
		font-size: 14px;
	}

	.lx-trust-badges {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
		padding-left: 4px;
	}

	/* Phase 1: Scanning Progress Panel */
	.lx-scan-progress-panel {
		padding: 18px 14px;
		margin-top: 20px;
	}

	.lx-progress-header {
		gap: 12px;
		padding-bottom: 14px;
		margin-bottom: 16px;
	}

	.lx-radar-animation {
		width: 44px;
		height: 44px;
		min-width: 44px;
	}

	.lx-radar-center {
		width: 32px;
		height: 32px;
	}

	.lx-progress-target {
		font-size: 16px;
		word-break: break-all;
	}

	.lx-progress-status-text {
		font-size: 12px;
		word-break: break-word;
	}

	.lx-step-item {
		padding: 8px 10px;
		gap: 10px;
	}

	.lx-step-bullet {
		width: 24px;
		height: 24px;
		min-width: 24px;
		font-size: 11px;
	}

	.lx-step-text strong {
		font-size: 12px;
		word-break: break-word;
	}

	.lx-step-text span {
		font-size: 11px;
		word-break: break-word;
	}

	/* Phase 3: Business Confirmation Card */
	.lx-confirmation-card {
		padding: 18px 14px;
	}

	.lx-confirmation-title {
		font-size: 16px;
	}

	.lx-confirmation-sub {
		font-size: 12px;
	}

	.lx-profile-details {
		padding: 10px 12px;
		margin-bottom: 14px;
	}

	.lx-detail-row {
		flex-direction: column;
		align-items: flex-start;
		gap: 3px;
		padding: 8px 0;
	}

	.lx-detail-lbl {
		font-size: 11px;
		font-weight: 700;
		text-transform: uppercase;
		letter-spacing: 0.04em;
	}

	.lx-detail-val {
		text-align: left;
		word-break: break-word;
		font-size: 13px;
	}

	.lx-confirmation-actions {
		flex-direction: column !important;
		gap: 10px;
		width: 100%;
	}

	.lx-btn-confirm-yes,
	.lx-btn-confirm-no {
		width: 100% !important;
		min-width: 0 !important;
		flex: 1 1 100%;
		box-sizing: border-box;
		padding: 13px 16px;
	}

	.lx-field-grid {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.lx-fallback-title {
		font-size: 15px;
	}

	/* Phase 4: Local Search Demand */
	.lx-keywords-card {
		padding: 18px 14px;
	}

	.lx-demand-badge {
		flex-direction: column;
		align-items: flex-start;
		gap: 4px;
		width: 100%;
		box-sizing: border-box;
	}

	.lx-demand-num {
		font-size: 24px;
	}

	.lx-demand-label {
		font-size: 12px;
	}

	.lx-keyword-row {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
		padding: 10px 12px;
	}

	.lx-kw-text {
		word-break: break-word;
		font-size: 13px;
		line-height: 1.35;
	}

	.lx-kw-meta {
		width: 100%;
		justify-content: space-between;
	}

	.lx-keywords-footer {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
	}

	/* Phase 5: Search Visibility */
	.lx-visibility-card {
		padding: 18px 14px;
	}

	.lx-vis-score-badge {
		flex-direction: column;
		align-items: flex-start;
		gap: 4px;
		width: 100%;
		box-sizing: border-box;
		border-radius: 8px;
	}

	.lx-vis-score-num {
		font-size: 24px;
	}

	.lx-competitor-alert-banner {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
		padding: 12px;
	}

	.lx-vis-breakdown-grid {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.lx-rank-tiers-bar {
		gap: 6px;
	}

	.lx-tier-pill {
		font-size: 10px;
		padding: 3px 8px;
	}

	.lx-ranking-row {
		flex-direction: column;
		align-items: flex-start;
		gap: 6px;
		padding: 10px 12px;
	}

	.lx-rank-phrase {
		word-break: break-word;
		font-size: 13px;
		line-height: 1.35;
	}

	.lx-ranking-row > div:last-child {
		width: 100%;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.lx-visibility-footer {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
	}

	/* Phase 6: Enquiry & Revenue Model */
	.lx-growth-card {
		padding: 18px 14px;
	}

	.lx-enquiry-comparison-box {
		grid-template-columns: 1fr;
		gap: 14px;
		padding: 14px;
	}

	.lx-comparison-arrow-wrap {
		flex-direction: row;
		justify-content: center;
		gap: 8px;
	}

	.lx-arrow-icon {
		transform: rotate(90deg);
	}

	.lx-revenue-upside-box {
		flex-direction: column;
		align-items: flex-start;
		gap: 10px;
		padding: 16px 14px;
		text-align: left;
	}

	.lx-rev-highlight {
		font-size: 22px;
		word-break: break-word;
	}

	.lx-growth-levers-grid {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.lx-growth-footer {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
	}

	/* Phase 7: Lead Capture & WhatsApp */
	.lx-lead-card {
		padding: 18px 14px;
	}

	.lx-lead-title {
		font-size: 18px;
		line-height: 1.3;
	}

	.lx-lead-sub {
		font-size: 12px;
		line-height: 1.45;
	}

	.lx-blueprint-deliverables {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.lx-deliv-item {
		padding: 12px 10px;
	}

	.lx-lead-grid {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.lx-lead-input {
		font-size: 16px !important; /* Prevents auto-zoom in iOS Safari */
		padding: 12px;
	}

	.lx-lead-submit-btn {
		width: 100%;
		max-width: 100%;
		font-size: 14px;
		padding: 14px 16px;
	}

	.lx-whatsapp-direct-btn {
		width: 100%;
		max-width: 100%;
		font-size: 14px;
		padding: 14px 16px;
	}

	.lx-success-summary-pill {
		display: block;
		width: 100%;
		box-sizing: border-box;
		border-radius: 8px;
		font-size: 12px;
		padding: 8px 10px;
		word-break: break-word;
		text-align: center;
	}

	.lx-success-title {
		font-size: 19px;
	}
}

@media (max-width: 480px) {
	.localxads-hero-scanner-wrapper,
	.lx-growth-scanner-hero {
		padding: 24px 10px;
	}

	.lx-hero-pill-badge,
	.lx-hero-badge {
		font-size: 10px;
		padding: 5px 12px;
		margin-bottom: 12px;
	}

	.lx-hero-headline {
		font-size: 20px;
		line-height: 1.25;
	}

	.lx-hero-subheadline {
		font-size: 13px;
		line-height: 1.4;
	}

	.lx-hero-form-card {
		padding: 14px 10px;
	}

	.lx-scan-progress-panel {
		padding: 16px 10px;
	}

	.lx-confirmation-card,
	.lx-keywords-card,
	.lx-visibility-card,
	.lx-growth-card,
	.lx-lead-card {
		padding: 16px 10px;
	}

	.lx-lead-submit-btn,
	.lx-whatsapp-direct-btn {
		font-size: 13px;
		padding: 13px 12px;
	}
}

/* ==========================================================================
   Phase 8: Unlocked Interactive Growth Blueprint & Proposal Card Styles
   ========================================================================== */

.lx-blueprint-report-card {
	margin-top: 28px;
	background: rgba(15, 23, 42, 0.95);
	border: 1px solid rgba(16, 185, 129, 0.5);
	border-radius: 12px;
	padding: 28px 24px;
	text-align: left;
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.5), 0 0 24px rgba(16, 185, 129, 0.15);
	animation: lx-fadeIn 0.4s ease;
}

.lx-bp-header {
	margin-bottom: 24px;
	padding-bottom: 18px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.lx-bp-badge-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 12px;
	flex-wrap: wrap;
	gap: 10px;
}

.lx-bp-badge {
	font-size: 11px;
	font-weight: 800;
	color: #10b981;
	background: rgba(16, 185, 129, 0.15);
	border: 1px solid rgba(16, 185, 129, 0.35);
	padding: 4px 12px;
	border-radius: 999px;
	text-transform: uppercase;
	letter-spacing: 0.08em;
}

.lx-btn-print {
	background: rgba(255, 255, 255, 0.08);
	color: #ffffff;
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 6px;
	padding: 6px 14px;
	font-size: 12px;
	font-weight: 600;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	transition: all 0.2s ease;
}

.lx-btn-print:hover {
	background: rgba(255, 255, 255, 0.18);
	border-color: rgba(255, 255, 255, 0.4);
}

.lx-bp-title {
	font-size: 22px;
	font-weight: 800;
	color: #ffffff;
	margin: 0 0 6px 0;
	line-height: 1.25;
}

.lx-bp-sub {
	font-size: 13px;
	color: var(--lx-fe-text-muted);
	margin: 0;
	line-height: 1.45;
}

/* 4-Column Economics Grid */
.lx-bp-grid-4 {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 14px;
	margin-bottom: 28px;
}

.lx-bp-stat-card {
	background: rgba(30, 41, 59, 0.7);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 8px;
	padding: 16px;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.lx-bp-stat-label {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: var(--lx-fe-text-muted);
	font-weight: 700;
}

.lx-bp-stat-val {
	font-size: 20px;
	font-weight: 800;
	color: #ffffff;
	line-height: 1.2;
}

.lx-bp-stat-desc {
	font-size: 11px;
	color: var(--lx-fe-text-muted);
	line-height: 1.35;
}

.lx-accent-gold {
	color: #fbbf24;
}

/* Blueprint Section */
.lx-bp-section {
	margin-bottom: 28px;
	padding-bottom: 24px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.lx-bp-section-title {
	font-size: 17px;
	font-weight: 700;
	color: #ffffff;
	margin: 0 0 6px 0;
}

.lx-bp-section-desc {
	font-size: 13px;
	color: var(--lx-fe-text-muted);
	margin: 0 0 16px 0;
	line-height: 1.45;
}

/* 5-Step Playbook */
.lx-playbook-steps {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.lx-pb-step {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	background: rgba(30, 41, 59, 0.5);
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: 8px;
	padding: 14px 16px;
	transition: all 0.2s ease;
}

.lx-pb-step:hover {
	border-color: rgba(16, 185, 129, 0.3);
	background: rgba(30, 41, 59, 0.8);
}

.lx-pb-step-num {
	width: 28px;
	height: 28px;
	min-width: 28px;
	border-radius: 50%;
	background: rgba(16, 185, 129, 0.2);
	color: #10b981;
	border: 1px solid rgba(16, 185, 129, 0.4);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	font-weight: 800;
	margin-top: 2px;
}

.lx-pb-step-content strong {
	display: block;
	font-size: 14px;
	color: #ffffff;
	font-weight: 700;
	margin-bottom: 4px;
}

.lx-pb-step-content p {
	font-size: 12px;
	color: var(--lx-fe-text-muted);
	margin: 0;
	line-height: 1.45;
}

/* 12-Month Milestone Grid */
.lx-milestone-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 14px;
}

.lx-milestone-card {
	background: rgba(30, 41, 59, 0.5);
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: 8px;
	padding: 16px;
	display: flex;
	flex-direction: column;
}

.lx-ms-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 10px;
}

.lx-ms-phase {
	font-size: 11px;
	font-weight: 700;
	color: var(--lx-fe-text-muted);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.lx-ms-badge {
	font-size: 10px;
	font-weight: 800;
	padding: 2px 8px;
	border-radius: 4px;
	text-transform: uppercase;
}

.lx-ms-badge.is-phase1 {
	background: rgba(56, 189, 248, 0.15);
	color: #38bdf8;
}

.lx-ms-badge.is-phase2 {
	background: rgba(245, 158, 11, 0.15);
	color: #fbbf24;
}

.lx-ms-badge.is-phase3 {
	background: rgba(16, 185, 129, 0.15);
	color: #10b981;
}

.lx-ms-title {
	font-size: 14px;
	font-weight: 700;
	color: #ffffff;
	margin-bottom: 10px;
}

.lx-ms-list {
	list-style: none;
	padding: 0;
	margin: 0 0 16px 0;
	display: flex;
	flex-direction: column;
	gap: 6px;
	flex: 1;
}

.lx-ms-list li {
	font-size: 12px;
	color: #cbd5e1;
	line-height: 1.4;
	position: relative;
	padding-left: 14px;
}

.lx-ms-list li::before {
	content: "•";
	color: #10b981;
	position: absolute;
	left: 0;
	font-weight: 800;
}

.lx-ms-result {
	background: rgba(15, 23, 42, 0.6);
	border: 1px solid rgba(255, 255, 255, 0.06);
	border-radius: 6px;
	padding: 10px 12px;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.lx-ms-res-lbl {
	font-size: 10px;
	text-transform: uppercase;
	color: var(--lx-fe-text-muted);
	font-weight: 700;
}

.lx-ms-result strong {
	font-size: 13px;
	color: #ffffff;
}

/* Blueprint CTA */
.lx-bp-cta-wrap {
	background: linear-gradient(135deg, rgba(16, 185, 129, 0.12), rgba(56, 189, 248, 0.08));
	border: 1px solid rgba(16, 185, 129, 0.35);
	border-radius: 10px;
	padding: 24px;
	text-align: center;
}

.lx-bp-cta-title {
	font-size: 18px;
	font-weight: 800;
	color: #ffffff;
	margin: 0 0 6px 0;
}

.lx-bp-cta-desc {
	font-size: 13px;
	color: var(--lx-fe-text-muted);
	margin: 0 auto 16px auto;
	max-width: 540px;
	line-height: 1.45;
}

.lx-bp-actions {
	display: flex;
	justify-content: center;
}

/* Responsive Overrides for Phase 8 */
@media (max-width: 768px) {
	.lx-bp-grid-4 {
		grid-template-columns: repeat(2, 1fr);
	}

	.lx-milestone-grid {
		grid-template-columns: 1fr;
	}

	.lx-blueprint-report-card {
		padding: 20px 16px;
	}

	.lx-bp-title {
		font-size: 19px;
	}
}

@media (max-width: 480px) {
	.lx-bp-grid-4 {
		grid-template-columns: 1fr;
	}

	.lx-bp-badge-row {
		flex-direction: column;
		align-items: flex-start;
	}

	.lx-btn-print {
		width: 100%;
		justify-content: center;
	}

	.lx-pb-step {
		flex-direction: column;
		gap: 8px;
	}
}

/* ==========================================================================
   Phase 9: Detailed Audit Report & Competitor Intelligence Styles
   ========================================================================== */

.lx-detailed-report-container {
	background: #0b1329;
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 16px;
	padding: 36px 30px;
	margin-top: 32px;
	box-shadow: 0 20px 45px rgba(0, 0, 0, 0.4);
	color: #f8fafc;
	font-family: inherit;
}

.lx-report-header {
	margin-bottom: 32px;
	padding-bottom: 24px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.07);
}

.lx-report-badge-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 14px;
	flex-wrap: wrap;
}

.lx-p9-badge {
	display: inline-flex;
	align-items: center;
	padding: 5px 12px;
	background: rgba(168, 85, 247, 0.15);
	border: 1px solid rgba(168, 85, 247, 0.35);
	color: #c084fc;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.lx-territory-status-badge {
	display: inline-flex;
	align-items: center;
	padding: 5px 12px;
	background: rgba(16, 185, 129, 0.15);
	border: 1px solid rgba(16, 185, 129, 0.35);
	color: #34d399;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.05em;
}

.lx-report-title {
	font-size: 24px;
	font-weight: 800;
	color: #ffffff;
	margin: 0 0 8px;
	line-height: 1.3;
}

.lx-report-sub {
	font-size: 14px;
	color: #94a3b8;
	margin: 0;
	line-height: 1.5;
}

/* Sections */
.lx-report-section {
	margin-bottom: 36px;
	padding-bottom: 28px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.lx-report-sec-title {
	font-size: 18px;
	font-weight: 700;
	color: #ffffff;
	margin: 0 0 6px;
}

.lx-report-sec-desc {
	font-size: 13px;
	color: #94a3b8;
	margin: 0;
	line-height: 1.5;
}

.lx-section-header-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 20px;
	flex-wrap: wrap;
}

.lx-comp-gap-pill {
	display: inline-flex;
	flex-direction: column;
	align-items: flex-end;
	background: rgba(239, 68, 68, 0.1);
	border: 1px solid rgba(239, 68, 68, 0.25);
	padding: 8px 16px;
	border-radius: 10px;
}

.lx-comp-gap-lbl {
	font-size: 10px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: #f87171;
	font-weight: 600;
}

.lx-comp-gap-val {
	font-size: 20px;
	font-weight: 800;
	color: #ef4444;
	line-height: 1.1;
}

/* Competitor Cards Grid */
.lx-competitor-cards-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
	margin-top: 18px;
}

.lx-comp-card {
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 12px;
	padding: 20px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	transition: transform 0.2s, border-color 0.2s;
}

.lx-comp-card:hover {
	border-color: rgba(99, 102, 241, 0.4);
	transform: translateY(-2px);
}

.lx-comp-card-header {
	margin-bottom: 14px;
}

.lx-comp-name-wrap {
	display: flex;
	flex-direction: column;
	gap: 3px;
	margin-bottom: 8px;
}

.lx-comp-name {
	font-size: 15px;
	font-weight: 700;
	color: #f1f5f9;
	line-height: 1.3;
}

.lx-comp-dist {
	font-size: 11px;
	color: #64748b;
}

.lx-comp-rating {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	font-size: 13px;
	color: #f59e0b;
}

.lx-star {
	color: #f59e0b;
}

.lx-comp-revs {
	color: #64748b;
	font-size: 11px;
}

.lx-comp-share-meter {
	margin-bottom: 14px;
}

.lx-share-bar-wrap {
	height: 6px;
	background: rgba(255, 255, 255, 0.08);
	border-radius: 999px;
	overflow: hidden;
	margin-bottom: 6px;
}

.lx-share-bar {
	height: 100%;
	background: linear-gradient(90deg, #6366f1, #a855f7);
	border-radius: 999px;
}

.lx-share-val {
	font-size: 11px;
	font-weight: 600;
	color: #cbd5e1;
}

.lx-comp-details {
	font-size: 12px;
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding-top: 12px;
	border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.lx-comp-strength .lx-lbl,
.lx-comp-vuln .lx-lbl {
	display: block;
	font-weight: 600;
	color: #94a3b8;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin-bottom: 4px;
}

.lx-comp-strength ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.lx-comp-strength li {
	color: #38bdf8;
	line-height: 1.4;
	margin-bottom: 3px;
}

.lx-comp-vuln p {
	margin: 0;
	color: #fca5a5;
	line-height: 1.4;
}

/* Hyperlocal Catchment Pockets Grid */
.lx-catchment-pockets-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
	margin-top: 18px;
}

.lx-pocket-card {
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 12px;
	padding: 18px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.lx-pocket-badge {
	font-size: 11px;
	font-weight: 700;
	color: #38bdf8;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	margin-bottom: 6px;
}

.lx-pocket-areas {
	font-size: 14px;
	font-weight: 700;
	color: #ffffff;
	margin-bottom: 8px;
	line-height: 1.3;
}

.lx-pocket-audience {
	font-size: 12px;
	color: #94a3b8;
	line-height: 1.4;
	margin: 0 0 14px;
}

.lx-pocket-meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	font-size: 11px;
	padding-top: 10px;
	border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.lx-density-tag {
	color: #10b981;
	font-weight: 600;
}

.lx-searches-tag {
	color: #e2e8f0;
	font-weight: 600;
}

/* Detailed Keywords Table */
.lx-kw-table-responsive {
	overflow-x: auto;
	margin-top: 18px;
	border-radius: 10px;
	border: 1px solid rgba(255, 255, 255, 0.08);
}

.lx-detailed-kw-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 13px;
	text-align: left;
}

.lx-detailed-kw-table th {
	background: rgba(255, 255, 255, 0.05);
	padding: 12px 16px;
	color: #94a3b8;
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	font-weight: 600;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.lx-detailed-kw-table td {
	padding: 12px 16px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.04);
	color: #cbd5e1;
}

.lx-detailed-kw-table tr:hover td {
	background: rgba(255, 255, 255, 0.02);
}

.lx-kw-intent-badge {
	display: inline-block;
	padding: 3px 8px;
	background: rgba(99, 102, 241, 0.15);
	color: #818cf8;
	border-radius: 999px;
	font-size: 10px;
	font-weight: 600;
}

.lx-target-rank-pill {
	display: inline-block;
	padding: 3px 8px;
	background: rgba(16, 185, 129, 0.15);
	color: #34d399;
	border-radius: 999px;
	font-size: 10px;
	font-weight: 700;
}

/* Roadmap Tiers Grid */
.lx-roadmap-tiers-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
	margin-top: 18px;
}

.lx-roadmap-tier-card {
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 12px;
	padding: 20px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.lx-roadmap-tier-card.tier-tier_1 {
	border-top: 3px solid #3b82f6;
}

.lx-roadmap-tier-card.tier-tier_2 {
	border-top: 3px solid #8b5cf6;
}

.lx-roadmap-tier-card.tier-tier_3 {
	border-top: 3px solid #10b981;
}

.lx-tier-tag {
	font-size: 11px;
	font-weight: 700;
	color: #94a3b8;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	margin-bottom: 6px;
}

.lx-tier-obj {
	font-size: 14px;
	font-weight: 700;
	color: #ffffff;
	margin-bottom: 12px;
	line-height: 1.3;
}

.lx-tier-milestones {
	margin: 0 0 16px;
	padding: 0;
	list-style: none;
	font-size: 12px;
	color: #cbd5e1;
}

.lx-tier-milestones li {
	line-height: 1.5;
	margin-bottom: 6px;
}

.lx-tier-lift {
	padding-top: 12px;
	border-top: 1px solid rgba(255, 255, 255, 0.06);
	font-size: 12px;
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.lx-tier-lift span {
	color: #64748b;
	font-size: 11px;
}

/* Territory Lock CTA Card */
.lx-territory-lock-card {
	background: linear-gradient(135deg, rgba(16, 185, 129, 0.12), rgba(6, 78, 59, 0.35));
	border: 1px solid rgba(16, 185, 129, 0.35);
	border-radius: 14px;
	padding: 28px;
	display: flex;
	align-items: center;
	gap: 24px;
	margin-top: 10px;
}

.lx-lock-icon-wrap {
	font-size: 40px;
	flex-shrink: 0;
}

.lx-lock-content {
	flex: 1;
}

.lx-lock-tag {
	font-size: 11px;
	font-weight: 800;
	color: #34d399;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	margin-bottom: 4px;
}

.lx-lock-title {
	font-size: 20px;
	font-weight: 800;
	color: #ffffff;
	margin: 0 0 6px;
}

.lx-lock-desc {
	font-size: 13px;
	color: #a7f3d0;
	margin: 0 0 16px;
	line-height: 1.5;
}

.lx-btn-lock-cta {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 12px 24px;
	background: linear-gradient(135deg, #10b981, #059669);
	color: #ffffff;
	font-size: 14px;
	font-weight: 700;
	border-radius: 8px;
	text-decoration: none;
	box-shadow: 0 8px 20px rgba(16, 185, 129, 0.35);
	transition: all 0.2s;
}

.lx-btn-lock-cta:hover {
	transform: translateY(-1px);
	box-shadow: 0 12px 24px rgba(16, 185, 129, 0.45);
	color: #ffffff;
}

/* Responsive Overrides for Phase 9 */
@media (max-width: 1024px) {
	.lx-competitor-cards-grid,
	.lx-catchment-pockets-grid,
	.lx-roadmap-tiers-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 768px) {
	.lx-detailed-report-container {
		padding: 24px 16px;
	}

	.lx-report-title {
		font-size: 20px;
	}

	.lx-territory-lock-card {
		flex-direction: column;
		align-items: flex-start;
		padding: 20px;
	}

	.lx-btn-lock-cta {
		width: 100%;
		justify-content: center;
	}
}

/* ==========================================================================
   Elementor & Normal Document Flow Integration
   ========================================================================== */

/* 1. Ensure all scanner phase containers participate in normal document flow */
.lx-confirmation-container,
.lx-keywords-container,
.lx-visibility-container,
.lx-growth-container,
.lx-lead-container,
.lx-blueprint-report-card,
.lx-detailed-report-container {
	position: relative;
	display: flow-root;
	height: auto;
	min-height: 0;
	box-sizing: border-box;
}

/* 2. Prevent Elementor widget containers from restricting scanner vertical growth */
.elementor-widget-container:has(> .localxads-hero-scanner-wrapper),
.elementor-widget:has(.localxads-hero-scanner-wrapper),
.elementor-widget-shortcode:has(.localxads-hero-scanner-wrapper) {
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	overflow: visible !important;
	display: block !important;
}

/* 3. Unlock Elementor sections, columns, and flexbox containers containing the scanner */
.elementor-section:has(.localxads-hero-scanner-wrapper),
.elementor-section.elementor-section-height-full:has(.localxads-hero-scanner-wrapper),
.elementor-section.elementor-section-height-min-height:has(.localxads-hero-scanner-wrapper),
.elementor-top-section:has(.localxads-hero-scanner-wrapper),
.elementor-container:has(.localxads-hero-scanner-wrapper),
.elementor-column:has(.localxads-hero-scanner-wrapper),
.elementor-widget-wrap:has(.localxads-hero-scanner-wrapper),
.e-con:has(.localxads-hero-scanner-wrapper),
.e-con-inner:has(.localxads-hero-scanner-wrapper),
.e-con.e-parent:has(.localxads-hero-scanner-wrapper) {
	height: auto !important;
	min-height: fit-content !important;
	max-height: none !important;
	overflow: visible !important;
}

/* Dedicated Print Stylesheet for Client PDF Generation */
@media print {
	body {
		background: #ffffff !important;
		color: #0f172a !important;
	}

	.localxads-hero-scanner-wrapper {
		background: #ffffff !important;
		padding: 0 !important;
	}

	.lx-hero-pill-badge,
	.lx-hero-headline,
	.lx-hero-subheadline,
	.lx-hero-form-card,
	.lx-scan-progress-panel,
	.lx-confirmation-container,
	.lx-keywords-container,
	.lx-visibility-container,
	.lx-growth-container,
	#lx-lead-form-state,
	.lx-btn-print,
	.lx-whatsapp-cta-box,
	.lx-bp-actions,
	.lx-lock-actions {
		display: none !important;
	}

	.lx-lead-container,
	.lx-lead-card,
	#lx-lead-success-state,
	.lx-blueprint-report-card,
	.lx-detailed-report-container {
		display: block !important;
		background: #ffffff !important;
		border: 1px solid #cbd5e1 !important;
		box-shadow: none !important;
		color: #0f172a !important;
		padding: 16px !important;
		margin: 0 !important;
	}

	.lx-bp-title,
	.lx-bp-section-title,
	.lx-ms-title,
	.lx-pb-step-content strong,
	.lx-bp-stat-val,
	.lx-bp-cta-title,
	.lx-report-title,
	.lx-report-sec-title,
	.lx-comp-name,
	.lx-pocket-areas,
	.lx-tier-obj,
	.lx-lock-title {
		color: #0f172a !important;
	}

	.lx-bp-sub,
	.lx-bp-section-desc,
	.lx-bp-stat-desc,
	.lx-pb-step-content p,
	.lx-ms-list li,
	.lx-bp-cta-desc,
	.lx-report-sub,
	.lx-report-sec-desc,
	.lx-pocket-audience,
	.lx-lock-desc {
		color: #475569 !important;
	}

	.lx-bp-stat-card,
	.lx-pb-step,
	.lx-milestone-card,
	.lx-ms-result,
	.lx-bp-cta-wrap,
	.lx-comp-card,
	.lx-pocket-card,
	.lx-roadmap-tier-card,
	.lx-territory-lock-card {
		background: #f8fafc !important;
		border: 1px solid #e2e8f0 !important;
	}

	.lx-detailed-kw-table th {
		background: #f1f5f9 !important;
		color: #334155 !important;
	}

	.lx-detailed-kw-table td {
		color: #1e293b !important;
	}
}



