:root{color-scheme:light;--bg: #f4f6f8;--surface: #ffffff;--surface-2: #f9fafb;--ink: #17202a;--muted: #64748b;--line: #d8e0e8;--accent: #0f766e;--accent-strong: #0b5f59;--blue: #2563eb;--amber: #b45309;--red: #b42318;--green: #12805c;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--bg);color:var(--ink)}button,input,textarea{font:inherit}button,a.secondary-button{align-items:center;border-radius:7px;cursor:pointer;display:inline-flex;gap:8px;justify-content:center;min-height:38px;text-decoration:none;transition:background .16s ease,border-color .16s ease,transform .16s ease}button:disabled{cursor:not-allowed;opacity:.56}input,textarea{background:#fff;border:1px solid var(--line);border-radius:7px;color:var(--ink);padding:10px 11px;width:100%}textarea{min-height:72px;resize:vertical}.primary-button{background:var(--accent);border:1px solid var(--accent);color:#fff;font-weight:720;padding:9px 14px}.primary-button:hover:not(:disabled){background:var(--accent-strong)}.secondary-button{background:#fff;border:1px solid var(--line);color:var(--ink);font-weight:680;padding:9px 13px}.ghost-button{background:transparent;border:1px solid transparent;color:var(--muted);padding:8px 10px}.compact{min-height:34px;padding:7px 10px}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-page{display:grid;grid-template-columns:minmax(360px,1fr) 420px;min-height:100vh}.auth-visual{align-content:center;background:linear-gradient(125deg,#0f766ee6,#2563ebb8),url(https://images.unsplash.com/photo-1451187580459-43490279c0fa?auto=format&fit=crop&w=1800&q=80) center/cover;color:#fff;display:grid;gap:26px;padding:56px}.auth-logo{border:1px solid rgba(255,255,255,.45);border-radius:8px;font-size:18px;font-weight:820;padding:10px 12px;width:max-content}.auth-visual h1{font-size:clamp(38px,6vw,70px);letter-spacing:0;line-height:1.04;margin:0;max-width:760px}.auth-metrics{display:flex;flex-wrap:wrap;gap:10px}.auth-metrics span{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff29;border:1px solid rgba(255,255,255,.28);border-radius:999px;font-weight:720;padding:8px 12px}.auth-form{align-content:center;background:var(--surface);display:grid;gap:20px;padding:36px}.auth-form form{display:grid;gap:14px}.auth-form label{color:#334155;display:grid;font-weight:680;gap:8px}.segmented{background:var(--surface-2);border:1px solid var(--line);border-radius:8px;display:grid;grid-template-columns:1fr 1fr;padding:4px}.segmented button{background:transparent;border:0;color:var(--muted);font-weight:720}.segmented .selected{background:#fff;color:var(--ink);box-shadow:0 1px 4px #0f172a1f}.app-shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh}.sidebar{background:#101820;color:#fff;display:grid;grid-template-rows:auto auto 1fr auto;gap:18px;padding:18px}.brand{align-items:center;display:flex;gap:12px}.brand-mark{align-items:center;background:#19a69a;border-radius:8px;display:flex;font-weight:850;height:40px;justify-content:center;width:40px}.brand span,.asset-row span,.history-list span{color:var(--muted);display:block;font-size:12px}.sidebar .brand span,.sidebar .ghost-button{color:#aebaca}.project-create form{display:grid;gap:8px}.inline-actions{display:flex;gap:8px}.project-list{display:grid;gap:8px;overflow:auto}.project-row{background:transparent;border:1px solid rgba(255,255,255,.12);color:#dbeafe;justify-content:flex-start;min-height:44px;padding:8px 10px;text-align:left}.project-row.active,.project-row:hover{background:#ffffff1c;border-color:#ffffff3d}.sidebar-logout{justify-content:flex-start}.workspace{display:grid;gap:18px;grid-template-rows:auto auto 1fr;min-width:0;padding:22px}.topbar{align-items:center;display:flex;justify-content:space-between;gap:16px}.topbar h1,.panel-title h2,.report-header h2,.report-section h3{letter-spacing:0;margin:0}.topbar h1{font-size:28px}.eyebrow{color:var(--accent);font-size:12px;font-weight:760;letter-spacing:0;margin:0 0 3px;text-transform:uppercase}.user-pill{align-items:center;background:#fff;border:1px solid var(--line);border-radius:999px;display:flex;gap:8px;padding:8px 12px}.dashboard-grid{display:grid;gap:16px;grid-template-columns:minmax(0,1.2fr) 320px;grid-template-rows:auto auto minmax(360px,1fr);min-height:0}.upload-band,.asset-panel,.report-panel,.insight-rail{background:var(--surface);border:1px solid var(--line);border-radius:8px}.upload-band{align-items:stretch;display:grid;gap:14px;grid-column:1 / 3;grid-template-columns:1fr 240px;padding:14px}.upload-zone{align-items:center;background:#f7fbfa;border:1px dashed #8fcac4;border-radius:8px;display:grid;gap:14px;grid-template-columns:auto 1fr auto;min-height:96px;padding:16px}.upload-zone strong{display:block;font-size:16px}.upload-zone span{color:var(--muted);display:block;margin-top:2px}.run-panel{align-content:center;display:grid;gap:12px}.progress-shell{background:#e8eef5;border-radius:999px;height:10px;overflow:hidden}.progress-shell span{background:var(--accent);display:block;height:100%}.asset-panel{grid-column:1;padding:16px}.panel-title{align-items:center;display:flex;gap:9px;margin-bottom:12px}.panel-title h2{font-size:17px}.asset-list{display:grid;gap:9px;max-height:240px;overflow:auto}.asset-row{align-items:center;border-bottom:1px solid var(--line);display:grid;gap:10px;grid-template-columns:auto 1fr auto;min-height:48px;padding:8px 0}.status-badge{border-radius:999px;font-size:12px;font-weight:760;padding:5px 9px}.status-badge.stored{background:#eef2ff;color:var(--blue)}.status-badge.extracted{background:#ecfdf3;color:var(--green)}.status-badge.failed{background:#fef3f2;color:var(--red)}.report-panel{grid-column:1;grid-row:3;min-width:0;overflow:hidden}.insight-rail{display:grid;gap:18px;grid-column:2;grid-row:2 / 4;align-content:start;padding:16px}.timeline{display:grid;gap:9px}.timeline-row{align-items:center;color:var(--muted);display:flex;gap:8px}.timeline-row.done{color:var(--accent);font-weight:720}.dot{border:1px solid var(--line);border-radius:999px;height:16px;width:16px}.job-stage{color:var(--muted);font-size:13px;margin-top:4px}.history-list{display:grid;gap:8px}.history-list h3,.evidence-panel h3{font-size:15px;margin:0 0 4px}.history-list button{background:#fff;border:1px solid var(--line);color:var(--ink);justify-content:flex-start;padding:8px 9px}.report-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;height:100%;min-height:520px}.report-document{overflow:auto;padding:24px}.report-header{align-items:start;display:flex;gap:16px;justify-content:space-between}.report-header h2{font-size:25px}.report-summary{background:#f2faf8;border-left:4px solid var(--accent);margin:18px 0;padding:12px 14px}.chart-strip{border:1px solid var(--line);border-radius:8px;display:grid;gap:8px;margin-bottom:20px;padding:12px}.chart-strip div{align-items:center;display:grid;gap:10px;grid-template-columns:64px 36px 1fr}.chart-strip i{background:linear-gradient(90deg,var(--accent),var(--blue));border-radius:999px;display:block;height:8px}.report-section{border-top:1px solid var(--line);padding:18px 0}.report-section h3{font-size:19px}.report-section p{color:#334155;line-height:1.65;overflow-wrap:anywhere}.ref-row{display:flex;flex-wrap:wrap;gap:7px}.ref-row span{background:#fff7ed;border-radius:999px;color:var(--amber);font-size:12px;font-weight:760;padding:5px 8px}.evidence-panel{border-left:1px solid var(--line);background:#fbfcfd;overflow:auto;padding:18px}.evidence-item{border-bottom:1px solid var(--line);display:grid;gap:5px;padding:12px 0}.evidence-item strong{font-size:13px}.evidence-item span{color:var(--muted);font-size:12px}.evidence-item p{color:#475569;font-size:13px;line-height:1.5;margin:0;overflow-wrap:anywhere}.empty-state,.report-empty,.empty-inline,.loading-line{align-items:center;color:var(--muted);display:grid;gap:10px;justify-content:center;min-height:220px;text-align:center}.notice{align-items:center;border-radius:8px;display:flex;gap:8px;padding:10px 12px}.notice.error{background:#fef3f2;color:var(--red)}@media(max-width:1080px){.app-shell,.auth-page,.dashboard-grid,.upload-band,.report-layout{grid-template-columns:1fr}.sidebar{grid-template-rows:auto auto auto auto}.upload-band,.asset-panel,.report-panel,.insight-rail{grid-column:1;grid-row:auto}.evidence-panel{border-left:0;border-top:1px solid var(--line)}}@media(max-width:680px){.workspace,.auth-form,.auth-visual{padding:18px}.upload-zone,.asset-row,.topbar,.report-header{align-items:stretch;grid-template-columns:1fr}.topbar,.report-header{display:grid}}
