@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&display=swap";:root{--bg-color:#0f172a;--panel-bg:#1e293bb3;--border-color:#ffffff1a;--text-primary:#f8fafc;--text-secondary:#94a3b8;--accent-cyan:#06b6d4;--accent-purple:#8b5cf6;--font-main:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}body{font-family:var(--font-main);background-color:var(--bg-color);color:var(--text-primary);-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 15%,#06b6d426,#0000 25%),radial-gradient(circle at 85% 30%,#8b5cf626,#0000 25%);background-attachment:fixed;min-height:100vh;margin:0;padding:0}.glass-panel{background:var(--panel-bg);-webkit-backdrop-filter:blur(10px)}.terminal-container{background:#0d1117;border:1px solid #30363d;border-radius:8px;margin-top:1rem;font-family:Fira Code,Consolas,monospace;overflow:hidden;box-shadow:0 10px 30px #00000080}.terminal-header{background:#161b22;border-bottom:1px solid #30363d;align-items:center;padding:8px 12px;display:flex}.terminal-dot{border-radius:50%;width:12px;height:12px;margin-right:8px}.terminal-dot.red{background:#ff5f56}.terminal-dot.yellow{background:#ffbd2e}.terminal-dot.green{background:#27c93f}.terminal-title{color:#8b949e;margin-left:10px;font-size:.8rem}.terminal-body{color:#c9d1d9;flex-direction:column;gap:8px;min-height:200px;padding:1.5rem;font-size:.9rem;display:flex}.terminal-line{animation:.3s ease-out forwards slideDown}.terminal-prompt{color:#3fb950;margin-right:10px}.blink-cursor{color:#3fb950;animation:1s step-end infinite blink}.terminal-progress-container{background:#21262d;border-radius:2px;width:100%;height:4px;margin-bottom:15px;overflow:hidden}.terminal-progress-bar{background:var(--accent-orange);height:100%;box-shadow:0 0 10px var(--accent-orange);transition:width .5s ease-out}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes slideDown{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.glow-success{animation:2s infinite alternate successPulse;box-shadow:0 0 30px #32cd3266}@keyframes successPulse{0%{box-shadow:0 0 20px #32cd324d}to{box-shadow:0 0 50px #32cd3299}}:root{--bg-color:#0f1115;--panel-bg:#1e232d66;--border-color:#ffffff1a;--text-primary:#e2e8f0;--text-secondary:#94a3b8;--accent-orange:#f28c3d;--accent-glow:#f28c3d4d;--font-main:"Outfit", sans-serif;--bg-gradient-1:#f28c3d0d;--bg-gradient-2:#1e232d1a;--input-bg:#0000004d;--dropdown-bg:#111113;--accent-blue:#3b82f6}[data-theme=light]{--bg-color:#f8fafc;--panel-bg:#fffffff2;--border-color:#00000026;--text-primary:#0f1115;--text-secondary:#334155;--accent-orange:#d46b1f;--accent-glow:#d46b1f33;--bg-gradient-1:#f28c3d14;--bg-gradient-2:#94a3b81a;--input-bg:#fff;--dropdown-bg:#fff;--accent-blue:#2563eb}body{font-family:var(--font-main);background-color:var(--bg-color);color:var(--text-primary);background-image:radial-gradient(circle at 10% 20%, var(--bg-gradient-1), transparent 40%), radial-gradient(circle at 90% 80%, var(--bg-gradient-2), transparent 40%);-webkit-font-smoothing:antialiased;background-attachment:fixed;min-height:100vh;margin:0;padding:0;transition:background-color .3s,color .3s}*{box-sizing:border-box}.app-container{max-width:1200px;margin:0 auto;padding:3rem 1rem;position:relative}.theme-toggle{background:var(--panel-bg);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;border-radius:20px;padding:8px 16px;font-family:inherit;font-weight:600;transition:all .2s;position:absolute;top:1rem;right:1rem}.theme-toggle:hover{border-color:var(--accent-orange);box-shadow:0 0 15px var(--accent-glow)}.header{text-align:center;margin-top:2rem;margin-bottom:3rem}.header h1{background:linear-gradient(135deg, var(--text-primary) 30%, var(--accent-orange) 100%);color:#0000;letter-spacing:-.02em;-webkit-background-clip:text;margin:0;font-size:3.5rem;font-weight:800}.subtitle{color:var(--text-secondary);letter-spacing:.1em;text-transform:uppercase;margin-top:.5rem;font-size:1.2rem;font-weight:600}.progress-bar{justify-content:center;gap:2rem;margin-top:2.5rem;display:flex}.step{border-bottom:2px solid var(--border-color);color:var(--text-secondary);cursor:pointer;padding:.5rem 1.5rem;font-weight:500;transition:all .3s}.step.active{border-bottom-color:var(--accent-orange);color:var(--accent-orange);text-shadow:0 0 10px var(--accent-glow)}.glass-panel{background:var(--panel-bg);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-color);border-radius:12px;padding:2.5rem;transition:background .3s,border-color .3s;position:relative;overflow:visible;box-shadow:0 10px 40px #0003}.animate-in{animation:.4s cubic-bezier(.16,1,.3,1) forwards slideUp}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.upload-box{border:2px dashed var(--border-color);text-align:center;cursor:pointer;background:var(--input-bg);border-radius:12px;padding:4rem 2rem;transition:all .3s}.upload-box:hover{border-color:var(--accent-orange);background:var(--accent-glow)}.upload-icon{margin-bottom:1rem;font-size:3rem}.mapping-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;display:grid}.input-label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);align-items:center;margin-bottom:.5rem;font-size:.85rem;font-weight:600;display:flex}.custom-select-container,.custom-input-container{position:relative}.custom-select,.glowing-input,.session-input{background:var(--input-bg);border:1px solid var(--border-color);width:100%;color:var(--text-primary);cursor:pointer;border-radius:8px;padding:1rem;font-family:inherit;font-size:1rem;transition:all .2s}.hero-section{text-align:center;margin-bottom:3rem;padding:2rem 0}.hero-title{background:linear-gradient(135deg, #fff, var(--accent-orange));-webkit-text-fill-color:transparent;letter-spacing:-1px;-webkit-background-clip:text;margin-bottom:1rem;font-size:2.8rem;font-weight:800}[data-theme=light] .hero-title{background:linear-gradient(135deg, #111, var(--accent-orange));-webkit-text-fill-color:transparent;-webkit-background-clip:text}.hero-subtitle{color:var(--text-secondary);max-width:600px;margin:0 auto;font-size:1.2rem;line-height:1.6}.feature-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.feature-card{background:var(--input-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;transition:all .3s;position:relative;overflow:hidden}.feature-card:hover{border-color:var(--accent-orange);transform:translateY(-5px);box-shadow:0 10px 30px #0003}.feature-icon{margin-bottom:1rem;font-size:2rem}.feature-card h3{color:var(--text-primary);margin:0 0 .5rem;font-size:1.1rem}.feature-card p{color:var(--text-secondary);margin:0;font-size:.85rem;line-height:1.6}.select-trigger{justify-content:space-between;align-items:center;display:flex}.select-options{background:var(--dropdown-bg);border:1px solid var(--border-color);z-index:100;border-radius:8px;max-height:250px;margin-top:.5rem;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 10px 30px #00000080}.select-option{padding:1rem;transition:background .2s}.select-option:hover{background:var(--accent-orange);color:#fff}.custom-select:hover,.glowing-input:focus,.session-input:focus{border-color:var(--accent-orange);box-shadow:0 0 15px var(--accent-glow);outline:none}.predictor-matrix{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.predictor-card{background:var(--input-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;transition:all .3s}.predictor-card.enabled{border-color:var(--accent-orange);box-shadow:inset 0 0 20px var(--accent-glow)}.pred-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;display:flex}.pred-title{align-items:center;gap:.5rem;display:flex}.pred-title h3{margin:0;font-size:1.1rem;font-weight:600}.pred-config{justify-content:space-between;align-items:center;display:flex}.session-input{text-align:center;width:70px;color:var(--accent-orange);padding:.5rem;font-weight:700}.session-input:disabled{opacity:.3}.cyber-toggle{width:44px;height:24px;display:inline-block;position:relative}.cyber-toggle input{opacity:0;width:0;height:0}.cyber-slider{background-color:var(--border-color);cursor:pointer;border-radius:24px;transition:all .3s;position:absolute;inset:0}.cyber-slider:before{content:"";background-color:var(--text-main);border-radius:50%;width:18px;height:18px;transition:all .3s;position:absolute;bottom:3px;left:3px}input:checked+.cyber-slider{background-color:var(--accent-orange);box-shadow:0 0 10px var(--accent-glow)}input:checked+.cyber-slider:before{transform:translate(20px)}.tooltip-icon{background:var(--border-color);cursor:help;width:18px;height:18px;color:var(--text-primary);border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex;position:relative}.tooltip-icon:hover{background:var(--accent-orange);color:#fff}.tooltip-icon:hover:after{content:attr(data-tooltip);background:var(--bg-color);color:var(--text-primary);white-space:normal;z-index:100;border:1px solid var(--accent-orange);border-radius:8px;width:max-content;max-width:250px;padding:.75rem;font-size:.85rem;font-weight:400;line-height:1.4;position:absolute;bottom:130%;left:0;transform:none;box-shadow:0 10px 30px #00000080}.pred-config-row{justify-content:space-between;align-items:center;display:flex}.action-row{justify-content:flex-end;gap:1rem;margin-top:2rem;display:flex}.btn-secondary{background:var(--panel-bg);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;text-transform:uppercase;letter-spacing:1px;border-radius:6px;padding:12px 30px;font-weight:700;transition:all .3s}.btn-secondary:hover{background:var(--accent-glow);border-color:var(--accent-orange);color:var(--accent-orange)}.btn-primary,.btn-glow{background:linear-gradient(135deg, var(--accent-orange) 0%, #d46b1f 100%);color:#000;text-transform:uppercase;letter-spacing:1px;box-shadow:0 4px 15px var(--accent-glow);cursor:pointer;border:none;border-radius:6px;padding:12px 30px;font-weight:700;transition:all .3s}.btn-glow:hover{box-shadow:0 8px 25px var(--accent-glow);transform:translateY(-2px)}
