/**
 * Airline microsite theme overrides (body.gccvas-ms-{slug})
 * Maps Tailwind gcc-wine utilities and key chrome accents to --ms-primary.
 */

body.gccvas-ms {
	--ms-primary: #5e1833;
	--ms-primary-dark: #3d0a1f;
	--ms-primary-light: #8b3d5c;
}

body.gccvas-ms-kac {
	--ms-primary: #005baa;
	--ms-primary-dark: #003d75;
	--ms-primary-light: #4d8fd4;
}

body.gccvas-ms-jzr {
	--ms-primary: #1a3668;
	--ms-primary-dark: #0f2040;
	--ms-primary-light: #4a6a9a;
}

body.gccvas-ms-qtr {
	--ms-primary: #5e1833;
	--ms-primary-dark: #3d0a1f;
	--ms-primary-light: #8b3d5c;
}

body.gccvas-ms-uae {
	--ms-primary: #d71a21;
	--ms-primary-dark: #8f1015;
	--ms-primary-light: #e85a5f;
}

body.gccvas-ms-gfa {
	--ms-primary: #9e7c3a;
	--ms-primary-dark: #6b5428;
	--ms-primary-light: #c4a86a;
}

body.gccvas-ms-etd {
	--ms-primary: #bd8b3e;
	--ms-primary-dark: #7a5a28;
	--ms-primary-light: #d4b06a;
}

/* Tailwind wine utilities */
body.gccvas-ms .text-gcc-wine,
body.gccvas-ms .text-gcc-wine\/80,
body.gccvas-ms a.text-gcc-wine {
	color: var(--ms-primary) !important;
}

body.gccvas-ms .bg-gcc-wine,
body.gccvas-ms .bg-gcc-wine\/10,
body.gccvas-ms .from-gcc-wine,
body.gccvas-ms .to-gcc-wine,
body.gccvas-ms .via-gcc-wine {
	--tw-gradient-from: var(--ms-primary) var(--tw-gradient-from-position, ) !important;
	--tw-gradient-to: rgb(255 255 255 / 0) var(--tw-gradient-to-position, ) !important;
	--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to) !important;
	background-color: var(--ms-primary) !important;
}

body.gccvas-ms .bg-gcc-wine\/10 {
	background-color: color-mix(in srgb, var(--ms-primary) 10%, transparent) !important;
}

body.gccvas-ms .border-gcc-wine,
body.gccvas-ms .border-gcc-wine\/20,
body.gccvas-ms .border-gcc-wine\/25,
body.gccvas-ms .hover\:border-gcc-wine\/25:hover,
body.gccvas-ms .ring-gcc-wine\/10 {
	border-color: color-mix(in srgb, var(--ms-primary) 25%, transparent) !important;
}

body.gccvas-ms .bg-gcc-wineLight,
body.gccvas-ms .to-gcc-wineLight,
body.gccvas-ms .from-gcc-wineLight {
	background-color: var(--ms-primary-light) !important;
	--tw-gradient-from: var(--ms-primary-light) !important;
	--tw-gradient-to: var(--ms-primary-light) !important;
}

body.gccvas-ms .shadow-gcc-wine\/20 {
	--tw-shadow-color: color-mix(in srgb, var(--ms-primary) 20%, transparent) !important;
}

/* Page loader — airline colors instead of GCC wine/red */
body.gccvas-ms #gccvas-page-loader.gccvas-loader-gradient {
	box-shadow: inset 0 0 140px color-mix(in srgb, var(--ms-primary) 8%, transparent) !important;
}
body.gccvas-ms #gccvas-page-loader::before {
	background: radial-gradient(ellipse 80% 55% at 50% 100%, color-mix(in srgb, var(--ms-primary) 12%, transparent) 0%, transparent 62%) !important;
}
body.gccvas-ms #gccvas-page-loader .gccvas-loader-pulse-ring {
	border-color: color-mix(in srgb, var(--ms-primary) 22%, transparent) !important;
}
body.gccvas-ms #gccvas-page-loader .gccvas-loader-3d img {
	filter: drop-shadow(0 8px 24px color-mix(in srgb, var(--ms-primary) 26%, transparent)) !important;
}
body.gccvas-ms #gccvas-page-loader .gccvas-loader-dot {
	background: var(--ms-primary) !important;
	box-shadow: 0 1px 4px color-mix(in srgb, var(--ms-primary) 28%, transparent) !important;
}
body.gccvas-ms #gccvas-page-loader .gccvas-loader-dot:nth-child(2) {
	background: var(--ms-primary-light) !important;
}
body.gccvas-ms #gccvas-page-loader .gccvas-loader-dot:nth-child(3) {
	background: var(--ms-primary-dark) !important;
}

body.gccvas-ms .gccvas-mm-drawer {
	background: linear-gradient(180deg, var(--ms-primary-dark) 0%, var(--ms-primary) 40%, var(--ms-primary-dark) 100%) !important;
}

/* Nav account CTAs — airline blue (login + join); GCC Virtuals button stays GCC red */
body.gccvas-ms #gccvasSiteHeader .gccvas-nav-cta--login {
	color: #fff !important;
	background: var(--ms-primary-dark) !important;
	border: 1px solid color-mix(in srgb, var(--ms-primary-dark) 70%, #000) !important;
	box-shadow: 0 1px 2px color-mix(in srgb, var(--ms-primary) 22%, transparent) !important;
}

body.gccvas-ms #gccvasSiteHeader .gccvas-nav-cta--login:hover,
body.gccvas-ms #gccvasSiteHeader .gccvas-nav-cta--login:focus {
	background: var(--ms-primary) !important;
	color: #fff !important;
	border-color: color-mix(in srgb, var(--ms-primary) 55%, #000) !important;
}

body.gccvas-ms #gccvasSiteHeader .gccvas-nav-cta--join,
body.gccvas-ms .gccvas-mm-cta--join {
	color: #fff !important;
	background: linear-gradient(135deg, var(--ms-primary) 0%, var(--ms-primary-light) 100%) !important;
	border: 1px solid color-mix(in srgb, var(--ms-primary) 35%, transparent) !important;
	box-shadow: 0 1px 2px color-mix(in srgb, var(--ms-primary) 22%, transparent) !important;
}

body.gccvas-ms #gccvasSiteHeader .gccvas-nav-cta--join:hover,
body.gccvas-ms #gccvasSiteHeader .gccvas-nav-cta--join:focus,
body.gccvas-ms .gccvas-mm-cta--join:hover,
body.gccvas-ms .gccvas-mm-cta--join:focus {
	background: linear-gradient(135deg, var(--ms-primary-dark) 0%, var(--ms-primary) 100%) !important;
	color: #fff !important;
}

body.gccvas-ms #gccvasSiteHeader .gccvas-nav-cta--login:hover,
body.gccvas-ms #gccvasSiteHeader .gccvas-nav-cta--join:hover {
	box-shadow: 0 12px 28px -14px color-mix(in srgb, var(--ms-primary) 50%, transparent) !important;
}

body.gccvas-ms #gccvasSiteHeader .gccvas-nav-cta--gcc-home:hover {
	box-shadow: 0 12px 28px -14px rgba(105, 12, 54, 0.4) !important;
}

body.gccvas-ms .gccvas-mm-drawer .gccvas-mm-cta--crew {
	background: var(--ms-primary-dark) !important;
	border-color: rgba(255, 255, 255, 0.28) !important;
	color: #fff !important;
}

body.gccvas-ms .gccvas-mm-drawer .gccvas-mm-cta--crew:hover,
body.gccvas-ms .gccvas-mm-drawer .gccvas-mm-cta--crew:focus {
	background: var(--ms-primary) !important;
	border-color: rgba(255, 255, 255, 0.38) !important;
	color: #fff !important;
	box-shadow: 0 10px 24px -10px color-mix(in srgb, var(--ms-primary) 45%, transparent) !important;
}

body.gccvas-ms .gccvas-mm-account-actions .gccvas-mm-cta--gcc-home {
	grid-column: 1 / -1;
	margin-bottom: 0.25rem;
}

/* Return to main GCC Virtuals site — always GCC wine red, not airline blue */
body.gccvas-ms #gccvasSiteHeader .gccvas-nav-cta--gcc-home,
body.gccvas-ms .gccvas-mm-cta--gcc-home {
	color: #fff !important;
	background: #690c36 !important;
	border: 1px solid rgba(105, 12, 54, 0.3) !important;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08) !important;
}

body.gccvas-ms #gccvasSiteHeader .gccvas-nav-cta--gcc-home:hover,
body.gccvas-ms .gccvas-mm-cta--gcc-home:hover {
	color: #fff !important;
	background: #5e1833 !important;
}

body.gccvas-ms .gccvas-story-title-rule,
body.gccvas-ms .w-20.h-0\.5.bg-gcc-wine,
body.gccvas-ms .w-16.h-0\.5.bg-gcc-wine {
	background: var(--ms-primary) !important;
}

body.gccvas-ms .gccvas-animated-btn.from-gcc-wine {
	background: linear-gradient(to right, var(--ms-primary), var(--ms-primary-light)) !important;
}

/* Footer — airline palette (GCC disclaimer + logo unchanged) */
body.gccvas-ms .gccvas-footer-theme {
	background: linear-gradient(
		165deg,
		color-mix(in srgb, var(--ms-primary-dark) 88%, #000) 0%,
		var(--ms-primary-dark) 46%,
		var(--ms-primary) 100%
	) !important;
	border-image: linear-gradient(
		90deg,
		transparent,
		color-mix(in srgb, var(--ms-primary-light) 50%, transparent),
		transparent
	) 1 !important;
}

body.gccvas-ms .gccvas-footer-frame {
	background:
		linear-gradient(180deg, transparent, color-mix(in srgb, var(--ms-primary-light) 22%, transparent), transparent),
		linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.06)) !important;
}

body.gccvas-ms #footer > .absolute.inset-0 > div:first-child {
	background: var(--ms-primary-light) !important;
}

body.gccvas-ms #footer > .absolute.inset-0 > div:last-child {
	background: var(--ms-primary) !important;
}

body.gccvas-ms .gccvas-footer-legal a:hover {
	background: color-mix(in srgb, var(--ms-primary-light) 18%, transparent) !important;
	border-color: color-mix(in srgb, var(--ms-primary-light) 42%, transparent) !important;
	box-shadow: 0 0 0 1px color-mix(in srgb, var(--ms-primary-light) 12%, transparent) !important;
}

body.gccvas-ms .gccvas-footer-content-well {
	border-image: linear-gradient(
		180deg,
		color-mix(in srgb, var(--ms-primary-light) 55%, transparent),
		color-mix(in srgb, var(--ms-primary) 28%, transparent)
	) 1 !important;
}

body.gccvas-ms .gccvas-footer-bottom::before {
	background: linear-gradient(
		90deg,
		transparent,
		color-mix(in srgb, var(--ms-primary-light) 38%, transparent),
		transparent
	) !important;
}

body.gccvas-ms .gccvas-footer-dev-badge:hover {
	color: var(--ms-primary-light) !important;
}

/* Footer — GCC logo + divider + airline logo */
.gccvas-footer-logo-wrap--dual {
	display: flex;
	align-items: center;
	gap: 1.25rem;
}

.gccvas-footer-logo-sep {
	display: block;
	width: 1px;
	height: 2.75rem;
	background: rgba(255, 255, 255, 0.22);
	flex-shrink: 0;
}

.gccvas-footer-logo-gcc img,
.gccvas-footer-logo-ms img {
	height: 3.25rem;
	width: auto;
	max-width: 11rem;
	object-fit: contain;
	transition: transform 0.3s ease, filter 0.3s ease;
}

.gccvas-footer-logo-wrap--dual a:hover img {
	transform: scale(1.04);
	filter: drop-shadow(0 0 10px rgba(255, 255, 255, 0.12));
}

@media (max-width: 639px) {
	.gccvas-footer-logo-wrap--dual {
		justify-content: center;
		width: 100%;
	}
}

/* Nav — hover / open / active section (airline blue, not GCC wine) */
body.gccvas-ms #gccvasSiteHeader nav > a.gccvas-nav-dd-trigger:hover,
body.gccvas-ms #gccvasSiteHeader nav > a.gccvas-nav-dd-trigger:focus {
	color: var(--ms-primary) !important;
	background: color-mix(in srgb, var(--ms-primary) 10%, transparent) !important;
	border-color: color-mix(in srgb, var(--ms-primary) 18%, transparent) !important;
}

body.gccvas-ms #gccvasSiteHeader nav > a.gccvas-nav-dd-trigger:hover i:first-of-type,
body.gccvas-ms #gccvasSiteHeader nav > a.gccvas-nav-dd-trigger:focus i:first-of-type {
	color: var(--ms-primary) !important;
	opacity: 1 !important;
}

body.gccvas-ms #gccvasSiteHeader .gccvas-nav-dd-wrap:hover .gccvas-nav-dd-trigger,
body.gccvas-ms #gccvasSiteHeader .gccvas-nav-dd-wrap:focus-within .gccvas-nav-dd-trigger {
	background: color-mix(in srgb, var(--ms-primary) 8%, transparent) !important;
	border-color: color-mix(in srgb, var(--ms-primary) 14%, transparent) !important;
}

body.gccvas-ms #gccvasSiteHeader .gccvas-nav-dd-wrap.gccvas-nav-dd-open .gccvas-nav-dd-trigger,
body.gccvas-ms #gccvasSiteHeader .gccvas-nav-dd-wrap.is-section-active .gccvas-nav-dd-trigger,
body.gccvas-ms #gccvasSiteHeader a.gccvas-nav-dd-trigger.is-current,
body.gccvas-ms #gccvasSiteHeader .gccvas-nav-dd-wrap .gccvas-nav-dd-trigger[style*="105, 12, 54"],
body.gccvas-ms #gccvasSiteHeader .gccvas-nav-dd-wrap .gccvas-nav-dd-trigger[style*="105,12,54"] {
	color: var(--ms-primary) !important;
	background: color-mix(in srgb, var(--ms-primary) 10%, transparent) !important;
	border-color: color-mix(in srgb, var(--ms-primary) 18%, transparent) !important;
}

body.gccvas-ms #gccvasSiteHeader .gccvas-nav-dd-wrap.gccvas-nav-dd-open .gccvas-nav-dd-trigger i:first-of-type,
body.gccvas-ms #gccvasSiteHeader .gccvas-nav-dd-wrap.is-section-active .gccvas-nav-dd-trigger i:first-of-type,
body.gccvas-ms #gccvasSiteHeader a.gccvas-nav-dd-trigger.is-current i:first-of-type,
body.gccvas-ms #gccvasSiteHeader .gccvas-nav-dd-link:hover i,
body.gccvas-ms #gccvasSiteHeader .gccvas-nav-dd-link:focus i,
body.gccvas-ms #gccvasSiteHeader .gccvas-nav-dd-link.is-current i {
	color: var(--ms-primary) !important;
	opacity: 1 !important;
}

body.gccvas-ms #gccvasSiteHeader .gccvas-nav-dd-link.is-current {
	background: color-mix(in srgb, var(--ms-primary) 8%, transparent) !important;
	color: var(--ms-primary) !important;
}

body.gccvas-ms .gccvas-mm-card.is-current {
	background: color-mix(in srgb, var(--ms-primary) 22%, transparent) !important;
	border-color: color-mix(in srgb, var(--ms-primary) 35%, transparent) !important;
}

/* Flights / ops tables, pagination, boarding pass */
body.gccvas-ms .gccvas-compact-table thead th {
	background: linear-gradient(135deg, var(--ms-primary) 0%, var(--ms-primary-dark) 100%) !important;
}

body.gccvas-ms .gccvas-compact-table tbody tr:hover {
	background: color-mix(in srgb, var(--ms-primary) 6%, transparent) !important;
}

body.gccvas-ms .gccvas-pg-btn:hover:not(:disabled):not(.gccvas-pg-active) {
	background: color-mix(in srgb, var(--ms-primary) 8%, transparent) !important;
	border-color: color-mix(in srgb, var(--ms-primary) 28%, transparent) !important;
	color: var(--ms-primary) !important;
}

body.gccvas-ms .gccvas-pg-active {
	background: linear-gradient(135deg, var(--ms-primary) 0%, var(--ms-primary-dark) 100%) !important;
	border-color: var(--ms-primary) !important;
	box-shadow: 0 4px 12px color-mix(in srgb, var(--ms-primary) 35%, transparent) !important;
}

body.gccvas-ms .gccvas-bp-header {
	background: linear-gradient(135deg, var(--ms-primary) 0%, var(--ms-primary-dark) 50%, #02213a 100%) !important;
}

/* Ranks page — card top bar, borders, section dividers */
body.gccvas-ms .gccvas-rank-card {
	border-color: color-mix(in srgb, var(--ms-primary) 18%, transparent) !important;
}

body.gccvas-ms .gccvas-rank-card::before {
	background: linear-gradient(90deg, var(--ms-primary), var(--ms-primary-light)) !important;
}

body.gccvas-ms .gccvas-rank-card:hover {
	border-color: color-mix(in srgb, var(--ms-primary) 32%, transparent) !important;
	box-shadow: 0 20px 40px -12px color-mix(in srgb, var(--ms-primary) 22%, transparent) !important;
}

body.gccvas-ms .content-wrap .w-full.h-0\.5[style*="rgba(94"],
body.gccvas-ms .content-wrap .w-full.h-0\.5[style*="rgba(105"] {
	background: linear-gradient(
		to right,
		transparent 0%,
		color-mix(in srgb, var(--ms-primary) 55%, transparent) 35%,
		color-mix(in srgb, var(--ms-primary) 55%, transparent) 65%,
		transparent 100%
	) !important;
}

/* Staff — Board & Validators (photo on ::after; overlay on panel — see staff.php inline for image URL) */
body.gccvas-ms .gccvas-staff-intro-panel {
	border-color: rgba(255, 255, 255, 0.2) !important;
	box-shadow: 0 34px 90px -44px color-mix(in srgb, var(--ms-primary-dark) 65%, transparent) !important;
}

body.gccvas-ms .gccvas-staff-intro-role--board::before,
body.gccvas-ms .gccvas-staff-intro-role--val::before {
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.85), var(--ms-primary)) !important;
}

body.gccvas-ms-qtr .gccvas-staff-intro-role--val::before {
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.85), var(--ms-primary-dark)) !important;
}

body.gccvas-ms .gccvas-staff-section--validators {
	background:
		radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--ms-primary) 8%, transparent), transparent 38%),
		radial-gradient(circle at 0% 100%, color-mix(in srgb, var(--ms-primary-dark) 6%, transparent), transparent 42%),
		#f8fafc !important;
}

body.gccvas-ms .gccvas-bp-plane,
body.gccvas-ms .gccvas-bp-stub-flight {
	color: var(--ms-primary) !important;
}

body.gccvas-ms .gccvas-animated-btn:hover:not(.gccvas-nav-cta--gcc-home) {
	box-shadow: 0 20px 45px -24px color-mix(in srgb, var(--ms-primary) 55%, transparent) !important;
}

body.gccvas-ms .border-gcc-wine\/20,
body.gccvas-ms .border-2.border-gcc-wine\/20 {
	border-color: color-mix(in srgb, var(--ms-primary) 22%, transparent) !important;
}
