/* FLR Radio — neon/purple theme
   ============================================================ */

:root {
	--flr-bg:        #0a0612;
	--flr-surface:   #160d27;
	--flr-fg:        #ece6ff;
	--flr-muted:     #8a7caa;
	--neon-purple:   #b026ff;
	--neon-magenta:  #ff2bd6;
	--neon-cyan:     #00e5ff;
	--flr-radius:    14px;
	--flr-player-height: 84px;
}

html { scroll-behavior: smooth; }

body {
	background:
		radial-gradient( 1200px 600px at 80% -10%, rgba(176,38,255,.22), transparent 60% ),
		radial-gradient( 900px 500px at -10% 110%, rgba(255,43,214,.18), transparent 55% ),
		var(--flr-bg);
	color: var(--flr-fg);
	min-height: 100vh;
}

/* Smooth dim during AJAX navigation */
body.flr-navigating #flr-main {
	opacity: .45;
	transition: opacity .15s ease;
	pointer-events: none;
}
#flr-main { transition: opacity .2s ease; }

/* Header / nav ---------------------------------------------------------- */

.flr-site-header {
	position: sticky;
	top: 0;
	z-index: 50;
	backdrop-filter: blur(10px);
	background: rgba(10, 6, 18, .72);
	border-bottom: 1px solid rgba(176,38,255,.25);
}

.flr-logo a,
.flr-logo {
	font-family: 'Orbitron', system-ui, sans-serif;
	font-weight: 800;
	letter-spacing: .04em;
	text-transform: uppercase;
	color: var(--flr-fg) !important;
	text-shadow: 0 0 14px rgba(176,38,255,.8);
	text-decoration: none;
}

.flr-nav a {
	color: var(--flr-fg);
	text-decoration: none;
	font-weight: 600;
}
.flr-nav a:hover { color: var(--neon-cyan); text-shadow: 0 0 10px var(--neon-cyan); }

/* Headings glow --------------------------------------------------------- */

.flr-page-title,
.flr-section-title {
	font-family: 'Orbitron', system-ui, sans-serif;
	text-shadow: 0 0 18px rgba(176,38,255,.6);
}

.flr-section-title {
	border-left: 4px solid var(--neon-magenta);
	padding-left: .65rem;
	box-shadow: -2px 0 16px -6px var(--neon-magenta);
}

/* Cards ----------------------------------------------------------------- */

.flr-card {
	background: linear-gradient( 180deg, rgba(176,38,255,.10), rgba(22,13,39,.9) );
	border: 1px solid rgba(176,38,255,.28);
	border-radius: var(--flr-radius);
	transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.flr-card:hover {
	transform: translateY(-3px);
	border-color: var(--neon-magenta);
	box-shadow: 0 12px 40px -12px rgba(255,43,214,.55);
}
.flr-card a { text-decoration: none; }

.flr-meta {
	color: var(--flr-muted);
	font-size: .85rem;
	gap: 1rem;
}

/* Buttons --------------------------------------------------------------- */

.wp-element-button,
.wp-block-button__link {
	background: linear-gradient( 135deg, var(--neon-purple), var(--neon-magenta) );
	color: #fff;
	border: none;
	border-radius: 999px;
	font-weight: 700;
	box-shadow: 0 0 18px -3px rgba(176,38,255,.8);
	transition: box-shadow .2s ease, transform .15s ease;
}
.wp-element-button:hover,
.wp-block-button__link:hover {
	transform: translateY(-1px);
	box-shadow: 0 0 26px 0 rgba(255,43,214,.9);
}

/* Hero ------------------------------------------------------------------ */

.flr-hero {
	background:
		radial-gradient( 800px 400px at 50% 0%, rgba(176,38,255,.35), transparent 60% ),
		linear-gradient( 180deg, #160d27, #0a0612 );
	border-bottom: 1px solid rgba(255,43,214,.3);
}
.flr-hero__eyebrow {
	font-family: 'Orbitron', system-ui, sans-serif;
	letter-spacing: .28em;
	font-size: .72rem;
	color: var(--neon-cyan);
	text-shadow: 0 0 12px var(--neon-cyan);
	margin-bottom: .5rem;
}
.flr-hero__title {
	text-shadow: 0 0 26px rgba(176,38,255,.85), 0 0 60px rgba(255,43,214,.5);
}

/* Footer ---------------------------------------------------------------- */

.flr-site-footer {
	border-top: 1px solid rgba(176,38,255,.25);
	color: var(--flr-muted);
}
.flr-footer-credit a { color: var(--neon-cyan); text-decoration: none; }

/* Make the flr-schedule plugin blend with the neon theme ---------------- */

.flr-schedule {
	--flr-bg:      #0a0612;
	--flr-surface: #160d27;
	--flr-accent:  var(--neon-purple);
	--flr-border:  rgba(176,38,255,.28);
}

/* Keep content above the fixed player */
body.has-flr-player {
	padding-bottom: var(--flr-player-height);
}
