:root{color:#f4f8ff;background:#000;font-family:SFMono-Regular,SF Mono,Roboto Mono,Cascadia Code,Helvetica Neue,monospace;font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}html{background:#000}body{margin:0;min-width:0;min-height:100vh;overflow:hidden;background:#000;-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision}#root{min-height:100vh}.scene{--pointer-x: 50vw;--pointer-y: 50vh;position:relative;display:grid;min-height:100svh;place-items:center;overflow:hidden;isolation:isolate;cursor:crosshair;background:#000;touch-action:none}.ambient-glow{position:absolute;top:-18%;right:-18%;bottom:-18%;left:-18%;z-index:-3;opacity:0;background:radial-gradient(circle clamp(180px,28vw,430px) at var(--pointer-x) var(--pointer-y),rgba(112,188,255,.12) 0%,rgba(35,111,200,.08) 23%,rgba(8,39,89,.035) 48%,transparent 76%);transition:opacity .18s ease-out;pointer-events:none}.scene.is-active .ambient-glow{opacity:1}.vignette{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none;background:radial-gradient(circle clamp(150px,24vw,360px) at var(--pointer-x) var(--pointer-y),transparent 0%,rgba(0,0,0,.08) 48%,rgba(0,0,0,.48) 76%,rgba(0,0,0,.9) 100%);opacity:0;transition:opacity .18s ease-out}.scene.is-active .vignette{opacity:1}.logo-stage{--local-x: 50%;--local-y: 50%;position:relative;z-index:2;width:min(68vmin,680px);aspect-ratio:1;outline:none;transform:translateZ(0) scale(.985);transition:transform .24s cubic-bezier(.16,1,.3,1);-webkit-tap-highlight-color:transparent}.scene.is-active .logo-stage,.logo-stage:focus-visible{transform:translateZ(0) scale(1)}.logo-stage:focus-visible:after{content:"";position:absolute;top:5%;right:5%;bottom:5%;left:5%;border:1px solid rgba(99,191,255,.16);border-radius:50%;box-shadow:0 0 28px #288fff29}.logo-image{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;-webkit-user-select:none;user-select:none;object-fit:contain}.logo-base{opacity:0;filter:saturate(.45) brightness(.3) contrast(1.1);transition:opacity .18s ease-out,filter .18s ease-out}.scene.is-active .logo-base{opacity:.035;filter:saturate(.55) brightness(.38) contrast(1.08)}.logo-reveal{z-index:2;opacity:0;filter:saturate(1.08) brightness(1.05) contrast(1.04);mask-image:radial-gradient(circle clamp(110px,19vmin,205px) at var(--local-x) var(--local-y),#000 0%,rgba(0,0,0,.98) 25%,rgba(0,0,0,.78) 48%,rgba(0,0,0,.34) 70%,transparent 100%);-webkit-mask-image:radial-gradient(circle clamp(110px,19vmin,205px) at var(--local-x) var(--local-y),#000 0%,rgba(0,0,0,.98) 25%,rgba(0,0,0,.78) 48%,rgba(0,0,0,.34) 70%,transparent 100%);transition:opacity .14s ease-out}.scene.is-active .logo-reveal,.logo-stage:focus-visible .logo-reveal{opacity:1}.glass-shade{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;background:#000;transition:background-color .16s ease-out}.scene.is-active .glass-shade{background:#00000004}.stage-aura{position:absolute;top:8%;right:8%;bottom:8%;left:8%;z-index:-1;opacity:0;border-radius:50%;background:#1f79dc1c;filter:blur(92px);transform:scale(.7);transition:opacity .22s ease-out,transform .28s cubic-bezier(.16,1,.3,1)}.scene.is-active .stage-aura{opacity:.7;transform:scale(1.04)}.spot-ring{position:absolute;left:var(--local-x);top:var(--local-y);z-index:4;width:clamp(190px,25vmin,300px);aspect-ratio:1;opacity:0;border:0;border-radius:50%;background:radial-gradient(circle at 38% 34%,rgba(238,249,255,.15) 0%,rgba(161,216,255,.1) 17%,rgba(77,158,235,.055) 36%,rgba(20,80,154,.025) 58%,transparent 76%);box-shadow:inset -22px -28px 58px #00000038,inset 18px 14px 42px #b4e2ff09,0 0 42px #2989e712,0 0 110px #0a499d0b;filter:blur(.6px);transform:translate(-50%,-50%) scale(.78);transition:opacity .16s ease-out,transform .22s cubic-bezier(.16,1,.3,1);pointer-events:none}.scene.is-active .spot-ring,.logo-stage:focus-visible .spot-ring{opacity:.95;transform:translate(-50%,-50%) scale(1)}.signal-field{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;overflow:hidden;pointer-events:none;opacity:0;transition:opacity .16s ease-out}.scene.is-active .signal-field{opacity:1}.signal-line{position:absolute;left:var(--signal-x);top:var(--signal-y);display:block;width:var(--signal-length);height:var(--signal-thickness);opacity:0;transform:rotate(var(--signal-angle));transform-origin:left center;filter:opacity(var(--signal-energy));animation:signal-discharge var(--signal-duration) steps(2,end) var(--signal-delay) both;will-change:opacity}.signal-line:before,.signal-line:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:left center}.signal-line:before{background:linear-gradient(90deg,transparent 0%,rgba(37,121,206,.16) 6%,rgba(104,191,255,.58) 21%,rgba(91,181,255,.34) 62%,rgba(40,122,214,.1) 88%,transparent 100%);box-shadow:0 0 7px #2085ec33;transform:scaleX(0);animation:trace-grow var(--signal-duration) cubic-bezier(.12,.72,.2,1) var(--signal-delay) both}.signal-line:after{top:-4px;bottom:-4px;background:linear-gradient(90deg,transparent,rgba(19,107,218,.02) 18%,rgba(46,152,255,.13) 46%,rgba(13,91,202,.025) 82%,transparent);filter:blur(4px)}.signal-packet{position:absolute;left:calc(0px - var(--packet-size));top:-1px;width:var(--packet-size);height:3px;background:linear-gradient(90deg,transparent 0%,rgba(101,198,255,.18) 22%,#eefaff 62%,#63c5ff 73%,transparent 100%);box-shadow:0 0 4px #dbf6fff2,0 0 12px #34a6ffd1,0 0 28px #0067e85c;animation:packet-run var(--signal-duration) cubic-bezier(.15,.55,.18,1) var(--signal-delay) both}.signal-branch{position:absolute;left:var(--branch-at);top:0;width:var(--branch-length);height:1px;opacity:var(--branch-opacity);background:linear-gradient(90deg,rgba(205,241,255,.88),rgba(60,168,255,.34) 48%,transparent);box-shadow:0 0 7px #32a5ff8c;transform-origin:left center;animation:branch-flash var(--signal-duration) steps(3,end) var(--signal-delay) both}.signal-branch-a{transform:rotate(var(--branch-angle))}.signal-branch-b{width:var(--branch-length-b);opacity:var(--branch-opacity-b);transform:rotate(var(--branch-angle-b))}.signal-node{position:absolute;left:var(--branch-at);top:50%;width:3px;height:3px;border-radius:50%;background:#f0fbff;box-shadow:0 0 5px #c6efff,0 0 14px #30adffe6,0 0 28px #0068ff73;transform:translate(-50%,-50%) scale(0);animation:node-pop var(--signal-duration) steps(2,end) var(--signal-delay) both}.hud{position:absolute;z-index:8;display:flex;width:100%;padding-inline:clamp(22px,3.8vw,60px);justify-content:space-between;color:#aec9e770;font-size:9px;font-weight:500;letter-spacing:.24em;line-height:1;text-transform:uppercase;pointer-events:none;opacity:0;transition:opacity .18s ease-out}.scene.is-active .hud,.logo-stage:focus-visible~.hud{opacity:1}.hud-top{top:clamp(22px,4vw,54px)}.hud-bottom{bottom:clamp(22px,4vw,54px)}.hud-status{color:#70cdff8f}.hud-status:before{content:"";display:inline-block;width:4px;height:4px;margin-right:9px;border-radius:50%;background:#50c8ff;box-shadow:0 0 8px #188cff;vertical-align:1px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes signal-discharge{0%{opacity:0}9%{opacity:.16}17%{opacity:.92}24%{opacity:.28}34%{opacity:1}48%{opacity:.5}64%{opacity:.78}79%{opacity:.18}to{opacity:0}}@keyframes trace-grow{0%{transform:scaleX(0)}18%{transform:scaleX(.18)}42%,to{transform:scaleX(1)}}@keyframes packet-run{0%,8%{left:calc(0px - var(--packet-size));opacity:0}18%{opacity:.95}72%{opacity:.82}to{left:100%;opacity:0}}@keyframes branch-flash{0%,31%{clip-path:inset(0 100% 0 0)}42%{clip-path:inset(0 28% 0 0)}53%{clip-path:inset(0 0 0 0)}71%{opacity:.16}to{opacity:0}}@keyframes node-pop{0%,28%{transform:translate(-50%,-50%) scale(0);opacity:0}36%{transform:translate(-50%,-50%) scale(1.45);opacity:1}52%{transform:translate(-50%,-50%) scale(.7);opacity:.7}to{transform:translate(-50%,-50%) scale(0);opacity:0}}@media(max-width:640px){.logo-stage{width:min(88vw,540px)}.hud{font-size:8px;letter-spacing:.17em}}@media(prefers-reduced-motion:reduce){.logo-stage,.logo-base,.logo-reveal,.glass-shade,.stage-aura,.spot-ring{transition-duration:.01ms!important}.signal-line,.signal-line:before,.signal-packet,.signal-branch,.signal-node{animation:none}}
