:root{--ink:#17201c;--muted:#66736d;--line:rgba(23,32,28,0.12);--paper:rgba(255,252,244,0.82);--cream:#f5efe1;--clay:#b9653f;--moss:#36594a;--sage:#d7dfc6;--gold:#e5b95f;--danger:#b3483e;--blue:#1e40af;--shadow:0 24px 70px rgba(39,54,46,0.16)}*{box-sizing:border-box}body{margin:0;min-height:100vh;color:var(--ink);font-family:"Aptos","Segoe UI",sans-serif;background:radial-gradient(circle at 15% 10%,rgba(229,185,95,0.33),transparent 28rem),radial-gradient(circle at 85% 18%,rgba(54,89,74,0.28),transparent 30rem),linear-gradient(135deg,#f8f0df 0%,#e7ead8 52%,#d9e2d6 100%)}button,input,select{font:inherit}button{border:0;border-radius:999px;padding:0.72rem 1rem;color:var(--ink);background:#fffaf0;cursor:pointer;box-shadow:inset 0 0 0 1px var(--line)}button:hover{transform:translateY(-1px)}button.mini{padding:0.28rem 0.58rem;font-size:0.76rem}.primary{color:#fff;background:var(--moss);box-shadow:0 14px 32px rgba(54,89,74,0.28)}.ghost{background:transparent}.hidden{display:none!important}a{color:var(--moss);font-weight:700}

/* Login */
.login{min-height:100vh;display:grid;place-items:center;padding:2rem}.login-card{width:min(520px,100%);padding:3rem;border:1px solid var(--line);border-radius:34px;background:var(--paper);box-shadow:var(--shadow);backdrop-filter:blur(18px)}.login-card h1{margin:0 0 1rem;font-family:Georgia,"Times New Roman",serif;font-size:clamp(3rem,8vw,5.5rem);letter-spacing:-0.08em}.login-card form{display:grid;gap:0.7rem;margin-top:1rem}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0.5rem;margin:1.6rem 0 0.4rem;padding:0.35rem;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,0.36)}.auth-tab{box-shadow:none;background:transparent}.auth-tab.active{color:#fff;background:var(--moss)}input,select{width:100%;border:1px solid var(--line);border-radius:18px;padding:0.8rem 1rem;background:rgba(255,255,255,0.66);color:var(--ink)}

/* Shell */
.shell{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:1.6rem;padding:1.2rem;border-right:1px solid var(--line);background:rgba(255,250,240,0.7);backdrop-filter:blur(18px)}.brand{display:flex;gap:0.8rem;align-items:center}.mark{display:grid;width:48px;height:48px;place-items:center;border-radius:16px;color:white;background:var(--ink);font-weight:800}.brand small,.eyebrow{color:var(--muted);text-transform:uppercase;letter-spacing:0.12em;font-size:0.72rem}nav{display:grid;gap:0.4rem}.nav{text-align:left;border-radius:18px;background:transparent}.nav.active{color:white;background:var(--moss)}.sidebar-stats{margin-top:auto;padding:0.8rem;border-radius:16px;background:rgba(54,89,74,0.06);font-size:0.8rem;line-height:1.6}.sidebar-stats strong{display:block;font-size:1.4rem}.workspace{padding:1.4rem}.topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.topbar h2{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,5vw,4rem);letter-spacing:-0.06em}.actions,.filters{display:flex;gap:0.7rem;align-items:center;flex-wrap:wrap}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0.8rem;margin-bottom:1rem}

/* Search */
.search-bar{padding:1.2rem;border:1px solid var(--line);border-radius:26px;background:var(--paper);box-shadow:0 16px 40px rgba(39,54,46,0.08);margin-bottom:1rem}.search-bar form{display:grid;gap:0.7rem}.search-bar input[type="text"],.search-bar input:not([type]){border:2px solid var(--moss);border-radius:18px;padding:0.9rem 1.2rem;font-size:1rem;background:#fff}.search-bar input:focus{outline:none;box-shadow:0 0 0 3px rgba(54,89,74,0.2)}.search-options{display:flex;gap:0.7rem;align-items:center;flex-wrap:wrap}.search-options select{width:auto;min-width:140px}.search-status{margin-top:0.8rem;padding:0.8rem 1rem;border-radius:18px;font-size:0.9rem;line-height:1.5}.search-status.running{color:var(--blue);background:#dbeafe;border:1px solid #93c5fd}.search-status.done{color:#065f46;background:#ecfdf5;border:1px solid #6ee7b7}.search-status.error{color:#991b1b;background:#fef2f2;border:1px solid #fca5a5}.search-results{display:grid;gap:0.8rem}.job-explain{display:grid;gap:0.35rem}.job-next{color:var(--muted);font-size:0.86rem}.result-stats{display:flex;gap:0.4rem;flex-wrap:wrap;margin:0.45rem 0}.result-summary{padding:0.75rem 0}.result-summary h3{margin:0 0 0.25rem}.result-summary p{margin:0;color:var(--muted)}.compact-empty{min-height:180px}

/* Pipeline steps */
.step-bar{display:flex;gap:4px;margin:0.6rem 0;flex-wrap:wrap}.step{display:inline-flex;align-items:center;gap:4px;padding:0.25rem 0.7rem;border-radius:999px;font-size:0.75rem;font-weight:700;background:rgba(54,89,74,0.08);color:var(--muted)}.step.active{color:#fff;background:var(--moss);animation:pulse 1.2s ease-in-out infinite}.step.done{color:#fff;background:#059669}.step.error{color:#fff;background:var(--danger)}.progress-log{margin-top:0.55rem;display:grid;gap:0.18rem;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:0.78rem;color:var(--ink)}@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.6}}

/* Object list & cards */
.panel,.object-card,.row-card,.source-card,.job-card,.result-card{border:1px solid var(--line);border-radius:26px;background:var(--paper);box-shadow:0 16px 40px rgba(39,54,46,0.08);backdrop-filter:blur(14px)}.panel{padding:1rem}.split{display:grid;grid-template-columns:minmax(360px,0.85fr) minmax(420px,1.15fr);gap:1rem;margin-top:1rem}.object-list{display:grid;gap:0.75rem;max-height:calc(100vh - 260px);overflow:auto;padding-right:0.2rem}.row-card{padding:1rem;text-align:left;cursor:pointer;transition:border-color 0.15s}.row-card:hover{border-color:var(--moss)}.row-card.active{outline:2px solid var(--clay)}.row-top,.meta,.chips{display:flex;align-items:center;gap:0.5rem;flex-wrap:wrap}.row-title{margin:0.7rem 0;font-weight:760;line-height:1.2}.badge{border-radius:999px;padding:0.24rem 0.55rem;background:rgba(54,89,74,0.12);color:var(--moss);font-size:0.78rem;font-weight:700}.badge.a{color:#fff;background:var(--danger)}.badge.b{color:#fff;background:var(--clay)}.badge.c{background:var(--sage)}.badge.status-found{background:#dbeafe;color:var(--blue)}.badge.status-docs{background:#fef3c7;color:#92400e}.badge.status-analyzed{background:#d1fae5;color:#065f46}.badge.status-scored{background:#ede9fe;color:#5b21b6}.object-card{min-height:560px;padding:1.2rem}.object-card h3{margin:0 0 0.7rem;font-family:Georgia,"Times New Roman",serif;font-size:2rem;letter-spacing:-0.04em}.card-section{margin-top:1.2rem;padding-top:1rem;border-top:1px solid var(--line)}.doc,.chunk,.audit,.source-card,.job-card{padding:0.8rem;margin-top:0.6rem}.chunk pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:220px;overflow:auto;margin:0.5rem 0 0;color:#293831}.empty{display:grid;min-height:420px;place-items:center;color:var(--muted);text-align:center}#sourcesList,#jobsList,.search-results{display:grid;gap:0.8rem}.run-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0.8rem;margin-bottom:1rem}

/* Upload area */
.upload-area{border:2px dashed var(--line);border-radius:18px;padding:1.5rem;text-align:center;cursor:pointer;transition:border-color 0.2s;background:rgba(255,255,255,0.4)}.upload-area:hover,.upload-area.dragover{border-color:var(--moss);background:rgba(54,89,74,0.04)}.upload-area p{margin:0.3rem 0;color:var(--muted);font-size:0.9rem}.upload-area .icon{font-size:2rem;margin-bottom:0.5rem}

/* Analysis evidence */
.evidence{display:grid;gap:0.5rem}.evidence-item{padding:0.7rem;border-radius:12px;background:rgba(54,89,74,0.04);border-left:3px solid var(--moss)}.evidence-item strong{display:block;font-size:0.85rem;margin-bottom:0.3rem}.evidence-item p{margin:0;font-size:0.85rem;color:var(--muted);line-height:1.45}

/* Pipeline controls */
.pipeline-actions{display:flex;gap:0.5rem;flex-wrap:wrap;margin:1rem 0}.pipeline-actions button{font-size:0.85rem;padding:0.5rem 1rem}
.object-process{margin:0.9rem 0 1rem;padding:0.85rem;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,0.46)}.object-process.running{border-color:#93c5fd;background:#eff6ff}.object-process.done{border-color:#6ee7b7;background:#ecfdf5}.object-process.error{border-color:#fca5a5;background:#fef2f2}.stage-track{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0.35rem;margin-top:0.65rem}.stage{min-height:34px;display:grid;place-items:center;text-align:center;border-radius:999px;padding:0.25rem 0.35rem;font-size:0.74rem;font-weight:800;color:var(--muted);background:rgba(54,89,74,0.08)}.stage.done{color:#fff;background:#059669}.stage.active{color:#fff;background:var(--blue);animation:pulse 1.2s ease-in-out infinite}
.background-tasks{margin:0.9rem 0 1rem;padding:0.8rem;border:1px solid var(--line);border-radius:18px;background:rgba(54,89,74,0.05)}.background-task{display:flex;align-items:center;gap:0.55rem;flex-wrap:wrap;margin-top:0.5rem;padding:0.5rem;border-radius:12px;background:rgba(255,255,255,0.68)}.background-task.error{background:#fff7f7}.background-task.done{background:#ecfdf5}

/* Funnel */
.profile-grid{display:grid;grid-template-columns:repeat(5,minmax(190px,1fr));gap:0.75rem;margin-bottom:1rem}.profile-card{padding:0.85rem;border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:0 16px 40px rgba(39,54,46,0.08);cursor:pointer}.profile-card.active{outline:2px solid var(--clay)}.profile-card h3{margin:0.6rem 0 0.35rem;font-size:1rem}.profile-card p{min-height:58px;margin:0 0 0.7rem;color:var(--muted);font-size:0.82rem;line-height:1.35}.profile-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:0.35rem;margin:0.65rem 0}.profile-metrics span{display:grid;padding:0.45rem;border-radius:12px;background:rgba(54,89,74,0.07)}.profile-metrics strong{font-size:1.05rem}.profile-metrics small{color:var(--muted);font-size:0.68rem}.funnel-board{display:grid;grid-template-columns:repeat(5,minmax(210px,1fr));gap:0.75rem;align-items:start}.funnel-col{min-height:360px;padding:0.75rem;border:1px solid var(--line);border-radius:18px;background:rgba(255,252,244,0.62)}.funnel-col h3{margin:0;font-size:0.92rem}.funnel-card{padding:0.7rem;margin-top:0.55rem;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,0.72);cursor:pointer}.agent-note{margin:0.55rem 0 0;color:var(--ink);font-size:0.78rem;line-height:1.35}.agent-action{margin:0.45rem 0 0;color:var(--moss);font-size:0.76rem;font-weight:800}.small-empty{min-height:120px;font-size:0.84rem}
.profile-run-history{margin:0 0 1rem;padding:0.8rem;border:1px solid var(--line);border-radius:18px;background:rgba(255,252,244,0.66)}.profile-run-history h3{margin:0;font-size:0.95rem}.profile-run-list{display:grid;grid-template-columns:repeat(4,minmax(190px,1fr));gap:0.65rem;margin-top:0.65rem}.profile-run-card{padding:0.7rem;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,0.78)}.profile-run-card.error{border-color:#fca5a5;background:#fff7f7}.profile-run-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:0.3rem;margin-top:0.55rem}.profile-run-metrics span{display:grid;padding:0.35rem;border-radius:10px;background:rgba(54,89,74,0.07)}.profile-run-metrics strong{font-size:0.95rem}.profile-run-metrics small{color:var(--muted);font-size:0.62rem}

/* Responsive */
@media(max-width:1180px){.profile-grid,.funnel-board,.profile-run-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){.shell,.split,.stats{grid-template-columns:1fr}.sidebar{position:static;height:auto}.topbar,.actions,.filters{align-items:stretch;flex-direction:column}.run-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.search-options{flex-direction:column;align-items:stretch}.run-grid,.profile-grid,.funnel-board,.profile-run-list{grid-template-columns:1fr}.stage-track{grid-template-columns:1fr 1fr}}
