.overlay[data-v-6002644c]{align-items:center;background:#001722;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;position:fixed;z-index:9999}.panel[data-v-6002644c]{background:#001622f7;border:1px solid rgba(1,255,220,.3);border-radius:18px;box-shadow:0 0 0 1px #01ffdc14,0 24px 52px #0000008c,0 0 80px #01ffdc0a;padding:1.25rem 1.4rem;width:min(1080px,calc(100vw - 2rem))}.header-bar[data-v-6002644c]{justify-content:space-between;margin-bottom:.5rem}.header-bar[data-v-6002644c],.header-left[data-v-6002644c]{align-items:center;display:flex}.header-left[data-v-6002644c]{gap:.55rem}.status-dot[data-v-6002644c]{animation:blink-dot-6002644c 1s step-end infinite;background:#01ffdc;border-radius:50%;box-shadow:0 0 6px #01ffdce6;height:8px;width:8px}@keyframes blink-dot-6002644c{50%{opacity:.2}}.kicker[data-v-6002644c]{color:#9ef9ef;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.7rem;letter-spacing:.13em;margin:0}.step-counter[data-v-6002644c]{background:#01ffdc0f;border:1px solid rgba(1,255,220,.3);border-radius:4px;color:#01ffdc;font-family:SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.7rem;letter-spacing:.1em;padding:.18rem .6rem}.title[data-v-6002644c]{color:#01ffdc;font-size:clamp(1rem,2vw,1.5rem);font-weight:600;letter-spacing:.02em;margin:0 0 1rem}.cursor[data-v-6002644c]{animation:blink-dot-6002644c .8s step-end infinite;display:inline-block;margin-left:1px}.canvas[data-v-6002644c]{background:#001e2ceb;border:1px solid rgba(1,255,220,.22);border-radius:12px;height:400px;overflow:hidden;position:relative}.canvas-grid[data-v-6002644c]{background-image:radial-gradient(circle at 1px 1px,rgba(1,255,220,.07) 1px,transparent 0);background-size:28px 28px;top:0;right:0;bottom:0;left:0}.canvas-grid[data-v-6002644c],.scan-line[data-v-6002644c]{pointer-events:none;position:absolute}.scan-line[data-v-6002644c]{animation:scan-6002644c 3.5s linear infinite;background:linear-gradient(90deg,transparent,rgba(1,255,220,.45),transparent);height:1px;left:0;right:0;z-index:1}@keyframes scan-6002644c{0%{opacity:0;top:-1px}4%{opacity:1}94%{opacity:1}to{opacity:0;top:100%}}.links[data-v-6002644c]{height:100%;top:0;right:0;bottom:0;left:0;position:absolute;width:100%}.link[data-v-6002644c]{stroke:#01ffdc29;stroke-width:1.8;stroke-linecap:round;stroke-dasharray:6 5;animation:dash-flow-6002644c 18s linear infinite}@keyframes dash-flow-6002644c{to{stroke-dashoffset:-110}}.link.active[data-v-6002644c]{stroke:#01ffdc;stroke-width:2.5;stroke-dasharray:none;animation:none;filter:drop-shadow(0 0 5px rgba(1,255,220,.75))}.node[data-v-6002644c]{align-items:center;display:flex;flex-direction:column;gap:.28rem;position:absolute;transform:translate(-50%,-50%);z-index:2}.icon-wrap[data-v-6002644c]{background:#002636f2;border:1px solid rgba(1,255,220,.28);border-radius:10px;color:#9dfaf0;display:grid;height:44px;place-items:center;position:relative;transition:background .25s ease,color .25s ease,box-shadow .25s ease;width:44px}.icon-wrap.internet[data-v-6002644c]{border-color:#01ffdc8c}.icon-wrap.firewall[data-v-6002644c]{border-color:#f669;color:#ffa0a0}.icon-wrap.router[data-v-6002644c]{border-color:#01ffdc8c}.icon-wrap.switch[data-v-6002644c]{border-color:#01ffdc66}.icon-wrap.host[data-v-6002644c],.icon-wrap.terminal[data-v-6002644c]{border-color:#01ffdc38}.node.active .icon-wrap[data-v-6002644c]{background:#01ffdc;box-shadow:0 0 0 4px #01ffdc2e,0 0 18px #01ffdce6;color:#001722}.node.active .icon-wrap.firewall[data-v-6002644c]{background:#ff7070;box-shadow:0 0 0 4px #ff66662e,0 0 18px #f66c}.node-ring[data-v-6002644c]{animation:ring-expand-6002644c 1.1s ease-out infinite;border:2px solid rgba(1,255,220,.6);border-radius:14px;top:-5px;right:-5px;bottom:-5px;left:-5px;pointer-events:none;position:absolute}@keyframes ring-expand-6002644c{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(1.7)}}.label[data-v-6002644c]{color:#c8fff8;font-size:.64rem;font-weight:600;letter-spacing:.04em;margin:0;text-align:center;text-shadow:0 0 8px rgba(1,255,220,.4)}.label[data-v-6002644c],.packet[data-v-6002644c]{font-family:SFMono-Regular,Menlo,Monaco,Consolas,monospace}.packet[data-v-6002644c]{align-items:center;animation:pkt-pulse-6002644c .9s ease-in-out infinite;background:#01ffdc;border-radius:6px;box-shadow:0 0 18px #01ffdccc,0 0 4px #01ffdc;color:#001722;display:flex;font-weight:700;gap:3px;padding:.2rem .5rem;position:absolute;transform:translate(-50%,-50%);transition:left .45s cubic-bezier(.4,0,.2,1),top .45s cubic-bezier(.4,0,.2,1);z-index:5}@keyframes pkt-pulse-6002644c{0%,to{box-shadow:0 0 14px #01ffdcbf,0 0 4px #01ffdc}50%{box-shadow:0 0 26px #01ffdc,0 0 8px #01ffdc}}.pkt-arrow[data-v-6002644c]{font-size:.55rem}.pkt-text[data-v-6002644c]{font-size:.62rem}.progress-track[data-v-6002644c]{background:#01ffdc1a;border-radius:2px;bottom:8px;height:3px;left:12px;position:absolute;right:12px;z-index:4}.progress-fill[data-v-6002644c]{background:#01ffdc;border-radius:2px;box-shadow:0 0 8px #01ffdca6;height:100%;transition:width .45s cubic-bezier(.4,0,.2,1)}.logs[data-v-6002644c]{background:#00141ef5;border:1px solid rgba(1,255,220,.18);border-radius:10px;display:flex;flex-direction:column;gap:.25rem;margin-top:.9rem;padding:.7rem 1rem}.log-line[data-v-6002644c]{align-items:center;color:#5f948fb3;display:flex;font-family:SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.8rem;gap:.6rem;margin:0;transition:color .25s ease}.log-line.on[data-v-6002644c]{color:#bcfff7}.log-line.current[data-v-6002644c]{color:#01ffdc}.log-prefix[data-v-6002644c]{display:inline-block;flex-shrink:0;text-align:center;transition:color .25s ease;width:1em}.loader-fade-enter-active[data-v-6002644c]{transition:opacity .25s ease}.loader-fade-leave-active[data-v-6002644c],.overlay.leaving[data-v-6002644c]{transition:opacity .3s ease}.loader-fade-enter-from[data-v-6002644c],.loader-fade-leave-to[data-v-6002644c],.overlay.leaving[data-v-6002644c]{opacity:0}@media (max-width:900px){.canvas[data-v-6002644c]{height:330px}.icon-wrap[data-v-6002644c]{height:38px;width:38px}.label[data-v-6002644c]{font-size:.57rem}.log-line[data-v-6002644c]{font-size:.72rem}}@media (max-width:600px){.canvas[data-v-6002644c]{height:280px}.icon-wrap[data-v-6002644c]{height:32px;width:32px}.label[data-v-6002644c],.logs[data-v-6002644c]{display:none}}body{cursor:url(../assets/cursor.cur),auto}.cursor-pointer,a,button{cursor:url(../assets/cursor2.cur),pointer}.error-page[data-v-e63e372f]{background:radial-gradient(circle at 25% 20%,rgba(1,255,220,.14),transparent 35%),radial-gradient(circle at 80% 90%,rgba(1,255,220,.1),transparent 40%),#001722;color:#e9fffb;display:grid;min-height:100vh;padding:1rem;place-items:center}.error-panel[data-v-e63e372f]{background:#001924db;border:1px solid rgba(1,255,220,.3);border-radius:20px;box-shadow:0 0 0 1px #01ffdc1f,0 24px 50px #00000073;padding:2rem;text-align:center;width:min(760px,100%)}.kicker[data-v-e63e372f]{color:#85f8eb;font-family:SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:.75rem;letter-spacing:.12em;margin:0}.code[data-v-e63e372f]{color:#01ffdc;font-size:clamp(3rem,9vw,5.8rem);line-height:1}.code[data-v-e63e372f],.status[data-v-e63e372f]{margin:.3rem 0}.status[data-v-e63e372f]{font-size:clamp(1.2rem,2.2vw,1.7rem)}.message[data-v-e63e372f]{color:#b9ece6;margin:.7rem auto 0;max-width:60ch}.diag[data-v-e63e372f]{align-items:center;display:flex;gap:.5rem;justify-content:center;margin:1.6rem auto 0}.dot[data-v-e63e372f]{border:1px solid rgba(1,255,220,.5);border-radius:999px;height:12px;width:12px}.dot.on[data-v-e63e372f]{background:#01ffdc;box-shadow:0 0 10px #01ffdccc}.dot.off[data-v-e63e372f]{background:transparent;border-color:#ff4d4db3}.line[data-v-e63e372f]{background:linear-gradient(90deg,#01ffdc4d,#01ffdce6);height:2px;width:70px}.line.broken[data-v-e63e372f]{background:repeating-linear-gradient(90deg,rgba(255,77,77,.8),rgba(255,77,77,.8) 7px,transparent 0,transparent 12px)}.actions[data-v-e63e372f]{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center;margin-top:1.8rem}.btn[data-v-e63e372f]{border:1px solid transparent;border-radius:10px;cursor:pointer;font-weight:600;padding:.7rem 1.1rem;transition:all .2s ease}.btn-primary[data-v-e63e372f]{background:#01ffdc;color:#001722}.btn-primary[data-v-e63e372f]:hover{background:#00e0c0}.btn-ghost[data-v-e63e372f]{background:transparent;border-color:#01ffdc73;color:#01ffdc}.btn-ghost[data-v-e63e372f]:hover{background:#01ffdc1f}
