.ghost-signal{--gs-green: #00ff41;--gs-green-dim: #00b32d;--gs-teal: #00b3a4;--gs-red: #ff2a2a;--gs-bg: #000000;--gs-panel: rgba(0, 25, 8, .55);font-family:JetBrains Mono,ui-monospace,monospace;color:var(--gs-green);background:var(--gs-bg);min-height:100vh;position:relative;overflow-x:hidden}.ghost-signal *::selection{background:var(--gs-green);color:#000}.ghost-signal a{color:var(--gs-green)}.gs-panel{background:var(--gs-panel);border:1px solid var(--gs-green-dim);box-shadow:0 0 18px #00ff4126,inset 0 0 30px #00ff410d}.gs-input{background:#001a08;border:1px solid var(--gs-green-dim);color:var(--gs-green);font-family:inherit;padding:.5rem .75rem;outline:none}.gs-input:focus{border-color:var(--gs-green);box-shadow:0 0 8px var(--gs-green)}.gs-btn{background:transparent;border:1px solid var(--gs-green);color:var(--gs-green);padding:.5rem 1rem;font-family:inherit;text-transform:uppercase;letter-spacing:.15em;font-size:.75rem;cursor:pointer;transition:all .15s}.gs-btn:hover:not(:disabled){background:var(--gs-green);color:#000;box-shadow:0 0 12px var(--gs-green)}.gs-btn:disabled{opacity:.35;cursor:not-allowed;border-color:var(--gs-green-dim);color:var(--gs-green-dim)}.gs-btn-danger{border-color:var(--gs-red);color:var(--gs-red)}.gs-btn-danger:hover:not(:disabled){background:var(--gs-red);color:#000;box-shadow:0 0 12px var(--gs-red)}@keyframes gs-blink{0%,49%{opacity:1}50%,to{opacity:0}}.gs-cursor:after{content:"_";animation:gs-blink 1s infinite;margin-left:2px}.gs-scanlines{position:fixed;inset:0;pointer-events:none;z-index:50;background:repeating-linear-gradient(to bottom,rgba(0,255,65,.04) 0px,rgba(0,255,65,.04) 1px,transparent 2px,transparent 4px);mix-blend-mode:screen}.gs-data-stream{position:fixed;z-index:1;pointer-events:none;background:repeating-linear-gradient(to right,transparent 0,transparent 18px,rgba(0,255,65,.7) 18px,rgba(0,255,65,.7) 22px,transparent 22px,transparent 60px,rgba(0,179,45,.5) 60px,rgba(0,179,45,.5) 66px,transparent 66px,transparent 110px);opacity:.55;mix-blend-mode:screen}.gs-stream-top,.gs-stream-bottom{left:0;right:0;height:3px}.gs-stream-top{top:0;animation:gs-stream-h 6s linear infinite}.gs-stream-bottom{bottom:0;animation:gs-stream-h-rev 8s linear infinite}.gs-stream-left,.gs-stream-right{top:0;bottom:0;width:3px;background:repeating-linear-gradient(to bottom,transparent 0,transparent 18px,rgba(0,255,65,.7) 18px,rgba(0,255,65,.7) 22px,transparent 22px,transparent 60px,rgba(0,179,45,.5) 60px,rgba(0,179,45,.5) 66px,transparent 66px,transparent 110px)}.gs-stream-left{left:0;animation:gs-stream-v 7s linear infinite}.gs-stream-right{right:0;animation:gs-stream-v-rev 9s linear infinite}@keyframes gs-stream-h{0%{background-position:0 0}to{background-position:220px 0}}@keyframes gs-stream-h-rev{0%{background-position:0 0}to{background-position:-220px 0}}@keyframes gs-stream-v{0%{background-position:0 0}to{background-position:0 220px}}@keyframes gs-stream-v-rev{0%{background-position:0 0}to{background-position:0 -220px}}@keyframes gs-flicker{0%,to{opacity:0}10%,50%{opacity:.6}30%{opacity:.2}}.gs-red-flicker{position:fixed;inset:0;pointer-events:none;z-index:60;background:#ff2a2a73;animation:gs-flicker .32s ease-in-out}.gs-glitch{text-shadow:1px 0 var(--gs-red),-1px 0 var(--gs-teal);animation:gs-shake .15s infinite}@keyframes gs-shake{0%{transform:translate(0)}25%{transform:translate(-1px,1px)}50%{transform:translate(1px,-1px)}75%{transform:translate(-1px,-1px)}to{transform:translate(0)}}.gs-rain{position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.18}.gs-bar{height:6px;background:#001a08;border:1px solid var(--gs-green-dim);overflow:hidden}.gs-bar-fill{height:100%;background:var(--gs-green);box-shadow:0 0 8px var(--gs-green);transition:width .4s}.gs-nullcore-avatar{width:36px;height:36px;border:1px solid var(--gs-green-dim);background:#000;object-fit:cover;filter:drop-shadow(0 0 4px rgba(255,80,200,.4))}.gs-glitch-box{border:1px solid var(--gs-red);background:#140000d9;padding:1rem;box-shadow:0 0 24px #ff2a2a66,inset 0 0 30px #ff2a2a26;color:var(--gs-green);min-height:120px}.gs-flicker-medium{background:#ff2a2a99;animation-duration:.9s}.gs-flicker-intense{background:#ff2a2abf;animation:gs-flicker-haywire 1.5s steps(8) 1}@keyframes gs-flicker-haywire{0%,to{opacity:0}10%{opacity:.95}20%{opacity:.2}35%{opacity:.95}50%{opacity:.1}65%{opacity:.9}80%{opacity:.3}}.gs-scanlines-haywire{position:fixed;inset:0;pointer-events:none;z-index:61;background:repeating-linear-gradient(to bottom,rgba(255,42,42,.18) 0px,rgba(255,42,42,.18) 2px,transparent 3px,transparent 6px);animation:gs-scan-jitter .08s steps(2) infinite}@keyframes gs-scan-jitter{0%{transform:translateY(0)}50%{transform:translateY(3px)}to{transform:translateY(-2px)}}@keyframes gs-fade-out-anim{0%{opacity:1}to{opacity:0}}.gs-fade-out{animation:gs-fade-out-anim .8s ease-out forwards}.gs-act-title{color:var(--gs-green);text-shadow:0 0 12px var(--gs-green),0 0 30px rgba(0,255,65,.4)}.gs-act-loading{color:var(--gs-green)}.ghost-signal.gs-act-2 .gs-scanlines{background:repeating-linear-gradient(to bottom,rgba(0,255,65,.05) 0px,rgba(0,255,65,.05) 1px,rgba(255,42,42,.02) 2px,transparent 4px)}.ghost-signal.gs-act-3 .gs-scanlines{background:repeating-linear-gradient(to bottom,rgba(0,255,65,.05) 0px,rgba(0,255,65,.05) 1px,rgba(255,42,42,.06) 2px,transparent 4px);animation:gs-scan-jitter .4s steps(3) infinite}.gs-scan-hud{position:fixed;inset:0;z-index:65;display:flex;align-items:center;justify-content:center;background:#000000a6;pointer-events:none}.gs-scan-hud-frame{position:relative;min-width:320px;max-width:80vw;padding:32px 48px;background:#001908b3;border:1px solid var(--gs-green-dim);box-shadow:0 0 40px #00ff4166,inset 0 0 40px #00ff411a;overflow:hidden}.gs-scan-hud-corner{position:absolute;width:18px;height:18px;border:2px solid var(--gs-green)}.gs-c-tl{top:4px;left:4px;border-right:none;border-bottom:none}.gs-c-tr{top:4px;right:4px;border-left:none;border-bottom:none}.gs-c-bl{bottom:4px;left:4px;border-right:none;border-top:none}.gs-c-br{bottom:4px;right:4px;border-left:none;border-top:none}.gs-scan-hud-sweep{position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(to bottom,transparent,var(--gs-green),transparent);animation:gs-sweep 1.6s linear infinite}@keyframes gs-sweep{0%{transform:translateY(0)}to{transform:translateY(180px)}}.gs-scan-hud-text{position:relative;z-index:1;font-family:inherit;text-align:left;min-width:280px}.gs-scan-line{font-size:.8rem;letter-spacing:.2em;color:var(--gs-green);text-shadow:0 0 6px var(--gs-green)}.gs-scan-monologue{margin-top:.75rem;font-size:.75rem;font-style:italic;color:var(--gs-teal);opacity:.9}.gs-loc-header{background:#00000080;border:1px solid var(--gs-green-dim);border-left:3px solid var(--gs-green);padding:.5rem .75rem;font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;line-height:1.6}.gs-loc-bar{height:4px;background:#001a08;margin:4px 0;overflow:hidden}.gs-loc-bar-fill{height:100%;width:0;background:var(--gs-green);animation:gs-loc-fill .6s ease-out forwards}@keyframes gs-loc-fill{to{width:100%}}.gs-loc-granted{color:var(--gs-green);text-shadow:0 0 6px var(--gs-green);animation:gs-blink-once .4s 2}@keyframes gs-blink-once{0%,to{opacity:1}50%{opacity:.4}}.gs-scan-highlight{display:inline-block;color:var(--gs-green);text-shadow:0 0 10px var(--gs-green);animation:gs-highlight-fade 4s ease-out forwards}@keyframes gs-highlight-fade{0%{background:#00ff4159;text-shadow:0 0 12px var(--gs-green)}60%{background:#00ff4133}to{background:transparent;text-shadow:none;color:inherit}}.gs-puzzle-image{position:relative}.gs-puzzle-image-corner{position:absolute;width:14px;height:14px;border:2px solid var(--gs-green);pointer-events:none}.gs-puzzle-image .gs-c-tl{top:-2px;left:-2px;border-right:none;border-bottom:none}.gs-puzzle-image .gs-c-tr{top:-2px;right:-2px;border-left:none;border-bottom:none}.gs-puzzle-image .gs-c-bl{bottom:-2px;left:-2px;border-right:none;border-top:none}.gs-puzzle-image .gs-c-br{bottom:-2px;right:-2px;border-left:none;border-top:none}.gs-npc-card{border:1px solid var(--gs-green-dim);background:#0009;padding:.5rem;position:relative;box-shadow:0 0 10px #00ff411a}.gs-npc-card-header{font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;margin-bottom:.5rem;border-bottom:1px dashed currentColor;padding-bottom:.25rem}.gs-npc-card-body{display:flex;gap:.5rem}.gs-npc-portrait-wrap{width:64px;height:64px;border:1px solid;flex-shrink:0;background:#000;display:block}.gs-npc-portrait{width:100%;height:100%;display:block;image-rendering:pixelated}.gs-context{border-left:2px solid var(--gs-green-dim);padding-left:.75rem}@keyframes gs-end-flicker{0%,to{filter:none}10%{filter:invert(1) hue-rotate(120deg);transform:translate(-3px)}20%{filter:brightness(2) contrast(2);transform:translate(2px)}30%{filter:invert(1)}45%{filter:brightness(.4);transform:translateY(2px)}60%{filter:hue-rotate(330deg) saturate(3)}75%{filter:invert(1) brightness(2);transform:translate(4px)}90%{filter:brightness(.2)}}.gs-end-flicker{animation:gs-end-flicker .18s steps(1) infinite}@keyframes gs-notify-pulse{0%{opacity:0;transform:translateY(-6px)}10%,90%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-6px)}}.gs-transmission-notify{position:fixed;top:12px;left:50%;transform:translate(-50%);z-index:70;background:#000;border:1px solid var(--gs-green);color:var(--gs-green);padding:6px 14px;font-family:inherit;font-size:11px;letter-spacing:.2em;box-shadow:0 0 12px var(--gs-green);animation:gs-notify-pulse 3s ease-in-out}
