:root{--bg-void: #050810;--bg-deep: #080d1a;--bg-panel: #0d1526;--bg-surface: #111d35;--bg-hover: #162240;--green: #00ff88;--green-dim: #00cc66;--green-dark: #004422;--cyan: #00e5ff;--cyan-dim: #00b8cc;--red: #ff3366;--red-dim: #cc1144;--orange: #ff9500;--purple: #aa44ff;--yellow: #ffd700;--text-primary: #e0f0ff;--text-secondary: #7a9bc4;--text-muted: #3d5a7a;--text-green: #00ff88;--text-red: #ff3366;--border: #1a3050;--border-glow: #00ff8833;--border-active:#00ff88;--font-mono: "JetBrains Mono", "Share Tech Mono", monospace;--font-display: "Orbitron", monospace;--radius: 4px;--radius-lg: 8px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden;background:var(--bg-void);color:var(--text-primary);font-family:var(--font-mono);font-size:13px;line-height:1.5;-webkit-font-smoothing:antialiased;-webkit-user-select:none;user-select:none}#app{width:100%;height:100%;display:flex;flex-direction:column}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-deep)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}::selection{background:var(--green-dark);color:var(--green)}.text-green{color:var(--green)}.text-cyan{color:var(--cyan)}.text-red{color:var(--red)}.text-orange{color:var(--orange)}.text-yellow{color:var(--yellow)}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.font-display{font-family:var(--font-display)}.panel{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius)}.panel-header{padding:8px 14px;border-bottom:1px solid var(--border);font-family:var(--font-display);font-size:10px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--green);display:flex;align-items:center;gap:8px}.panel-header:before{content:"";display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;box-shadow:0 0 8px var(--green);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.btn{background:transparent;border:1px solid var(--border);color:var(--text-secondary);font-family:var(--font-mono);font-size:11px;padding:6px 14px;border-radius:var(--radius);cursor:pointer;letter-spacing:.05em;transition:all .15s ease;text-transform:uppercase}.btn:hover{border-color:var(--cyan);color:var(--cyan);box-shadow:0 0 12px #00e5ff22}.btn-primary{border-color:var(--green);color:var(--green)}.btn-primary:hover{background:var(--green-dark);box-shadow:0 0 20px #0f84;border-color:var(--green);color:var(--green)}.btn-danger{border-color:var(--red);color:var(--red)}.btn-danger:hover{background:#3012;box-shadow:0 0 12px #f362}.btn:disabled{opacity:.35;cursor:not-allowed}.input{background:var(--bg-deep);border:1px solid var(--border);color:var(--text-primary);font-family:var(--font-mono);font-size:12px;padding:8px 12px;border-radius:var(--radius);width:100%;outline:none;transition:border-color .15s}.input:focus{border-color:var(--cyan);box-shadow:0 0 0 2px #00e5ff11}.input::placeholder{color:var(--text-muted)}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-linear-gradient(0deg,transparent,transparent 2px,#00000008 2px,#00000008 4px);z-index:9999}@keyframes glow-text{0%,to{text-shadow:0 0 10px currentColor}50%{text-shadow:0 0 25px currentColor,0 0 40px currentColor}}.glow{animation:glow-text 2s ease-in-out infinite}@keyframes slideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.slide-in{animation:slideIn .2s ease}@keyframes flicker{0%,to{opacity:1}92%{opacity:1}93%{opacity:.4}94%{opacity:1}96%{opacity:.6}97%{opacity:1}}.flicker{animation:flicker 8s infinite}.progress-bar{width:100%;height:4px;background:var(--bg-deep);border-radius:2px;overflow:hidden}.progress-bar-fill{height:100%;background:var(--green);box-shadow:0 0 8px var(--green);transition:width .5s linear;border-radius:2px}.badge{display:inline-block;padding:2px 8px;border-radius:2px;font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.badge-green{background:var(--green-dark);color:var(--green);border:1px solid #00ff8833}.badge-red{background:#3012;color:var(--red);border:1px solid #ff336633}.badge-cyan{background:#034;color:var(--cyan);border:1px solid #00e5ff33}.badge-orange{background:#331a00;color:var(--orange);border:1px solid #ff950033}
