/* ── LOADER ── */
#loader{position:fixed;inset:0;z-index:9999;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:opacity 0.8s ease, visibility 0.8s ease;}
#loader.hidden{opacity:0;visibility:hidden;pointer-events:none;}
.loader-logo{width:80px;height:80px;margin-bottom:2rem;animation:loaderSpin 2s linear infinite;}
.loader-logo svg{width:100%;height:100%;}
.loader-bar-wrap{width:220px;height:2px;background:rgba(0,229,255,0.1);border-radius:99px;overflow:hidden;}
.loader-bar{height:100%;width:0%;background:linear-gradient(90deg,var(--cyan),var(--blue));border-radius:99px;transition:width 0.05s linear;}
.loader-text{margin-top:1.2rem;font-family:var(--font-display);font-size:0.68rem;letter-spacing:4px;text-transform:uppercase;color:var(--muted);}
@keyframes loaderSpin{0%{transform:rotateY(0deg)}100%{transform:rotateY(360deg)}}