*{box-sizing:border-box;margin:0;padding:0}html{background:#000;font-size:clamp(12px,1.5vw,21px)}body{min-height:100%;background:#000000e0;color:#b0b0b0;font-family:Courier New,monospace;overflow-x:hidden}@keyframes glitch{0%,90%{clip-path:none;transform:none;text-shadow:0 0 40px #ff980060}91%{clip-path:inset(30% 0 55% 0);transform:translate(-3px);text-shadow:-3px 0 #00e5ff,3px 0 #ff2d78}93%{clip-path:inset(55% 0 20% 0);transform:translate(3px);text-shadow:3px 0 #00e5ff,-3px 0 #ff2d78}95%{clip-path:none;transform:translate(-1px);text-shadow:0 0 40px #ff980060}97%{clip-path:inset(10% 0 80% 0);transform:translate(1px);text-shadow:-1px 0 #00e5ff}to{clip-path:none;transform:none;text-shadow:0 0 40px #ff980060}}@keyframes flicker{0%,to{opacity:1}48%{opacity:.97}50%{opacity:.93}52%{opacity:.97}}.hdr{text-align:center;padding:1.1rem 1rem .4rem;position:relative;z-index:2}h1{font-size:3.5rem;color:#ff9800;letter-spacing:.35em;line-height:1;margin-bottom:.15rem;animation:glitch 9s infinite,flicker 4s infinite}.sub{font-size:.57rem;color:#506050;letter-spacing:.11em;margin-bottom:.6rem;text-transform:uppercase}.gleg{display:flex;justify-content:center;gap:1.4rem;font-size:.62rem;letter-spacing:.06em;margin-bottom:.8rem;flex-wrap:wrap}.gleg span{cursor:default;-webkit-user-select:none;user-select:none;transition:text-shadow .15s}.gleg span:hover{text-shadow:0 0 10px currentColor}.nav{display:flex;align-items:center;justify-content:center;gap:1.1rem;margin-bottom:.45rem;position:relative;z-index:2}.nav-arr{background:none;border:1px solid #1a3a28;color:#2a7040;font-family:Courier New,monospace;font-size:.7rem;padding:.28rem .8rem;border-radius:2px;cursor:pointer;transition:all .14s;letter-spacing:.09em;-webkit-user-select:none;user-select:none;text-transform:uppercase}.nav-arr:hover:not(:disabled){border-color:#00e5ff;color:#00e5ff;box-shadow:0 0 12px #00e5ff30,inset 0 0 8px #00e5ff08}.nav-arr:disabled{opacity:.14;cursor:default}.slide-info{font-size:.6rem;color:#2a5a30;letter-spacing:.12em;min-width:4rem;text-align:center}.slide-dots{display:flex;gap:.5rem;align-items:center}.dot{width:6px;height:6px;border-radius:50%;background:#1e301e;cursor:pointer;transition:all .18s}.dot.on{background:#00e5ff;transform:scale(1.45);box-shadow:0 0 8px #00e5ff}.tabs{display:flex;flex-wrap:wrap;gap:1px;border-bottom:1px solid #0a0a0a;max-width:1147px;margin:0 auto;padding:0 1rem;position:relative;z-index:2}.tab{padding:.38rem 1.1rem;font-size:.56rem;letter-spacing:.13em;color:#c1c1c1;cursor:pointer;border:1px solid transparent;border-bottom:none;border-radius:2px 2px 0 0;-webkit-user-select:none;user-select:none;transition:color .14s,border-color .14s;white-space:nowrap;text-transform:uppercase}.tab:hover{color:#00e5ff;border-color:#0a2028}.tab.on{color:#00e5ff;border-color:#0a2028;background:#040408;border-bottom-color:#040408;text-shadow:0 0 10px #00e5ff50}.tab .n{color:#a0a0a0;margin-right:.3rem}.tab.on .n{color:#1a5060}.pw{background:#040408;border:1px solid #0a0a0a;border-top:none;border-radius:0 0 6px 6px;padding:1rem 1rem .75rem;max-width:1147px;margin:0 auto;position:relative;z-index:2}.canvaswrap{position:relative;border-radius:3px;overflow:hidden}.canvaswrap:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.13) 2px,rgba(0,0,0,.13) 4px);pointer-events:none;z-index:10}.canvaswrap:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.55) 100%);pointer-events:none;z-index:11}#glc{display:block;width:100%;aspect-ratio:2/1;height:auto;cursor:grab}#glc:active{cursor:grabbing}.ov{position:absolute;top:12px;right:14px;pointer-events:none;font-size:8.5px;line-height:1.7;text-align:right;z-index:5;transform:scale(1.25);transform-origin:top right}.ctrls{display:flex;align-items:center;gap:6px;margin-top:7px;flex-wrap:wrap;min-height:20px;position:relative;z-index:2}.cset{display:none;align-items:center;gap:6px;flex-wrap:wrap}.cset.on{display:flex}.btn{background:#040408;border:1px solid #0a2028;color:#1a6040;font-family:Courier New,monospace;font-size:.56rem;padding:3px 9px;border-radius:2px;cursor:pointer;letter-spacing:.07em;-webkit-user-select:none;user-select:none;transition:all .12s;text-transform:uppercase}.btn:hover{border-color:#00e5ff;color:#00e5ff;box-shadow:0 0 10px #00e5ff20,inset 0 0 6px #00e5ff08}.btn.lit{border-color:#0f8;color:#0f8;box-shadow:0 0 6px #00ff8818}.btn.pu{border-color:#ff9800;color:#ff9800}.btn.pu:hover{border-color:#fb4;color:#fb4;box-shadow:0 0 12px #ff980040}.clbl{font-size:.54rem;color:#c1c1c1;letter-spacing:.05em;text-transform:uppercase}select{background:#040408;border:1px solid #0a2028;color:#1a6040;font-family:Courier New,monospace;font-size:.56rem;padding:2px 4px;border-radius:2px;cursor:pointer}#s6input,#s6speed{background:#040408;border:1px solid #0a2028;color:#0f8;font-family:Courier New,monospace;font-size:.56rem;padding:3px 7px;border-radius:2px;outline:none}#s6input{width:7rem}#s6speed{padding:3px 5px}.stat{font-size:.54rem;color:#c1c1c1;letter-spacing:.04em;margin-left:3px}.node-lbl{font-family:Courier New,monospace;font-size:9px;letter-spacing:.04em;text-shadow:0 0 6px currentColor,0 0 2px #000;pointer-events:none;white-space:nowrap}.angle-lbl{font-family:Courier New,monospace;font-size:8px;letter-spacing:.03em;pointer-events:none;white-space:nowrap;opacity:.75}.badge{font-size:.54rem;background:#040408;border:1px solid #0a2028;border-radius:2px;padding:2px 7px;color:#2a8050;letter-spacing:.04em;font-family:Courier New,monospace}.hint{text-align:center;font-size:.54rem;color:#c1c1c1;letter-spacing:.09em;margin-top:.55rem;padding-bottom:.25rem;position:relative;z-index:2;text-transform:uppercase}#tt{position:fixed;background:#020206;border:1px solid #0a2028;border-radius:3px;padding:8px 12px;font-family:Courier New,monospace;font-size:.68rem;color:#0f8;pointer-events:none;opacity:0;transition:opacity .08s;z-index:9999;max-width:230px;line-height:1.65;box-shadow:0 4px 24px #0009,0 0 20px #00e5ff08}#tt.show{opacity:1}#tt.pinned{border-color:#ff9800;box-shadow:0 4px 24px #0009,0 0 14px #ff980030}#tt.pinned:after{content:"📌";position:absolute;top:4px;right:6px;font-size:.7rem}#tt .th{font-size:1rem;color:#ff9800;margin-bottom:3px}#tt .tr{color:#2a5040;margin:0}#tt .tr b{color:#70e880}#rain{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;opacity:.28;mix-blend-mode:screen}.writeup{max-width:1147px;margin:.8rem auto 0;padding:0 1rem;position:relative;z-index:2}.writeup-hdr{font-size:.52rem;color:#2a5038;letter-spacing:.22em;margin-bottom:.9rem;padding-bottom:.35rem;border-bottom:1px solid #0a0a0a;text-transform:uppercase}.writeup article{color:#9ab09a;line-height:1.75;font-size:.72rem;background:#040408eb;border:1px solid #0a0a0a;border-radius:0 0 6px 6px;padding:1.4rem 1.8rem}.writeup h1{font-size:1.4rem;color:#ff9800;letter-spacing:.12em;margin-bottom:.6rem;font-weight:400}.writeup h2{font-size:.75rem;color:#00e5ff;letter-spacing:.14em;margin:1.4rem 0 .5rem;text-transform:uppercase;font-weight:400}.writeup p{margin:.5rem 0;color:#8a9e8a}.writeup hr{border:none;border-top:1px solid #0c160c;margin:1.1rem 0}.writeup pre{background:#020804;border:1px solid #0a1a0a;border-radius:3px;padding:.65rem .9rem;margin:.6rem 0;overflow-x:auto}.writeup code{font-family:Courier New,monospace;font-size:.68rem;color:#0f8;background:#020804;padding:1px 5px;border-radius:2px}.writeup pre code{background:none;padding:0;color:#00c060}.writeup a{color:#00e5ff;text-decoration:none;border-bottom:1px solid #003a4a}.writeup a:hover{color:#80f8ff;border-bottom-color:#00e5ff}.writeup strong{color:#c1c1c1}.writeup em{color:#ffe600;font-style:normal}.writeup ul{list-style:none;padding-left:.8rem;margin:.4rem 0}.writeup ul li{color:#8a9e8a;padding:.15rem 0}.writeup ul li:before{content:"·";color:#2a5030;margin-right:.5rem}.writeup blockquote{border-left:2px solid #0a2028;margin:.5rem 0;padding:.3rem .8rem;color:#6a906a}.refs{max-width:1147px;margin:.6rem auto 1.4rem;padding:0 1rem;position:relative;z-index:2}.refs-hdr{font-size:.52rem;color:#2a5038;letter-spacing:.22em;margin-bottom:.5rem;padding-bottom:.35rem;border-bottom:1px solid #0a0a0a;text-transform:uppercase}.refs-grid{display:flex;flex-wrap:wrap;gap:5px}.ref{display:inline-flex;align-items:center;gap:7px;text-decoration:none;background:#040408;border:1px solid #0c1a14;border-radius:2px;padding:4px 10px;transition:border-color .12s,box-shadow .12s,background .12s}.ref:hover{border-color:#00e5ff;box-shadow:0 0 10px #00e5ff18;background:#060a0e}.ref-tag{font-size:.56rem;letter-spacing:.04em;font-family:Courier New,monospace}.ref-src{font-size:.46rem;color:#1a3028;letter-spacing:.06em;text-transform:uppercase;border-left:1px solid #0a1a14;padding-left:6px}.ref:hover .ref-src{color:#2a5040}@media(max-width:640px){h1{font-size:2.4rem;letter-spacing:.18em}.sub{font-size:.5rem;letter-spacing:.05em}.gleg{gap:.8rem;font-size:.58rem}.hdr{padding:.7rem .6rem .3rem}.tabs{padding:0 .3rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap}.tabs::-webkit-scrollbar{display:none}.tab{padding:.28rem .65rem;font-size:.48rem;white-space:nowrap}.pw{padding:.55rem .45rem .45rem}.nav{gap:.6rem}.nav-arr{font-size:.58rem;padding:.2rem .45rem}.hint{display:none}.refs{padding:0 .4rem}.ref{padding:3px 7px}#tt{font-size:.6rem;max-width:190px}}#fsBtn2:hover{border-color:#00e5ff!important;color:#00e5ff!important;box-shadow:0 0 10px #00e5ff20}#panelwrap:fullscreen,#panelwrap:-webkit-full-screen{background:#000;max-width:none;border-radius:0;display:flex;flex-direction:column;padding:.5rem .75rem .6rem;box-sizing:border-box}#panelwrap:fullscreen .canvaswrap,#panelwrap:-webkit-full-screen .canvaswrap{flex:1;min-height:0}#panelwrap:fullscreen canvas,#panelwrap:-webkit-full-screen canvas{width:100%!important;height:100%!important}#panelwrap:fullscreen .ctrls,#panelwrap:-webkit-full-screen .ctrls{flex-shrink:0;margin-top:6px}#panelwrap:fullscreen .btn,#panelwrap:-webkit-full-screen .btn{font-size:.78rem;padding:5px 13px}#panelwrap:fullscreen .clbl,#panelwrap:-webkit-full-screen .clbl{font-size:.76rem}#panelwrap:fullscreen .stat,#panelwrap:-webkit-full-screen .stat{font-size:.76rem}#panelwrap:fullscreen #s6input,#panelwrap:-webkit-full-screen #s6input{font-size:.76rem;width:9rem}#panelwrap:fullscreen select,#panelwrap:-webkit-full-screen select{font-size:.76rem}#panelwrap:fullscreen .node-lbl,#panelwrap:-webkit-full-screen .node-lbl{font-size:15px}#panelwrap:fullscreen .angle-lbl,#panelwrap:-webkit-full-screen .angle-lbl{font-size:13px}#panelwrap:fullscreen .ov,#panelwrap:-webkit-full-screen .ov{transform:scale(2);transform-origin:top right}
