.df-root{--df-ease:var(--ease-enter);--df-steel:#a7b0b9;--df-red:#e0222b;--df-auto:6.5s}.df-geo{--S:220px;--gap:44px;--lift:32px;--pop:7px;--thick:6px;--aside:0px;position:relative}@media (min-width:30rem){.df-geo{--S:250px;--gap:50px;--lift:36px;--pop:8px}}@media (min-width:48rem){.df-geo{--S:280px;--gap:56px;--lift:40px;--pop:9px;--thick:7px;--aside:210px}}@media (min-width:80rem){.df-geo{--S:310px;--gap:62px;--lift:44px;--pop:10px;--thick:8px}}@media (min-width:90rem){.df-geo{--S:360px;--gap:72px;--lift:50px;--pop:10px;--thick:9px}}@media (min-width:105rem){.df-geo{--S:390px;--gap:78px;--lift:54px;--pop:11px}}.df-scene{height:calc(var(--S) * 1.36 + 96px);position:relative}.df-glow{left:calc(50% - var(--aside) * .5);top:calc(var(--S) * .86 + 48px);width:calc(var(--S) * 2.6);height:calc(var(--S) * 1.7);pointer-events:none;background:radial-gradient(closest-side,#e0222b29,#e0222b0d 55%,#0000 80%);position:absolute;transform:translate(-50%,-50%)}.df-stage{perspective:2600px;perspective-origin:50% 30%;pointer-events:none;position:absolute;inset:0}.df-stack{--top:calc(var(--gap) * 3);left:calc(50% - var(--S) * .5 - var(--aside) * .5);top:calc(var(--S) * .5 + 48px);width:var(--S);height:var(--S);transform-style:preserve-3d;position:absolute;transform:rotateX(60deg)rotate(-45deg)}.df-stack[data-lifted]{--top:calc(var(--gap) * 3 + var(--lift))}.df-stack[data-popped]{--top:calc(var(--gap) * 3 + var(--pop))}.df-floor{left:calc(var(--S) * -.54);top:calc(var(--S) * -.54);width:calc(var(--S) * 2.08);height:calc(var(--S) * 2.08);transform:translateZ(calc(var(--gap) * -.7));pointer-events:none;background:radial-gradient(closest-side,#e0222b3d,#e0222b0f 55%,#0000 75%);position:absolute}.df-floor-art{width:100%;height:100%;overflow:visible}.df-fr{fill:none;stroke:#ffffff24;stroke-width:1.2px}.df-fr2{fill:none;stroke:#e0222b73;stroke-width:1.5px;stroke-dasharray:2 14}.df-ft{letter-spacing:.2em;fill:#ffffff59;font-size:14px}.df-layer{--z:calc(var(--i) * var(--gap));transform-style:preserve-3d;transform:translateZ(var(--z));transition:transform .9s var(--df-ease);pointer-events:auto;cursor:pointer;position:absolute;inset:0}.df-layer[data-lift]{--z:calc(var(--i) * var(--gap) + var(--lift))}.df-layer[data-pop]{--z:calc(var(--i) * var(--gap) + var(--pop))}.df-layer[data-hidden]{--z:calc(var(--i) * var(--gap) - 220px);pointer-events:none}.df-layer>*{transition:opacity .6s}.df-layer[data-hidden]>*{opacity:0}.df-plane,.df-side{position:absolute}.df-plane{background:linear-gradient(135deg,#36404ecc,#11161ee6);border:1px solid #ffffff47;transition:opacity .6s,border-color .6s,box-shadow .6s;inset:0;overflow:hidden;box-shadow:inset 0 0 50px #ffffff0a}.df-side{background:linear-gradient(#2a313d,#11151b);transition:opacity .6s,box-shadow .6s}.df-plane:before,.df-plane:after,.df-side:before,.df-side:after{content:"";opacity:0;pointer-events:none;transition:opacity .6s var(--df-ease);position:absolute;inset:0}.df-plane:before{background:radial-gradient(circle,#ff3a439e 0%,#b2101ab8 55%,#5a080edb 100%);box-shadow:inset 0 0 60px #ff787840}.df-side:before{background:linear-gradient(#ff3a43,#8e0a12)}.df-plane:after,.df-side:after{background:#04070a57}.df-layer[data-on] .df-plane:before,.df-layer[data-on] .df-side:before,.df-stack[data-sel] .df-layer:not([data-on]) .df-plane:after,.df-stack[data-sel] .df-layer:not([data-on]) .df-side:after{opacity:1}.df-side-l{width:var(--thick);transform-origin:0;height:100%;top:0;left:0;transform:rotateY(90deg)}.df-side-b{width:100%;height:var(--thick);transform-origin:top;top:100%;left:0;transform:rotateX(-90deg)}.df-mk{width:1px;height:1px;position:absolute;bottom:0;right:0}.df-layer:hover .df-plane{border-color:#ffffff8c}.df-layer[data-on] .df-plane{border-color:#ff6a72;box-shadow:0 0 90px #e0222b8c,inset 0 0 50px #ffffff0a}.df-layer[data-on] .df-side{box-shadow:0 0 40px #e0222bcc}.df-bloom{transform:translateZ(calc(var(--gap) * -.4));opacity:0;pointer-events:none;background:radial-gradient(closest-side,#e0222b8c,#e0222b1f 60%,#0000);transition:opacity .7s;position:absolute;inset:-35%}.df-layer[data-on] .df-bloom{opacity:1}.df-scan{opacity:0;pointer-events:none;background:linear-gradient(90deg,#0000,#ffffff73,#0000);width:45%;position:absolute;top:-10%;bottom:-10%;left:0;transform:translate(-100%)}.df-layer[data-on] .df-scan{animation:1.2s cubic-bezier(.3,.7,.3,1) .2s df-scan}.df-shock{opacity:0;pointer-events:none;border:2px solid #fff;border-radius:50%;width:40px;height:40px;margin:-20px 0 0 -20px;position:absolute;top:50%;left:50%}.df-layer[data-on] .df-shock{animation:1s ease-out df-shock}.df-art{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.df-grid line{stroke:#ffffff14;stroke-width:1.4px}.df-s{fill:none;stroke:var(--df-steel);stroke-width:2px}.df-sf{fill:var(--df-steel)}.df-cut{fill:#11151b;opacity:.6}.df-faint{fill:none;stroke:#a7b0b966;stroke-width:1.6px}.df-rd{fill:none;stroke:var(--df-red);stroke-width:3px}.df-rdf{fill:var(--df-red)}.df-sweep{fill:#e0222b59}.df-contour{fill:none;stroke:#a7b0b975;stroke-width:1.5px}.df-t{letter-spacing:.12em;fill:var(--df-steel);font-size:13px;font-weight:500}.df-t-red{fill:var(--df-red)}.df-pid{letter-spacing:.2em;fill:#ffffff8c;font-size:15px}.df-ping{fill:none;stroke:var(--df-steel);stroke-width:2px;transform-box:fill-box;transform-origin:50%;animation:2.8s ease-out infinite df-ping}.df-ping-red{stroke:var(--df-red)}.df-flow{fill:none;stroke:var(--df-steel);stroke-width:2.6px;stroke-dasharray:5 11;animation:1.3s linear infinite df-flow}.df-art *{transition:stroke .6s var(--df-ease), fill .6s var(--df-ease)}.df-layer[data-on] .df-grid line{stroke:#ffffff29}.df-layer[data-on] .df-s,.df-layer[data-on] .df-rd,.df-layer[data-on] .df-ping,.df-layer[data-on] .df-flow{stroke:#fff}.df-layer[data-on] .df-sf,.df-layer[data-on] .df-rdf,.df-layer[data-on] .df-t{fill:#fff}.df-layer[data-on] .df-faint{stroke:#ffffff80}.df-layer[data-on] .df-contour{stroke:#ffffff8c}.df-beam{width:3px;height:var(--top);transform-origin:top;pointer-events:none;transition:height 1s var(--df-ease);margin-left:-1.5px;position:absolute;overflow:hidden;transform:rotateX(90deg);box-shadow:0 0 14px #ff3a43e6}.df-beam:before{content:"";background:repeating-linear-gradient(#ff3a4300 0 14px,#ff3a43f2 14px 26px) 0 0/2px 26px;animation:.9s linear infinite df-up;position:absolute;inset:-26px 0 0}.df-stack:not([data-ready]) .df-beam{height:0}.df-leaders{pointer-events:none;position:absolute;inset:0}.df-leader-line,.df-leader-dot{transform-origin:0 0;transition:background-color .3s,opacity .5s;position:absolute;top:0;left:0}.df-leader-line{background:#ffffff3d;width:1px;height:1px;margin-top:-.5px}.df-leader-line[data-on]{background:var(--df-red);height:1.5px;margin-top:-.75px}.df-leader-dot{background:#fff9;width:6px;height:6px}.df-leader-dot[data-on]{background:var(--df-red)}.df-leaders [data-hidden]{opacity:0}@media (min-width:48rem){.df-tag{top:calc(var(--S) - var(--S) * var(--i) * .173 + 48px)}.df-tag[data-tracked]{top:0}}.df-connector{left:calc(50% - var(--aside) * .5);pointer-events:none;background:linear-gradient(#0000,#ff3a43bf);width:1px;height:40px;position:absolute;bottom:100%}.df-connector:before{content:"";background:var(--df-red);border-radius:50%;width:7px;height:7px;transition:box-shadow .4s;position:absolute;bottom:-3px;left:-3px;box-shadow:0 0 10px #e0222bb3}.df-connector[data-on]:before{box-shadow:0 0 16px 3px #e0222be6}.df-swap{animation:df-swap .45s var(--df-ease) both}.df-progress-fill{transform-origin:0;animation:df-progress var(--df-auto) linear forwards}.df-root[data-held] .df-progress-fill{animation-play-state:paused}.df-root[data-paused] *,.df-root[data-paused] :before,.df-root[data-paused] :after{animation-play-state:paused!important}@keyframes df-ping{0%{opacity:.9;transform:scale(.4)}to{opacity:0;transform:scale(2.6)}}@keyframes df-flow{to{stroke-dashoffset:-32px}}@keyframes df-up{to{transform:translateY(26px)}}@keyframes df-scan{0%{opacity:1;transform:translate(-100%)}to{opacity:0;transform:translate(233.33%)}}@keyframes df-shock{0%{opacity:.95;transform:scale(1)}to{opacity:0;transform:scale(16)}}@keyframes df-swap{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes df-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes df-pulse{0%{opacity:1;transform:scale(.45)}to{opacity:0;transform:scale(1.6)}}.df-pulse:after{content:"";border:1.5px solid var(--df-red);border-radius:50%;animation:1.8s ease-out infinite df-pulse;position:absolute;inset:-6px}@media (prefers-reduced-motion:reduce){.df-root *,.df-root :before,.df-root :after{transition-duration:.01ms!important;animation:none!important}}
