:root{--bg:#090a0f;--panel-bg:#121420b3;--border:#ffffff14;--border-hover:#fff3;--text:#f3f4f6;--text-muted:#9ca3af;--primary:#6366f1;--primary-glow:#6366f166;--accent:#10b981;--accent-glow:#10b98166;--font-sans:"Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", monospace}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg);color:var(--text);font-family:var(--font-sans);background-image:radial-gradient(circle at 10% 20%,#6366f10d 0%,#0000 40%),radial-gradient(circle at 90% 80%,#10b9810d 0%,#0000 40%);background-attachment:fixed;min-height:100vh;line-height:1.5;overflow-x:hidden}.container{max-width:1200px;margin:0 auto;padding:2.5rem 1.5rem}header{text-align:center;margin-bottom:3.5rem;position:relative}h1{background:linear-gradient(135deg,#fff 0%,#a5b4fc 50%,#6366f1 100%);-webkit-text-fill-color:transparent;letter-spacing:-.03em;-webkit-background-clip:text;margin-bottom:.5rem;font-size:3rem;font-weight:800}.tagline{color:var(--text-muted);max-width:600px;margin:0 auto;font-size:1.15rem}.badge{color:#a5b4fc;background:#6366f126;border:1px solid #6366f14d;border-radius:9999px;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.25rem .75rem;font-size:.85rem;font-weight:600;display:inline-flex}.pulse{background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 0 var(--accent-glow);border-radius:50%;animation:1.8s infinite pulse}@keyframes pulse{0%{transform:scale(.95);box-shadow:0 0 #10b981b3}70%{transform:scale(1);box-shadow:0 0 0 8px #10b98100}to{transform:scale(.95);box-shadow:0 0 #10b98100}}.tabs-nav{border:1px solid var(--border);background:#12142066;border-radius:12px;justify-content:center;gap:.75rem;max-width:fit-content;margin-bottom:2rem;margin-left:auto;margin-right:auto;padding:.375rem;display:flex}.tab-btn{color:var(--text-muted);cursor:pointer;font-family:var(--font-sans);background:0 0;border:none;border-radius:8px;padding:.625rem 1.25rem;font-size:.95rem;font-weight:600;transition:all .25s cubic-bezier(.4,0,.2,1)}.tab-btn:hover{color:var(--text);background:#ffffff08}.tab-btn.active{color:#fff;background:var(--primary);box-shadow:0 4px 12px var(--primary-glow)}.tab-content{animation:.4s cubic-bezier(.4,0,.2,1) fadeIn;display:none}.tab-content.active{grid-template-columns:1fr 1fr;gap:1.75rem;display:grid}@media (width<=900px){.tab-content.active{grid-template-columns:1fr}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.panel{background:var(--panel-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);border-radius:18px;flex-direction:column;gap:1.25rem;padding:1.75rem;transition:border-color .3s;display:flex;box-shadow:0 8px 32px #0000004d}.panel:hover{border-color:#ffffff1f}.panel-title{border-bottom:1px solid var(--border);align-items:center;gap:.75rem;padding-bottom:.75rem;font-size:1.25rem;font-weight:600;display:flex}.form-group{flex-direction:column;gap:.5rem;display:flex}label{color:var(--text-muted);font-size:.875rem;font-weight:600}textarea,input[type=text]{border:1px solid var(--border);color:var(--text);font-family:var(--font-mono);background:#0003;border-radius:8px;outline:none;width:100%;padding:.75rem;font-size:.9rem;transition:all .2s}textarea:focus,input[type=text]:focus{border-color:var(--primary);box-shadow:0 0 0 2px var(--primary-glow)}textarea{resize:vertical;min-height:180px}.options-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.dropzone{border:2px dashed var(--border);text-align:center;cursor:pointer;background:#ffffff03;border-radius:12px;flex-direction:column;align-items:center;gap:.75rem;padding:2.5rem 1.5rem;transition:all .3s;display:flex}.dropzone:hover,.dropzone.dragover{border-color:var(--primary);background:#6366f108}.dropzone-icon{color:var(--primary);font-size:2.25rem}.dropzone-text{color:var(--text-muted);font-size:.95rem}.dropzone-file-info{color:var(--accent);font-size:.9rem;font-weight:600;display:none}.btn{background:var(--primary);color:#fff;cursor:pointer;box-shadow:0 4px 12px var(--primary-glow);border:none;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .2s;display:flex}.btn:hover{box-shadow:0 6px 16px var(--primary-glow);transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:disabled{background:var(--border);color:var(--text-muted);box-shadow:none;cursor:not-allowed;transform:none}.btn-secondary{border:1px solid var(--border);box-shadow:none;background:#ffffff0d}.btn-secondary:hover{box-shadow:none;background:#ffffff14}.output-container{flex-direction:column;flex-grow:1;display:flex;position:relative}.output-pre{border:1px solid var(--border);font-family:var(--font-mono);color:#a7f3d0;white-space:pre-wrap;background:#0000004d;border-radius:8px;flex-grow:1;max-height:480px;padding:1rem;font-size:.85rem;overflow:auto}.metrics-bar{color:var(--text-muted);border-top:1px solid var(--border);gap:1.5rem;padding-top:.75rem;font-size:.85rem;display:flex}.metric-value{color:var(--text);font-weight:600}#init-overlay{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:9999;background:#090a0fe6;flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;width:100vw;height:100vh;transition:opacity .5s;display:flex;position:fixed;top:0;left:0}.spinner{border:4px solid #ffffff1a;border-left-color:var(--primary);border-radius:50%;width:48px;height:48px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}#init-status{color:var(--text-muted);font-size:1.1rem;font-weight:500}.alert-error{color:#fca5a5;background:#ef444426;border:1px solid #ef44444d;border-radius:8px;padding:.75rem 1rem;font-size:.9rem;display:none}.progress-container{background:#ffffff0d;border:1px solid #ffffff14;border-radius:9999px;width:100%;height:12px;margin:1rem 0;position:relative;overflow:hidden}.progress-bar-fill{background:linear-gradient(90deg, var(--primary) 0%, var(--accent) 100%);border-radius:9999px;width:0%;height:100%;transition:width .3s cubic-bezier(.4,0,.2,1)}.ai-card{border:1px solid var(--border);background:#1e293b66;border-radius:12px;flex-direction:column;gap:1rem;padding:1.5rem;display:flex;box-shadow:0 4px 20px #0003}.status-badge{border-radius:9999px;align-items:center;gap:.5rem;width:fit-content;padding:.25rem .625rem;font-size:.85rem;font-weight:600;display:inline-flex}.status-badge.loading{color:#fcd34d;background:#f59e0b26;border:1px solid #f59e0b4d}.status-badge.ready{color:#34d399;background:#10b98126;border:1px solid #10b9814d}.status-badge.not-loaded{color:#d1d5db;background:#9ca3af26;border:1px solid #9ca3af4d}.modal-overlay{-webkit-backdrop-filter:blur(10px);z-index:10000;background:#090a0fd9;justify-content:center;align-items:center;width:100vw;height:100vh;animation:.3s cubic-bezier(.4,0,.2,1) modalFadeIn;display:flex;position:fixed;top:0;left:0}.modal-container{background:var(--panel-bg);border:1px solid #ffffff1f;border-radius:20px;flex-direction:column;gap:1.5rem;width:90%;max-width:480px;padding:2rem;animation:.35s cubic-bezier(.34,1.56,.64,1) modalSlideUp;display:flex;box-shadow:0 20px 50px #00000080}.modal-header{align-items:center;gap:.75rem;display:flex}.modal-icon{color:#f59e0b;font-size:2rem}.modal-title-text{color:#fff;font-size:1.35rem;font-weight:700}.modal-body{color:var(--text-muted);font-size:.95rem;line-height:1.6}.modal-body strong{color:var(--text)}.modal-actions{justify-content:flex-end;gap:.75rem;display:flex}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(24px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.flex-center-gap{align-items:center;gap:.5rem;display:flex}.margin-top-large{margin-top:1.5rem}.checkbox-custom{width:18px;height:18px;accent-color:var(--primary)}.cursor-pointer{cursor:pointer}.ai-header-bar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:.25rem;padding-bottom:.75rem;display:flex}.ai-meta-size{color:var(--text-muted);font-size:.85rem}.flex-column-gap{flex-direction:column;gap:.5rem;display:flex}.flex-between{justify-content:space-between;align-items:center;display:flex}.btn-small{box-shadow:none;padding:.5rem 1rem;font-size:.85rem}.btn-danger-outline{color:#fca5a5;border-color:#ef44444d}.ai-progress-text{color:var(--text-muted);text-align:center;font-size:.8rem}.margin-top-small{margin-top:.5rem}.output-blue{color:#60a5fa}
