/* GENERATED by bin/build-summon-css.php - do not edit. */
.cd { --sm1: var(--rc); --sm2: color-mix(in srgb, var(--rc) 45%, #000); }
.cd.sm-rift { --sm1: #46f0d0; --sm2: #ff5fa2; }
.cd.sm-cosmos { --sm1: #ffd98a; --sm2: #a66bff; }
.cd.sm-surge { --sm1: #5ac8ff; --sm2: #0b3a7a; }
.cd.sm-pages { --sm1: #ffd15a; --sm2: #1f6b3a; }
.fs .m-dim { inset: 0; z-index: 1; opacity: 0; background: radial-gradient(circle, #0000 8%, #000e 72%); animation: mdim calc(var(--ant) * .5 + .28s) ease-in calc(var(--d) + var(--ant) * .5) forwards; }
@keyframes mdim { 0% { opacity: 0; } 85% { opacity: .85; } 100% { opacity: 0; } }

/* ---- rift: slashes ---- */
.fs .m-slash { left: 50%; top: 50%; width: 160vmax; height: 1.3vmin; margin: -.65vmin 0 0 -80vmax; rotate: var(--a); scale: 0 1; opacity: 0; z-index: 3;
    background: linear-gradient(90deg, #0000, #fff 18%, var(--sm1) 50%, #fff 82%, #0000); box-shadow: 0 0 3vmin var(--sm1), 0 0 8vmin var(--sm2);
    animation: msld .14s ease-out calc(var(--d) + var(--ant) * var(--f)) forwards, mslh .7s ease-in calc(var(--at) - .12s) forwards; }
.fs .m-slash.s1 { --a: -27deg; --f: .69; } .fs .m-slash.s2 { --a: 21deg; --f: .75; } .fs .m-slash.s3 { --a: -64deg; --f: .81; } .fs .m-slash.s4 { --a: 68deg; --f: .875; }
@keyframes msld { 0% { opacity: 1; scale: 0 1; } 100% { opacity: 1; scale: 1 1; } }
@keyframes mslh { 0% { opacity: 1; scale: 1 1; } 35% { opacity: 1; scale: 1 4; } 100% { opacity: 0; scale: 1.05 9; } }
.fs .m-glitch { inset: 0; z-index: 8; opacity: 0; background: linear-gradient(90deg, #00ffe070, #0000 30%, #0000 70%, #ff2d9a70);
    -webkit-mask: repeating-linear-gradient(0deg, #000 0 1.2vmin, #0000 1.2vmin 3vmin); mask: repeating-linear-gradient(0deg, #000 0 1.2vmin, #0000 1.2vmin 3vmin);
    animation: mglit .9s steps(1, end) calc(var(--at) - .1s) forwards; }
@keyframes mglit { 0% { opacity: .9; translate: -2vmin 0; } 15% { opacity: 0; } 30% { opacity: .8; translate: 2.4vmin .5vmin; } 45% { opacity: 0; } 60% { opacity: .9; translate: -1vmin 0; } 75% { opacity: .3; } 100% { opacity: 0; } }
.fs .m-shd { left: 50%; top: 50%; width: 6vmin; height: 9vmin; opacity: 0; z-index: 4; background: linear-gradient(135deg, #fff, var(--sm1)); clip-path: polygon(50% 0, 100% 100%, 0 80%);
    animation: mshd 1.3s cubic-bezier(.1, .7, .3, 1) var(--at) forwards; }
.fs .m-drop { left: 50%; top: 50%; width: 2.6vmin; height: 2.6vmin; opacity: 0; z-index: 4; border-radius: 50%; background: radial-gradient(circle at 30% 30%, #fff, var(--sm1)); animation: mshd 1.3s cubic-bezier(.1, .7, .3, 1) var(--at) forwards; }
@keyframes mshd { 0% { opacity: 0; translate: 0 0; rotate: 0deg; scale: .4; } 8% { opacity: 1; } 100% { opacity: 0; translate: var(--x) var(--y); rotate: var(--r); scale: var(--z); } }

/* ---- cosmos ---- */
.fs .m-warp { left: 50%; top: 50%; width: 170vmin; aspect-ratio: 1; translate: -50% -50%; border-radius: 50%; opacity: 0; scale: .15; z-index: 2;
    background: repeating-conic-gradient(#fff 0 .45deg, #0000 .45deg 5deg); -webkit-mask: radial-gradient(circle, #0000 14%, #000 40%, #0000 70%); mask: radial-gradient(circle, #0000 14%, #000 40%, #0000 70%);
    animation: mwarp calc(var(--ant) * .27) linear calc(var(--d) + var(--ant) * .31) 3 both; }
.fs .m-warp.w2 { background: repeating-conic-gradient(var(--sm1) 0 .7deg, #0000 .7deg 8deg); rotate: 3deg; animation-delay: calc(var(--d) + var(--ant) * .44); }
@keyframes mwarp { 0% { opacity: 0; scale: .15; } 25% { opacity: .9; } 100% { opacity: 0; scale: 1.6; } }
.fs .m-vortex { left: 50%; top: 50%; width: 88vmin; aspect-ratio: 1; translate: -50% -50%; border-radius: 50%; opacity: 0; scale: .1; z-index: 2;
    background: conic-gradient(#ff3d57, #ffd98a, #3ddc84, #46d6ff, #a66bff, #ff5fa2, #ff3d57); -webkit-mask: radial-gradient(circle, #0000 42%, #000 46% 62%, #0000 68%); mask: radial-gradient(circle, #0000 42%, #000 46% 62%, #0000 68%);
    animation: mvin calc(var(--ant) * .28) calc(var(--d) + var(--ant) * .41) ease-out forwards, mspin 1.2s linear calc(var(--d) + var(--ant) * .41) infinite, mvout .5s calc(var(--at) - .1s) forwards; }
@keyframes mvin { to { opacity: .95; scale: 1; } } @keyframes mvout { to { opacity: 0; scale: 3; } } @keyframes mspin { to { rotate: 360deg; } }
.fs .m-orbit { left: 50%; top: 50%; width: var(--w); height: calc(var(--w) * .34); margin: calc(var(--w) * -.17) 0 0 calc(var(--w) * -.5); border: 2px solid var(--sm1); border-radius: 50%; opacity: 0; z-index: 2; box-shadow: 0 0 12px var(--sm1);
    animation: moin .6s calc(var(--d) + var(--ant) * .47) forwards, mosp var(--sp) linear calc(var(--d) + var(--ant) * .47) infinite, moout .4s calc(var(--at) - .13s) forwards; }
.fs .m-orbit::after { content: ""; position: absolute; right: -7px; top: 50%; width: 14px; height: 14px; margin-top: -7px; border-radius: 50%; background: #fff; box-shadow: 0 0 14px 4px var(--sm1); }
.fs .m-orbit.o1 { --w: 80vmin; --ra: 0deg; --sp: 3s; } .fs .m-orbit.o2 { --w: 108vmin; --ra: 60deg; --sp: 4.4s; } .fs .m-orbit.o3 { --w: 136vmin; --ra: -50deg; --sp: 6s; }
@keyframes moin { to { opacity: 1; } } @keyframes moout { to { opacity: 0; } } @keyframes mosp { from { rotate: var(--ra); } to { rotate: calc(var(--ra) + 360deg); } }
.fs .m-hole { left: 50%; top: 50%; width: 24vmin; aspect-ratio: 1; translate: -50% -50%; border-radius: 50%; opacity: 0; scale: 0; z-index: 3;
    background: radial-gradient(circle, #000 0 52%, #fff 56%, #ffd98a 60%, #ff8a3d 66%, #0000 74%); animation: mhin calc(var(--ant) * .22) calc(var(--d) + var(--ant) * .69) forwards, mhout .3s calc(var(--at) - .2s) forwards; }
@keyframes mhin { to { opacity: 1; scale: 1; } } @keyframes mhout { to { opacity: 0; scale: .2; } }
.fs .m-nova { left: 50%; top: 50%; width: 210vmax; aspect-ratio: 1; translate: -50% -50%; border-radius: 50%; opacity: 0; scale: .1; z-index: 2;
    background: repeating-conic-gradient(#ff3d57 0 5deg, #ffd98a 5deg 10deg, #3ddc84 10deg 15deg, #46d6ff 15deg 20deg, #a66bff 20deg 25deg); -webkit-mask: radial-gradient(circle, #000 6%, #0000 60%); mask: radial-gradient(circle, #000 6%, #0000 60%);
    animation: mnova 1.5s cubic-bezier(.2, .8, .2, 1) var(--at) forwards, mspin 14s linear var(--at) infinite; }
@keyframes mnova { 0% { opacity: 0; scale: .1; } 25% { opacity: .9; } 100% { opacity: .35; scale: .5; } }

/* ---- surge ---- */
.fs .m-wv { left: -8%; top: 0; width: 116%; height: 140%; overflow: hidden; translate: 0 105vh; z-index: 2; --wc: var(--sm2);
    animation: mwr calc(var(--ant) * .34) calc(var(--d) + var(--ant) * .53) cubic-bezier(.3, .6, .3, 1) forwards, mwf 1s calc(var(--at) + .3s) ease-in forwards; }
.fs .m-wv.wb { --wc: color-mix(in srgb, var(--sm2) 55%, var(--sm1)); animation-delay: calc(var(--d) + var(--ant) * .61), calc(var(--at) + .4s); }
.fs .m-wv.wc { --wc: var(--sm1); animation-delay: calc(var(--d) + var(--ant) * .69), calc(var(--at) + .5s); }
.fs .m-wv::before { content: ""; position: absolute; left: 0; top: 0; width: calc(100% + 16vmax); height: 100%;
    background: radial-gradient(ellipse 50% 100% at 50% 100%, var(--wc) 98%, #0000) 0 0 / 16vmax 9vh repeat-x, linear-gradient(var(--wc), var(--wc)) 0 8.5vh / 100% 100% no-repeat; animation: mslw 1.7s linear infinite; }
.fs .m-wv.wb::before { animation-direction: reverse; animation-duration: 2.2s; }
@keyframes mslw { to { translate: -16vmax 0; } }
@keyframes mwr { to { translate: 0 -16vh; } } @keyframes mwf { from { translate: 0 -16vh; } to { translate: 0 112vh; } }
.fs .m-bub { bottom: -4%; width: var(--w); height: var(--w); border-radius: 50%; border: 1.5px solid #fffc; background: radial-gradient(circle at 30% 30%, #fff9, #fff0 60%); opacity: 0; z-index: 3;
    animation: mbub var(--du) ease-in calc(var(--d) + var(--ant) * .5 + var(--dl)) infinite; }
@keyframes mbub { 0% { opacity: 0; translate: 0 0; } 15% { opacity: .9; } 100% { opacity: 0; translate: 0 -95vh; } }

/* ---- pages ---- */
.fs .m-pgw { left: 50%; top: 50%; width: 0; height: 0; rotate: var(--a); animation: mpo calc(var(--ant) * .66) calc(var(--d) + var(--ant) * .34 + var(--o)) cubic-bezier(.5, 0, .8, .5) forwards; }
.fs .m-pg { left: 0; top: 0; width: 9vmin; height: 12.5vmin; margin: -6.25vmin 0 0 -4.5vmin; translate: var(--r) 0; opacity: 0; scale: .6; border-radius: 3px; rotate: 90deg; z-index: 3;
    background: repeating-linear-gradient(0deg, #0000 0 1.2vmin, #8a6a2044 1.2vmin 1.4vmin), linear-gradient(135deg, #fbefc4, #d9bf7a); border: 1px solid #8a6a20; box-shadow: 0 0 2.4vmin var(--sm1);
    animation: mpi calc(var(--ant) * .66) calc(var(--d) + var(--ant) * .34 + var(--o)) cubic-bezier(.5, 0, .8, .5) forwards, mpx .9s calc(var(--at) - .05s) ease-out forwards; }
@keyframes mpo { from { rotate: var(--a); } to { rotate: calc(var(--a) + 600deg); } }
@keyframes mpi { 0% { opacity: 0; translate: var(--r) 0; scale: .6; } 15% { opacity: 1; } 100% { opacity: 1; translate: 0 0; scale: .5; } }
@keyframes mpx { from { opacity: 1; translate: 0 0; scale: .5; } to { opacity: 0; translate: calc(var(--r) * 3) 0; scale: 1.7; } }

body.fx-lite .fs :is(.m-warp, .m-vortex, .m-orbit, .m-nova, .m-glitch) { display: none; }
@media (prefers-reduced-motion: reduce) { .fs :is(.m-warp, .m-vortex, .m-orbit, .m-nova, .m-glitch, .m-wv, .m-bub, .m-pgw) { display: none; } }
.fs .g > .m-shd:nth-child(1), .fs .g > .m-drop:nth-child(1) { --x: -21.2vmin; --y: -49.2vmin; --r: 244deg; --z: 2.1; }
.fs .g > .m-shd:nth-child(2), .fs .g > .m-drop:nth-child(2) { --x: -38.6vmin; --y: -15.1vmin; --r: -280deg; --z: 2.2; }
.fs .g > .m-shd:nth-child(3), .fs .g > .m-drop:nth-child(3) { --x: -36.2vmin; --y: 6.2vmin; --r: 194deg; --z: 2.2; }
.fs .g > .m-shd:nth-child(4), .fs .g > .m-drop:nth-child(4) { --x: -16vmin; --y: -37.1vmin; --r: 190deg; --z: 2.2; }
.fs .g > .m-shd:nth-child(5), .fs .g > .m-drop:nth-child(5) { --x: 24.5vmin; --y: -30.2vmin; --r: -296deg; --z: 1.8; }
.fs .g > .m-shd:nth-child(6), .fs .g > .m-drop:nth-child(6) { --x: 35.2vmin; --y: -34.8vmin; --r: 204deg; --z: 3; }
.fs .g > .m-shd:nth-child(7), .fs .g > .m-drop:nth-child(7) { --x: 56.1vmin; --y: 43.3vmin; --r: 204deg; --z: 3.5; }
.fs .g > .m-shd:nth-child(8), .fs .g > .m-drop:nth-child(8) { --x: -7.2vmin; --y: -46.8vmin; --r: 160deg; --z: 3.9; }
.fs .g > .m-shd:nth-child(9), .fs .g > .m-drop:nth-child(9) { --x: -27vmin; --y: 30.8vmin; --r: 363deg; --z: 2.7; }
.fs .g > .m-shd:nth-child(10), .fs .g > .m-drop:nth-child(10) { --x: 58vmin; --y: -19.7vmin; --r: -133deg; --z: 2; }
.fs .g > .m-shd:nth-child(11), .fs .g > .m-drop:nth-child(11) { --x: 54.2vmin; --y: 44.9vmin; --r: -203deg; --z: 1.3; }
.fs .g > .m-shd:nth-child(12), .fs .g > .m-drop:nth-child(12) { --x: 48.3vmin; --y: -32.4vmin; --r: -413deg; --z: 2.6; }
.fs .g > .m-shd:nth-child(13), .fs .g > .m-drop:nth-child(13) { --x: 60.6vmin; --y: 13.9vmin; --r: -193deg; --z: 3.7; }
.fs .g > .m-shd:nth-child(14), .fs .g > .m-drop:nth-child(14) { --x: -31.6vmin; --y: 51.8vmin; --r: 86deg; --z: 2.1; }
.fs .g > .m-shd:nth-child(15), .fs .g > .m-drop:nth-child(15) { --x: 74.4vmin; --y: 7.3vmin; --r: -222deg; --z: 3.8; }
.fs .g > .m-shd:nth-child(16), .fs .g > .m-drop:nth-child(16) { --x: -71vmin; --y: -21.8vmin; --r: -129deg; --z: 1; }
.fs .g > .m-shd:nth-child(17), .fs .g > .m-drop:nth-child(17) { --x: -35.9vmin; --y: -2.5vmin; --r: 217deg; --z: 3.3; }
.fs .g > .m-shd:nth-child(18), .fs .g > .m-drop:nth-child(18) { --x: -36.5vmin; --y: 13vmin; --r: -535deg; --z: 2.6; }
.fs .g > .m-bub:nth-child(1) { left: 44%; --w: 24px; --dl: 0.5s; --du: 2.8s; }
.fs .g > .m-bub:nth-child(2) { left: 61%; --w: 23px; --dl: 0.9s; --du: 3.2s; }
.fs .g > .m-bub:nth-child(3) { left: 18%; --w: 18px; --dl: 0.7s; --du: 3.8s; }
.fs .g > .m-bub:nth-child(4) { left: 65%; --w: 16px; --dl: 1.6s; --du: 2.3s; }
.fs .g > .m-bub:nth-child(5) { left: 85%; --w: 14px; --dl: 0.9s; --du: 2.1s; }
.fs .g > .m-bub:nth-child(6) { left: 16%; --w: 24px; --dl: 0.7s; --du: 2.3s; }
.fs .g > .m-bub:nth-child(7) { left: 55%; --w: 25px; --dl: 0.6s; --du: 2.8s; }
.fs .g > .m-bub:nth-child(8) { left: 91%; --w: 20px; --dl: 0s; --du: 3.3s; }
.fs .g > .m-bub:nth-child(9) { left: 90%; --w: 14px; --dl: 1.1s; --du: 3.5s; }
.fs .g > .m-bub:nth-child(10) { left: 43%; --w: 9px; --dl: 1.5s; --du: 2.4s; }
.fs .g > .m-bub:nth-child(11) { left: 72%; --w: 24px; --dl: 0.5s; --du: 3.9s; }
.fs .g > .m-bub:nth-child(12) { left: 84%; --w: 23px; --dl: 0.4s; --du: 2.6s; }
.fs .g > .m-bub:nth-child(13) { left: 30%; --w: 22px; --dl: 0.4s; --du: 3.5s; }
.fs .g > .m-bub:nth-child(14) { left: 30%; --w: 13px; --dl: 0.6s; --du: 3.9s; }
.fs .g > .m-bub:nth-child(15) { left: 67%; --w: 11px; --dl: 0s; --du: 3.7s; }
.fs .g > .m-bub:nth-child(16) { left: 31%; --w: 24px; --dl: 1.2s; --du: 3.7s; }
.fs .g > .m-pgw:nth-child(1) { --a: 30deg; --r: 30vmin; --o: 0.36s; }
.fs .g > .m-pgw:nth-child(2) { --a: 60deg; --r: 34vmin; --o: 0.08s; }
.fs .g > .m-pgw:nth-child(3) { --a: 90deg; --r: 51vmin; --o: 0.28s; }
.fs .g > .m-pgw:nth-child(4) { --a: 120deg; --r: 47vmin; --o: 0.05s; }
.fs .g > .m-pgw:nth-child(5) { --a: 150deg; --r: 45vmin; --o: 0s; }
.fs .g > .m-pgw:nth-child(6) { --a: 180deg; --r: 36vmin; --o: 0.26s; }
.fs .g > .m-pgw:nth-child(7) { --a: 210deg; --r: 50vmin; --o: 0.28s; }
.fs .g > .m-pgw:nth-child(8) { --a: 240deg; --r: 49vmin; --o: 0.04s; }
.fs .g > .m-pgw:nth-child(9) { --a: 270deg; --r: 36vmin; --o: 0.21s; }
.fs .g > .m-pgw:nth-child(10) { --a: 300deg; --r: 41vmin; --o: 0.36s; }
.fs .g > .m-pgw:nth-child(11) { --a: 330deg; --r: 46vmin; --o: 0.3s; }
.fs .g > .m-pgw:nth-child(12) { --a: 360deg; --r: 36vmin; --o: 0.26s; }
