:root{--bg-deep: #0a0a0a;--bg-primary: #0d1117;--bg-card: #0f1a10;--bg-card-hover: #112215;--bg-card-selected: #0a2a12;--border: #003300;--border-hover: #00ff41;--border-dim: #0a3a0a;--neon-green: #00ff41;--neon-green-dim: #00cc33;--neon-cyan: #00d4ff;--neon-magenta: #ff0080;--neon-red: #ff2040;--glow-green: rgba(0, 255, 65, .5);--glow-green-soft: rgba(0, 255, 65, .15);--glow-cyan: rgba(0, 212, 255, .5);--glow-cyan-soft: rgba(0, 212, 255, .15);--glow-magenta: rgba(255, 0, 128, .5);--text-bright: #00ff41;--text-mid: #00cc33;--text-dim: #007722;--text-dimmer: #004411;--terminal-bg: #020804;--terminal-text: #00ff41;--font-mono: "Share Tech Mono", "Fira Code", "JetBrains Mono", "Courier New", monospace;--radius: 4px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-mono);background:var(--bg-deep);color:var(--text-bright);line-height:1.6;min-height:100vh;overflow-x:hidden;position:relative}a{color:var(--neon-cyan);text-decoration:none}a:hover{text-shadow:0 0 8px var(--glow-cyan)}.matrix-rain{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.12}.scanlines{position:fixed;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:none;background:repeating-linear-gradient(to bottom,transparent 0px,transparent 2px,rgba(0,0,0,.08) 2px,rgba(0,0,0,.08) 4px)}.crt-vignette{position:fixed;top:0;left:0;width:100%;height:100%;z-index:2;pointer-events:none;background:radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.45) 100%)}.sys-status-bar{position:fixed;top:0;left:0;width:100%;z-index:100;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.35rem 1rem;background:#000a00d9;border-bottom:1px solid var(--border);font-family:var(--font-mono);font-size:.72rem;color:var(--text-dim);letter-spacing:.1em;text-transform:uppercase;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.sys-status-bar .sys-sep{color:var(--border)}.sys-status-bar .sys-online{color:var(--neon-green);text-shadow:0 0 6px var(--glow-green-soft)}.sys-status-bar .sys-dim{color:var(--text-dim)}.sys-status-bar .sys-linked{color:var(--neon-cyan);text-shadow:0 0 6px var(--glow-cyan-soft)}.container{position:relative;z-index:10;max-width:780px;margin:0 auto;padding:3.5rem 1.5rem 3rem}.hud-corner{position:absolute;width:30px;height:30px;z-index:11}.hud-tl{top:2rem;left:0;border-top:2px solid var(--border);border-left:2px solid var(--border)}.hud-tr{top:2rem;right:0;border-top:2px solid var(--border);border-right:2px solid var(--border)}.hud-bl{bottom:0;left:0;border-bottom:2px solid var(--border);border-left:2px solid var(--border)}.hud-br{bottom:0;right:0;border-bottom:2px solid var(--border);border-right:2px solid var(--border)}.header{text-align:center;margin-bottom:2.5rem;padding-bottom:1.5rem}.glitch-wrapper{display:inline-block;position:relative}.glitch{font-family:var(--font-mono);font-size:2.4rem;font-weight:400;color:var(--neon-green);letter-spacing:.12em;text-shadow:0 0 10px var(--glow-green),0 0 40px var(--glow-green-soft);position:relative;animation:glitch-skew 8s infinite linear alternate-reverse}.glitch:before,.glitch:after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.glitch:before{color:var(--neon-cyan);z-index:-1;animation:glitch-anim-1 6s infinite linear alternate-reverse}.glitch:after{color:var(--neon-magenta);z-index:-2;animation:glitch-anim-2 6s infinite linear alternate-reverse}@keyframes glitch-anim-1{0%,85%{clip-path:inset(0 0 100% 0);transform:translate(0)}86%{clip-path:inset(20% 0 30% 0);transform:translate(-4px,-2px)}88%{clip-path:inset(60% 0 10% 0);transform:translate(4px,1px)}90%{clip-path:inset(5% 0 80% 0);transform:translate(-2px,3px)}91%{clip-path:inset(40% 0 20% 0);transform:translate(3px,-1px)}92%,to{clip-path:inset(0 0 100% 0);transform:translate(0)}}@keyframes glitch-anim-2{0%,87%{clip-path:inset(0 0 100% 0);transform:translate(0)}88%{clip-path:inset(70% 0 5% 0);transform:translate(3px,2px)}89%{clip-path:inset(10% 0 60% 0);transform:translate(-3px,-1px)}90%{clip-path:inset(45% 0 25% 0);transform:translate(2px,-2px)}91%{clip-path:inset(80% 0 5% 0);transform:translate(-4px,1px)}93%,to{clip-path:inset(0 0 100% 0);transform:translate(0)}}@keyframes glitch-skew{0%,95%{transform:skew(0)}96%{transform:skew(2deg)}97%{transform:skew(-1deg)}98%{transform:skew(.5deg)}99%,to{transform:skew(0)}}.header .subtitle{color:var(--text-dim);font-size:.82rem;margin-top:.75rem;letter-spacing:.05em}.cursor-blink{display:inline-block;color:var(--neon-green);animation:cursor-blink 1s step-end infinite;font-size:.8em;vertical-align:baseline}@keyframes cursor-blink{0%,50%{opacity:1}51%,to{opacity:0}}.header-deco{display:flex;align-items:center;gap:.75rem;margin-top:1.25rem;justify-content:center}.deco-line{flex:1;max-width:120px;height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent)}.deco-diamond{color:var(--text-dim);font-size:.65rem;animation:pulse-dim 3s ease-in-out infinite}@keyframes pulse-dim{0%,to{opacity:.3}50%{opacity:1;color:var(--neon-green);text-shadow:0 0 6px var(--glow-green)}}.browser-warning{background:#ff008014;border:1px solid var(--neon-magenta);border-radius:var(--radius);padding:1rem 1.25rem;margin-bottom:2rem;box-shadow:0 0 12px #ff008026}.browser-warning.visible{display:flex;align-items:flex-start;gap:.75rem}.browser-warning .icon{font-size:1.3rem;flex-shrink:0;line-height:1.4;color:var(--neon-magenta)}.browser-warning p{color:var(--neon-magenta);font-size:.82rem}.browser-warning a{color:var(--neon-magenta);text-decoration:underline}.step{margin-bottom:2rem}.step-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.step-number{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--border);color:var(--text-dim);font-family:var(--font-mono);font-size:.8rem;flex-shrink:0;position:relative}.step-number:before{content:"";position:absolute;top:-1px;left:-1px;right:-1px;bottom:-1px;border:1px solid transparent;transition:all .3s ease}.step-number.active{border-color:var(--neon-green);color:var(--neon-green);text-shadow:0 0 8px var(--glow-green-soft);box-shadow:0 0 10px var(--glow-green-soft)}.step-header h2{font-size:1rem;font-weight:400;color:var(--text-mid);letter-spacing:.1em;text-transform:uppercase}.step-line{flex:1;height:1px;background:linear-gradient(90deg,var(--border),transparent)}.device-grid{display:grid;gap:.75rem}.device-card{background:#00140066;border:1px solid var(--border);border-radius:var(--radius);padding:1rem 1.25rem;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden;display:block}.device-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(0,255,65,.03),transparent);transition:left .5s ease}.device-card:hover:before{left:100%}.device-card:hover{border-color:var(--neon-green);background:#001e0080;box-shadow:0 0 10px var(--glow-green-soft)}.device-card.selected{border-color:var(--neon-green);background:#00280a80;box-shadow:0 0 15px var(--glow-green-soft),inset 0 0 15px #00ff410d;animation:card-pulse 2s ease-in-out infinite}@keyframes card-pulse{0%,to{box-shadow:0 0 15px var(--glow-green-soft),inset 0 0 15px #00ff410d}50%{box-shadow:0 0 25px var(--glow-green),inset 0 0 20px #00ff4114}}.device-card input[type=radio]{position:absolute;opacity:0;width:0;height:0}.device-card-content{display:flex;align-items:center;gap:1rem}.device-radio-indicator{width:14px;height:14px;border:1px solid var(--text-dim);flex-shrink:0;position:relative;transition:all .2s ease}.device-card.selected .device-radio-indicator{border-color:var(--neon-green);box-shadow:0 0 6px var(--glow-green-soft)}.device-card.selected .device-radio-indicator:after{content:"";position:absolute;top:2px;left:2px;width:8px;height:8px;background:var(--neon-green);box-shadow:0 0 6px var(--glow-green)}.device-info{flex:1}.device-info h3{font-size:.95rem;font-weight:400;color:var(--neon-green);letter-spacing:.05em;margin-bottom:.15rem}.device-info p{font-size:.75rem;color:var(--text-dim);letter-spacing:.02em}.device-status-dot{width:6px;height:6px;border-radius:50%;background:var(--text-dimmer);flex-shrink:0;transition:all .3s ease}.device-card.selected .device-status-dot{background:var(--neon-green);box-shadow:0 0 8px var(--glow-green);animation:dot-blink 1.5s ease-in-out infinite}@keyframes dot-blink{0%,to{opacity:1}50%{opacity:.3}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.65rem 1.5rem;border:1px solid var(--neon-green);border-radius:var(--radius);background:transparent;font-family:var(--font-mono);font-size:.88rem;letter-spacing:.1em;cursor:pointer;transition:all .2s ease;line-height:1.4;text-transform:uppercase;color:var(--neon-green);position:relative}.btn:hover:not(:disabled){box-shadow:0 0 15px var(--glow-green-soft),0 0 30px #00ff411a;background:#00ff4114;transform:scale(1.02);text-shadow:0 0 8px var(--glow-green-soft)}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.25;cursor:not-allowed;border-color:var(--border);color:var(--text-dim);box-shadow:none}.btn-primary{border-color:var(--neon-green);color:var(--neon-green);box-shadow:0 0 8px var(--glow-green-soft)}.btn-danger{border-color:var(--neon-magenta);color:var(--neon-magenta);box-shadow:0 0 8px #ff008026}.btn-danger:hover:not(:disabled){box-shadow:0 0 15px var(--glow-magenta),0 0 30px #ff008026;background:#ff008014;text-shadow:0 0 8px rgba(255,0,128,.5)}.btn-flash{width:100%;padding:1rem;font-size:1.1rem;letter-spacing:.15em;border-style:dashed;position:relative;overflow:hidden}.btn-flash:not(:disabled){animation:border-glow 2s ease-in-out infinite}@keyframes border-glow{0%,to{box-shadow:0 0 8px var(--glow-green-soft)}50%{box-shadow:0 0 20px var(--glow-green-soft),0 0 40px #00ff4114}}.btn-flash.flashing{border-color:var(--neon-cyan);color:var(--neon-cyan);animation:flash-pulse 1s ease-in-out infinite}@keyframes flash-pulse{0%,to{box-shadow:0 0 10px var(--glow-cyan-soft);border-color:var(--neon-cyan)}50%{box-shadow:0 0 25px var(--glow-cyan),0 0 50px var(--glow-cyan-soft);border-color:var(--neon-cyan)}}.btn-download{width:100%;padding:.75rem 1rem;margin-top:.5rem;font-size:.88rem;letter-spacing:.12em;border-color:var(--neon-cyan);color:var(--neon-cyan);box-shadow:0 0 8px var(--glow-cyan-soft)}.btn-download:hover:not(:disabled){box-shadow:0 0 15px var(--glow-cyan-soft),0 0 30px #00d4ff1a;background:#00d4ff14;text-shadow:0 0 8px var(--glow-cyan-soft)}.btn-download:disabled{opacity:.25;cursor:not-allowed;border-color:var(--border);color:var(--text-dim);box-shadow:none}.btn-download.downloading{border-color:var(--neon-cyan);color:var(--neon-cyan);animation:download-pulse 1s ease-in-out infinite}@keyframes download-pulse{0%,to{box-shadow:0 0 8px var(--glow-cyan-soft);border-color:var(--neon-cyan)}50%{box-shadow:0 0 20px var(--glow-cyan),0 0 40px var(--glow-cyan-soft);border-color:var(--neon-cyan)}}.connect-area{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.connected-indicator{display:inline-flex;align-items:center;gap:.5rem;font-size:.78rem;color:var(--neon-cyan);letter-spacing:.1em;text-shadow:0 0 6px var(--glow-cyan-soft)}.pulse-dot{width:8px;height:8px;border-radius:50%;background:var(--neon-cyan);box-shadow:0 0 8px var(--glow-cyan);animation:pulse-dot-anim 1.5s ease-in-out infinite}@keyframes pulse-dot-anim{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}.chip-info{display:none;background:#00140066;border:1px solid var(--border);border-left:2px solid var(--neon-cyan);border-radius:var(--radius);padding:.75rem 1rem;margin-top:.75rem;font-family:var(--font-mono);font-size:.78rem}.chip-info.visible{display:block}.chip-info .chip-row{display:flex;gap:.75rem;padding:.2rem 0}.chip-info .chip-label{color:var(--text-dim);min-width:90px;letter-spacing:.05em}.chip-info .chip-label:after{content:":"}.chip-info .chip-value{color:var(--neon-cyan);text-shadow:0 0 4px var(--glow-cyan-soft)}.flash-option{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;background:#0014004d;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:border-color .2s ease}.flash-option:hover{border-color:var(--text-dim)}.flash-option input[type=checkbox]{accent-color:var(--neon-green);width:16px;height:16px;margin-top:2px;flex-shrink:0}.flash-option-text .label{font-size:.88rem;display:block;margin-bottom:.2rem;color:var(--text-bright);letter-spacing:.03em}.flash-option-text .hint{font-size:.75rem;color:var(--neon-magenta);opacity:.8}.progress-area{display:none;margin-top:1rem}.progress-area.visible{display:block}.progress-text{text-align:center;font-family:var(--font-mono);font-size:1.4rem;color:var(--neon-green);text-shadow:0 0 10px var(--glow-green);margin-bottom:.5rem;letter-spacing:.1em}.progress-bar-container{background:repeating-linear-gradient(90deg,transparent 0px,transparent 9px,rgba(0,255,65,.05) 9px,rgba(0,255,65,.05) 10px),#000a0099;border:1px solid var(--border);border-radius:var(--radius);height:24px;overflow:hidden;position:relative;margin-bottom:.5rem}.progress-bar{height:100%;background:linear-gradient(90deg,var(--neon-green-dim),var(--neon-green));width:0%;transition:width .2s ease;position:relative;box-shadow:0 0 12px var(--glow-green-soft)}.progress-bar:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.15) 50%,transparent 100%);animation:shimmer 1.5s infinite}.progress-scanline{position:absolute;top:0;left:0;width:3px;height:100%;background:#ffffff40;animation:scanline-move 2s linear infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(300%)}}@keyframes scanline-move{0%{left:-3px}to{left:100%}}.log-area{background:repeating-linear-gradient(to bottom,transparent 0px,transparent 2px,rgba(0,255,65,.015) 2px,rgba(0,255,65,.015) 4px),var(--terminal-bg);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;margin-top:1rem;height:240px;overflow-y:auto;font-family:var(--font-mono);font-size:.76rem;line-height:1.6;color:var(--terminal-text);text-shadow:0 0 4px var(--glow-green-soft);white-space:pre-wrap;word-break:break-all;scroll-behavior:smooth;scrollbar-width:thin;scrollbar-color:var(--border) var(--terminal-bg);position:relative}.log-area::-webkit-scrollbar{width:4px}.log-area::-webkit-scrollbar-track{background:var(--terminal-bg)}.log-area::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.log-cursor{animation:cursor-blink 1s step-end infinite;color:var(--neon-green)}.status-banner{display:none;padding:.85rem 1.25rem;border-radius:var(--radius);margin-top:1.5rem;font-size:.85rem;align-items:center;gap:.6rem;letter-spacing:.05em}.status-banner.visible{display:flex;animation:status-appear .4s ease}@keyframes status-appear{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.status-banner.success{background:#00ff410f;border:1px solid var(--neon-green);color:var(--neon-green);box-shadow:0 0 12px var(--glow-green-soft);text-shadow:0 0 6px var(--glow-green-soft)}.status-banner.error{background:#ff00800f;border:1px solid var(--neon-magenta);color:var(--neon-magenta);box-shadow:0 0 12px #ff008026;text-shadow:0 0 6px rgba(255,0,128,.3)}.status-banner.warning{background:#ffaa000f;border:1px solid #ffaa00;color:#fa0;box-shadow:0 0 12px #ffaa0026}.status-banner .status-icon{font-size:1.1rem;flex-shrink:0}.footer{text-align:center;padding-top:2rem;margin-top:2rem;color:var(--text-dimmer);font-size:.72rem;letter-spacing:.15em}.hidden{display:none!important}@media (max-width: 600px){.container{padding:3rem 1rem 2rem}.glitch{font-size:1.4rem;letter-spacing:.08em}.connect-area{flex-direction:column;align-items:stretch}.log-area{height:180px;font-size:.7rem}.sys-status-bar{font-size:.6rem;gap:.4rem}.hud-corner{display:none}}
