Готовим джойказино
Подбираем самый быстрый сервер…
Защищённое соединение
Не закрывайте страницу — переход произойдёт автоматически.
html,body{height:100%} body{ min-height:100vh;min-height:100dvh;overflow:hidden; font-family:"Nunito","Varela Round",ui-rounded,"SF Pro Rounded",system-ui,"Segoe UI",Roboto,Arial,sans-serif; color:var(--txt);font-weight:600; background: radial-gradient(42vmax 42vmax at 15% -8%,rgba(255,77,184,.28),transparent 60%), radial-gradient(40vmax 40vmax at 92% 10%,rgba(34,211,238,.22),transparent 60%), radial-gradient(50vmax 50vmax at 80% 100%,rgba(255,210,63,.20),transparent 62%), linear-gradient(165deg,var(--bg2),var(--bg) 46%,var(--bg3)); display:flex;align-items:center;justify-content:center; padding:clamp(16px,5vw,32px);position:relative;isolation:isolate; } /* пузыри-леденцы */ .bubbles{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none} .bubbles i{position:absolute;bottom:-16vh;border-radius:50%; background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.6),rgba(255,255,255,.04) 46%,transparent 64%); animation:rise linear infinite;opacity:.5} @keyframes rise{0%{transform:translateY(0) scale(.6);opacity:0}12%{opacity:.55}100%{transform:translateY(-120vh) scale(1.15);opacity:0}} /* карточка */ .card{width:100%;max-width:440px;text-align:center;position:relative;z-index:2; animation:pop .7s cubic-bezier(.2,1.5,.4,1) both} @keyframes pop{from{opacity:0;transform:translateY(22px) scale(.94)}to{opacity:1;transform:none}} /* карамельный вихрь */ .swirl{width:clamp(120px,32vw,158px);height:clamp(120px,32vw,158px);margin:0 auto clamp(20px,4vw,30px);position:relative;display:grid;place-items:center} .swirl .ring{position:absolute;border-radius:50%} .swirl .r1{inset:0;background:conic-gradient(from 0deg,var(--fuchsia),var(--yellow),var(--turq),var(--mint),var(--fuchsia)); animation:spin 2.6s linear infinite; -webkit-mask:radial-gradient(circle,transparent 54%,#000 55%);mask:radial-gradient(circle,transparent 54%,#000 55%)} .swirl .r2{inset:20%;background:conic-gradient(from 180deg,rgba(255,255,255,.85),transparent 30%,transparent 70%,rgba(255,255,255,.85)); animation:spin 1.7s linear reverse infinite; -webkit-mask:radial-gradient(circle,transparent 58%,#000 60%);mask:radial-gradient(circle,transparent 58%,#000 60%)} .swirl .core{width:44%;height:44%;border-radius:50%; background:radial-gradient(circle at 38% 34%,#fff,var(--yellow) 40%,var(--fuchsia) 100%); box-shadow:0 8px 26px -6px var(--fuchsia);animation:beat 1.6s ease-in-out infinite;position:relative;z-index:2} .swirl .core::after{content:"J";position:absolute;inset:0;display:grid;place-items:center;font-weight:900;font-size:clamp(24px,6vw,34px);color:#25102f} @keyframes spin{to{transform:rotate(360deg)}} @keyframes beat{0%,100%{transform:scale(.94)}50%{transform:scale(1.06)}} /* конфетти вокруг вихря */ .dot{position:absolute;width:9px;height:9px;border-radius:3px;opacity:.9;animation:orbit 3.4s linear infinite} @keyframes orbit{from{transform:rotate(0) translateX(84px) rotate(0)}to{transform:rotate(360deg) translateX(84px) rotate(-360deg)}} h1{font-size:clamp(20px,5vw,26px);font-weight:900;letter-spacing:-.02em;margin-bottom:8px} h1 b{background:linear-gradient(92deg,var(--fuchsia),var(--yellow) 48%,var(--turq));-webkit-background-clip:text;background-clip:text;color:transparent} .status{font-size:clamp(13px,3.4vw,15px);color:var(--dim);min-height:24px;margin-bottom:22px;transition:opacity .25s,transform .25s} .status b{color:var(--mint);font-weight:800} /* прогресс */ .track{height:14px;border-radius:999px;background:rgba(0,0,0,.28);overflow:hidden;position:relative;border:1px solid rgba(255,255,255,.12)} .fill{height:100%;width:0;border-radius:999px; background:linear-gradient(90deg,var(--fuchsia),var(--yellow) 50%,var(--turq)); box-shadow:0 0 16px -3px var(--fuchsia); animation:load 3000ms cubic-bezier(.35,.1,.25,1) forwards} @keyframes load{0%{width:0}18%{width:22%}42%{width:48%}66%{width:71%}85%{width:88%}100%{width:100%}} .track::after{content:"";position:absolute;inset:0; background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent); background-size:36% 100%;background-repeat:no-repeat;animation:shine 1.3s linear infinite} @keyframes shine{from{background-position:-40% 0}to{background-position:140% 0}} .meta{display:flex;justify-content:space-between;margin-top:12px;font-size:12.5px;font-weight:800;letter-spacing:.04em} .meta .lab{color:var(--dim);text-transform:uppercase;letter-spacing:.14em;font-size:11px} .pct{color:var(--turq);font-variant-numeric:tabular-nums;text-shadow:0 0 12px rgba(34,211,238,.4)} .foot{margin-top:24px;font-size:12px;color:var(--dim);line-height:1.6} .safe{display:inline-flex;align-items:center;gap:7px;padding:5px 13px;border-radius:999px; background:rgba(94,240,192,.12);border:1px solid rgba(94,240,192,.28);color:var(--mint); font-size:11.5px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin-bottom:10px} .safe b{width:7px;height:7px;border-radius:50%;background:var(--mint);box-shadow:0 0 8px var(--mint);animation:blink 1.5s ease-in-out infinite} @keyframes blink{0%,100%{opacity:.35}50%{opacity:1}} @media (prefers-reduced-motion:reduce){ *{animation:none!important;transition:none!important} .fill{width:100%} }
Подбираем самый быстрый сервер…
Защищённое соединение
Не закрывайте страницу — переход произойдёт автоматически.