:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#000;--foreground:#d7fff7}*{box-sizing:border-box}html,body{height:100%;margin:0;overflow:hidden}body{background:var(--background);color:var(--foreground);font-family:Cascadia Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}button,input,textarea,select{font:inherit}.arena{cursor:crosshair;isolation:isolate;touch-action:none;background:#000;width:100vw;height:100dvh;position:relative;overflow:hidden}.world{--camera-x:0px;--camera-y:0px;--world-width:3000px;--world-height:3000px;height:var(--world-height);transform:translate3d(var(--camera-x), var(--camera-y), 0);width:var(--world-width);will-change:transform;z-index:1;background:0 0;position:relative;top:0;left:0;overflow:hidden}.youtube-backdrop{pointer-events:none;z-index:0;background:#000;position:absolute;inset:0;overflow:hidden}.youtube-backdrop__frame{filter:saturate(.72)contrast(1.12)brightness(.56);opacity:.42;border:0;width:max(100vw,177.78vh);height:max(100vh,56.25vw);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.youtube-backdrop__shade{background:radial-gradient(circle,#0000 0,#0000001f 42%,#000000b8 100%),#00000052;position:absolute;inset:0}.scanlines{mix-blend-mode:screen;opacity:.025;pointer-events:none;z-index:3;background:repeating-linear-gradient(#ffffff0d 0 1px,#0000 1px 6px);position:absolute;inset:0}.chat-hud{pointer-events:none;z-index:6;grid-template-rows:auto 1.12em;row-gap:.52rem;width:min(100vw - 2.2rem,78rem);font-family:Cascadia Mono,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;display:grid;position:absolute;bottom:1.1rem;left:1.1rem}.chat-hud--active{pointer-events:auto}.chat-log-wrap{max-width:min(100%,58rem);position:relative}.chat-log{color:#ffffffe0;pointer-events:auto;scrollbar-width:none;text-shadow:0 0 .28rem #ffffff85,0 0 .7rem #63f7e83d;touch-action:pan-y;-webkit-user-select:none;user-select:none;gap:.22rem;max-height:7.4rem;padding-right:.6rem;font-size:clamp(.72rem,1.18vw,1rem);font-weight:700;line-height:1.12;display:grid;overflow:hidden auto}.chat-log::-webkit-scrollbar{display:none}.chat-scroll{opacity:.34;pointer-events:none;width:.12rem;position:absolute;top:.08rem;bottom:.08rem;right:0}.chat-scroll__thumb{height:var(--chat-scroll-height);min-height:.55rem;top:var(--chat-scroll-top);background:#ffffffb3;width:100%;position:absolute}.chat-log__message{overflow-wrap:anywhere}.chat-log__name{color:#fff}.chat-log__text{color:#ffffffd1}.chat-prompt{color:#ffffff47;cursor:text;letter-spacing:0;pointer-events:auto;text-shadow:0 0 .28rem #ffffff2e,0 0 .62rem #63f7e81f;-webkit-user-select:none;user-select:none;white-space:nowrap;height:1.12em;font-size:clamp(.72rem,1.18vw,1rem);font-weight:700;line-height:1.12;position:relative;overflow:hidden}.chat-prompt--active{color:#fff;cursor:text;pointer-events:auto;text-shadow:0 0 .35rem #ffffffb3,0 0 .9rem #63f7e870;width:min(100%,104ch)}.chat-prompt__cursor{background:#fff;width:.58em;height:1em;margin:0;animation:.9s steps(2,end) infinite block-cursor;display:inline-block;transform:translateY(.06em)}.chat-prompt__cursor--input{margin-left:.06em;margin-right:0}.chat-prompt__entry{height:100%;line-height:inherit;text-overflow:clip;white-space:pre;z-index:1;width:100%;position:relative;overflow:auto hidden}.chat-prompt__entry::-webkit-scrollbar{display:none}.chat-prompt__entry{scrollbar-width:none}.chat-prompt__input{caret-color:#0000;color:#0000;opacity:0;height:100%;font:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;text-shadow:inherit;z-index:2;background:0 0;border:0;outline:0;width:100%;padding:0;position:absolute;inset:0}.map-boundary{pointer-events:none;z-index:3;position:absolute;inset:0}.map-border{color:#63f7e8;filter:drop-shadow(0 0 .4rem);opacity:.92;-webkit-user-select:none;user-select:none;white-space:pre;margin:0;font-size:.95rem;font-weight:700;line-height:1;position:absolute;overflow:hidden}.map-border--top,.map-border--bottom{left:.7rem;right:.7rem}.map-border--top{top:.7rem}.map-border--bottom{bottom:.7rem}.map-rail{color:#63f7e8;filter:drop-shadow(0 0 .4rem);opacity:.92;width:11ch;font-size:.95rem;font-weight:700;line-height:1;position:absolute;top:1.8rem;bottom:1.8rem}.map-rail:before{content:"";background:repeating-linear-gradient(currentColor 0 8px,#0000 8px 11px);width:2px;position:absolute;top:0;bottom:0}.map-rail--left{left:.7rem}.map-rail--left:before{left:0}.map-rail--right{right:.7rem}.map-rail--right:before{right:0}.map-edge-label{text-shadow:0 0 .35rem;white-space:nowrap;position:absolute}.map-rail--left .map-edge-label{left:1rem}.map-rail--right .map-edge-label{right:1rem}.map-edge-label--top{top:0}.map-edge-label--middle{top:50%;translate:0 -50%}.map-edge-label--bottom{bottom:0}.ambient-field{pointer-events:none;z-index:0;position:absolute;inset:0}.ambient-field:before{content:"";mix-blend-mode:multiply;pointer-events:none;z-index:2;background:repeating-linear-gradient(#0000006b 0 .22rem,#9cfff10a .22rem .29rem,#0000 .29rem .78rem);animation:5.5s linear infinite ambient-scanlines;position:absolute;inset:0}.ambient{--ambient-delay:0s;--ambient-duration:16s;color:#9cfff194;contain:layout paint style;letter-spacing:.02rem;left:var(--ambient-x);opacity:.034;z-index:1;text-shadow:0 0 .34rem #96ffee57,.12rem 0 #9cfff129,-.12rem 0 #5ed4c424;top:var(--ambient-y);-webkit-user-select:none;user-select:none;white-space:pre;margin:0;font-size:clamp(1.9rem,3.8vw,3.45rem);font-weight:600;line-height:1.05;position:absolute}.ambient:before,.ambient:after{content:attr(data-text);pointer-events:none;white-space:pre;position:absolute;inset:0}.ambient:before{clip-path:inset(0 0 50%);color:#dcfffcd6;opacity:.74;text-shadow:.3rem 0 #dcfffc57;animation:.26s steps(2,end) infinite ambient-tear-top}.ambient:after{clip-path:inset(34% 0 0);color:#62e7d2d1;opacity:.68;text-shadow:-.3rem 0 #62e7d252;animation:.34s steps(2,end) infinite reverse ambient-tear-bottom}.tap-target{--tap-target-x:0px;--tap-target-y:0px;color:#ffffffb3;left:var(--tap-target-x);pointer-events:none;text-shadow:0 0 .42rem #ffffffb8,0 0 .9rem #67f4dd61;top:var(--tap-target-y);-webkit-user-select:none;user-select:none;z-index:2;font-size:1.15rem;font-weight:800;line-height:1;animation:.72s steps(2,end) infinite tap-target-pulse;position:absolute;transform:translate(-50%,-50%)}.ambient--drift{animation:cipher-drift var(--ambient-duration) linear infinite, ambient-jitter .42s steps(2) infinite;animation-delay:var(--ambient-delay), calc(var(--ambient-delay) * .19)}.ambient--fall{animation:cipher-fall var(--ambient-duration) linear infinite, ambient-jitter .38s steps(2) infinite reverse;animation-delay:var(--ambient-delay), calc(var(--ambient-delay) * .17)}.ambient--phase{animation:cipher-phase var(--ambient-duration) steps(4) infinite, ambient-jitter .46s steps(2) infinite;animation-delay:var(--ambient-delay), calc(var(--ambient-delay) * .23)}.ambient--slide{animation:cipher-slide var(--ambient-duration) linear infinite, ambient-jitter .36s steps(2) infinite reverse;animation-delay:var(--ambient-delay), calc(var(--ambient-delay) * .13)}.ascii-field{pointer-events:none;z-index:1;position:absolute;inset:0}.scenery{--distortion:0;filter:drop-shadow(0 0 .35rem);isolation:isolate;left:var(--scene-x);opacity:.86;top:var(--scene-y);white-space:pre;margin:0;font-size:clamp(.72rem,1.2vw,1rem);line-height:1;transition:filter .14s,opacity .14s;position:absolute}.scenery--near{animation:distortion-jitter calc(.22s - (var(--distortion) * .11s)) steps(2) infinite, signal-swell .9s ease-in-out infinite;filter:drop-shadow(0 0 calc(.35rem + (var(--distortion) * .55rem)) currentColor) drop-shadow(0 0 calc(var(--distortion) * 1.25rem) #ff5ba4b3);opacity:1}.scenery--near:before,.scenery--near:after{content:attr(data-text);opacity:calc(.16 + (var(--distortion) * .58));pointer-events:none;white-space:pre;position:absolute;inset:0}.scenery--near:before{clip-path:inset(0 0 46%);color:#ff5da2;translate:calc(var(--distortion) * -.3rem) 0}.scenery--near:after{clip-path:inset(44% 0 0);color:#63f7e8;translate:calc(var(--distortion) * .34rem) 0}.scenery--prompt{color:#63f7e8;width:max-content;animation:14s steps(12,end) infinite terminal-crawl}.scenery--trace-a{color:#eaff70;animation:18s linear infinite packet-right}.scenery--trace-b{color:#ff5e98;animation:23s linear infinite packet-left}.scenery--trace-c{color:#7dff76;animation:2.6s steps(2,end) infinite blink}.scenery--node-a,.scenery--node-b{color:#7df7ff;font-size:clamp(.72rem,1vw,.95rem);line-height:1.05;animation:3.4s steps(2,end) infinite node-pulse}.scenery--bits-left,.scenery--bits-right{color:#8cff66;font-size:clamp(.85rem,1.35vw,1.15rem);line-height:1.05;animation:5s steps(5,end) infinite data-fall}.scenery--console{color:#ffd166;animation:8s steps(8,end) infinite reverse terminal-crawl}.scenery.scenery--near{animation:distortion-jitter calc(.22s - (var(--distortion) * .11s)) steps(2) infinite, signal-swell .9s ease-in-out infinite}.avatar{--accent:#f7f871;--glow:#67f4dd;--skin:#8af7ff;--trim:#ff5da2;--x:0px;--y:0px;color:var(--skin);text-align:center;text-shadow:0 0 .35rem,0 0 .85rem #67f4dd8c;min-width:7ch;min-height:6rem;transform:translate3d(var(--x), var(--y), 0);-webkit-user-select:none;user-select:none;white-space:pre;z-index:2;margin:0;font-size:clamp(1.15rem,2.2vw,1.85rem);font-weight:700;line-height:1;transition:filter .12s;position:absolute;top:0;left:0}.avatar-name{--x:0px;--y:0px;color:#fff;left:calc(var(--x) + clamp(2.2rem, 4.25vw, 3.55rem));letter-spacing:0;pointer-events:none;text-align:center;text-shadow:0 0 .28rem #63f7e8b8,0 0 .65rem #63f7e859;top:calc(var(--y) - 1.15rem);-webkit-user-select:none;user-select:none;white-space:nowrap;z-index:3;font-size:clamp(.68rem,1.1vw,.92rem);font-weight:700;line-height:1;position:absolute;transform:translate(-50%)}.avatar-bubble{--x:0px;--y:0px;color:#fff;left:calc(var(--x) + clamp(2.2rem, 4.25vw, 3.55rem));letter-spacing:0;overflow-wrap:anywhere;pointer-events:none;text-align:left;text-shadow:0 0 .28rem #ffffffc7,0 0 .75rem #63f7e86b;min-width:1ch;max-width:min(32ch,26rem);max-height:5.6em;top:calc(var(--y) - 1.9rem);-webkit-user-select:none;user-select:none;white-space:normal;z-index:4;font-size:clamp(.62rem,1vw,.86rem);font-weight:800;line-height:1.08;position:absolute;overflow:hidden;transform:translate(-50%,-100%)}.avatar-bubble__ghost{visibility:hidden;display:block}.avatar-bubble__text{overflow-wrap:anywhere;white-space:inherit;position:absolute;inset:0}.avatar-dance-notes{--x:0px;--y:0px;height:4.2rem;left:calc(var(--x) + clamp(2.2rem, 4.25vw, 3.55rem));pointer-events:none;top:calc(var(--y) - 3.8rem);-webkit-user-select:none;user-select:none;z-index:3;width:8rem;line-height:1;position:absolute;transform:translate(-50%)}.avatar-dance-note{animation:dance-note-float var(--note-duration) ease-in-out infinite;animation-delay:var(--note-delay);color:#fff;font-size:var(--note-size);opacity:0;text-shadow:0 0 .22rem #ffffffdb,0 0 .68rem #67f4dd9e,0 0 1rem #ff5da238;transform-origin:50%;font-weight:800;position:absolute;top:2.7rem;left:50%}.avatar-video{--x:0px;--y:0px;aspect-ratio:16/9;left:calc(var(--x) + clamp(2.2rem, 4.25vw, 3.55rem));pointer-events:auto;top:calc(var(--y) - 12.6rem);z-index:5;background:#000;border:1px solid #67f4dd94;width:clamp(12rem,24vw,19rem);position:absolute;overflow:hidden;transform:translate(-50%);box-shadow:0 0 .45rem #67f4dd61,0 0 1.4rem #67f4dd33,inset 0 0 1.1rem #67f4dd1f}.avatar-video:before,.avatar-video:after{color:#67f4ddc7;content:"+----------------+";pointer-events:none;text-align:center;text-shadow:0 0 .5rem #67f4ddad;z-index:1;font-size:.58rem;font-weight:800;line-height:1;position:absolute;left:.18rem;right:.18rem}.avatar-video:before{top:.18rem}.avatar-video:after{bottom:.18rem}.avatar-video__frame{filter:saturate(.85)contrast(1.08)brightness(.82);opacity:.92;border:0;width:100%;height:100%;display:block}.avatar-name--remote,.avatar-bubble--remote,.avatar-dance-notes--remote,.avatar-video--remote{will-change:left, top;transition:left .28s linear,top .28s linear}.avatar--left{transform:translate3d(var(--x), var(--y), 0) scaleX(-1)}.avatar--moving{filter:saturate(1.25);animation:.3s steps(2,end) infinite walk-bob}.avatar--idle{animation:2.4s steps(4,end) infinite idle-breathe}.avatar--idle .avatar__row:first-child{animation:3.1s steps(2,end) infinite idle-hair-flicker}.avatar--idle .avatar__row:nth-child(2){animation:4.2s steps(2,end) infinite idle-face-flicker}.avatar--idle .avatar__row:nth-child(3){animation:2.2s steps(2,end) infinite idle-arm-sway}.avatar--idle .avatar__row:nth-child(4){animation:2.8s ease-in-out infinite idle-core-pulse}.avatar--idle .avatar__row:nth-child(5){animation:2.6s steps(2,end) infinite idle-foot-shift}.avatar--dancing{text-shadow:0 0 .35rem,0 0 .85rem #67f4dd99,0 0 1.1rem #ff5da238;animation:.84s steps(2,end) infinite dance-bounce}.avatar--dancing .avatar__row:first-child{animation:.88s steps(2,end) infinite dance-hair}.avatar--dancing .avatar__row:nth-child(2){animation:.84s steps(2,end) infinite dance-head}.avatar--dancing .avatar__row:nth-child(3){animation:.64s steps(2,end) infinite dance-arms}.avatar--dancing .avatar__row:nth-child(4){animation:.78s steps(2,end) infinite dance-core}.avatar--dancing .avatar__row:nth-child(5){animation:.64s steps(2,end) infinite dance-feet}.avatar--up{filter:hue-rotate(18deg)}.avatar--down{filter:hue-rotate()}.avatar--right{filter:hue-rotate(-12deg)}.avatar--left{filter:hue-rotate(12deg)saturate(1.2)}.avatar--remote{left:var(--x);top:var(--y);will-change:left, top;transition:left .28s linear,top .28s linear,filter .12s;transform:translate(0,0)}.avatar--remote.avatar--left{transform:scaleX(-1)}.avatar.avatar--shuffling{filter:saturate(calc(1.2 + var(--avatar-distortion,0) * .75)) contrast(calc(1 + var(--avatar-distortion,0) * .28)) drop-shadow(0 0 calc(var(--avatar-distortion,0) * .55rem) #63f7e8b8)}.avatar.avatar--shuffling.avatar--up{filter:hue-rotate(18deg) saturate(calc(1.2 + var(--avatar-distortion,0) * .75)) contrast(calc(1 + var(--avatar-distortion,0) * .28)) drop-shadow(0 0 calc(var(--avatar-distortion,0) * .55rem) #63f7e8b8)}.avatar.avatar--shuffling.avatar--right{filter:hue-rotate(-12deg) saturate(calc(1.2 + var(--avatar-distortion,0) * .75)) contrast(calc(1 + var(--avatar-distortion,0) * .28)) drop-shadow(0 0 calc(var(--avatar-distortion,0) * .55rem) #63f7e8b8)}.avatar.avatar--shuffling.avatar--left{filter:hue-rotate(12deg) saturate(calc(1.35 + var(--avatar-distortion,0) * .75)) contrast(calc(1 + var(--avatar-distortion,0) * .28)) drop-shadow(0 0 calc(var(--avatar-distortion,0) * .55rem) #63f7e8b8)}.avatar--shuffling .avatar__row:nth-child(odd){animation:.15s steps(2,end) infinite avatar-row-shuffle-a}.avatar--shuffling .avatar__row:nth-child(2n){animation:.17s steps(2,end) infinite avatar-row-shuffle-b}.avatar--shuffling .avatar__tone{animation:.11s steps(2,end) infinite avatar-piece-shuffle}.avatar__row{height:1em;display:block}.avatar__tone{display:inline-block}.avatar__tone--accent{color:var(--accent)}.avatar__tone--glow{color:var(--glow)}.avatar__tone--skin{color:var(--skin)}.avatar__tone--trim{color:var(--trim)}@keyframes avatar-row-shuffle-a{50%{translate:calc(var(--avatar-distortion,0) * -.08rem) 0}}@keyframes avatar-row-shuffle-b{50%{translate:calc(var(--avatar-distortion,0) * .1rem) 0}}@keyframes avatar-piece-shuffle{50%{opacity:calc(1 - var(--avatar-distortion,0) * .28);text-shadow:calc(var(--avatar-distortion,0) * -.08rem) 0 0 #ff5e98b8, calc(var(--avatar-distortion,0) * .08rem) 0 0 #63f7e8b8;translate:calc(var(--avatar-distortion,0) * .05rem) 0}}@keyframes tap-target-pulse{50%{opacity:.35;scale:1.45}}@keyframes walk-bob{0%{translate:0}to{translate:0 -.22rem}}@keyframes idle-breathe{0%,to{translate:0}50%{translate:0 -.12rem}}@keyframes idle-hair-flicker{0%,88%,to{opacity:1;translate:0}92%{opacity:.74;translate:0 -.04rem}}@keyframes idle-face-flicker{0%,82%,to{filter:brightness()}86%{filter:brightness(1.45)}90%{filter:brightness(.72)}}@keyframes idle-arm-sway{0%,to{translate:0}50%{translate:.08rem}}@keyframes idle-core-pulse{0%,to{opacity:.92}50%{opacity:1}}@keyframes idle-foot-shift{0%,to{translate:0}50%{translate:-.06rem}}@keyframes dance-bounce{0%,to{translate:0}25%{translate:-.1rem -.22rem}50%{translate:.12rem}75%{translate:.08rem -.18rem}}@keyframes dance-hair{50%{translate:0 -.14rem}}@keyframes dance-head{50%{translate:.08rem}}@keyframes dance-arms{50%{translate:-.16rem}}@keyframes dance-core{50%{opacity:.78;translate:.1rem}}@keyframes dance-feet{50%{translate:.16rem}}@keyframes dance-note-float{0%{opacity:0;rotate:calc(var(--note-tilt) * -.25);translate:0 .5rem;scale:.62}14%,72%{opacity:var(--note-opacity)}to{opacity:0;rotate:var(--note-tilt);scale:1.08;translate:var(--note-x) var(--note-rise)}}@keyframes block-cursor{50%{opacity:0}}@keyframes terminal-crawl{50%{opacity:.52;translate:-1rem}}@keyframes packet-right{50%{opacity:.6;translate:2.25rem}}@keyframes packet-left{50%{opacity:.6;translate:-2.25rem}}@keyframes blink{50%{opacity:.35}}@keyframes node-pulse{50%{opacity:.55;translate:0 .18rem}}@keyframes data-fall{50%{opacity:.62;translate:0 .85rem}}@keyframes distortion-jitter{0%,to{transform:skew(0)translate(0)}50%{transform:skewX(calc(var(--distortion) * -4deg)) translateX(calc(var(--distortion) * .1rem))}}@keyframes signal-swell{50%{letter-spacing:calc(var(--distortion) * .035rem)}}@keyframes cipher-drift{0%{opacity:0;translate:-1rem .35rem}14%,84%{opacity:.064}to{opacity:0;translate:1.8rem -.45rem}}@keyframes cipher-fall{0%{opacity:0;translate:0 -2.2rem}16%,80%{opacity:.06}to{opacity:0;translate:0 3.4rem}}@keyframes cipher-phase{0%,to{opacity:.022;translate:0}35%{opacity:.07;translate:.45rem -.35rem;scale:1.02}65%{opacity:.04;translate:-.35rem .35rem;scale:.99}}@keyframes cipher-slide{0%,to{opacity:.018;translate:0}20%{opacity:.055;translate:.8rem .5rem}75%{opacity:.064;translate:-.55rem -.45rem}}@keyframes ambient-jitter{0%,to{transform:skew(0)translate(0)}32%{transform:skew(-.35deg)translate(-.025rem)}64%{transform:skew(.3deg)translate(.02rem)}}@keyframes ambient-scanlines{0%{transform:translateY(0)}to{transform:translateY(.78rem)}}@keyframes ambient-tear-top{0%,to{transform:skew(0)translate(0)}18%{clip-path:inset(0 0 68%);transform:skew(1.4deg)translate(.06rem)}35%{clip-path:inset(8% 0 42%);transform:skew(-1.8deg)translate(-.08rem)}65%{clip-path:inset(0 0 58%);transform:skew(1deg)translate(.05rem)}}@keyframes ambient-tear-bottom{0%,to{transform:skew(0)translate(0)}25%{clip-path:inset(56% 0 12%);transform:skew(-1deg)translate(-.07rem)}45%{clip-path:inset(28% 0 0);transform:skew(1.5deg)translate(.08rem)}70%{clip-path:inset(48% 0 0);transform:skew(-.9deg)translate(-.05rem)}}@media (max-width:700px){.map-border,.map-rail{font-size:.78rem}}
