/* interaction layer: pointer glow, tap ripples, title wave, hover previews, timeline strip */
.glow{position:fixed;left:0;top:0;width:60vmax;height:60vmax;margin:-30vmax 0 0 -30vmax;z-index:-1;pointer-events:none;border-radius:50%;
background:radial-gradient(closest-side,rgba(var(--gc,110,130,255),.34),rgba(var(--gc,110,130,255),.12) 45%,transparent 72%);mix-blend-mode:screen;opacity:.0;transition:opacity .8s ease;will-change:transform}
.glow.on{opacity:1}
h1 .lt{display:inline-block;transition:transform .35s cubic-bezier(.2,.8,.2,1),filter .35s;will-change:transform}
.evp.pvon .evs{box-shadow:0 0 0 1px #9ff0ff88,0 0 30px #9ff0ff33}
.evp .evs{transition:box-shadow .4s}
@media (prefers-reduced-motion:reduce){.glow{transition:none}.rip{display:none}h1 .lt{transition:none}}
h1 .lt{background:linear-gradient(180deg,#fff 0,#f4f7ff 30%,#9fb0d0 50%,#c8d4ee 60%,#fff 85%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
body.scvis #sc{position:static!important;display:block;width:calc(100% - 32px)!important;max-width:440px;height:120px!important;margin:14px auto!important;opacity:1!important;pointer-events:auto!important;border-radius:10px}
.rip{position:fixed;z-index:80;pointer-events:none;width:0;height:0;perspective:500px}
.rip b,.rip u{position:absolute;left:0;top:0;display:block;border-radius:50%;transform-style:preserve-3d}
.rip b{width:20px;height:20px;margin:-10px 0 0 -10px;border:1.5px solid rgb(var(--a));box-shadow:0 0 14px rgba(var(--a),.7),inset 0 0 10px rgba(var(--b),.5);transform:rotateX(var(--t)) rotateZ(var(--z)) scale(.2);animation:rg 1.5s cubic-bezier(.1,.7,.2,1) forwards}
.rip b:nth-child(2){border-color:rgb(var(--b));border-style:dashed;box-shadow:0 0 12px rgba(var(--b),.6);animation-delay:.12s;animation-duration:1.6s}
.rip b:nth-child(3){border-width:.6px;animation-delay:.26s;animation-duration:1.7s}
@keyframes rg{0%{opacity:0}12%{opacity:1}100%{transform:rotateX(var(--t)) rotateZ(calc(var(--z) + 200deg*var(--s))) scale(9);opacity:0}}
.rip u{width:46px;height:46px;margin:-23px 0 0 -23px;background:conic-gradient(from 0deg,transparent,rgba(var(--a),.9),transparent 30%,rgba(var(--b),.9) 55%,transparent 80%);-webkit-mask:radial-gradient(closest-side,transparent 70%,#000 74%,#000 94%,transparent 98%);mask:radial-gradient(closest-side,transparent 70%,#000 74%,#000 94%,transparent 98%);transform:rotateX(var(--t)) scale(.3);animation:ru 1.4s ease-out forwards}
@keyframes ru{0%{opacity:0}15%{opacity:1}100%{transform:rotateX(var(--t)) rotateZ(calc(360deg*var(--s))) scale(5.5);opacity:0}}
