.vn{--k:3px;margin:clamp(64px,8vw,120px) calc(50% - 50vw) 0;position:relative}.vn-stage{background:var(--void);border-block:var(--k) solid var(--ink2);height:clamp(580px,90svh,940px);transition:background 1.4s var(--e-io);position:relative;overflow:hidden}.vn-stage.day{background:var(--blue)}.vn-stage>canvas{cursor:grab;width:100%;height:100%;display:block;position:absolute;inset:0}.vn-stage>canvas:active{cursor:grabbing}.vn-h{z-index:3;top:calc(var(--hh) + env(safe-area-inset-top) + clamp(16px, 2.4vw, 32px));left:max(var(--gut), calc(50% - 640px));width:max-content;max-width:min(540px, calc(100% - var(--gut) * 2));pointer-events:none;background:var(--void);border:var(--k) solid var(--ink2);box-shadow:8px 8px 0 var(--pink);transition:opacity .5s var(--e-out), translate .5s var(--e-out);padding:clamp(16px,2vw,24px);position:absolute}.vn-h .kick{--acc:var(--hazard)}.vn-h h2{white-space:nowrap;font-size:clamp(44px,5.6vw,84px);line-height:.86}.vn-h p:last-child{max-width:36ch;color:var(--ink2);text-wrap:pretty;margin-top:12px}.vn-stage:has(.vn-card) .vn-h{opacity:0;translate:0 -8px}.vn-pins{z-index:2;pointer-events:none;opacity:0;transition:opacity .8s var(--e-out) .3s;position:absolute;inset:0}.vn-pins[data-on]{opacity:1}.vn-pins:not([data-on]){visibility:hidden}.vn-pin{pointer-events:auto;will-change:transform;width:0;height:0;position:absolute;top:0;left:0}.vn-pin:before{content:"";border-radius:50%;position:absolute;inset:-22px}.vn-pin i{background:var(--ink2);width:16px;height:16px;box-shadow:0 0 0 3px var(--void), 0 0 0 6px var(--pink);transition:transform .35s var(--e-spring), background .25s;border-radius:50%;position:absolute;top:-8px;left:-8px}.vn-pin i:after{content:"";border:3px solid var(--pink);animation:vnPulse 2.6s var(--e-out) infinite;border-radius:50%;position:absolute;inset:-8px}.vn-pin span{white-space:nowrap;background:var(--void);border:2px solid var(--ink2);font-family:var(--display);font-variation-settings:"wdth" 75;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);opacity:0;transition:opacity .25s var(--e-out), translate .35s var(--e-out);pointer-events:none;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:800;font-stretch:75%;line-height:1;position:absolute;top:-15px;left:18px;translate:-4px}.vn-pin:hover i,.vn-pin:focus-visible i,.vn-pin.on i{transform:scale(1.3)}.vn-pin.on i{background:var(--hazard)}.vn-pin.on span{background:var(--hazard);color:var(--void);border-color:var(--void)}.vn-pin:hover span,.vn-pin:focus-visible span,.vn-pin.on span{opacity:1;translate:0}.vn-pin:focus-visible{outline:none}.vn-pin:focus-visible i{outline:3px solid var(--ink);outline-offset:7px}@keyframes vnPulse{0%{opacity:1;transform:scale(.6)}to{opacity:0;transform:scale(1.9)}}.vn-card{z-index:4;right:max(var(--gut), calc(50% - 640px));width:min(360px, calc(100% - var(--gut) * 2));background:var(--void);border:var(--k) solid var(--ink2);box-shadow:8px 8px 0 var(--hazard);animation:vnCard .45s var(--e-out) both;padding:20px 22px 22px;position:absolute;bottom:96px}.vn-fl{background:var(--hazard);color:var(--void);font-family:var(--display);font-variation-settings:"wdth" 75;letter-spacing:.16em;text-transform:uppercase;margin:0 0 12px;padding:4px 10px;font-size:12px;font-weight:800;font-stretch:75%;display:inline-block}.vn-card h3{margin-bottom:10px;padding-right:40px}.vn-card p:last-of-type{color:var(--ink2);text-wrap:pretty;font-size:15.5px;line-height:1.5}.vn-x{width:44px;height:44px;color:var(--ink2);transition:color .2s, transform .3s var(--e-spring);place-items:center;font-size:26px;line-height:1;display:grid;position:absolute;top:6px;right:6px}.vn-x:hover{color:var(--hazard);transform:rotate(90deg)}.vn-x:focus-visible{outline:3px solid var(--ink);outline-offset:-4px}@keyframes vnCard{0%{opacity:0;transform:translate(-8px,14px)}}@keyframes vnIn{0%{opacity:0;transform:translateY(-8px)}}.vn-bar{z-index:3;left:max(var(--gut), calc(50% - 640px));right:max(var(--gut), calc(50% - 640px));align-items:center;gap:12px;display:flex;position:absolute;bottom:clamp(20px,3vw,36px)}.vn-seg{background:var(--void);border:var(--k) solid var(--ink2);box-shadow:4px 4px 0 var(--pink);display:inline-flex}.vn-seg button{min-height:44px;font-family:var(--display);font-variation-settings:"wdth" 75;letter-spacing:.08em;text-transform:uppercase;color:var(--ink2);transition:background .25s var(--e-out), color .25s;padding:0 18px;font-size:15px;font-weight:800;font-stretch:75%}.vn-seg button[aria-pressed=true]{background:var(--ink2);color:var(--void)}.vn-seg button:not([aria-pressed=true]):hover{color:var(--hazard)}.vn-seg button:focus-visible{outline:3px solid var(--hazard);outline-offset:-5px}.vn-hint{background:var(--void);font-family:var(--display);font-variation-settings:"wdth" 75;letter-spacing:.2em;text-transform:uppercase;color:var(--ink3);margin-left:auto;padding:6px 12px;font-size:12px;font-weight:700;font-stretch:75%}.vn-load{z-index:6;padding:var(--gut);background:var(--void);transition:opacity .6s var(--e-out);place-items:center;display:grid;position:absolute;inset:0}.vn-load.out{opacity:0;pointer-events:none}.vn-pill{background:var(--void);border:var(--k) solid var(--ink2);box-shadow:6px 6px 0 var(--pink);animation:vnIn .6s var(--e-out) both;border-radius:999px;align-items:center;gap:16px;padding:12px 28px 12px 14px;display:flex}.vn-orb{flex:none;width:44px;height:44px;animation:6s linear infinite vnSpin}.vn-orb svg{width:100%;height:100%}.vn-load p{min-width:15ch;font-family:var(--display);font-variation-settings:"wdth" 75;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;color:var(--ink2);animation:vnWord .5s var(--e-out) both;font-size:22px;font-weight:800;font-stretch:75%;display:flex}.vn-load p b{font-weight:inherit;color:var(--hazard)}.vn-load p i{font-style:normal;animation:1.2s infinite vnDot}.vn-load p i:nth-child(2){animation-delay:.2s}.vn-load p i:nth-child(3){animation-delay:.4s}@keyframes vnWord{0%{opacity:0;transform:translateY(6px)}}@keyframes vnDot{0%,to{opacity:.2}40%{opacity:1}}@keyframes vnSpin{to{rotate:360deg}}.vn-fail{z-index:1;padding:var(--gut);text-align:center;font-family:var(--display);font-variation-settings:"wdth" 75;letter-spacing:.18em;text-transform:uppercase;color:var(--ink3);place-items:center;font-size:13px;font-weight:700;font-stretch:75%;display:grid;position:absolute;inset:0}.vn-stats{max-width:1280px;padding:0 var(--gut) 12px;grid-template-columns:1.4fr repeat(3,1fr);gap:18px;margin:28px auto 0;display:grid}.vn-stats>div{background:var(--ink2);color:var(--void);border:var(--k) solid var(--void);box-shadow:6px 6px 0 var(--blue);flex-direction:column-reverse;justify-content:flex-end;gap:8px;padding:16px 16px 18px;display:flex}.vn-stats dt{font-family:var(--display);font-variation-settings:"wdth" 75;letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:700;font-stretch:75%;line-height:1.3}.vn-stats dd{font-family:var(--display);font-variation-settings:"wdth" 75;font-variant-numeric:tabular-nums;font-size:clamp(30px,2.8vw,44px);font-weight:800;font-stretch:75%;line-height:.95}.vn-stats .vn-ff{background:var(--pink);box-shadow:6px 6px 0 var(--hazard)}.vn-stats .vn-ff dd .soon{letter-spacing:.08em;font-size:15px}@media (max-width:760px){.vn-stats{grid-template-columns:repeat(3,1fr);gap:12px}.vn-stats .vn-ff{grid-column:1/-1}.vn-stats>div{box-shadow:4px 4px 0 var(--blue);padding:12px 10px 14px}.vn{margin-top:48px}.vn-pill{gap:12px;padding:10px 20px 10px 12px}.vn-orb{width:36px;height:36px}.vn-load p{font-size:18px}.vn-stage{height:max(560px,84svh)}.vn-h{box-shadow:6px 6px 0 var(--pink)}.vn-h h2{font-size:44px}.vn-h p:last-child{font-size:15px}.vn-hint{display:none}.vn-card{left:var(--gut);right:var(--gut);width:auto;bottom:84px}.vn-pin span{display:none}.vn-pin.on span{display:block}}@media (max-height:500px) and (orientation:landscape){.vn-stage{height:max(340px,100svh)}.vn-h{max-width:360px;padding:12px 16px}.vn-h h2{font-size:40px}.vn-h p:last-child{margin-top:8px;font-size:14px}.vn-card{bottom:80px}.vn-hint{display:none}}@media (prefers-reduced-motion:reduce){.vn-pin i:after,.vn-card,.vn-pill,.vn-orb,.vn-load p,.vn-load p i{animation:none}.vn-stage,.vn-pins,.vn-h{transition:none}}
