/* GlowFM — 1 Jahr Anniversary Edition */
:root {
    --birthday-gold:#ffd166; --birthday-champagne:#fff1bd; --birthday-pink:#ff4fd8;
    --birthday-purple:#8b5cf6; --birthday-cyan:#22d3ee; --birthday-ink:#090414;
    --primary:#ff4fd8; --primary-dark:#c026d3; --primary-light:#f9a8d4;
    --primary-glow:#ff4fd8; --secondary-glow:#8b5cf6; --purple-glow:#a855f7;
    --cyan-glow:#22d3ee; --pink-glow:#ff4fd8; --accent-glow:#ffd166; --accent:#ffd166;
    --gradient:linear-gradient(135deg,#ffd166 0%,#ff7eb6 30%,#ff4fd8 55%,#8b5cf6 100%);
    --gradient-warm:linear-gradient(135deg,#fff1bd,#ffd166 48%,#ff7a59);
    --gradient-neon:linear-gradient(135deg,#22d3ee,#8b5cf6 48%,#ff4fd8);
    --gradient-cosmic:linear-gradient(110deg,#fff1bd,#ffd166 20%,#ff4fd8 52%,#8b5cf6 78%,#22d3ee);
    --shadow-glow:0 0 34px rgba(255,79,216,.32),0 0 76px rgba(139,92,246,.16);
    --shadow-glow-strong:0 0 28px rgba(255,209,102,.42),0 0 70px rgba(255,79,216,.3);
    --shadow-glow-purple:0 0 46px rgba(139,92,246,.38);
}
html { background:#080311; scroll-behavior:smooth; }
html::before {
    content:"✦  1 JAHR GLOWFM  ·  DANKE FÜR EIN UNGLAUBLICHES ERSTES JAHR  ✦";
    position:fixed; inset:0 0 auto; z-index:2147483647; display:grid; place-items:center;
    min-height:2.75rem; padding:.48rem 1rem; border-bottom:1px solid rgba(255,209,102,.45);
    background:linear-gradient(90deg,#0c0717,#25102e 25%,#431237 50%,#21103c 75%,#071522);
    box-shadow:0 8px 34px rgba(0,0,0,.48),0 2px 22px rgba(255,79,216,.2);
    color:#fff1bd; font:900 clamp(.67rem,1.65vw,.82rem)/1.15 Inter,"Segoe UI",sans-serif;
    letter-spacing:clamp(.07em,.32vw,.18em); text-align:center;
    text-shadow:0 0 12px rgba(255,209,102,.52),0 0 24px rgba(255,79,216,.26);
}
body {
    padding-top:2.75rem !important; color:#f8f7ff;
    background-color:#080311 !important;
    background-image:
      radial-gradient(circle at 8% 14%,rgba(255,209,102,.16) 0 1px,transparent 2px),
      radial-gradient(circle at 90% 18%,rgba(255,79,216,.14) 0 1px,transparent 2px),
      radial-gradient(circle at 72% 78%,rgba(34,211,238,.12) 0 1px,transparent 2px),
      radial-gradient(ellipse at 15% 12%,rgba(255,79,216,.2),transparent 38%),
      radial-gradient(ellipse at 88% 26%,rgba(139,92,246,.24),transparent 42%),
      radial-gradient(ellipse at 50% 110%,rgba(34,211,238,.13),transparent 46%),
      linear-gradient(145deg,#10061c 0%,#090414 46%,#061421 100%) !important;
    background-size:88px 88px,118px 118px,150px 150px,auto,auto,auto,auto !important;
    background-attachment:fixed !important;
}
.navbar {
    top:2.75rem !important; border-bottom:1px solid rgba(255,209,102,.22) !important;
    background:linear-gradient(90deg,rgba(8,3,18,.94),rgba(31,8,42,.92),rgba(6,18,30,.94)) !important;
    box-shadow:0 16px 44px rgba(4,1,12,.5),0 1px 26px rgba(255,79,216,.12) !important;
    backdrop-filter:blur(22px) saturate(150%) !important;
}
.navbar::before { content:""; position:absolute; inset:0 0 auto; height:1px; background:linear-gradient(90deg,transparent,#ffd166,#ff4fd8,#22d3ee,transparent); box-shadow:0 0 18px rgba(255,79,216,.5); }
.nav-container { min-height:72px; }
.nav-logo,.nav-logo h1 { background:transparent !important; }
.nav-logo { flex:0 0 auto; min-width:max-content; }
.logo,.station-logo { filter:drop-shadow(0 0 12px rgba(255,209,102,.42)) drop-shadow(0 0 22px rgba(255,79,216,.32)); }
.logo-text,.nav-logo h1 { letter-spacing:-.025em; text-shadow:0 0 20px rgba(255,79,216,.34) !important; }
.nav-link { border:1px solid transparent; }
.nav-link::after { background:var(--gradient-warm) !important; box-shadow:0 0 14px rgba(255,209,102,.46); }
.nav-link:hover,.nav-link.active { color:#fff1bd !important; border-color:rgba(255,209,102,.18); background:rgba(255,209,102,.07) !important; text-shadow:0 0 14px rgba(255,209,102,.42); }
.nav-badge,.badge-neu,.partner-badge { background:var(--gradient-warm) !important; color:#21091f !important; border-color:rgba(255,255,255,.46) !important; box-shadow:0 0 18px rgba(255,209,102,.38) !important; }
main,.main-content,.container { position:relative; }
.hero { position:relative; isolation:isolate; }
.hero::after,.main-content::after {
    content:""; position:absolute; top:1rem; right:max(1rem,4vw); width:clamp(76px,9vw,126px); aspect-ratio:1; border-radius:50%;
    background:radial-gradient(circle,rgba(255,255,255,.95) 0 2%,transparent 3%),repeating-conic-gradient(from 0deg,#ffd166 0 4deg,transparent 4deg 13deg),radial-gradient(circle,rgba(255,79,216,.22),transparent 64%);
    opacity:.28; filter:drop-shadow(0 0 18px rgba(255,209,102,.35)); pointer-events:none; animation:anniversarySpin 28s linear infinite;
}
h1,.hero-title,.page-title,.section-title,.glow-text { text-shadow:0 0 20px rgba(255,79,216,.28),0 0 42px rgba(255,209,102,.12) !important; }
.hero-title,.page-title,.section-title,.glow-text {
    background-image:var(--gradient-cosmic) !important; background-size:230% auto !important;
    -webkit-background-clip:text !important; background-clip:text !important; -webkit-text-fill-color:transparent;
    animation:anniversaryShimmer 9s ease-in-out infinite !important;
}
.card,.feature-card,.glass-card,.player-card,.stats-card,.glow-card,.schedule-card,.contact-card,.info-card,.form-box,.download-card,.legal-card,.changelog-card,.update-card {
    border-color:rgba(255,209,102,.25) !important;
    background-image:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,79,216,.045) 52%,rgba(34,211,238,.025)) !important;
    box-shadow:0 24px 64px rgba(4,1,12,.42),inset 0 1px rgba(255,255,255,.09),0 0 34px rgba(139,92,246,.08) !important;
    backdrop-filter:blur(16px) saturate(135%); transition:transform .3s ease,border-color .3s ease,box-shadow .3s ease;
}
.card:hover,.feature-card:hover,.player-card:hover,.glow-card:hover,.schedule-card:hover,.contact-card:hover,.download-card:hover,.changelog-card:hover,.update-card:hover {
    transform:translateY(-6px); border-color:rgba(255,209,102,.58) !important;
    box-shadow:0 30px 76px rgba(4,1,12,.5),0 0 30px rgba(255,79,216,.18),0 0 52px rgba(255,209,102,.1) !important;
}
button:not(.notification-close),.btn,.button,.cta-button,.play-button,.submit-btn,input[type="submit"] {
    border:1px solid rgba(255,255,255,.3) !important; background-image:var(--gradient) !important; color:#fff !important;
    box-shadow:0 13px 32px rgba(255,79,216,.24),0 0 24px rgba(255,209,102,.11) !important;
    text-shadow:0 1px 5px rgba(36,2,34,.46); transition:transform .22s ease,box-shadow .22s ease,filter .22s ease;
}
button:not(.notification-close):hover,.btn:hover,.button:hover,.cta-button:hover,.play-button:hover,.submit-btn:hover,input[type="submit"]:hover {
    transform:translateY(-3px) scale(1.015); filter:saturate(1.1) brightness(1.06);
    box-shadow:0 18px 40px rgba(255,79,216,.34),0 0 30px rgba(255,209,102,.22) !important;
}
input,textarea,select { border-color:rgba(255,209,102,.26) !important; background-color:rgba(11,5,24,.78) !important; color:#fff !important; }
input:focus,textarea:focus,select:focus { border-color:#ffd166 !important; outline:none; box-shadow:0 0 0 3px rgba(255,209,102,.12),0 0 26px rgba(255,79,216,.14) !important; }
::placeholder { color:rgba(235,229,248,.55) !important; }
::selection { background:rgba(255,79,216,.72); color:#fffbea; }
::-webkit-scrollbar { width:10px; }
::-webkit-scrollbar-track { background:#080311; }
::-webkit-scrollbar-thumb { background:linear-gradient(#ffd166,#ff4fd8,#8b5cf6) !important; border:2px solid #080311; border-radius:999px; }
footer,.footer { border-top-color:rgba(255,209,102,.23) !important; background-image:linear-gradient(180deg,rgba(11,5,24,.8),rgba(5,2,13,.97)) !important; }
footer a,.footer a { transition:color .2s ease,text-shadow .2s ease; }
footer a:hover,.footer a:hover { color:#fff1bd !important; text-shadow:0 0 12px rgba(255,209,102,.36); }
.fixed-player,#fixedPlayer { border-color:rgba(255,209,102,.3) !important; background:rgba(8,4,18,.92) !important; box-shadow:0 -14px 44px rgba(255,79,216,.13),0 0 28px rgba(255,209,102,.08) !important; backdrop-filter:blur(22px) saturate(150%); }
@keyframes anniversarySpin { to{transform:rotate(360deg)} }
@keyframes anniversaryShimmer { 0%,100%{background-position:0% 50%} 50%{background-position:100% 50%} }
@media (max-width:768px){ html::before{min-height:2.5rem;padding-inline:.55rem;font-size:.61rem;letter-spacing:.055em;content:"✦  1 JAHR GLOWFM  ·  DANKE FÜR EUCH  ✦"} body{padding-top:2.5rem !important} .navbar{top:2.5rem !important} .hero::after,.main-content::after{opacity:.16} }
@media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto} .hero::after,.main-content::after,.hero-title,.page-title,.section-title,.glow-text{animation:none !important} }
