@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";:root{font-family:Inter,Microsoft YaHei,PingFang SC,sans-serif;line-height:1.6;color:#1e293b;background:#f8fafc;--primary-color: #4f46e5;--primary-hover: #4338ca;--bg-subtle: #f1f5f9;--border-color: #e2e8f0;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--radius-md: 12px;--radius-lg: 16px}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;-webkit-font-smoothing:antialiased}button,input,textarea{font:inherit}button{cursor:pointer;transition:all .2s ease}.app-container{display:flex;height:100vh;overflow:hidden}.sidebar{width:270px;background:#fff;border-right:1px solid var(--border-color);display:flex;flex-direction:column;flex-shrink:0;z-index:10;transition:width .3s ease-in-out;overflow:hidden;white-space:nowrap}.sidebar.collapsed{width:68px}.sidebar-header{height:60px;padding:0 16px;display:flex;align-items:center;justify-content:space-between}.sidebar.collapsed .sidebar-header{justify-content:center}.sidebar-logo{display:flex;align-items:center;gap:12px;min-height:40px}.sidebar-logo img{display:block;height:36px;object-fit:contain;transform:translateY(-1px)}.sidebar-footer{padding:20px 24px 30px;background:transparent;display:flex;align-items:center;gap:14px;position:relative;z-index:5;margin-top:auto;flex-shrink:0}.sidebar-footer:before{display:none}.sidebar.collapsed .sidebar-footer{justify-content:center;padding:0 0 28px;background:transparent}.sidebar.collapsed .sidebar-footer:before{display:none}.brand-avatar{width:32px;height:32px;border-radius:50%;background-color:var(--primary-color);color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;flex-shrink:0}.brand-name{font-size:14px;font-weight:600;color:#1e293b;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;white-space:nowrap}.sidebar-menu{display:flex;flex-direction:column;gap:8px;padding:16px 14px}.sidebar-menu-btn{display:flex;align-items:center;gap:12px;width:100%;border-radius:var(--radius-md);padding:10px;border:none;background:transparent;cursor:pointer;color:#475569;font-weight:500;font-size:14px;transition:background .2s,color .2s}.sidebar.collapsed .sidebar-menu-btn{justify-content:center;padding:10px 0}.sidebar-menu-btn:hover{background:var(--bg-subtle);color:#0f172a}.search-container{display:flex;flex-direction:column;width:100%}.sidebar-search-input{flex:1;border:none;outline:none;background:transparent;font-size:14px;color:#0f172a;min-width:0}.session-list-header{padding:0 20px 8px;font-size:12px;color:#94a3b8;font-weight:500}.session-list{flex:1;overflow-y:auto;overflow-x:hidden;padding:16px 12px 24px;display:flex;flex-direction:column;gap:4px}.session-item-wrapper{position:relative;overflow:visible;border-radius:var(--radius-md)}.session-item-wrapper.mobile-menu-open{z-index:12}.session-item{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 12px;border-radius:var(--radius-md);cursor:grab;border:1px solid transparent;min-width:0;transition:transform .25s cubic-bezier(.2,.8,.2,1),background .2s,border-color .2s,box-shadow .2s;background:#fff;position:relative;z-index:2}.session-item:active{cursor:grabbing}.session-item:hover{background:var(--bg-subtle)}.session-item.active{background:#eef2ff;color:var(--primary-color);border-color:#c7d2fe;box-shadow:0 10px 24px -22px #4f46e5e6}.session-item.dragging{opacity:.58;transform:scale(.985)}.session-item.drag-over{background:#eef4ff;border-color:#a5b4fc;box-shadow:0 0 0 3px #4f46e51f}.session-info{display:flex;flex-direction:column;overflow:hidden;min-width:0}.session-title{font-weight:500;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-date{font-size:11px;color:#64748b;margin-bottom:2px;line-height:1.4;transition:opacity .2s ease}.session-linked-files{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:6px;width:100%}.session-linked-file-chip,.session-linked-file-more{display:inline-flex;align-items:center;justify-content:center;width:100%;min-width:0;padding:3px 8px;border-radius:9999px;font-size:11px;line-height:1.4;background:#f1f5f9;color:#475569;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-item-wrapper.swiped .session-item{transform:translate(-64px)}.mobile-action-menu-btn{background:transparent;border:none;color:#64748b;padding:2px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center}.mobile-session-actions-bar{display:flex;background:var(--bg-subtle);border-radius:var(--radius-md);margin-top:6px;overflow:hidden;border:1px solid var(--border-color);animation:slideDown .2s ease-out;position:relative;z-index:1;box-shadow:var(--shadow-md)}@keyframes slideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.mobile-session-actions-bar button{flex:1;background:transparent;border:none;border-right:1px solid var(--border-color);padding:8px 0;min-height:40px;font-size:12px;color:#475569;font-weight:500;cursor:pointer}.mobile-session-actions-bar button:last-child{border-right:none}.mobile-session-actions-bar button.danger{color:#ef4444}.mobile-session-actions-bar button:active{background:#0000000d}.theme-dark .mobile-session-actions-bar button:active{background:#ffffff0d}.theme-dark .mobile-session-actions-bar button{color:#cbd5e1}.theme-dark .mobile-session-actions-bar button.danger{color:#f87171}.mobile-tabs{display:flex;padding:16px;gap:8px}.mobile-tab-btn{flex:1;padding:10px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);font-weight:500;color:#64748b;cursor:pointer;transition:all .2s;font-size:14px}.mobile-tab-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.theme-dark .mobile-tab-btn{background:#1e293b;color:#94a3b8;border-color:#334155}.theme-dark .mobile-tab-btn.active{background:var(--primary-color);color:#fff;border-color:var(--primary-color)}.pc-delete-btn{display:none}@media (hover: hover){.session-item:hover .session-date{opacity:0}.pc-delete-btn{display:flex;position:absolute;top:50%;right:0;width:24px;height:24px;align-items:center;justify-content:center;background:transparent;color:#94a3b8;border:none;border-radius:6px;opacity:0;transform:translateY(-50%) translate(4px);transition:all .2s ease;cursor:pointer;font-size:18px;line-height:1}.session-item:hover .pc-delete-btn{opacity:1;transform:translateY(-50%) translate(0)}.pc-delete-btn:hover{background:#fee2e2;color:#ef4444}}@media (max-width: 768px){.mobile-hidden,.workspace-grid .panel-header{display:none!important}.session-list{padding-bottom:calc(108px + env(safe-area-inset-bottom,0px))}}.main-content{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-subtle)}.page-header{padding:24px 32px;background:#fff;border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-sm);z-index:5;display:flex;justify-content:space-between;align-items:center;gap:24px}.page-header h1{margin:0 0 8px;font-size:24px;font-weight:600;color:#0f172a}.page-header p{margin:0;color:#64748b;font-size:14px}.page-header-actions{display:flex;align-items:center;justify-content:flex-end;align-self:center;margin-left:auto}.theme-toggle-btn{width:42px;height:42px;border:1px solid var(--border-color);border-radius:9999px;background:#fff;color:#475569;display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--shadow-sm)}.theme-toggle-btn:hover{background:#f8fafc;color:#0f172a;transform:translateY(-1px)}.workspace{flex:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:24px;padding:24px 32px;overflow-y:auto}.panel{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;overflow:hidden}.panel-header{padding:16px 20px;border-bottom:1px solid var(--border-color);background:#fafafa}.panel-header h2{margin:0;font-size:16px;font-weight:600}.panel-body{padding:20px;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:24px}.chat-list{display:flex;flex-direction:column;gap:16px}.chat-bubble{border-radius:var(--radius-lg);padding:12px 16px;max-width:90%;font-size:14px;box-shadow:var(--shadow-sm);animation:fadeIn .3s ease}.chat-bubble.progress-bubble{width:min(100%,286px);max-width:100%;padding:0;background:transparent;border:none;box-shadow:none;align-self:flex-start}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-bubble.assistant{background:#fff;border:1px solid var(--border-color);align-self:flex-start;border-bottom-left-radius:4px;min-width:0}.chat-bubble.user{background:var(--primary-color);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}.chat-bubble.system{background:#fffbeb;border:1px solid #fde68a;color:#b45309;align-self:center;font-size:13px}.chat-bubble p,.chat-bubble pre{margin:0;white-space:pre-wrap;word-break:break-word}.progress-card{width:100%;position:relative;overflow:hidden;border:1px solid #dbe7f5;border-radius:20px;background:linear-gradient(180deg,#fff,#f5f9ff);box-shadow:0 16px 32px -26px #0f172a52;padding:14px 16px 16px}.progress-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at top right,rgba(99,102,241,.12),transparent 42%);pointer-events:none}.progress-card.success{background:linear-gradient(180deg,#f5fff8,#eefcf4);border-color:#bbf7d0}.progress-card.error{background:linear-gradient(180deg,#fff7f7,#fff1f1);border-color:#fecaca}.progress-card.success:before{background:radial-gradient(circle at top right,rgba(34,197,94,.12),transparent 42%)}.progress-card.error:before{background:radial-gradient(circle at top right,rgba(239,68,68,.12),transparent 42%)}.progress-card-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.progress-card-status{min-width:28px;display:inline-flex;align-items:center;justify-content:center}.progress-card-main{display:flex;flex-direction:column;gap:4px;min-width:0}.progress-card-title{display:block;margin:0;color:#0f172a;font-size:14px;font-weight:700;line-height:1.45}.progress-badge{display:inline-flex;align-items:center;margin:0;padding:3px 9px;border-radius:9999px;background:#e5edff;color:#4338ca;font-size:10px;font-weight:700;letter-spacing:.02em;box-shadow:inset 0 0 0 1px #6366f124}.progress-card.success .progress-badge{background:#dcfce7;color:#166534;box-shadow:inset 0 0 0 1px #22c55e29}.progress-card.error .progress-badge{background:#fee2e2;color:#b91c1c;box-shadow:inset 0 0 0 1px #ef444424}.progress-indicator{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-size:13px;font-weight:700;border:1px solid transparent}.progress-indicator.running{background:#dbeafe;color:#2563eb;border-color:#bfdbfe}.progress-indicator.success{background:#dcfce7;color:#15803d;border-color:#bbf7d0}.progress-indicator.error{background:#fee2e2;color:#dc2626;border-color:#fecaca}.progress-card-content{margin:0;font-size:12px;line-height:1.65;color:#475569}.progress-stage-list{display:flex;flex-direction:column;gap:7px;margin-top:14px}.progress-stage-item{position:relative;display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:11px;color:#64748b;font-size:12px;line-height:1.55}.progress-stage-item:not(:last-child):after{content:"";position:absolute;left:14px;top:23px;bottom:-8px;width:1px;background:linear-gradient(180deg,#cbd5e1f2,#e2e8f059)}.progress-stage-item.running{color:#1d4ed8;background:#3b82f614;font-weight:600}.progress-stage-item.done{color:#0f172a;background:#0f172a08}.progress-stage-item.pending{color:#94a3b8}.progress-stage-dot{width:7px;height:7px;border-radius:50%;background:#cbd5e1;flex-shrink:0;position:relative;z-index:1}.progress-stage-item.running .progress-stage-dot{background:#3b82f6;box-shadow:0 0 0 4px #3b82f626}.progress-stage-item.done .progress-stage-dot{background:#10b981;box-shadow:0 0 0 4px #10b9811f}.progress-card.success .progress-stage-item.done{color:#166534;background:#22c55e14}.progress-card.error .progress-stage-item.running{color:#b91c1c;background:#ef444414}.progress-card.error .progress-stage-item.running .progress-stage-dot{background:#ef4444;box-shadow:0 0 0 4px #ef44441f}.upload-dropzone{border:2px dashed #cbd5e1;border-radius:var(--radius-lg);padding:40px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#faf8ff;transition:all .3s ease;position:relative;overflow:hidden}.upload-dropzone:hover{border-color:var(--primary-color);background:#f0f5ff}.upload-icon{font-size:48px;margin-bottom:16px;color:var(--primary-color);opacity:.8}.upload-field{display:inline-flex;align-items:center;justify-content:center;padding:12px 24px;border-radius:var(--radius-md);background:var(--primary-color);color:#fff;font-weight:500;font-size:15px;cursor:pointer;transition:background .2s,transform .1s;box-shadow:var(--shadow-md);margin-bottom:12px}.upload-field:hover{background:var(--primary-hover);transform:translateY(-1px)}.upload-field:active{transform:translateY(1px);box-shadow:var(--shadow-sm)}.upload-input-hidden{display:none}.upload-hint{font-size:13px;color:#64748b;margin-top:8px}.btn-primary{width:100%;border:none;border-radius:var(--radius-md);padding:12px 20px;background:var(--primary-color);color:#fff;font-weight:600;box-shadow:var(--shadow-md)}.btn-primary:not(:disabled):hover{background:var(--primary-hover);transform:translateY(-1px)}.btn-primary:active{transform:translateY(1px)}.btn-primary:disabled{background:#94a3b8;cursor:not-allowed;box-shadow:none}.btn-secondary{border:1px solid var(--border-color);background:#fff;color:#334155;border-radius:var(--radius-md);padding:10px 16px;font-weight:500}.btn-secondary:hover:not(:disabled){background:var(--bg-subtle)}.btn-danger{border:none;border-radius:var(--radius-md);padding:12px 18px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;font-weight:600;box-shadow:var(--shadow-md)}.btn-danger:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 24px -18px #dc2626b3}.btn-danger:disabled{cursor:default;opacity:0;box-shadow:none}.btn-icon{border:none;background:transparent;color:#475569;display:inline-flex;align-items:center;justify-content:center;font-size:20px;border-radius:var(--radius-md);transition:background .2s,color .2s;cursor:pointer}.btn-icon:hover{background:var(--bg-subtle);color:#0f172a}.new-session-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-md);background:#eef2ff;color:var(--primary-color);border:none;cursor:pointer;transition:background .2s,transform .1s}.new-session-btn:hover{background:#e0e7ff;transform:translateY(-1px)}.toggle-sidebar-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-md);border:none;background:transparent;color:#475569;cursor:pointer;transition:background .2s,color .2s}.toggle-sidebar-btn:hover{background:var(--bg-subtle);color:#0f172a}.json-table-editor{width:100%;border-collapse:separate;border-spacing:0;border-radius:var(--radius-md);border:1px solid var(--border-color);overflow:hidden;box-shadow:var(--shadow-sm)}.json-table-editor th,.json-table-editor td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border-color)}.json-table-editor th{background:#f8fafc;font-weight:600;font-size:13px;color:#475569;width:30%}.json-table-editor tr:last-child th,.json-table-editor tr:last-child td{border-bottom:none}.json-table-editor .key-cell{background:#f8fafc;font-weight:500;font-size:14px;color:#334155;border-right:1px solid var(--border-color)}.json-table-editor .value-input{width:100%;border:none;background:transparent;padding:4px 8px;font-size:14px;color:#0f172a;border-radius:4px;transition:background .2s,box-shadow .2s}.json-table-editor .value-input:focus{outline:none;background:#fff;box-shadow:0 0 0 2px #4f46e533}.json-table-editor .value-input::placeholder{color:#94a3b8;font-style:italic}.report-action-dock{position:relative;margin-top:18px;height:56px;width:100%;--report-stop-width: 112px;--report-action-gap: 16px}.report-submit-btn,.report-stop-btn{position:absolute;top:0;height:100%;transition:width .28s ease,transform .28s ease,opacity .22s ease,border-radius .28s ease,box-shadow .22s ease}.report-submit-btn{left:0;width:100%;z-index:2;padding-inline:24px}.report-stop-btn{right:0;width:var(--report-stop-width);z-index:1;opacity:0;pointer-events:none;transform:translate(18px) scale(.96);padding-inline:0}.report-action-dock.is-generating .report-submit-btn{width:calc(100% - var(--report-stop-width) - var(--report-action-gap));transform:translate(-2px);box-shadow:0 14px 28px -20px #4f46e5e6}.report-action-dock.is-generating .report-stop-btn{opacity:1;pointer-events:auto;transform:translate(0) scale(1)}.guidance-cards{display:flex;flex-direction:column;gap:12px}.info-card{background:#fff;border:1px solid var(--border-color);border-left:4px solid var(--primary-color);border-radius:var(--radius-md);padding:16px;box-shadow:var(--shadow-sm)}.info-card h4{margin:0 0 8px;font-size:14px;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.info-card p{margin:0;font-size:15px;color:#1e293b}.info-card pre{margin:0;background:var(--bg-subtle);padding:8px;border-radius:4px;font-size:13px;overflow-x:auto}.content-section-title{margin:0 0 16px;font-size:18px;color:#0f172a;border-bottom:1px solid #e2e8f0;padding-bottom:8px}.report-export-ribbon{position:relative;overflow:hidden;margin-bottom:24px;padding:20px;border-radius:20px;border:1px solid rgba(148,163,184,.28);background:radial-gradient(circle at top right,rgba(37,99,235,.18),transparent 34%),linear-gradient(135deg,#f8fbff,#fff 48%,#f7fafc);box-shadow:0 24px 44px -34px #0f172a73;animation:reportExportReveal .45s cubic-bezier(.2,.8,.2,1)}.report-export-ribbon:after{content:"";position:absolute;inset:auto -20% -45% auto;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,#0ea5e91a,#0ea5e900 72%);pointer-events:none}.report-export-ribbon-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px;position:relative;z-index:1}.report-export-heading{display:flex;flex-direction:column;gap:8px;min-width:0}.report-export-kicker{display:inline-flex;align-items:center;gap:8px;width:fit-content;padding:6px 10px;border-radius:999px;background:#0f172a0f;color:#0f172a;font-size:12px;font-weight:700;letter-spacing:.04em}.report-export-heading h3{margin:0;font-size:22px;line-height:1.2;color:#0f172a}.report-export-heading p{margin:0;max-width:760px;color:#475569;font-size:14px;line-height:1.75}.report-export-status{display:flex;flex-direction:column;gap:4px;min-width:180px;padding:12px 14px;border-radius:16px;background:#ffffffd1;border:1px solid rgba(148,163,184,.24);box-shadow:inset 0 1px #fffc}.report-export-status-label{font-size:11px;color:#64748b;letter-spacing:.04em;text-transform:uppercase}.report-export-status strong{color:#0f172a;font-size:13px;line-height:1.55;word-break:break-all}.report-export-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;position:relative;z-index:1}.report-export-card{position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-height:172px;padding:18px 18px 16px;border:1px solid rgba(148,163,184,.24);border-radius:18px;background:#ffffffe0;color:#0f172a;text-align:left;box-shadow:0 16px 30px -30px #0f172aa6;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease}.report-export-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,#2563eb,#0f766e)}.report-export-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,.72) 45%,transparent 78%);transform:translate(-130%);transition:transform .55s ease;pointer-events:none}.report-export-card:not(:disabled):hover{transform:translateY(-4px) translate(2px);border-color:#2563eb5c;box-shadow:0 22px 34px -28px #2563eb7a;background:#fffffff5}.report-export-card:not(:disabled):hover:after{transform:translate(130%)}.report-export-card:disabled{cursor:not-allowed;opacity:.72}.report-export-card.is-loading{border-color:#2563eb6b;box-shadow:0 22px 36px -30px #2563eb6b}.report-export-card.is-active{border-color:#a979476b;box-shadow:0 24px 40px -32px #a979477a;background:#fffcf6fa}.report-export-card-kicker{font-size:12px;font-weight:700;color:#2563eb;letter-spacing:.04em}.report-export-card strong{font-size:18px;line-height:1.25}.report-export-card-description{color:#475569;font-size:13px;line-height:1.75}.report-export-card-meta{margin-top:auto;display:inline-flex;align-items:center;min-height:28px;padding:5px 10px;border-radius:999px;background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:600}.report-export-footnote{position:relative;z-index:1;margin:14px 0 0;color:#475569;font-size:12px;line-height:1.7}.report-pdf-studio{position:relative;z-index:1;margin-top:18px;padding-top:18px;border-top:1px solid rgba(148,163,184,.28);display:flex;flex-direction:column;gap:18px;animation:reportPdfStudioReveal .32s cubic-bezier(.2,.8,.2,1)}.report-pdf-studio-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.report-pdf-studio-copy{display:flex;flex-direction:column;gap:8px;min-width:0}.report-pdf-studio-kicker{display:inline-flex;width:fit-content;padding:5px 10px;border-radius:999px;background:#a979471a;color:#8a6231;font-size:11px;font-weight:700;letter-spacing:.04em}.report-pdf-studio-copy h4{margin:0;font-size:20px;line-height:1.2;color:#0f172a}.report-pdf-studio-copy p{margin:0;color:#475569;font-size:13px;line-height:1.75;max-width:680px}.report-pdf-studio-header-actions{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.report-pdf-link-btn{border:none;background:transparent;color:#8a6231;font-size:13px;font-weight:600;padding:0}.report-pdf-link-btn:hover{color:#6e4f26}.report-pdf-studio-layout{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:22px;align-items:stretch}.report-pdf-form{display:flex;flex-direction:column;gap:16px}.report-pdf-field{display:flex;flex-direction:column;gap:8px}.report-pdf-field label,.report-pdf-field span{font-size:12px;font-weight:700;letter-spacing:.04em;color:#64748b;text-transform:uppercase}.report-pdf-field input{width:100%;border:none;border-bottom:1px solid rgba(148,163,184,.55);padding:10px 0 12px;background:transparent;color:#0f172a;font-size:16px;transition:border-color .2s ease,transform .2s ease}.report-pdf-field input:focus{outline:none;border-bottom-color:#a97947;transform:translate(1px)}.report-pdf-field.is-static{padding:12px 0;border-top:1px solid rgba(148,163,184,.22);border-bottom:1px solid rgba(148,163,184,.22)}.report-pdf-field.is-static strong{color:#0f172a;font-size:16px;line-height:1.7}.report-pdf-date-toggle{display:flex;flex-wrap:wrap;gap:10px}.report-pdf-date-pill{border:1px solid rgba(148,163,184,.32);border-radius:999px;background:#ffffffb8;color:#475569;padding:8px 14px;font-size:13px;font-weight:600}.report-pdf-date-pill.is-active{border-color:#a979477a;background:#a979471f;color:#7b582e;box-shadow:inset 0 0 0 1px #a979471f}.report-pdf-form-actions{display:flex;justify-content:flex-start;align-items:center;gap:10px;padding-top:10px;border-top:1px solid rgba(148,163,184,.2)}.report-pdf-toolbar-btn{min-height:46px;border-radius:999px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease,color .2s ease}.report-pdf-toolbar-btn:disabled{cursor:not-allowed;opacity:.72}.report-pdf-toolbar-btn-primary{min-width:196px;border:1px solid rgba(169,121,71,.28);background:linear-gradient(135deg,#1f3045,#2b4662);color:#fffdf8;box-shadow:0 14px 28px -24px #1f3045bf}.report-pdf-toolbar-btn-primary:not(:disabled):hover{transform:translateY(-1px);box-shadow:0 16px 30px -22px #1f3045ad}.report-pdf-toolbar-btn-secondary{border:1px solid rgba(148,163,184,.32);background:#ffffffb8;color:#475569;box-shadow:inset 0 1px #ffffffbf}.report-pdf-toolbar-btn-secondary:not(:disabled):hover{transform:translateY(-1px);border-color:#64748b66;background:#ffffffe0}.report-pdf-preview{display:flex;align-items:stretch}.report-pdf-preview-sheet{position:relative;flex:1;min-height:430px;border-radius:28px;padding:28px 28px 24px;background:radial-gradient(circle at top right,rgba(169,121,71,.12),transparent 24%),linear-gradient(180deg,#f9f5ef,#f3ede3);border:1px solid rgba(169,121,71,.18);box-shadow:0 24px 50px -38px #0f172a80;overflow:hidden}.report-pdf-preview-sheet:before{content:"";position:absolute;top:18px;right:18px;bottom:18px;left:18px;border:1px solid rgba(166,147,117,.28);border-radius:22px;pointer-events:none}.report-pdf-preview-sheet:after{content:"";position:absolute;right:42px;top:38px;width:18px;height:18px;border-radius:50%;background:#a979473d;box-shadow:0 0 0 14px #a979470d}.report-pdf-preview-topline{position:relative;z-index:1;display:flex;justify-content:space-between;gap:16px;color:#8a6231;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.report-pdf-preview-hero{position:relative;z-index:1;display:flex;flex-direction:column;gap:10px;margin-top:84px;margin-bottom:138px;max-width:88%}.report-pdf-preview-brand{color:#6b7280;font-size:13px;letter-spacing:.03em}.report-pdf-preview-hero h5{margin:0;font-size:38px;line-height:1.18;color:#111827;font-weight:600}.report-pdf-preview-hero p{margin:0;color:#475569;font-size:14px;line-height:1.8;max-width:420px}.report-pdf-preview-meta{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding-top:14px;border-top:1px solid rgba(169,121,71,.4)}.report-pdf-preview-meta div{display:flex;flex-direction:column;gap:6px;min-width:0}.report-pdf-preview-meta span{color:#6b7280;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.report-pdf-preview-meta strong{color:#111827;font-size:13px;line-height:1.6;word-break:break-word}@keyframes reportPdfStudioReveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes reportExportReveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.markdown-report{font-size:15px;line-height:1.75;color:#1e293b;min-width:0;max-width:100%;overflow-wrap:anywhere}.markdown-report-compact{font-size:13px;line-height:1.7}.markdown-report h1,.markdown-report h2,.markdown-report h3{color:#0f172a;margin-top:1.5em;margin-bottom:.5em;font-weight:600}.markdown-report h1{font-size:24px;border-bottom:2px solid var(--border-color);padding-bottom:8px}.markdown-report h2{font-size:20px;border-bottom:1px solid var(--border-color);padding-bottom:6px}.markdown-report h3{font-size:18px}.markdown-report>:first-child{margin-top:0}.markdown-report>:last-child{margin-bottom:0}.markdown-report p{margin-bottom:1.25em}.markdown-report p,.markdown-report li,.markdown-report strong,.markdown-report em,.markdown-report a{overflow-wrap:anywhere;word-break:break-word}.markdown-report ul,.markdown-report ol{margin-bottom:1.25em;padding-left:24px}.markdown-report li{margin-bottom:.5em}.markdown-report blockquote{border-left:4px solid #cbd5e1;margin:0 0 1.25em;padding-left:16px;color:#475569;font-style:italic}.markdown-report code{background:#f1f5f9;padding:2px 6px;border-radius:4px;font-size:.9em;font-family:inherit;color:#ef4444;white-space:normal;overflow-wrap:anywhere;word-break:break-all}.markdown-report pre{background:#1e293b;color:#e2e8f0;padding:16px;border-radius:var(--radius-md);overflow-x:auto;line-height:1.5}.markdown-report pre code{background:transparent;color:inherit;padding:0}.markdown-report table{width:100%;border-collapse:collapse;margin:1rem 0 1.25rem;background:#fff;border:1px solid var(--border-color);border-radius:12px;overflow:hidden;display:block;overflow-x:auto}.markdown-report thead{background:#f8fafc}.markdown-report th,.markdown-report td{border:1px solid var(--border-color);padding:10px 12px;text-align:left;vertical-align:top;min-width:140px}.markdown-report th{color:#0f172a;font-weight:600}.markdown-report td{color:#334155}.report-surface{background:#f8fafc;padding:24px;border-radius:12px;border:1px solid #e2e8f0}.tags-container{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.tag{display:inline-block;background:#e0e7ff;color:#3730a3;padding:4px 10px;border-radius:9999px;font-size:12px;font-weight:500}.linked-files-panel{display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid var(--border-color);border-radius:var(--radius-md);background:#f8fafc}.linked-files-panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.linked-files-panel-header h3{margin:0;font-size:15px;color:#0f172a}.linked-files-panel-header span{font-size:12px;color:#64748b}.linked-files-list{display:flex;flex-direction:column;gap:10px}.linked-file-item{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:12px;border-radius:12px;background:#fff;border:1px solid var(--border-color)}.linked-file-item.missing{opacity:.65;border-style:dashed}.linked-file-text{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.linked-file-text strong{font-size:14px;color:#0f172a}.linked-file-name{font-size:13px;color:#334155;word-break:break-all}.linked-file-path{font-size:12px;color:#64748b;word-break:break-all}.linked-file-item .tag{display:inline-flex;align-items:center;justify-content:center;align-self:center;flex:0 0 auto;min-width:48px;white-space:nowrap;text-align:center}.error-text{background:#fef2f2;color:#b91c1c;padding:12px 16px;border-radius:var(--radius-md);border:1px solid #fecaca;margin:0;font-size:14px}.spinner{display:inline-block;width:20px;height:20px;border:3px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite;margin-right:8px;vertical-align:middle}.spinner-dark{width:16px;height:16px;margin-right:0;border-width:2px;border-color:#0f172a26;border-top-color:#0f172a}@keyframes spin{to{transform:rotate(360deg)}}.app-container.theme-dark{background:#0f172a;color:#e2e8f0}.theme-dark .sidebar{background:#111827;border-right-color:#243041}.theme-dark .sidebar-footer{background:#111827}.theme-dark .sidebar-footer:before{background:linear-gradient(to top,#111827,#11182700)}.theme-dark .brand-name,.theme-dark .session-title,.theme-dark .page-header h1,.theme-dark .panel-header h2,.theme-dark .linked-files-panel-header h3,.theme-dark .linked-file-text strong,.theme-dark .markdown-report h1,.theme-dark .markdown-report h2,.theme-dark .markdown-report h3{color:#f8fafc}.theme-dark .sidebar-menu-btn,.theme-dark .toggle-sidebar-btn,.theme-dark .drag-session-btn,.theme-dark .delete-session-btn,.theme-dark .page-header p,.theme-dark .session-date,.theme-dark .session-list-header,.theme-dark .linked-files-panel-header span,.theme-dark .linked-file-path{color:#94a3b8}.theme-dark .sidebar-menu-btn:hover,.theme-dark .toggle-sidebar-btn:hover{background:#94a3b81f;color:#f8fafc}.theme-dark .session-item{background:#111827}.theme-dark .session-item:hover{background:#172033}.theme-dark .pc-delete-btn:hover{background:#7f1d1d}.theme-dark .session-item.active .session-title,.theme-dark .session-item.active .session-date{color:inherit}.theme-dark .main-content{background:#0b1220}.theme-dark .page-header{background:#111827;border-bottom-color:#243041}.theme-dark .theme-toggle-btn{background:#162033;border-color:#334155;color:#f8fafc}.theme-dark .theme-toggle-btn:hover{background:#1d2940;color:#f8fafc}.theme-dark .panel,.theme-dark .info-card,.theme-dark .linked-file-item,.theme-dark .json-table-editor,.theme-dark .markdown-report table{background:#111827;border-color:#2c3a4f}.theme-dark .panel-header,.theme-dark .json-table-editor th,.theme-dark .json-table-editor .key-cell,.theme-dark .markdown-report thead,.theme-dark .linked-files-panel,.theme-dark .info-card pre{background:#162033}.theme-dark .panel-header{border-bottom-color:#243041}.theme-dark .panel-body,.theme-dark .chat-bubble.assistant,.theme-dark .markdown-report,.theme-dark .info-card p,.theme-dark .linked-file-name,.theme-dark .json-table-editor td{color:#dbe4f0}.theme-dark .upload-dropzone{background:#162033;border-color:#334155}.theme-dark .upload-dropzone:hover{background:#1d2940;border-color:#6366f1}.theme-dark .upload-dropzone strong{color:inherit}.theme-dark .upload-hint{color:#cbd5e1}.theme-dark .chat-bubble.assistant{background:#162033;border-color:#2c3a4f}.theme-dark .json-table-editor th,.theme-dark .json-table-editor td,.theme-dark .markdown-report th,.theme-dark .markdown-report td{border-color:#2c3a4f}.theme-dark .json-table-editor th,.theme-dark .info-card h4{color:#cbd5e1}.theme-dark .json-table-editor .key-cell{color:#e2e8f0;border-right-color:#2c3a4f}.theme-dark .json-table-editor .value-input{color:#f8fafc}.theme-dark .json-table-editor .value-input:focus{background:#0f172a;box-shadow:0 0 0 2px #818cf840}.theme-dark .json-table-editor .value-input::placeholder{color:#64748b}.theme-dark .content-section-title{color:#f8fafc;border-bottom-color:#2c3a4f}.theme-dark .report-export-ribbon{border-color:#47556994;background:radial-gradient(circle at top right,rgba(56,189,248,.16),transparent 32%),linear-gradient(135deg,#111a2a,#0f172a 48%,#152233);box-shadow:0 24px 44px -34px #020617e6}.theme-dark .report-export-kicker,.theme-dark .report-export-status,.theme-dark .report-export-card{background:#0f172ac7;border-color:#4755697a}.theme-dark .report-export-kicker,.theme-dark .report-export-heading h3,.theme-dark .report-export-status strong,.theme-dark .report-export-card,.theme-dark .report-export-card strong{color:#f8fafc}.theme-dark .report-export-heading p,.theme-dark .report-export-status-label,.theme-dark .report-export-card-description,.theme-dark .report-export-footnote{color:#cbd5e1}.theme-dark .report-export-card-kicker{color:#7dd3fc}.theme-dark .report-export-card-meta{background:#1e293bf5;color:#93c5fd}.theme-dark .report-export-card:not(:disabled):hover{border-color:#7dd3fc6b;box-shadow:0 22px 34px -28px #0ea5e96b}.theme-dark .report-export-card.is-active{border-color:#fbbf246b;box-shadow:0 24px 38px -28px #fbbf243d;background:#19212df5}.theme-dark .report-pdf-studio{border-top-color:#4755696b}.theme-dark .report-pdf-studio-kicker,.theme-dark .report-pdf-date-pill.is-active{background:#fbbf2424;color:#fcd34d}.theme-dark .report-pdf-studio-copy h4,.theme-dark .report-pdf-field.is-static strong,.theme-dark .report-pdf-field input,.theme-dark .report-pdf-preview-hero h5,.theme-dark .report-pdf-preview-meta strong{color:#f8fafc}.theme-dark .report-pdf-studio-copy p,.theme-dark .report-pdf-link-btn,.theme-dark .report-pdf-field label,.theme-dark .report-pdf-field span,.theme-dark .report-pdf-preview-brand,.theme-dark .report-pdf-preview-meta span,.theme-dark .report-pdf-preview-topline{color:#cbd5e1}.theme-dark .report-pdf-field input{border-bottom-color:#64748b99}.theme-dark .report-pdf-field input:focus{border-bottom-color:#fbbf24}.theme-dark .report-pdf-field.is-static{border-top-color:#4755696b;border-bottom-color:#4755696b}.theme-dark .report-pdf-date-pill{background:#0f172ab8;border-color:#4755697a;color:#cbd5e1}.theme-dark .report-pdf-form-actions{border-top-color:#4755695c}.theme-dark .report-pdf-toolbar-btn-primary{border-color:#fbbf2433;background:linear-gradient(135deg,#7c5d2e,#9c7740);color:#fffaf0;box-shadow:0 16px 28px -24px #fbbf2457}.theme-dark .report-pdf-toolbar-btn-secondary{background:#0f172ab8;border-color:#4755697a;color:#cbd5e1}.theme-dark .report-pdf-preview-sheet{background:radial-gradient(circle at top right,rgba(251,191,36,.14),transparent 26%),linear-gradient(180deg,#151c26,#0f1720);border-color:#94a3b829}.theme-dark .report-pdf-preview-sheet:before{border-color:#94a3b82e}.theme-dark .report-pdf-preview-sheet:after{background:#fbbf242e;box-shadow:0 0 0 14px #fbbf240a}.theme-dark .report-pdf-preview-meta{border-top-color:#fbbf244d}.theme-dark .markdown-report{color:#dbe4f0}.theme-dark .report-surface{background:#101826;border-color:#2c3a4f}.theme-dark .markdown-report h1,.theme-dark .markdown-report h2{border-bottom-color:#2c3a4f}.theme-dark .markdown-report blockquote{border-left-color:#475569;color:#cbd5e1}.theme-dark .markdown-report code{background:#1e293b;color:#fda4af}.theme-dark .markdown-report th{color:#f8fafc}.theme-dark .markdown-report td{color:#dbe4f0}.theme-dark .linked-files-panel{border-color:#243041}.theme-dark .linked-file-item.missing{border-color:#475569}.workspace-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.5fr)}.page-header-title-group{display:flex;align-items:center;gap:16px}.mobile-menu-btn{display:none;background:transparent;border:none;color:#0f172a;padding:8px;margin-left:-8px;border-radius:var(--radius-md);cursor:pointer;align-items:center;justify-content:center}.mobile-menu-btn:hover{background:var(--bg-subtle)}.theme-dark .mobile-menu-btn{color:#f8fafc}.theme-dark .mobile-menu-btn:hover{background:#1d2940}.mobile-overlay{display:none}.desktop-only{display:flex}.mobile-only{display:none!important}@media (max-width: 1024px){.workspace,.workspace-grid{grid-template-columns:1fr}}@media (max-width: 768px){.report-export-ribbon{padding:16px;border-radius:18px}.report-export-ribbon-top{flex-direction:column}.report-export-status{min-width:0;width:100%}.report-export-actions{grid-template-columns:1fr}.report-export-card{min-height:0}.report-pdf-studio-header,.report-pdf-studio-layout,.report-pdf-form-actions{grid-template-columns:1fr;flex-direction:column}.report-pdf-studio-header-actions{width:100%;justify-content:space-between}.report-pdf-preview-sheet{min-height:360px;padding:22px 22px 20px}.report-pdf-preview-hero{margin-top:58px;margin-bottom:104px;max-width:100%}.report-pdf-preview-hero h5{font-size:28px}.report-pdf-preview-meta{grid-template-columns:1fr}.report-pdf-toolbar-btn{width:100%}.report-action-dock{height:52px;--report-stop-width: 96px;--report-action-gap: 12px}.workspace,.workspace-grid{display:flex;flex-direction:column;padding:16px;gap:16px}.page-header{padding:12px 16px;flex-wrap:nowrap;align-items:center;gap:12px}.page-header-title-group{flex:1;min-width:0}.page-header h1{font-size:18px;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.page-header p{font-size:12px;line-height:1.4;margin:0;padding-right:8px;word-break:break-word}.mobile-menu-btn{display:flex}.sidebar{position:fixed;top:0;left:0;bottom:0;width:280px!important;height:100%;max-height:none;z-index:1000;transform:translate(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);border-right:1px solid var(--border-color)}.sidebar.mobile-open{transform:translate(0);box-shadow:var(--shadow-lg)}.mobile-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;z-index:999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fadeIn .3s ease-out forwards}.desktop-only{display:none!important}.mobile-only{display:flex!important}.sidebar-footer{padding-bottom:calc(28px + env(safe-area-inset-bottom,0px))}.upload-dropzone{padding:24px 16px}.chat-bubble.progress-bubble{width:100%}}
