:root{color:#0f172a;font-synthesis:none;text-rendering:geometricprecision;background:#f7f7f8;font-family:Segoe UI,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{background:#f7f7f8;min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.workspace{grid-template-columns:300px minmax(0,1fr);min-height:100vh;display:grid}.side-card{background:#fff;border-right:1px solid #e5e7eb;flex-direction:column;gap:22px;height:100vh;padding:24px 18px;display:flex;position:sticky;top:0}.brand-block{padding:4px 6px 12px}.brand-block span,.section-heading span,.dropzone-eyebrow,.nav-label{color:#64748b;letter-spacing:.04em;font-size:12px;font-weight:700}.brand-block h1{color:#111827;letter-spacing:-.03em;margin:10px 0 0;font-size:22px;line-height:1.28}.module-tabs{gap:8px;display:grid}.nav-label{margin:0 6px 2px}.module-tabs button{color:#334155;text-align:left;background:0 0;border:1px solid #0000;border-radius:12px;gap:3px;min-height:58px;padding:12px 14px;transition:background .16s,border-color .16s,color .16s;display:grid}.module-tabs button:hover{background:#f8fafc}.module-tabs button.active{color:#111827;background:#f3f4f6;border-color:#d1d5db}.module-tabs strong{font-size:15px}.module-tabs small{color:#64748b;font-size:12px}.control-grid{gap:14px;display:grid}.hint-card{color:#64748b;background:#f9fafb;border:1px solid #e5e7eb;border-radius:14px;margin-top:auto;padding:14px}.hint-card strong{color:#111827;margin-bottom:6px;font-size:14px;display:block}.hint-card p{margin:0;font-size:13px;line-height:1.65}.main-card{min-width:0;padding:32px}.section-heading{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:22px;padding-bottom:18px;display:flex}.section-heading h2{color:#111827;letter-spacing:-.04em;margin:6px 0 0;font-size:28px;line-height:1.2}.section-heading p{color:#64748b;text-align:right;max-width:520px;margin:0;font-size:14px;line-height:1.7}.split-layout{grid-template-columns:minmax(320px,460px) minmax(420px,1fr);align-items:start;gap:18px;display:grid}.form-card,.result-card{background:#fff;border:1px solid #e5e7eb;border-radius:16px;min-width:0}.form-card{padding:18px}.report-form{gap:16px;display:grid}.report-form .field+.field,.report-form .upload-panel+.field{margin-top:0}.result-card{background:#f8fafc;overflow:hidden}.field{color:#334155;gap:8px;font-size:14px;font-weight:650;display:grid}.field+.field,.upload-panel+.field{margin-top:16px}.field input,.field textarea,.field select{color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:10px;outline:none;width:100%;transition:border-color .16s,box-shadow .16s}.field input,.field select{height:42px;padding:0 12px}.field textarea{resize:vertical;min-height:132px;padding:12px}.field input:focus,.field textarea:focus,.field select:focus{border-color:#111827;box-shadow:0 0 0 3px #11182714}.field input[type=range]{accent-color:#111827;height:30px;padding:0}.field-help{color:#64748b;font-size:12px;line-height:1.5}.dropzone{text-align:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:14px;place-content:center;gap:8px;min-height:134px;padding:22px;transition:border-color .16s,background .16s;display:grid}.dropzone:hover{background:#fff;border-color:#111827}.dropzone input{display:none}.dropzone strong{color:#111827;font-size:16px}.dropzone small,.empty-state{color:#64748b}.file-list{gap:8px;margin-top:12px;display:grid}.file-pill{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;min-width:0;padding:9px 10px;display:flex}.file-pill span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.file-pill button{color:#1e40af;background:0 0;border:0;flex:none;font-weight:650}.two-column{grid-template-columns:1fr 1fr;gap:12px;margin-top:16px;display:grid}.report-fields{gap:16px;margin-top:0;padding-top:2px;display:grid}.prompt-presets{gap:10px;margin-top:14px;display:grid}.prompt-presets>span{color:#64748b;font-size:13px;font-weight:650}.prompt-presets>div{flex-wrap:wrap;gap:8px;display:flex}.prompt-presets button{color:#334155;text-align:left;background:#fff;border:1px solid #e5e7eb;border-radius:999px;padding:7px 10px;font-size:12px;line-height:1.4;transition:border-color .16s,background .16s}.prompt-presets button:hover{background:#f8fafc;border-color:#cbd5e1}.primary-button{color:#fff;background:#111827;border:0;border-radius:10px;width:100%;min-height:46px;margin-top:18px;font-weight:750;transition:background .16s,opacity .16s}.primary-button:hover:not(:disabled){background:#020617}.stop-button,.stop-button:hover:not(:disabled){color:#111827;background:#f3f4f6}.primary-button:disabled{cursor:wait;opacity:.62}.secondary-button{color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:10px;width:100%;min-height:44px;font-weight:750;transition:background .16s,border-color .16s,opacity .16s}.secondary-button:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.secondary-button:disabled{cursor:wait;opacity:.62}.result-header{color:#111827;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;font-weight:750;display:flex}.result-header b{color:#2563eb;font-size:13px}.markdown-body{color:#1f2937;background:#f8fafc;min-height:560px;max-height:calc(100vh - 170px);padding:20px;line-height:1.78;overflow:auto}.markdown-body>:first-child{margin-top:0}.markdown-body>:last-child{margin-bottom:0}.markdown-body h1,.markdown-body h2,.markdown-body h3{color:#111827;letter-spacing:-.02em}.markdown-body code{color:#0f172a;background:#f1f5f9;border-radius:6px;padding:2px 5px}.markdown-body table{border-collapse:collapse;table-layout:auto;white-space:normal;background:#fff;border:1px solid #dbeafe;border-radius:12px;width:100%;max-width:100%}.markdown-body th,.markdown-body td{text-align:left;vertical-align:top;word-break:break-word;border:1px solid #e5e7eb;min-width:140px;padding:10px 12px}.markdown-body th{color:#0f172a;background:#eff6ff;font-weight:750}.markdown-body tr:nth-child(2n) td{background:#f8fafc}.error-banner{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;margin-bottom:16px;padding:12px 14px}.loading-placeholder{color:#64748b;font-size:14px}@media (width<=1100px){.workspace,.split-layout{grid-template-columns:1fr}.side-card{height:auto;position:static}.hint-card{margin-top:0}.section-heading{flex-direction:column;align-items:flex-start}.section-heading p{text-align:left}}@media (width<=680px){.main-card,.side-card{padding:18px}.two-column{grid-template-columns:1fr}.markdown-body{min-height:420px}}
