/* ══════════════════════════════════════════════════════════════════
   Cognita World — preloader va portal «giperfazo»si (intro.js). Hamma sinflar `wi-` prefiksli.
   .wi — butun ekran ustidagi qatlam. JS ishlasa (.wi-js) fon — .wi-bg (osmon canvasi + miltillovchi yulduzlar),
   marosim — .wi-em qutisi: kichik canvas (.wi-pc — halqalar, emblem, zarrachalar) va gradient nur qatlamlari (intro.js
   ularni Web Animations bilan boshqaradi: faqat transform/opacity); chaqnash va giperfazo — to'liq ekranli .wi-cv da.
   Holatlar: .wi-fin (yakunlanmoqda, bosishlarni to'smaydi) · .wi-warp (portal o'tishi, #wFx dan pastda) ·
   .wi-hold (portal pardasi ostida — chizilmaydi) · .wi-gone (yashirin).
   JS umuman ishlamasa — 10 s dan keyin CSS o'zi yashiradi.
   ══════════════════════════════════════════════════════════════════ */
.wi{--wi-bg:#020817;--wi-t1:#F7FAFF;--wi-t2:#A9B8CC;--wi-acc:#32E6D3;--wi-acc2:#42C9FF;--wi-gold:#F4BD63;
  position:fixed;inset:0;z-index:60;overflow:hidden;background:var(--wi-bg);pointer-events:auto;cursor:default;
  animation:wi-auto 0s linear 10s forwards}
.wi.wi-js{background:transparent;animation:none}
.wi.wi-fin,.wi.wi-warp{pointer-events:none}
.wi.wi-warp{z-index:49}
.wi.wi-hold{visibility:hidden}
.wi.wi-gone{display:none}
/* fon: osmon bir marta chiziladi; yulduzlar miltillashi — opacity animatsiyasi */
.wi-bg,.wi-sky,.wi-tw,.wi-cv{position:absolute;left:0;top:0;width:100%;height:100%;display:block}
.wi-bg{background:var(--wi-bg)}
.wi-tw{overflow:hidden}
.wi-tw i{position:absolute;border-radius:50%;opacity:.03;animation:wi-tw 3s ease-in-out infinite alternate;
  background:radial-gradient(closest-side,#fff,rgba(214,234,255,.85) 22%,rgba(214,234,255,.16) 60%,rgba(214,234,255,0))}
.wi-tw i.g{background:radial-gradient(closest-side,#fff,rgba(244,189,99,.85) 22%,rgba(244,189,99,.16) 60%,rgba(244,189,99,0))}
@keyframes wi-tw{0%{opacity:.03}55%{opacity:.22}100%{opacity:.9}}
/* marosim qutisi: markaz — .wi-em ning (0,0) nuqtasi; o'lcham va joylashuvni intro.js beradi (surilish — transform) */
.wi-em{position:absolute;left:0;top:0;width:0;height:0;will-change:transform}
.wi-em canvas,.wi-em i{position:absolute;display:block}
.wi-glow,.wi-c1,.wi-c2,.wi-gold{border-radius:50%;opacity:0;will-change:transform,opacity}
.wi-glow{background:radial-gradient(closest-side,rgba(170,232,255,.8),rgba(66,201,255,.8) 16%,rgba(66,201,255,.2) 45%,rgba(66,201,255,0))}
.wi-c1{background:radial-gradient(closest-side,rgba(255,255,255,.9),rgba(50,230,211,.8) 16%,rgba(50,230,211,.2) 45%,rgba(50,230,211,0))}
.wi-c2{background:radial-gradient(closest-side,#fff,rgba(235,246,255,.8) 16%,rgba(235,246,255,.2) 45%,rgba(235,246,255,0))}
.wi-gold{background:radial-gradient(closest-side,rgba(255,255,255,.45),rgba(244,189,99,.4) 16%,rgba(244,189,99,.1) 45%,rgba(244,189,99,0))}
.wi.wi-warp .wi-em{display:none}
.wi-txt{position:absolute;left:0;top:0;display:flex;flex-direction:column;align-items:center;gap:6px;white-space:nowrap;text-align:center;
  opacity:0;will-change:transform,opacity;pointer-events:none;transform:translate(-50%,0) translate(50vw,64vh)}
.wi-txt b{font:800 clamp(22px,3vw,30px)/1.1 'Plus Jakarta Sans',Inter,system-ui,sans-serif;letter-spacing:-.03em;
  background:linear-gradient(95deg,var(--wi-t1) 15%,var(--wi-acc) 55%,var(--wi-acc2));-webkit-background-clip:text;background-clip:text;color:transparent}
.wi-txt small{font:600 12.5px/1.3 Inter,system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--wi-t2)}
.wi-txt small::after{content:"";display:block;height:1px;margin:9px auto 0;width:64px;background:linear-gradient(90deg,transparent,var(--wi-gold),transparent)}
.wi:not(.wi-js) .wi-txt{opacity:1}
.wi.wi-warp .wi-txt{display:none}
@keyframes wi-auto{to{opacity:0;visibility:hidden;pointer-events:none}}
/* harakat kamaytirilgan: marosim yo'q, faqat yumshoq so'nish */
.wi.wi-rm{transition:opacity .3s ease}
.wi.wi-rm.wi-fin{opacity:0}
.wi.wi-rm .wi-txt{opacity:1}
.wi.wi-rm .wi-tw i{animation:none;opacity:.45}
