@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";:root{--bg-base:#080e1f;--bg-surface:#0e1729;--bg-card:#111d33;--bg-hover:#162240;--bg-input:#0c1526;--indigo:#6366f1;--indigo-2:#818cf8;--purple:#8b5cf6;--purple-2:#a78bfa;--grad:linear-gradient(135deg, #6366f1, #8b5cf6);--green:#10b981;--green-2:#34d399;--amber:#f59e0b;--red:#ef4444;--cyan:#06b6d4;--text-1:#f0f4ff;--text-2:#94a3b8;--text-3:#4a5568;--border:#6366f138;--border-2:#ffffff14;--border-hover:#6366f180;--glow-indigo:0 0 28px #6366f147;--shadow-card:0 4px 28px #0006;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:22px}*,:before,:after{box-sizing:border-box;min-width:0;margin:0;padding:0}html,body,#root{height:100%;min-height:100%}body{color:var(--text-1);-webkit-font-smoothing:antialiased;background:radial-gradient(ellipse 80% 50% at 20% -10%, #6366f140 0%, transparent 60%), radial-gradient(ellipse 60% 40% at 80% 110%, #8b5cf633 0%, transparent 55%), radial-gradient(ellipse 40% 30% at 50% 50%, #06b6d412 0%, transparent 70%), var(--bg-base);background-attachment:fixed;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.6}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#6366f166;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#6366f1a6}h1,h2,h3,h4,p{overflow-wrap:anywhere;margin:0}h1{font-size:2.4rem;font-weight:800;line-height:1.1}h2,h3,h4,p,span,li,strong,a,button,label,div{overflow-wrap:anywhere;word-break:break-word}.jf-muted{color:var(--text-2)}.jf-ghost{border:1px solid var(--border-2);background:#ffffff0a}button{border-radius:var(--radius-lg);color:#fff;cursor:pointer;background:var(--grad);letter-spacing:.01em;border:none;padding:10px 18px;font-family:inherit;font-size:.86rem;font-weight:600;line-height:1.4;transition:opacity .15s,transform .1s,box-shadow .2s}button:hover:not(:disabled){opacity:.87;box-shadow:var(--glow-indigo)}button:active:not(:disabled){transform:scale(.98)}button:disabled{opacity:.38;cursor:not-allowed}.jf-secondary{border:1px solid var(--border);color:var(--indigo-2);background:#6366f11a}.jf-secondary:hover:not(:disabled){border-color:var(--border-hover);color:#fff;box-shadow:none;opacity:1;background:#6366f138}input,textarea,select{border-radius:var(--radius-md);background:var(--bg-input);width:100%;max-width:100%;color:var(--text-1);border:1px solid #6366f138;outline:none;padding:10px 14px;font-family:inherit;font-size:.87rem;transition:border-color .15s,box-shadow .15s,background .15s}input:focus,textarea:focus,select:focus{background:#6366f112;border-color:#6366f199;box-shadow:0 0 0 3px #6366f121}input::placeholder,textarea::placeholder{color:var(--text-3)}textarea{resize:vertical;min-height:80px}input[type=file]{padding:8px 12px}input[type=checkbox]{width:16px;height:16px;accent-color:var(--indigo);cursor:pointer;flex:none}.jf-page{width:100%;max-width:1380px;margin:0 auto;padding:24px;overflow-x:hidden}.jf-auth-page{min-height:100vh}.jf-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);min-width:0;box-shadow:var(--shadow-card);margin-bottom:16px;padding:20px 22px;transition:border-color .2s,box-shadow .2s;overflow:hidden}.jf-panel:hover{border-color:#6366f159;box-shadow:0 6px 32px #00000073,0 0 1px #6366f133}.jf-auth-card,.jf-hero-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);min-width:0;padding:22px}.jf-stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);min-width:0;box-shadow:var(--shadow-card);padding:16px 18px;transition:border-color .2s,box-shadow .2s}.jf-stat-card:hover{box-shadow:var(--glow-indigo);border-color:#6366f166}.jf-stat-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.07em;margin-bottom:5px;font-size:.7rem;font-weight:600}.jf-stat-value{font-size:2rem;font-weight:800;line-height:1}.jf-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.jf-panel-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;min-width:0;margin-bottom:16px;display:flex}.jf-panel-badge{letter-spacing:.04em;color:var(--indigo-2);border:1px solid var(--border);white-space:nowrap;background:#6366f11f;border-radius:999px;flex-shrink:0;padding:4px 11px;font-size:.7rem;font-weight:600}.jf-job-card{border-radius:var(--radius-lg);background:var(--bg-card);border:1px solid var(--border-2);min-width:0;padding:14px 16px;transition:border-color .15s,box-shadow .15s}.jf-job-card:hover{border-color:var(--border);box-shadow:0 2px 12px #00000040}.jf-job-card.active{border-color:#6366f180;box-shadow:0 0 0 2px #6366f11a}.jf-job-list{gap:9px;min-width:0;display:grid}.jf-job-top{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}.jf-job-top>div:first-child{flex:auto;min-width:0}.jf-job-top h4{overflow-wrap:anywhere;margin:0 0 3px;font-size:.93rem}.jf-form-grid{gap:10px;min-width:0;display:grid}.jf-form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.jf-rule-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0;display:grid}.jf-check{color:var(--text-1);cursor:pointer;align-items:center;gap:8px;min-width:0;font-size:.86rem;display:flex}.jf-section-label{text-transform:uppercase;letter-spacing:.09em;color:var(--text-3);margin-bottom:7px;font-size:.68rem;font-weight:700}.jf-badge,.jf-badge-button{border:1px solid var(--border);color:var(--indigo-2);white-space:nowrap;background:#6366f11a;border-radius:999px;align-items:center;padding:3px 9px;font-size:.71rem;font-weight:500;display:inline-flex}.jf-badge-button{cursor:pointer;transition:all .15s}.jf-badge-button:hover{color:#fff;background:#6366f138}.jf-badge-row{flex-wrap:wrap;gap:5px;display:flex}.jf-score-chip{white-space:nowrap;color:var(--green-2);background:#10b9811f;border:1px solid #10b98140;border-radius:999px;flex:none;padding:4px 10px;font-size:.78rem;font-weight:700}.jf-status-chip.awaiting_approval,.jf-status-chip.queued{white-space:nowrap;border-radius:999px;flex:none;padding:4px 10px;font-size:.78rem;font-weight:700}.jf-status-chip.awaiting_approval{color:#fde68a;background:#f59e0b1f;border:1px solid #f59e0b40}.jf-status-chip.queued{color:var(--indigo-2);border:1px solid var(--border);background:#6366f11f}.jf-link-btn{min-height:30px;color:var(--indigo-2);border-radius:var(--radius-sm);border:1px solid var(--border);background:#6366f11a;justify-content:center;align-items:center;padding:0 11px;font-size:.76rem;font-weight:500;text-decoration:none;transition:all .15s;display:inline-flex}.jf-link-btn:hover{color:#fff;border-color:var(--border-hover);background:#6366f138}.jf-agent-feed{border-radius:var(--radius-lg);border:1px solid var(--border-2);background:linear-gradient(#060a16f2,#080e1efa);flex-direction:column;gap:6px;min-height:220px;max-height:340px;padding:10px;display:flex;overflow:auto}.jf-agent-bubble{word-wrap:break-word;white-space:pre-wrap;max-width:86%;padding:9px 13px;font-size:.85rem;line-height:1.55}.jf-agent-bubble.assistant{color:var(--text-1);background:#6366f11a;border:1px solid #6366f138;border-radius:14px 14px 14px 3px;align-self:flex-start}.jf-agent-bubble.user{background:var(--grad);color:#fff;border:none;border-radius:14px 14px 3px;align-self:flex-end}.jf-agent-input-row{align-items:flex-end;gap:8px;margin-top:10px;display:flex}.jf-agent-input-row textarea{flex:200px;min-height:68px;max-height:120px}.jf-suggestion-card{border-radius:var(--radius-md);border:1px solid var(--border);background:#6366f10f;margin-bottom:12px;padding:13px}.jf-action-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.jf-inline-meta{color:var(--text-2);flex-wrap:wrap;gap:14px;font-size:.79rem;display:flex}.jf-upload-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.jf-status,.jf-status-footer{border-radius:var(--radius-md);border:1px solid var(--border);background:#6366f112;padding:10px 14px;font-size:.82rem}.jf-status-footer{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#080e1ef5;margin-top:8px;position:sticky;bottom:8px}.jf-tip-box{border-radius:var(--radius-md);color:#fde68a;background:#f59e0b14;border:1px solid #f59e0b38;padding:10px 14px;font-size:.79rem}.jf-empty-state{text-align:center;color:var(--text-2);padding:40px 20px}.jf-preview-block{white-space:pre-wrap;border-radius:var(--radius-md);border:1px solid var(--border-2);background:#060a16d9;max-height:260px;padding:14px;font-size:.83rem;line-height:1.5;overflow:auto}.jf-reason-list{color:#c5d6ff;margin:0;padding-left:18px}.jf-hero-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:14px;margin-bottom:14px;display:grid}.jf-dashboard-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.95fr);align-items:start;gap:14px;display:grid}.jf-suggestion-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.jf-topbar{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.jf-topbar-title-wrap{flex:420px;min-width:0}.jf-topbar-actions{flex-wrap:wrap;flex:420px;justify-content:flex-end;align-items:center;gap:10px;min-width:0;display:flex}.jf-eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--cyan);margin-bottom:6px;font-size:.7rem}.jf-auth-tabs{gap:10px;margin:14px 0;display:flex}.jf-auth-tabs button{border:1px solid var(--border-2);background:#ffffff0a;flex:1}.jf-auth-tabs button.active{background:var(--grad);box-shadow:var(--glow-indigo);border-color:#0000}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(200%)}}.anim-fade-up{animation:.3s both fadeUp}@media (width<=1100px){.jf-hero-grid,.jf-dashboard-grid,.jf-form-grid.two,.jf-rule-grid,.jf-suggestion-grid,.jf-stats-grid{grid-template-columns:1fr}.jf-topbar{flex-direction:column;align-items:stretch}.jf-topbar-actions{justify-content:flex-start}}@media (width<=700px){.jf-page{padding:14px}.jf-topbar,.jf-agent-input-row,.jf-upload-row,.jf-action-row,.jf-inline-meta,.jf-job-top{flex-direction:column}.jf-agent-bubble{max-width:100%}h1{font-size:1.8rem}.jf-panel,.jf-auth-card,.jf-hero-card,.jf-stat-card{border-radius:16px;padding:15px}.jf-auth-left-panel{display:none!important}}
