:root{--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--radius: 8px;--radius-sm: 5px;--surface: #ffffff;--surface-sunken: #f6f7f9;--surface-raised: #ffffff;--text: #1a1d21;--text-muted: #63696f;--border: #dfe2e6;--border-strong: #c2c7cd;--accent: #2f5ea8;--accent-contrast: #ffffff;--accent-soft: #eaf0fa;--ok: #1a7f4b;--warn: #8a6300;--danger: #b3261e;--chart-1: #2a78d6;--chart-2: #eb6834;--chart-3: #1baf7a;--chart-4: #eda100;--chart-5: #e87ba4;--chart-6: #008300;--chart-muted: #c2c7cd;--shadow: 0 1px 2px rgb(0 0 0 / 6%), 0 1px 3px rgb(0 0 0 / 4%);color-scheme:light dark;font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:15px;line-height:1.55}@media (prefers-color-scheme: dark){:root{--surface: #16181c;--surface-sunken: #1d2025;--surface-raised: #22262c;--text: #e8eaed;--text-muted: #9aa1a9;--border: #32373e;--border-strong: #454b53;--accent: #7ba7e8;--accent-contrast: #10131a;--accent-soft: #1e2836;--ok: #5fd39a;--warn: #e0b155;--danger: #f08a82;--chart-1: #3987e5;--chart-2: #d95926;--chart-3: #199e70;--chart-4: #c98500;--chart-5: #d55181;--chart-6: #008300;--chart-muted: #454b53;--shadow: none}}*{box-sizing:border-box}body{margin:0;background:var(--surface-sunken);color:var(--text)}.app-header{position:sticky;top:0;z-index:10;border-bottom:1px solid var(--border);background:var(--surface)}.app-header-inner{max-width:68rem;margin:0 auto;padding:var(--space-3) var(--space-6);display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:baseline}.brand{font-weight:650;font-size:1.05rem;letter-spacing:-.01em}nav{display:flex;gap:var(--space-1);margin-left:auto}nav a{padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);color:var(--text-muted);text-decoration:none;font-size:.92rem}nav a:hover{background:var(--surface-sunken);color:var(--text)}nav a.active{background:var(--accent-soft);color:var(--accent);font-weight:550}.language-toggle{display:flex;gap:var(--space-1)}.language-option{display:flex;align-items:center;padding:.25rem;border-color:transparent;background:transparent;border-radius:var(--radius-sm);opacity:.45}.language-option:hover:not(:disabled){background:var(--surface-sunken);opacity:.8}.language-option.is-active{opacity:1;border-color:var(--border-strong);background:var(--surface-raised)}.flag{display:block;width:1.35rem;height:.9rem;border-radius:2px;outline:1px solid var(--border-strong);outline-offset:-1px}.user-menu{display:flex;align-items:center;gap:var(--space-2);min-width:0;font-size:.88rem}.user-label{max-width:14rem;overflow:hidden;color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap}main{max-width:68rem;margin:0 auto;padding:var(--space-8) var(--space-6)}.signin-page{min-height:100vh;display:grid;place-items:center}.signin-panel{max-width:30rem;padding:var(--space-8);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.signin-kicker{margin:0 0 var(--space-2);color:var(--accent);font-weight:650}.signin-panel h1{margin:0 0 var(--space-3);font-size:1.7rem;letter-spacing:-.01em}.signin-panel p{color:var(--text-muted)}.signin-button{display:inline-block;margin-top:var(--space-3);padding:.55rem .9rem;background:var(--accent);border-radius:var(--radius-sm);color:var(--accent-contrast);font-weight:650;text-decoration:none}.page-title{margin:0 0 var(--space-1);font-size:1.4rem;letter-spacing:-.01em}.page-intro{margin:0 0 var(--space-6);color:var(--text-muted)}.card{background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4);box-shadow:var(--shadow)}.card+.card{margin-top:var(--space-3)}button{padding:.4rem .8rem;font:inherit;font-size:.92rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text);cursor:pointer;transition:background .12s ease,border-color .12s ease}button:hover:not(:disabled){background:var(--surface-sunken)}button:disabled{opacity:.5;cursor:not-allowed}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast);font-weight:550}button.primary:hover:not(:disabled){filter:brightness(1.08)}button.quiet{border-color:transparent;background:transparent;color:var(--text-muted)}button.quiet:hover:not(:disabled){background:var(--surface-sunken);color:var(--text)}input,select,textarea{padding:.4rem .55rem;font:inherit;font-size:.92rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);color:inherit}textarea{resize:vertical}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}label{display:flex;flex-direction:column;gap:var(--space-1);font-size:.85rem;font-weight:550;color:var(--text-muted)}label input,label textarea{font-weight:400;color:var(--text)}table{width:100%;border-collapse:collapse;font-size:.92rem}th,td{text-align:left;padding:var(--space-2) var(--space-3) var(--space-2) 0;border-bottom:1px solid var(--border);vertical-align:top}th{font-weight:600;color:var(--text-muted);font-size:.82rem;text-transform:uppercase;letter-spacing:.03em}.scroll-x{overflow-x:auto}.scroll-x td,.scroll-x th{padding-right:var(--space-4);white-space:nowrap}.muted{color:var(--text-muted)}.error{color:var(--danger)}.warning{color:var(--warn)}.row{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.spread{justify-content:space-between}.stack{display:flex;flex-direction:column;gap:var(--space-3)}.badge{padding:.05rem .5rem;border-radius:999px;font-size:.78rem;font-weight:550;white-space:nowrap;border:1px solid currentColor}.badge-uploaded{color:var(--warn)}.badge-importing{color:var(--accent)}.badge-ready{color:var(--ok)}.badge-failed{color:var(--danger)}.empty{text-align:center;padding:var(--space-8) var(--space-4);color:var(--text-muted)}.pagination{display:flex;gap:var(--space-3);align-items:center;justify-content:flex-end;margin-top:var(--space-4)}.dropzone{border:2px dashed var(--border-strong);border-radius:var(--radius);background:var(--surface-raised);padding:var(--space-8) var(--space-4);text-align:center;cursor:pointer;transition:border-color .12s ease,background .12s ease}.dropzone:hover:not(.is-disabled),.dropzone.is-over{border-color:var(--accent);background:var(--accent-soft)}.dropzone.is-disabled{cursor:default;opacity:.6}.dropzone-title{margin:0 0 var(--space-1);font-weight:550}.dropzone p:last-child{margin:0;font-size:.9rem}.upload-list{margin-top:var(--space-4)}.upload-summary{margin:var(--space-2) 0;font-size:.9rem}.upload-review-note{margin-bottom:var(--space-3);color:var(--danger);font-size:.9rem}.progress-bar{margin-top:var(--space-3);height:3px;border-radius:999px;background:var(--surface-sunken);overflow:hidden}.progress-bar span{display:block;width:35%;height:100%;border-radius:999px;background:var(--accent);animation:slide 1.1s ease-in-out infinite}@keyframes slide{0%{transform:translate(-100%)}to{transform:translate(300%)}}.name-form{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-raised)}.data-files{margin-top:var(--space-8)}.ask-selected{display:flex;justify-content:center;margin-top:var(--space-6)}.ask-selected-button{padding:.55rem 1.1rem;border:1px solid var(--accent);border-radius:var(--radius-sm);background:var(--accent);color:var(--accent-contrast);font-size:.92rem;font-weight:550;text-decoration:none;transition:filter .12s ease}.ask-selected-button:hover{filter:brightness(1.08)}.data-files h2{margin:0;font-size:1rem}.file-head{align-items:flex-start;gap:var(--space-4)}.file-title{min-width:0;flex:1}.file-description,.file-meta{margin:var(--space-1) 0 0;font-size:.88rem}.file-actions{margin-top:var(--space-3)}.compact-file{padding:var(--space-2) var(--space-3)}.compact-file .file-head{align-items:center;gap:var(--space-3)}.compact-file .file-actions{margin-top:var(--space-2)}.file-summary{flex:1;min-width:10rem;display:flex;align-items:center;gap:var(--space-2);padding:0;border:0;background:transparent;text-align:left}.file-summary:hover:not(:disabled){background:transparent}.file-summary .file-title{flex:1}.file-caret{width:1rem;color:var(--text-muted)}.compact-file-details{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border)}.compact-file-details .clarify{margin-top:0;padding-top:0;border-top:0}.active-toggle{flex-direction:row;align-items:center;gap:var(--space-2);min-width:5.5rem;color:var(--text)}.active-toggle input{width:1rem;height:1rem}.icon-button{display:inline-grid;place-items:center;width:2rem;height:2rem;padding:0;font-size:1rem}.icon-button.danger{color:var(--danger);border-color:transparent;background:transparent}.icon-button.danger:hover:not(:disabled){background:color-mix(in srgb,var(--danger) 10%,transparent)}.chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.chip-static{padding:.1rem .55rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-sunken);font-size:.82rem}.chip{display:flex;gap:var(--space-1);align-items:center;padding:.15rem .6rem;border:1px solid var(--border-strong);border-radius:999px;font-size:.85rem;cursor:pointer}.panel{margin-top:var(--space-4)}.panel-header{margin-bottom:var(--space-3)}.query-block{margin-top:var(--space-4)}.query-label{display:block;font-size:.82rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:var(--space-2)}.query-row{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;margin-bottom:var(--space-2)}.query-row input{min-width:10rem}.query-row input.narrow{min-width:8rem}.query-actions{display:flex;gap:var(--space-3);align-items:center;margin-top:var(--space-4)}.trace{margin-top:var(--space-3);font-size:.88rem}.trace summary{cursor:pointer;color:var(--text-muted)}.trace-call{margin-top:var(--space-3);padding-left:var(--space-3);border-left:2px solid var(--border)}.trace-header{display:flex;gap:var(--space-2);align-items:center}.trace-json{margin:var(--space-2) 0;padding:var(--space-2);overflow-x:auto;font-size:.82rem;background:var(--surface-sunken);border-radius:var(--radius-sm)}.clarify{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border)}.clarify-chat{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-sunken)}.clarify-section-head{margin-bottom:var(--space-3)}.clarify-section-head h3{margin:0;font-size:.98rem}.clarify-section-head p{margin:var(--space-1) 0 0;font-size:.88rem}.clarify-thread{display:flex;flex-direction:column;gap:var(--space-2)}.clarify-thread .message{max-width:min(42rem,82%);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius);font-size:.92rem;box-shadow:none}.clarify-thread .message-assistant{align-self:flex-start;background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 28%,var(--border));border-bottom-left-radius:var(--radius-sm)}.clarify-thread .message-user{align-self:flex-end;background:var(--surface-raised);border-color:var(--border);border-bottom-right-radius:var(--radius-sm)}.typing-bubble{display:inline-flex;gap:.25rem;align-items:center;min-width:3.2rem}.typing-bubble span{width:.35rem;height:.35rem;border-radius:999px;background:var(--accent);opacity:.45;animation:typing-dot 1s ease-in-out infinite}.typing-bubble span:nth-child(2){animation-delay:.15s}.typing-bubble span:nth-child(3){animation-delay:.3s}@keyframes typing-dot{0%,80%,to{transform:translateY(0);opacity:.45}40%{transform:translateY(-.15rem);opacity:1}}.clarify-thread .message p{margin:0}.clarify-thread .message p:empty{height:var(--space-2)}.clarify-answer{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-3)}.column-grid{display:flex;flex-direction:column;gap:var(--space-2)}.column-row{display:grid;grid-template-columns:minmax(8rem,14rem) 1fr;gap:var(--space-3);align-items:center;font-weight:400}.column-name{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85rem;overflow-wrap:anywhere}.described{color:var(--ok);font-weight:700}@media (max-width: 34rem){.column-row{grid-template-columns:1fr;gap:var(--space-1)}}.board{display:grid;grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));gap:var(--space-3);align-items:stretch}.card.finding{margin:0;position:relative;padding:0;overflow:hidden;display:flex;flex-direction:column}.finding-open{display:flex;flex-direction:column;gap:var(--space-2);width:100%;flex:1;min-height:7rem;padding:var(--space-4);padding-right:var(--space-8);border:none;background:none;text-align:left;border-radius:var(--radius)}.finding-open:hover:not(:disabled){background:var(--surface-sunken)}.finding-title{font-weight:550;font-size:.98rem;line-height:1.4}.finding-preview{display:block;font-size:.9rem;color:var(--text-muted)}.finding-preview :first-child{margin-top:0}.finding-preview :last-child{margin-bottom:0}.finding-preview p{margin:0 0 .2em}.finding-preview ul,.finding-preview ol{margin:0;padding-left:1.1rem}.finding-preview li{margin:0}.finding-chart-preview{display:block;width:100%;min-width:0}.finding-chart-preview .chart{margin:var(--space-1) 0 0}.finding-chart-preview .chart figcaption{margin-bottom:var(--space-1);font-size:.78rem}.finding-remove{position:absolute;top:var(--space-2);right:var(--space-2);padding:0 var(--space-2);line-height:1.4}.file-context-warning{margin:var(--space-2) var(--space-4) 0;color:var(--danger);font-size:.9rem}.finding .progress-bar{margin:0 var(--space-4) var(--space-3)}.new-finding{display:flex;flex-direction:column;gap:var(--space-2);align-items:center;justify-content:center;min-height:7rem;border-style:dashed;border-width:2px;border-color:var(--border-strong);color:var(--text-muted);font-size:.95rem}.new-finding:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.new-finding-plus{font-size:1.6rem;line-height:1}.dialog-foot input{flex:1;min-width:0}.ask-start{display:flex;flex-direction:column;gap:var(--space-1);padding-bottom:var(--space-2)}.ask-example-hint{margin:0;font-size:.85rem;font-weight:550}.ask-start .chips{margin-top:0;gap:var(--space-1)}.example-pill{padding:.25rem .7rem;border-radius:999px;border-color:var(--border);background:var(--surface-sunken);color:var(--text-muted);font-size:.88rem;text-align:left}.example-pill:hover:not(:disabled){border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.result-view{position:relative;padding-right:4rem}.result-tools{position:absolute;top:var(--space-3);right:var(--space-3);display:flex;flex-direction:column;gap:1px}.tool-button{display:grid;place-items:center;width:1.9rem;height:1.9rem;padding:0;opacity:.5}.tool-button:hover:not(:disabled){opacity:1;color:var(--accent)}.tool-icon{width:1.2rem;height:1.2rem}.icon-label{display:inline-flex;align-items:center;gap:var(--space-2)}.result-title{display:flex;flex-direction:column;gap:var(--space-1);font-size:.9rem;color:var(--text-muted)}.result-title input{font-size:1rem;font-weight:550;color:var(--text)}.result-hint{margin:var(--space-3) 0 var(--space-2);font-size:.88rem}.result-block{position:relative;border:1px solid transparent;border-radius:var(--radius-sm);padding-right:var(--space-6);transition:background .12s ease,border-color .12s ease}.result-block+.result-block{margin-top:var(--space-1)}.result-block:hover{border-color:var(--border)}.result-block.is-chosen{background:var(--accent-soft);border-color:var(--accent)}.result-block-hit{display:block;width:100%;padding:var(--space-2) var(--space-3);border:none;background:none;text-align:left;color:inherit;font:inherit}.result-block-hit>:first-child{margin-top:0}.result-block-hit>:last-child{margin-bottom:0}.result-block-edit{position:absolute;top:var(--space-1);right:var(--space-1);padding:0 var(--space-2);opacity:0;transition:opacity .12s ease}.result-block:hover .result-block-edit,.result-block-edit:focus-visible{opacity:1}.result-block.is-editing{padding:var(--space-2)}.result-block.is-editing textarea{width:100%;font:inherit}.result-actions{justify-content:flex-end;margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--border)}.dialog-actions{flex:none;justify-content:flex-end}.finding-dialog{width:min(56rem,calc(100vw - 2 * var(--space-6)));max-height:85vh;padding:0;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-raised);color:var(--text);display:flex;flex-direction:column}.finding-dialog::backdrop{background:#00000073}.dialog-head{display:flex;gap:var(--space-3);align-items:center;padding:var(--space-3);border-bottom:1px solid var(--border)}.dialog-head-icon{display:grid;place-items:center;flex:none;color:var(--text-muted)}.dialog-head-icon .tool-icon{width:1.6rem;height:1.6rem}.dialog-heading{flex:1;min-width:0}.dialog-scope{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1);margin:var(--space-2) 0 0;font-size:.8rem}.dialog-scope-label{color:var(--text-muted);font-weight:550}.dialog-scope-item{max-width:16rem;padding:.1rem var(--space-2);border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--accent);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dialog-head h2{flex:1;margin:0;font-size:1.05rem;line-height:1.4}.dialog-close{flex:none;margin-left:auto;width:1.9rem;height:1.9rem;padding:0;display:grid;place-items:center;font-size:1.1rem;line-height:1}.dialog-body{padding:var(--space-4);overflow-y:auto;flex:1}.dialog-foot{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);padding:var(--space-4);border-top:1px solid var(--border);background:var(--surface-sunken)}.composer-row{display:flex;align-items:center;gap:var(--space-2);width:100%}.composer-next{display:flex;justify-content:flex-end;gap:var(--space-2);width:100%;padding-top:var(--space-3);border-top:1px solid var(--border)}.finding-answer{padding-right:var(--space-6)}.finding-answer>:first-child{margin-top:0}.finding-answer>:last-child{margin-bottom:0}.finding-answer table{display:block;overflow-x:auto;width:auto}.message{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface-raised);font-size:.92rem}.message+.message{margin-top:var(--space-2)}.message p:first-child{margin-top:0}.message p:last-child{margin-bottom:0}.message-body{position:relative}.message-body.is-collapsed{max-height:12rem;overflow:hidden}.message-body.is-collapsed:after{content:"";position:absolute;right:0;bottom:0;left:0;height:3rem;background:linear-gradient(transparent,var(--surface-raised));pointer-events:none}.message-user .message-body.is-collapsed:after{background:linear-gradient(transparent,var(--accent-soft))}.message-read-more{margin-top:var(--space-2);padding:0;border:0;background:transparent;color:var(--accent);font-size:.85rem;font-weight:550}.message-read-more:hover:not(:disabled){background:transparent;text-decoration:underline}.message-user{margin-left:var(--space-8);background:var(--accent-soft);border-color:transparent}.message table{display:block;overflow-x:auto;width:auto}.app-warning{max-width:68rem;margin:0 auto;padding:0 var(--space-6) var(--space-6);color:var(--danger);font-size:.9rem}html.is-report{scroll-snap-type:y proximity;scroll-behavior:smooth}html.is-report main{padding-top:0;padding-bottom:0}@media (prefers-reduced-motion: reduce){html.is-report{scroll-snap-type:none;scroll-behavior:auto}}.report-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:11}.report-progress span{display:block;height:100%;background:var(--accent);transform-origin:left;transition:transform .1s linear}.report-section{min-height:100vh;min-height:100svh;display:flex;align-items:center;scroll-snap-align:center}.report-section-inner{width:100%;max-width:42rem;margin:0 auto;padding:var(--space-8)}.report-rise{opacity:0;transform:translateY(1.75rem);transition:opacity .55s cubic-bezier(.2,.7,.3,1),transform .55s cubic-bezier(.2,.7,.3,1)}.report-section.is-shown .report-rise{opacity:1;transform:none}.report-plot{transform:translateY(2.5rem) scale(.985);transition-duration:.7s}.report-section.is-shown .report-plot{transform:none}@media (prefers-reduced-motion: reduce){.report-rise,.report-plot{opacity:1;transform:none;transition:none}}.report-section-head{margin:0 0 var(--space-4);font-size:1.5rem;letter-spacing:-.01em}.report-body{font-size:1.05rem}.report-body>:first-child>:first-child{margin-top:0}.report-body .chart{margin:var(--space-6) 0 0}.chart{margin:0 0 var(--space-4)}.chart figcaption{margin-bottom:var(--space-3);font-size:.9rem;font-weight:550}.chart .recharts-cartesian-axis-tick text{fill:var(--text-muted)}.chart .recharts-legend-item-text{color:var(--text-muted)!important}.finding-hint{font-size:.82rem}
