
:root{box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
html{scroll-padding-top:70px}body{font-family:'Plus Jakarta Sans',Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#0F172A;background:#fff}
.fld{width:100%;border:1px solid #e2e8f0;border-radius:8px;padding:10px 12px;background:#fff}
.fld:focus{outline:2px solid #38BDF8;border-color:#0284C7}
.chip{border:1px solid #cbd5e1;border-radius:99px;padding:6px 14px;font-size:14px;background:#fff}
.chip.on{background:#1E3A8A;color:#fff;border-color:#1E3A8A}
dialog{border:0;border-radius:16px;padding:0;max-width:430px;width:92%}dialog::backdrop{background:rgba(15,23,42,.5)}
summary{cursor:pointer;font-weight:600;color:#0284C7}

.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s,transform .7s}.reveal.in{opacity:1;transform:none}
.tilt{transition:transform .15s ease-out,box-shadow .3s;transform-style:preserve-3d;will-change:transform}.tilt:hover{box-shadow:0 18px 40px -12px rgba(2,132,199,.35)}
.glow{background:linear-gradient(120deg,#1E3A8A,#0284C7,#38BDF8,#1E3A8A);background-size:300% 100%;animation:grad 6s linear infinite;color:#fff!important;border:0!important}
.glow:hover{box-shadow:0 0 22px 4px rgba(56,189,248,.55)}@keyframes grad{to{background-position:300% 0}}
.glass{background:rgba(255,255,255,.6);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.8)}
dialog[open]{animation:pop .35s cubic-bezier(.2,.9,.3,1.2)}@keyframes pop{from{opacity:0;transform:scale(.9) translateY(20px)}}
dialog::backdrop{backdrop-filter:blur(6px)}
.fl1{animation:fl 6s ease-in-out infinite}.fl2{animation:fl 8s ease-in-out infinite reverse}@keyframes fl{50%{transform:translateY(-18px) rotate(6deg)}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
.fi svg{transition:transform .35s}.tilt:hover .fi svg{transform:scale(1.2) rotate(-8deg)}
#mesh{pointer-events:none}
.bp{stroke:#0284C7;fill:rgba(56,189,248,.1);stroke-width:1.5;stroke-dasharray:700;stroke-dashoffset:700;animation:draw 3.2s ease forwards}@keyframes draw{to{stroke-dashoffset:0}}
.pls{animation:pls 2s ease-out infinite;transform-box:fill-box;transform-origin:center}@keyframes pls{from{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(3)}}
.fp{stroke-dasharray:6 7;animation:dash 1.4s linear infinite}@keyframes dash{to{stroke-dashoffset:-26}}
.pk article{box-shadow:0 0 0 1px rgba(56,189,248,.45),0 0 26px rgba(56,189,248,.25)}
.sl::-webkit-scrollbar{display:none}.sl>div>article{width:100%}
@media(prefers-reduced-motion:reduce){.bp{stroke-dashoffset:0}}
.mq{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.mq>div{display:flex;gap:14px;width:max-content;animation:mq 38s linear infinite}.mq:hover>div{animation-play-state:paused}@keyframes mq{to{transform:translateX(calc(-50% - 7px))}}
.wave{animation:wv 3s ease-in-out infinite}@keyframes wv{50%{transform:rotate(-7deg) scale(1.07)}}
@media(prefers-reduced-motion:reduce){.mq{overflow-x:auto}}

.gold{background:linear-gradient(110deg,#b8860b,#f5d76e,#b8860b);background-size:200% 100%;animation:shine 3s linear infinite;color:#3a2a00;box-shadow:0 0 18px rgba(245,215,110,.6)}@keyframes shine{to{background-position:-200% 0}}

.gb{border:2px solid #38BDF8;box-shadow:0 0 0 4px rgba(56,189,248,.15),0 0 28px rgba(2,132,199,.35)}
