@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
:root {
  --bg: #0d0d0f;
  --card: #18181c;
  --border: #2a2a30;
  --accent: #7c6eff;
  --accent2: #c084fc;
  --text: #f0f0f5;
  --muted: #8888a0;
  --green: #22d3a0;
  --red: #ff5e6d;
  --yellow: #f9c846;
  --radius: 16px;
}
html, body { font-family: 'Plus Jakarta Sans', sans-serif; background: var(--bg); color: var(--text); min-height: 100vh; }
a { text-decoration: none; color: inherit; }
.site-logo { text-align: center; margin-bottom: 20px; }
.site-logo img { height: 44px; width: auto; object-fit: contain; }
#page-loader{position:fixed;inset:0;z-index:9999;background:#0d0d0f;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;transition:opacity .6s cubic-bezier(.4,0,.2,1),visibility .6s ease;}
#page-loader.hidden{opacity:0;visibility:hidden;pointer-events:none;}
.loader-orbit{position:relative;width:90px;height:90px;}
.loader-core{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:28px;height:28px;border-radius:50%;background:radial-gradient(circle,#c084fc 0%,#7c6eff 60%,transparent 100%);box-shadow:0 0 18px 6px rgba(124,110,255,.55),0 0 40px 10px rgba(192,132,252,.2);animation:corePulse 2s ease-in-out infinite;}
.loader-ring{position:absolute;inset:0;border-radius:50%;border:2px solid transparent;border-top-color:#7c6eff;border-right-color:rgba(124,110,255,.3);animation:spinR 1.1s linear infinite;}
.loader-ring2{position:absolute;inset:10px;border-radius:50%;border:2px solid transparent;border-bottom-color:#c084fc;border-left-color:rgba(192,132,252,.3);animation:spinR .8s linear infinite reverse;}
.loader-ring3{position:absolute;inset:-8px;border-radius:50%;border:1px solid rgba(124,110,255,.15);animation:spinR 3s linear infinite;}
.loader-dot{position:absolute;width:6px;height:6px;border-radius:50%;background:#7c6eff;box-shadow:0 0 8px 2px rgba(124,110,255,.8);top:-3px;left:calc(50% - 3px);transform-origin:3px 48px;}
.loader-dot:nth-child(2){background:#c084fc;box-shadow:0 0 8px 2px rgba(192,132,252,.8);transform:rotate(120deg);}
.loader-dot:nth-child(3){background:#22d3a0;box-shadow:0 0 8px 2px rgba(34,211,160,.8);transform:rotate(240deg);}
.loader-logo-img{height:36px;width:auto;object-fit:contain;filter:drop-shadow(0 0 8px rgba(124,110,255,.4));animation:logoFloat 3s ease-in-out infinite;}
.loader-label{font-size:12px;font-weight:700;letter-spacing:3px;text-transform:uppercase;color:#8888a0;display:flex;align-items:center;gap:6px;}
.loader-label span{display:inline-block;width:4px;height:4px;border-radius:50%;background:#7c6eff;animation:dotBounce 1.2s ease-in-out infinite;}
.loader-label span:nth-child(2){animation-delay:.2s;background:#c084fc;}
.loader-label span:nth-child(3){animation-delay:.4s;background:#22d3a0;}
.loader-bar-wrap{width:160px;height:2px;background:rgba(255,255,255,.06);border-radius:50px;overflow:hidden;}
.loader-bar-fill{height:100%;width:0%;border-radius:50px;background:linear-gradient(90deg,#7c6eff,#c084fc,#22d3a0);background-size:200% 100%;animation:barSlide 1.8s ease-in-out infinite,barGrad 2s linear infinite;}
@keyframes spinR{to{transform:rotate(360deg)}}
@keyframes corePulse{0%,100%{transform:translate(-50%,-50%) scale(1);box-shadow:0 0 18px 6px rgba(124,110,255,.55),0 0 40px 10px rgba(192,132,252,.2)}50%{transform:translate(-50%,-50%) scale(1.25);box-shadow:0 0 30px 12px rgba(124,110,255,.75),0 0 60px 20px rgba(192,132,252,.35)}}
@keyframes logoFloat{0%,100%{transform:translateY(0);filter:drop-shadow(0 0 8px rgba(124,110,255,.4))}50%{transform:translateY(-6px);filter:drop-shadow(0 0 18px rgba(124,110,255,.75))}}
@keyframes dotBounce{0%,80%,100%{transform:scale(1);opacity:.5}40%{transform:scale(1.8);opacity:1}}
@keyframes barSlide{0%{width:0%}60%{width:85%}100%{width:100%}}
@keyframes barGrad{0%{background-position:0% 0}100%{background-position:200% 0}}
