/* T3 particle intro */
.scene[data-intro=pending]{background:radial-gradient(ellipse at 50% 48%,#3d2040 0%,#1c1024 62%,#120a18 100%)}
.scene[data-intro=pending] .hero{opacity:0}
.scene.intro-handoff[data-intro=pending] .hero{opacity:1;transition:opacity .2s ease-out}
.intro-canvas{transition:opacity .3s ease-in-out .03s}
.intro-canvas.fade{opacity:0}
.intro-skip{position:absolute;top:12px;right:12px;z-index:12;border:1px solid #ffd9a866;border-radius:30px;padding:8px 16px;background:#1c1024b3;color:#ffe7c4;font:700 13px/1 system-ui,sans-serif;letter-spacing:1px;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:background .2s,transform .2s}
.intro-skip:hover{background:#f77822;color:#fff;transform:scale(1.05)}
.intro-skip:focus-visible{outline:3px solid #ffb13e;outline-offset:2px}
@media(max-width:650px){.intro-skip{top:8px;right:8px;padding:7px 12px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.intro-skip{display:none}}
.scene[data-intro=pending] .hot,.scene[data-intro=pending] .zone{opacity:0}

.intro-loading{position:absolute;left:50%;top:50%;z-index:11;transform:translate(-50%,-50%);pointer-events:none;font:700 15px/1 system-ui,sans-serif;letter-spacing:3px;white-space:nowrap;color:transparent;background:linear-gradient(100deg,#ffd9a8 20%,#ff8a2a 45%,#fff3d6 55%,#ffd9a8 80%) 0 0/250% 100%;-webkit-background-clip:text;background-clip:text;animation:introshimmer 1.4s linear infinite}
@keyframes introshimmer{to{background-position:-250% 0}}
@media(prefers-reduced-motion:reduce){.intro-loading{animation:none;color:#ffd9a8}}
