/* One-shot entrance; never captures clicks or hides the actual document. */
.smoke-entry{position:fixed;inset:0;z-index:9998;pointer-events:none;overflow:hidden;contain:strict;animation:smoke-entry-clear 3.2s linear both}
.smoke-entry::before{content:"";position:absolute;inset:0;background:#bcb0ca;animation:smoke-entry-veil 3.2s ease-in-out both}
.smoke-entry i{position:absolute;width:130vw;height:120vh;left:-15vw;top:-10vh;filter:blur(22px);will-change:transform,opacity;background:radial-gradient(ellipse at 25% 48%,#eee8f4 0%,#bfb3cf 19%,#786783b3 36%,transparent 60%),radial-gradient(ellipse at 68% 65%,#e4d9e9 0%,#aa93bdbb 24%,transparent 53%);animation:smoke-entry-left 3.2s cubic-bezier(.2,.65,.3,1) both}
.smoke-entry i:nth-child(2){background:radial-gradient(ellipse at 72% 38%,#e2d9ec 0%,#b8abc7 24%,#80678ca6 39%,transparent 62%),radial-gradient(ellipse at 30% 75%,#cfbecf 0%,#997899aa 27%,transparent 57%);animation-name:smoke-entry-right}
.smoke-entry i:nth-child(3){background:radial-gradient(ellipse at 42% 75%,#eee7ed 0%,#c6afcd 23%,#90779899 38%,transparent 65%);animation-name:smoke-entry-rise}
@keyframes smoke-entry-left{0%{transform:translate3d(-85%,30%,0) rotate(-12deg);opacity:0}15%{opacity:.95}43%{transform:translate3d(-4%,0,0) rotate(6deg);opacity:1}100%{transform:translate3d(40%,-55%,0) scale(1.4) rotate(19deg);opacity:0}}
@keyframes smoke-entry-right{0%{transform:translate3d(85%,15%,0) rotate(14deg);opacity:0}18%{opacity:.95}45%{transform:translate3d(4%,-3%,0) rotate(-5deg);opacity:1}100%{transform:translate3d(-40%,-50%,0) scale(1.5) rotate(-23deg);opacity:0}}
@keyframes smoke-entry-rise{0%{transform:translate3d(0,80%,0) scale(.8);opacity:0}20%{opacity:.7}48%{transform:translate3d(0,0,0) scale(1.2);opacity:.9}100%{transform:translate3d(0,-80%,0) scale(1.7);opacity:0}}
@keyframes smoke-entry-veil{0%,14%{opacity:0}35%,48%{opacity:.96}83%,100%{opacity:0}}
@keyframes smoke-entry-clear{0%,65%{opacity:1}100%{opacity:0;visibility:hidden}}
@media(max-width:650px){.smoke-entry i{filter:blur(15px)}.smoke-entry i:nth-child(3){display:none}}
@media(prefers-reduced-motion:reduce){.smoke-entry{display:none!important}}
html.motion-paused .smoke-entry{display:none!important}
