:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.container{max-width:1200px;margin:0 auto;padding:20px}.header{text-align:center;margin-bottom:40px;padding:20px 0;border-bottom:2px solid #444}.header h1{font-size:2.5em;margin:0 0 10px}.header p{color:#aaa;margin:0}.main{display:grid;gap:40px}.create-job-section{background:#1e1e1e;padding:30px;border-radius:12px;border:1px solid #444}.create-job-section h2{margin-top:0;margin-bottom:20px;color:#fff}.form{display:grid;gap:15px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-weight:500;color:#ccc}.form-group input{padding:10px 12px;background-color:#2a2a2a;border:1px solid #444;border-radius:6px;color:#fff;font-size:1em;transition:border-color .3s}.form-group input:focus{outline:none;border-color:#646cff}.form-group input:disabled{opacity:.6;cursor:not-allowed}.button{padding:12px 24px;border:none;border-radius:8px;font-size:1em;font-weight:500;cursor:pointer;transition:all .3s}.button-primary{background-color:#646cff;color:#fff}.button-primary:hover:not(:disabled){background-color:#535bf2;transform:translateY(-2px);box-shadow:0 4px 12px #646cff66}.button:disabled{opacity:.6;cursor:not-allowed}.error{background-color:#ef44441a;border:1px solid #ef4444;color:#fca5a5;padding:12px;border-radius:6px;font-size:.95em}.pipeline-section{background:#1e1e1e;padding:30px;border-radius:12px;border:1px solid #444}.pipeline-section h2{margin-top:0;margin-bottom:30px;color:#fff;font-size:1.5em}.pipeline{display:flex;align-items:center;justify-content:center;gap:20px;margin-bottom:30px;flex-wrap:wrap}.pipeline-stage{display:flex;flex-direction:column;align-items:center;gap:10px}.stage-circle{width:80px;height:80px;border-radius:50%;border:3px solid #444;display:flex;align-items:center;justify-content:center;font-size:2.5em;background-color:#ffffff0d;transition:all .3s}.stage-circle.in-progress{animation:pulse 2s infinite}.stage-circle.completed{background-color:#4ade801a}.stage-circle.failed{background-color:#ef44441a}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.pipeline-stage p{font-weight:500;margin:0;color:#ccc}.stage-status{font-size:.85em;color:#999;text-transform:capitalize}.pipeline-connector{font-size:2em;color:#646;animation:flow 1.5s infinite}@keyframes flow{0%,to{transform:translate(0)}50%{transform:translate(8px)}}.report-section{margin-top:30px;padding:20px;background-color:#4ade800d;border:1px solid rgba(74,222,128,.3);border-radius:8px}.report-section h3{margin-top:0;color:#4ade80}.report-section pre{background-color:#0a0a0a;padding:15px;border-radius:6px;overflow-x:auto;max-height:400px;font-size:.9em;color:#ccc;white-space:pre-wrap;word-wrap:break-word}.error-section{margin-top:30px;padding:20px;background-color:#ef44440d;border:1px solid rgba(239,68,68,.3);border-radius:8px}.error-section h3{margin-top:0;color:#fca5a5}.error-section p{margin:0;color:#fca5a5}.jobs-list-section{background:#1e1e1e;padding:30px;border-radius:12px;border:1px solid #444}.jobs-list-section h2{margin-top:0;margin-bottom:20px;color:#fff}.jobs-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:15px}.job-card{background-color:#2a2a2a;border:1px solid #444;padding:20px;border-radius:8px;cursor:pointer;transition:all .3s}.job-card:hover{border-color:#646cff;transform:translateY(-2px);box-shadow:0 4px 12px #646cff33}.job-card.selected{border-color:#646cff;background-color:#646cff0d}.job-header{display:flex;justify-content:space-between;align-items:start;gap:10px;margin-bottom:10px}.job-header h3{margin:0;font-size:1.1em;color:#fff;flex:1}.status-badge{padding:4px 12px;border-radius:20px;font-size:.75em;font-weight:500;text-transform:uppercase;white-space:nowrap}.status-badge.pending{background-color:#9ca3af33;color:#d1d5db}.status-badge.research_in_progress,.status-badge.writing_in_progress,.status-badge.fact_checking_in_progress{background-color:#3b82f633;color:#93c5fd;animation:pulse-badge 2s infinite}.status-badge.completed{background-color:#4ade8033;color:#86efac}.status-badge.failed{background-color:#ef444433;color:#fca5a5}@keyframes pulse-badge{0%,to{opacity:1}50%{opacity:.7}}.job-date{margin:0;font-size:.85em;color:#999}@media(max-width:768px){.container{padding:15px}.header h1{font-size:1.8em}.pipeline{gap:10px}.stage-circle{width:60px;height:60px;font-size:1.8em}.pipeline-connector{font-size:1.5em}.jobs-list,.content-grid{grid-template-columns:1fr}}.content-grid{display:grid;grid-template-columns:1fr 2fr;gap:30px}.report-panel{background:#1e1e1e;padding:30px;border-radius:12px;border:1px solid #444;display:flex;flex-direction:column;gap:20px}.report-header{display:flex;justify-content:space-between;align-items:start;gap:15px;border-bottom:1px solid #444;padding-bottom:15px}.report-header h2{margin:0;color:#fff;flex:1}.report-header .status-badge{margin-top:5px}.pipeline-section-compact{background-color:#0000004d;padding:15px;border-radius:8px;border:1px solid #444}.pipeline-section-compact .pipeline{margin-bottom:0;gap:15px}.pipeline-section-compact .stage-circle{width:60px;height:60px;font-size:1.8em}.stage-label{font-size:.85em;color:#999;font-weight:500}.report-content{flex:1;overflow-y:auto;max-height:70vh;padding-right:10px}.report-content::-webkit-scrollbar{width:6px}.report-content::-webkit-scrollbar-track{background:transparent}.report-content::-webkit-scrollbar-thumb{background:#444;border-radius:3px}.report-content::-webkit-scrollbar-thumb:hover{background:#555}.article{color:#e5e7eb;line-height:1.8}.article-title{font-size:1.8em;margin:0 0 20px;color:#fff;border-bottom:2px solid #646cff;padding-bottom:15px;font-weight:700}.article-content{font-size:1.05em;margin:0 0 20px;color:#d1d5db}.article-body{display:flex;flex-direction:column;gap:16px}.article-heading{font-size:1.3em;margin:24px 0 12px;color:#93c5fd;font-weight:600;border-left:4px solid #646cff;padding-left:12px}.article-paragraph{margin:0 0 12px;color:#d1d5db;font-size:1em;text-align:justify;letter-spacing:.3px}.article-paragraph strong{color:#fff;font-weight:600}.sections{display:flex;flex-direction:column;gap:25px}.section{border-left:3px solid #646cff;padding-left:20px;padding-top:10px;padding-bottom:10px}.section-title{font-size:1.3em;margin:0 0 12px;color:#93c5fd;font-weight:600}.section-content{margin:0 0 15px;color:#d1d5db;font-size:1em;display:flex;flex-direction:column;gap:10px}.section-content p{margin:0}.key-points{list-style:none;padding:0;margin:15px 0 0;display:flex;flex-direction:column;gap:10px}.key-points li{padding:12px 15px;background-color:#646cff14;border-radius:6px;border-left:3px solid #646cff;color:#d1d5db;font-size:.95em}.key-points li:before{content:"✓ ";color:#4ade80;font-weight:700;margin-right:8px}.loading-section{display:flex;align-items:center;justify-content:center;min-height:200px;color:#9ca3af;font-size:1.1em}.loading-section:after{content:"";display:inline-block;width:12px;height:12px;margin-left:8px;background:linear-gradient(45deg,#646cff 25%,transparent 25%,transparent 75%,#646cff 75%,#646cff),linear-gradient(45deg,#646cff 25%,transparent 25%,transparent 75%,#646cff 75%,#646cff);background-size:12px 12px;background-position:0 0,6px 6px;animation:loading 1s linear infinite}@keyframes loading{0%{background-position:0 0,6px 6px}to{background-position:12px 0,18px 6px}}.jobs-list{display:grid;grid-template-columns:1fr;gap:12px;max-height:70vh;overflow-y:auto;padding-right:10px}.jobs-list::-webkit-scrollbar{width:6px}.jobs-list::-webkit-scrollbar-track{background:transparent}.jobs-list::-webkit-scrollbar-thumb{background:#444;border-radius:3px}.jobs-list::-webkit-scrollbar-thumb:hover{background:#555}
