/* NexusFM - Ana Stil Dosyası */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}

/* Glass Panels */
.glass-panel{background:rgba(255,255,255,0.7);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(0,0,0,0.05)}
.dark .glass-panel{background:rgba(15,23,42,0.8);border:1px solid rgba(255,255,255,0.08)}
.glass-card{background:rgba(255,255,255,0.9);border:1px solid rgba(0,0,0,0.05);backdrop-filter:blur(8px);border-radius:1rem;transition:all .3s ease}
.dark .glass-card{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1)}
.glass-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px rgba(0,0,0,0.15)}
.dark .glass-card:hover{box-shadow:0 20px 40px rgba(0,0,0,0.4)}

/* Gradient Text */
.gradient-text{background:linear-gradient(135deg,#7C3AED,#06B6D4,#EC4899);background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:gradientShift 4s ease infinite}
@keyframes gradientShift{0%,100%{background-position:0% center}50%{background-position:100% center}}

/* Neon & Glow */
.neon-shadow{box-shadow:0 0 20px rgba(124,58,237,0.4),0 0 60px rgba(124,58,237,0.15)}
.glow-cyan{box-shadow:0 0 20px rgba(6,182,212,0.4)}
.glow-pink{box-shadow:0 0 20px rgba(236,72,153,0.4)}

/* Navigation */
.nav-link{padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:500;transition:all .2s;position:relative}
.nav-link:hover{background:rgba(124,58,237,0.1);color:#7C3AED}
.nav-link::after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%) scaleX(0);width:60%;height:2px;background:linear-gradient(to right,#7C3AED,#06B6D4);border-radius:1px;transition:transform .3s ease}
.nav-link:hover::after{transform:translateX(-50%) scaleX(1)}

/* Line Clamp */
.line-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.line-clamp-3{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

/* Pagination */
.pagination{display:flex;gap:.25rem;list-style:none;justify-content:center;flex-wrap:wrap}
.pagination li a{padding:.5rem .75rem;border-radius:.5rem;font-size:.875rem;background:#1e293b;color:#94a3b8;text-decoration:none;transition:all .2s}
.pagination li.active a,.pagination li a:hover{background:#7C3AED;color:#fff;transform:scale(1.05)}

/* Player bar offset */
body{padding-bottom:5rem}

/* Animations */
@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes slideInLeft{from{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}
@keyframes pulse-soft{0%,100%{opacity:1}50%{opacity:.6}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes spin-slow{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}

.animate-fade-in-up{animation:fadeInUp .6s ease forwards}
.animate-fade-in{animation:fadeIn .5s ease forwards}
.animate-slide-left{animation:slideInLeft .5s ease forwards}
.animate-pulse-soft{animation:pulse-soft 2s ease-in-out infinite}
.animate-float{animation:float 3s ease-in-out infinite}
.animate-spin-slow{animation:spin-slow 10s linear infinite}

/* Staggered reveal */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}
.reveal.visible{opacity:1;transform:translateY(0)}
.reveal-delay-1{transition-delay:.1s}
.reveal-delay-2{transition-delay:.2s}
.reveal-delay-3{transition-delay:.3s}
.reveal-delay-4{transition-delay:.4s}

/* Scrollbar */
::-webkit-scrollbar{width:8px;height:8px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:#475569;border-radius:4px}
::-webkit-scrollbar-thumb:hover{background:#64748b}
.dark ::-webkit-scrollbar-thumb{background:#334155}

/* Selection */
::selection{background:rgba(124,58,237,0.3);color:#fff}

/* Image hover zoom */
.img-zoom{overflow:hidden;border-radius:1rem}
.img-zoom img{transition:transform .5s ease}
.img-zoom:hover img{transform:scale(1.05)}

/* Card shine effect */
.shine-effect{position:relative;overflow:hidden}
.shine-effect::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.08),transparent);transition:left .5s}
.shine-effect:hover::before{left:100%}

/* Badge */
.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;letter-spacing:.025em}
.badge-live{background:rgba(239,68,68,0.15);color:#f87171;animation:pulse-soft 1.5s ease-in-out infinite}
.badge-new{background:rgba(124,58,237,0.15);color:#a78bfa}

/* Hero particles (decorative) */
.hero-particle{position:absolute;width:4px;height:4px;border-radius:50%;background:rgba(124,58,237,0.4)}
.hero-particle:nth-child(1){top:20%;left:10%;animation:float 4s ease-in-out infinite}
.hero-particle:nth-child(2){top:60%;right:15%;animation:float 5s ease-in-out infinite .5s}
.hero-particle:nth-child(3){bottom:20%;left:30%;animation:float 6s ease-in-out infinite 1s}

/* Toast notifications */
.toast{position:fixed;top:24px;right:24px;padding:16px 24px;border-radius:12px;color:#fff;font-size:14px;font-weight:500;z-index:9999;transform:translateX(120%);transition:transform .4s cubic-bezier(.68,-.55,.27,1.55);box-shadow:0 10px 30px rgba(0,0,0,.3)}
.toast.show{transform:translateX(0)}
.toast-success{background:linear-gradient(135deg,#059669,#10b981)}
.toast-error{background:linear-gradient(135deg,#dc2626,#ef4444)}
.toast-info{background:linear-gradient(135deg,#7C3AED,#06B6D4)}

/* Audio equalizer bars animation */
.eq-bar{display:inline-block;width:3px;margin:0 1px;background:linear-gradient(to top,#7C3AED,#06B6D4);border-radius:2px;animation:eq-dance 1s ease-in-out infinite}
.eq-bar:nth-child(1){animation-delay:-.4s}
.eq-bar:nth-child(2){animation-delay:-.2s;height:16px}
.eq-bar:nth-child(3){animation-delay:-.1s}
.eq-bar:nth-child(4){animation-delay:-.3s;height:12px}
@keyframes eq-dance{0%,100%{height:8px}50%{height:20px}}
