.login-container{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:20px}.login-card{background:#fff;border-radius:16px;padding:48px;box-shadow:0 20px 60px #0000004d;max-width:400px;width:100%}.login-header{text-align:center;margin-bottom:32px}.login-header h1{font-size:32px;font-weight:700;color:#1a1a1a;margin-bottom:8px}.login-header p{font-size:16px;color:#666}.auth-toggle{display:flex;gap:8px;margin-bottom:24px;background:#f5f5f5;padding:4px;border-radius:8px}.auth-toggle button{flex:1;padding:10px;border:none;background:transparent;border-radius:6px;font-size:14px;font-weight:500;color:#666;cursor:pointer;transition:all .2s ease}.auth-toggle button.active{background:#fff;color:#667eea;box-shadow:0 2px 4px #0000001a}.auth-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:500;color:#333}.form-group input{padding:12px;border:1px solid #ddd;border-radius:8px;font-size:16px;transition:border-color .2s ease}.error-message{padding:12px;background:#fee;color:#c33;border-radius:8px;font-size:14px;text-align:center}.submit-button{padding:14px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.submit-button:active:not(:disabled){transform:translateY(0)}.dashboard-container{min-height:100vh;background:#f5f7fa}.dashboard-header{background:#fff;padding:20px 32px;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;align-items:center}.dashboard-header .header-left h1{margin:0 0 4px;font-size:28px;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.dashboard-header .header-subtitle{margin:0;color:#666;font-size:14px}.dashboard-content-wrapper{display:flex;height:calc(100vh - 85px)}.dashboard-sidebar{width:260px;background:#fff;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;transition:width .3s ease;position:relative;flex-shrink:0}.dashboard-sidebar.collapsed{width:20px;min-width:20px}.dashboard-sidebar.collapsed .sidebar-toggle{right:-14px;background:#4f46e5;color:#fff;border-color:#4f46e5}.dashboard-sidebar.collapsed .sidebar-toggle:hover{background:#4338ca}.dashboard-sidebar .sidebar-toggle{position:absolute;top:12px;right:-12px;width:24px;height:24px;background:#fff;border:1px solid #e0e0e0;border-radius:50%;color:#666;font-size:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;box-shadow:0 2px 4px #0000001a;transition:all .2s}.dashboard-sidebar .sidebar-toggle:hover{background:#f0f0f0;color:#333}.dashboard-sidebar .sidebar-nav-section{padding:16px;border-bottom:1px solid #e0e0e0}.dashboard-sidebar .sidebar-nav-section h3{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin:0 0 12px}.dashboard-sidebar .sidebar-nav-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 12px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;font-size:13px;font-weight:600;text-align:center;cursor:pointer;margin-bottom:6px;transition:all .2s ease}.dashboard-sidebar .sidebar-nav-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translate(2px);box-shadow:0 2px 8px #667eea66}.dashboard-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.dashboard-content{flex:1;overflow-y:auto;padding:32px}.user-section{max-width:900px;margin:0 auto}.user-card{background:#fff;border-radius:16px;padding:32px;text-align:center;box-shadow:0 4px 16px #00000014;margin-bottom:32px}.user-avatar-placeholder{width:100px;height:100px;border-radius:50%;margin:0 auto 20px;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;align-items:center;justify-content:center;font-size:42px;font-weight:700;color:#fff;box-shadow:0 4px 12px #667eea4d}.user-card h2{font-size:24px;font-weight:600;color:#1a1a1a;margin:0 0 8px}.user-email{font-size:15px;color:#666;margin:0}.quick-actions{margin-bottom:32px}.quick-actions h3{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 16px}.actions-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.action-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:24px;text-align:center;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:8px}.action-card:hover{border-color:#667eea;box-shadow:0 4px 12px #667eea26;transform:translateY(-2px)}.action-icon{font-size:32px}.action-title{font-size:16px;font-weight:600;color:#1a1a1a}.action-desc{font-size:13px;color:#666}.settings-section h3{font-size:18px;font-weight:600;color:#1a1a1a;margin:0 0 16px}.settings-buttons{display:flex;gap:12px;flex-wrap:wrap}.settings-btn{display:flex;align-items:center;gap:8px;padding:12px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.settings-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.settings-btn.admin{background:linear-gradient(135deg,#f59e0b,#d97706)}.settings-btn.admin:hover{background:linear-gradient(135deg,#d97706,#b45309);box-shadow:0 4px 12px #f59e0b4d}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;padding:32px;max-width:420px;width:90%;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.modal-header h2{font-size:20px;font-weight:600;color:#1a1a1a;margin:0}.modal-close{background:none;border:none;font-size:28px;color:#64748b;cursor:pointer;padding:0;line-height:1}.modal-close:hover{color:#1a1a1a}.password-form .form-group{margin-bottom:20px}.password-form label{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:8px}.password-form input{width:100%;padding:12px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.password-form input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.password-form .error-message{background:#fef2f2;color:#dc2626;padding:12px;border-radius:8px;font-size:14px;margin-bottom:16px}.password-form .success-message{background:#f0fdf4;color:#16a34a;padding:12px;border-radius:8px;font-size:14px;margin-bottom:16px}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.modal-actions .cancel-button{padding:12px 24px;background:#f5f5f5;color:#64748b;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.modal-actions .cancel-button:hover{background:#e2e8f0;color:#475569}.modal-actions .submit-button{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.modal-actions .submit-button:hover{box-shadow:0 4px 12px #667eea4d}.modal-actions .submit-button:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 1024px){.dashboard-header{padding:16px 24px}.dashboard-content{padding:24px}.user-section{max-width:100%}}@media (max-width: 768px){.dashboard-sidebar{width:var(--sidebar-mobile, 50px)}.dashboard-sidebar:not(.collapsed){position:absolute;width:var(--sidebar-width, 260px);z-index:100;box-shadow:4px 0 20px #0003;height:100%}.dashboard-header{padding:14px 16px;flex-wrap:wrap;gap:12px}.dashboard-header .header-left h1{font-size:22px}.dashboard-content{padding:16px}.actions-grid{grid-template-columns:1fr}.user-card{padding:20px;margin-bottom:20px}.user-avatar-placeholder{width:80px;height:80px;font-size:32px}.quick-actions h3,.settings-section h3{font-size:16px}.settings-buttons{flex-direction:column}.settings-btn{width:100%;justify-content:center}.modal-content{padding:24px;max-width:95%;margin:16px}}@media (max-width: 480px){.dashboard-header{padding:12px}.dashboard-header .header-left h1{font-size:18px}.dashboard-header .header-subtitle{font-size:12px}.header-logout-btn{padding:8px 14px;font-size:13px}.dashboard-content-wrapper{height:calc(100vh - 70px)}.dashboard-sidebar{width:0;min-width:0;overflow:hidden}.dashboard-sidebar:not(.collapsed){width:85vw;max-width:280px}.dashboard-sidebar .sidebar-toggle{right:-16px;width:32px;height:32px}.dashboard-content{padding:12px}.user-card{padding:16px;border-radius:12px}.user-card h2{font-size:20px}.user-avatar-placeholder{width:70px;height:70px;font-size:28px;margin-bottom:16px}.action-card{padding:16px}.action-icon{font-size:24px}.action-title{font-size:14px}.action-desc{font-size:12px}.settings-btn{padding:10px 16px;font-size:13px}.modal-content{padding:20px;border-radius:12px}.modal-header h2{font-size:18px}.modal-actions{flex-direction:column}.modal-actions .cancel-button,.modal-actions .submit-button{width:100%}}@media (max-width: 360px){.dashboard-header .header-left h1{font-size:16px}.user-avatar-placeholder{width:60px;height:60px;font-size:24px}.user-card h2{font-size:18px}}.library-container{min-height:100vh;background:#f5f7fa;position:relative}.toast-notification{position:fixed;top:24px;right:24px;display:flex;align-items:center;gap:12px;padding:14px 20px;border-radius:10px;box-shadow:0 4px 20px #00000026;z-index:9999;animation:slideInRight .3s ease,fadeOut .3s ease 2.7s forwards;max-width:400px}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.toast-success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.toast-info{background:#f0f4ff;color:#4338ca;border:1px solid #c7d2fe}.toast-warning{background:#fefce8;color:#a16207;border:1px solid #fef08a}.toast-icon{font-size:16px;font-weight:700;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.toast-success .toast-icon{background:#dcfce7}.toast-info .toast-icon{background:#e0e7ff}.toast-warning .toast-icon{background:#fef9c3}.toast-message{font-size:14px;font-weight:500;line-height:1.4}.toast-close{background:none;border:none;color:#9ca3af;font-size:18px;cursor:pointer;padding:0;margin-left:8px;line-height:1;transition:color .2s}.toast-close:hover{color:#6b7280}.library-header{background:#fff;padding:20px 32px;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #0000000d}.header-left h1{margin:0 0 4px;font-size:28px;color:#1a1a1a}.header-right{display:flex;gap:12px;align-items:center}.header-logout-btn{padding:10px 20px;background:#fef2f2;color:#dc2626;border:1px solid #dc2626;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.header-logout-btn:hover{background:#fee2e2;border-color:#b91c1c;color:#b91c1c}.btn-secondary{padding:10px 20px;background:#f3f4ff;color:#4a4fa1;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s}.btn-secondary:hover{background:#e1e5ff}.btn-search{padding:10px 20px;background:#f8fafc;color:#475569;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-search:hover{background:#f1f5f9;border-color:#cbd5e1}.btn-logout{padding:10px 20px;background:#fef2f2;color:#b91c1c;border:1px solid #fecaca;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-logout:hover{background:#fee2e2;border-color:#fca5a5}.library-content{display:flex;height:calc(100vh - 85px)}.topics-sidebar{width:260px;background:#fff;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;flex-shrink:0;position:relative;transition:width .3s ease}.topics-sidebar.collapsed{width:20px;min-width:20px}.sidebar-toggle{position:absolute;top:12px;right:-12px;width:24px;height:24px;background:#fff;border:1px solid #e0e0e0;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:10px;color:#666;z-index:10;box-shadow:0 2px 4px #0000001a;transition:all .2s}.sidebar-toggle:hover{background:#f0f0f0;color:#333}.topics-sidebar.collapsed .sidebar-toggle{right:-14px;background:#4f46e5;color:#fff;border-color:#4f46e5}.topics-sidebar.collapsed .sidebar-toggle:hover{background:#4338ca;color:#fff}.sidebar-section-title{margin:0 0 12px;font-size:11px;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.5px}.sidebar-nav-buttons{display:flex;flex-direction:column;gap:4px}.topics-sidebar .sidebar-nav-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 12px;background:linear-gradient(135deg,#667eea,#764ba2)!important;border:none!important;border-radius:8px;font-size:13px;color:#fff!important;cursor:pointer;transition:all .2s;text-align:center;width:100%;font-weight:600}.topics-sidebar .sidebar-nav-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1)!important;transform:translate(2px);box-shadow:0 2px 8px #667eea66}.topics-sidebar .sidebar-nav-btn.logout{background:linear-gradient(135deg,#ef4444,#dc2626)!important;color:#fff!important}.topics-sidebar .sidebar-nav-btn.logout:hover{background:linear-gradient(135deg,#dc2626,#b91c1c)!important;box-shadow:0 2px 8px #ef444466}.sidebar-topics-section{flex:1;display:flex;flex-direction:column;overflow:hidden}.sidebar-header{padding:16px;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center}.sidebar-header h2{margin:0;font-size:16px;color:#1a1a1a}.btn-add-topic{padding:6px 12px;background:#f0f4ff;color:#4f46e5;border:1px solid #c7d2fe;border-radius:6px;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s}.btn-add-topic:hover{background:#e0e7ff;border-color:#a5b4fc}.topics-list{flex:1;overflow-y:auto;padding:8px}.topic-item{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:8px;cursor:pointer;transition:background .2s;margin-bottom:4px}.topic-item:hover{background:#f5f7fa}.topic-item.active{background:#f8fafc;border-left:3px solid #6366f1}.topic-color{width:10px;height:10px;border-radius:3px;flex-shrink:0}.topic-icon{font-size:14px}.topic-name{flex:1;font-size:13px;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topic-count{font-size:11px;color:#888;background:#f0f0f0;padding:2px 6px;border-radius:10px}.topic-actions{display:none;gap:4px}.topic-item:hover .topic-actions{display:flex}.topic-item:hover .topic-count{display:none}.btn-icon{background:none;border:none;font-size:11px;cursor:pointer;padding:4px;border-radius:4px}.btn-icon:hover{background:#e0e0e0}.main-content-area{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.documents-toolbar{padding:12px 20px;background:#fff;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center;min-height:64px;flex-shrink:0}.split-panels-container{flex:1;display:flex;overflow:hidden;min-width:0}.documents-panel{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#f5f7fa;transition:flex .3s ease}.documents-panel.with-analysis{flex:0 0 50%;min-width:400px}.toolbar-left{display:flex;gap:8px;align-items:center;flex-wrap:nowrap;flex:1;overflow-x:auto}.toolbar-right{display:flex;gap:8px}.btn-primary{padding:8px 16px;background:#7c3aed!important;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary:hover:not(:disabled){background:#6d28d9!important;transform:translateY(-1px);box-shadow:0 2px 8px #7c3aed4d}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-action{padding:8px 16px;background:#ede9fe;color:#5b21b6;border:1px solid #c4b5fd;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-action:hover:not(:disabled){background:#ddd6fe;color:#4c1d95;border-color:#a78bfa;transform:translateY(-1px);box-shadow:0 2px 8px #8b5cf64d}.btn-action:disabled{background:#f5f3ff;color:#a78bfa;border-color:#e9d5ff;cursor:not-allowed;transform:none;box-shadow:none;opacity:.6}.btn-action.btn-delete{background:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.btn-action.btn-delete:hover:not(:disabled){background:#fecaca;color:#7f1d1d;border-color:#f87171;box-shadow:0 2px 8px #ef444433}.btn-select-all{padding:8px 16px;background:#ede9fe;color:#5b21b6;border:1px solid #c4b5fd;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-select-all:hover{background:#ddd6fe;color:#4c1d95;border-color:#a78bfa;transform:translateY(-1px);box-shadow:0 2px 8px #8b5cf64d}.btn-chat-selected{padding:8px 16px;background:#059669;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer}.btn-chat-selected:hover{background:#047857}.btn-deep-analysis{padding:8px 16px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-deep-analysis:hover{background:linear-gradient(135deg,#4f46e5,#7c3aed);transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.btn-deep-analysis:disabled{background:#9ca3af;cursor:not-allowed;transform:none;box-shadow:none}.btn-view-analysis{padding:8px 16px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;animation:pulse 2s infinite}.btn-view-analysis:hover{background:linear-gradient(135deg,#059669,#047857);transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}@keyframes pulse{0%,to{box-shadow:0 0 #10b98166}50%{box-shadow:0 0 0 8px #10b98100}}.btn-refresh{padding:8px 16px;background:#f3f4f6;color:#374151;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-refresh:hover{background:#e5e7eb;border-color:#9ca3af}.selection-count{font-size:14px;color:#667eea;font-weight:600;padding:8px 16px;background:#eef2ff;border-radius:6px;border:1px solid #c7d2fe;white-space:nowrap}.btn-delete-all{padding:6px 12px;background:#fee;color:#dc2626;border:1px solid #fecaca;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-delete-all:hover:not(:disabled){background:#fdd;border-color:#fca5a5}.btn-delete-all:disabled{opacity:.5;cursor:not-allowed}.error-banner{margin:12px 20px 0;padding:10px 14px;background:#fee;color:#c33;border-radius:6px;display:flex;justify-content:space-between;align-items:center;font-size:13px}.error-banner button{background:none;border:none;font-size:18px;cursor:pointer;color:#c33}.documents-list{flex:1;overflow-y:auto;padding:12px 20px}.document-row{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border-radius:8px;margin-bottom:8px;cursor:pointer;transition:all .2s;border:2px solid transparent}.document-row:hover{box-shadow:0 2px 8px #00000014}.document-row.selected{border-color:#667eea;background:#f8f9ff}.document-row.viewing{border-color:#28a745;background:#f0fff4}.doc-checkbox{width:16px;height:16px;cursor:pointer;flex-shrink:0}.doc-icon{font-size:24px;flex-shrink:0}.doc-info{flex:1;min-width:0}.doc-title{margin:0 0 4px;font-size:14px;font-weight:600;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-meta{display:flex;gap:12px;font-size:12px;color:#888}.doc-authors{max-width:150px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.extraction-badge{padding:4px 10px;border-radius:12px;font-size:11px;font-weight:500;flex-shrink:0}.badge-pending{background:#f5f5f5;color:#737373}.badge-processing{background:#eff6ff;color:#3b82f6;animation:pulse 1.5s infinite}.doc-badges{display:flex;gap:6px;align-items:center;flex-shrink:0}.truncation-badge{padding:4px 8px;border-radius:12px;font-size:10px;font-weight:500;background:#fef3c7;color:#b45309;cursor:help;white-space:nowrap}.doc-actions{display:flex;gap:6px;flex-shrink:0}.btn-action-small{padding:6px 10px;background:#f0f4ff;color:#4f46e5;border:1px solid #e0e7ff;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s}.btn-action-small:hover{background:#e0e7ff}.move-select-small{padding:4px 8px;border:1px solid #ddd;border-radius:4px;font-size:11px;background:#fff;cursor:pointer}.btn-delete-small{padding:4px 8px;background:#fee;border:none;border-radius:4px;font-size:12px;cursor:pointer}.btn-delete-small:hover{background:#fdd}.analysis-panel{flex:0 0 50%;background:#fff;border-left:1px solid #e0e0e0;display:flex;flex-direction:column;overflow:hidden}.analysis-header{padding:16px 20px;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;align-items:center;background:#fafafa}.analysis-header h2{margin:0;font-size:18px;color:#1a1a1a}.btn-close-panel{width:32px;height:32px;border:none;background:#f0f0f0;border-radius:50%;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#666}.btn-close-panel:hover{background:#e0e0e0}.analysis-doc-info{padding:0 0 16px;margin-bottom:16px;border-bottom:1px solid #f0f0f0}.analysis-doc-info h3{margin:0 0 8px;font-size:16px;color:#1a1a1a;line-height:1.4}.analysis-authors{margin:0 0 4px;font-size:13px;color:#666}.analysis-year{margin:0;font-size:12px;color:#888}.analysis-content{flex:1;overflow-y:auto;padding:20px}.analysis-section{margin-bottom:24px;background:#fafbfc;border-radius:10px;overflow:hidden;border:1px solid #e8eaed}.analysis-section h4{margin:0;padding:12px 16px;font-size:13px;font-weight:600;color:#374151;background:#f9fafb;display:flex;align-items:center;gap:8px;letter-spacing:.3px;border-bottom:1px solid #e5e7eb}.analysis-section:nth-child(2) h4{background:#f9fafb}.analysis-section:nth-child(3) h4{background:#f9fafb}.analysis-section:nth-child(4) h4{background:#f9fafb}.analysis-section p{margin:0;font-size:14px;line-height:1.6;color:#555}.markdown-content{font-size:14px;line-height:1.7;color:#444;padding:16px;background:#fff}.markdown-content strong{font-weight:600;color:#333}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{margin:16px 0 8px;font-weight:600;color:#333}.markdown-content blockquote{margin:12px 0;padding:8px 16px;border-left:3px solid #667eea;background:#f8f9ff;color:#555}.markdown-content code{background:#f0f0f0;padding:2px 6px;border-radius:4px;font-family:monospace;font-size:13px}.markdown-content pre{background:#f5f5f5;padding:12px;border-radius:6px;overflow-x:auto}.markdown-content a{color:#667eea;text-decoration:none}.analysis-actions{padding:20px;border-top:1px solid #f0f0f0;margin-top:auto}.analysis-actions .btn-primary{width:100%;padding:12px}.analysis-not-ready,.analysis-loading,.analysis-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;text-align:center;color:#666}.analysis-not-ready .hint,.analysis-empty .hint{font-size:13px;color:#999;margin-top:8px}.loading-container{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:#666}.spinner{width:32px;height:32px;border:3px solid #e0e0e0;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}.empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px}.empty-icon{font-size:56px;margin-bottom:16px}.empty-state h3{margin:0 0 8px;font-size:20px;color:#1a1a1a}.empty-state p{margin:0 0 20px;color:#666;font-size:14px}.modal-content{background:#fff;border-radius:16px;padding:28px;width:100%;max-width:400px;box-shadow:0 20px 60px #0000004d}.modal-content h2{margin:0 0 20px;font-size:20px;color:#1a1a1a}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-size:13px;font-weight:500;color:#333}.form-group input[type=text],.form-group textarea{width:100%;padding:10px 12px;border:2px solid #e0e0e0;border-radius:6px;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#667eea}.form-group textarea{min-height:70px;resize:vertical}.form-group input[type=color]{width:50px;height:36px;padding:4px;border:2px solid #e0e0e0;border-radius:6px;cursor:pointer}.form-group input[type=number]{width:100%;padding:10px 12px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;transition:border-color .2s ease}.form-group input[type=number]:focus{outline:none;border-color:#667eea}.form-hint{display:block;margin-top:6px;font-size:12px;color:#6b7280;line-height:1.4}.review-info{margin-top:16px;padding:12px;background-color:#f0f9ff;border-left:3px solid #3b82f6;border-radius:4px}.review-info p{margin:4px 0;font-size:14px;color:#374151}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.btn-cancel{padding:10px 20px;background:#f0f0f0;color:#666;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer}.btn-cancel:hover{background:#e0e0e0}.chat-history-section{margin-bottom:24px;background:#fff;border-radius:12px;overflow:hidden;border:1px solid #e5e7eb;box-shadow:0 1px 3px #0000001a}.chat-history-section.prominent{background:#fff}.chat-history-header{display:flex;justify-content:center;align-items:center;padding:16px 20px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.btn-new-chat{padding:10px 24px;background:#4f46e5;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-new-chat:hover{background:#4338ca}.chat-sessions-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:24px;color:#888;font-size:13px}.spinner-small{width:16px;height:16px;border:2px solid #e0e0e0;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}.chat-sessions-list{max-height:250px;overflow-y:auto;background:#fff;padding:16px;display:flex;flex-direction:column;gap:10px}.chat-session-item{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;cursor:pointer;transition:all .2s;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.chat-session-item:hover{background:#f9fafb;border-color:#d1d5db}.chat-session-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.chat-session-title{font-size:14px;font-weight:500;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-session-meta{font-size:12px;color:#888}.chat-session-preview{font-size:12px;color:#666;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:280px;font-style:italic}.chat-session-arrow{color:#9ca3af;font-size:14px;margin-left:12px;flex-shrink:0}.document-sections{margin-top:8px}.sections-title{margin:0 0 16px;padding:10px 16px;font-size:13px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:1px;background:#f5f7fa;border-radius:8px}.analysis-section.collapsible{margin-bottom:10px;background:#fff;border-radius:8px;overflow:hidden;border:1px solid #e5e7eb;transition:all .2s ease}.analysis-section.collapsible.section-abstract{border-left:3px solid #6366f1}.analysis-section.collapsible.section-introduction{border-left:3px solid #10b981}.analysis-section.collapsible.section-methodology{border-left:3px solid #8b5cf6}.analysis-section.collapsible.section-conclusions{border-left:3px solid #3b82f6}.analysis-section.collapsible.section-tables{border-left:3px solid #8b5cf6}.analysis-section.collapsible:hover{border-color:#d1d5db}.analysis-section.collapsible.collapsed{background:#fafbfc}.analysis-section.collapsible .section-header{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s}.analysis-section.collapsible .section-header:hover{background:#f9fafb}.analysis-section.collapsible .section-header h4{margin:0;font-size:14px;font-weight:500;color:#374151;display:flex;align-items:center;gap:8px;background:none;padding:0;text-transform:none;letter-spacing:normal}.collapse-icon{font-size:12px;color:#888;transition:transform .2s;flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:#f0f0f0;border-radius:4px}.analysis-section.collapsible:hover .collapse-icon{background:#e0e0e0}.analysis-section.collapsible .markdown-content{border-top:1px solid #f0f0f0;animation:slideDown .2s ease}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:1000px}}.analysis-section.collapsible h4{background:none}.analysis-section.collapsible.section-images{border-left:3px solid #f59e0b}.image-count-badge{background:#fef3c7;color:#d97706;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600;margin-left:8px}.images-section-content{padding:16px;background:#fff}.images-loading-small{display:flex;align-items:center;justify-content:center;gap:10px;padding:24px;color:#888;font-size:13px}.no-images-message{text-align:center;padding:20px;color:#888;font-size:13px}.no-images-message p{margin:0}.images-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.image-grid-item{background:#f8fafc;border:2px solid #e5e7eb;border-radius:8px;overflow:hidden;cursor:pointer;transition:all .2s ease}.image-grid-item:hover{border-color:#f59e0b;box-shadow:0 2px 8px #f59e0b26;transform:translateY(-2px)}.image-grid-item.selected{border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b33}.image-grid-item img{width:100%;height:100px;object-fit:contain;background:#fff;padding:8px}.image-label{display:block;padding:6px 8px;font-size:10px;color:#666;background:#f0f0f0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-top:1px solid #e5e7eb}.image-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;z-index:2000;display:flex;align-items:center;justify-content:center;padding:40px}.image-modal-content{max-width:90vw;max-height:90vh;display:flex;flex-direction:column;align-items:center;gap:16px}.image-modal-content img{max-width:100%;max-height:calc(90vh - 80px);object-fit:contain;border-radius:8px;box-shadow:0 8px 32px #00000080;background:#fff}.image-modal-info{display:flex;gap:20px;align-items:center;color:#ccc;font-size:14px}.image-modal-info button{padding:8px 24px;background:#4f46e5;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.image-modal-info button:hover{background:#4338ca}.image-counter{background:#4f46e5cc;padding:4px 12px;border-radius:16px;font-size:13px;font-weight:500}.image-filename{flex:1;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:300px}.section-header-actions{display:flex;align-items:center;gap:10px}.btn-download-all{padding:4px 12px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-download-all:hover{transform:translateY(-1px);box-shadow:0 2px 8px #10b98166}.image-grid-thumbnail{position:relative;width:100%;height:100px;background:#fff;display:flex;align-items:center;justify-content:center}.image-grid-thumbnail img{width:100%;height:100%;object-fit:contain;padding:8px}.image-grid-item .image-actions{position:absolute;top:6px;right:6px;display:flex;gap:4px;opacity:0;transition:opacity .2s ease}.image-grid-item:hover .image-actions{opacity:1}.image-grid-item .image-download-btn,.image-grid-item .image-delete-btn{width:24px;height:24px;background:#000000b3;color:#fff;border:none;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.image-grid-item .image-download-btn:hover{background:#10b981;transform:scale(1.1)}.image-grid-item .image-delete-btn:hover{background:#ef4444;transform:scale(1.1)}.image-modal-actions{display:flex;gap:12px;margin-top:8px}.btn-modal-download{padding:8px 24px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-modal-download:hover{transform:translateY(-1px);box-shadow:0 4px 12px #10b98166}.btn-modal-delete{padding:8px 24px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-modal-delete:hover{transform:translateY(-1px);box-shadow:0 4px 12px #ef444466}.btn-modal-close{padding:8px 24px;background:#4f46e5;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-modal-close:hover{background:#4338ca}@media (max-width: 768px){.image-nav-btn{width:40px;height:60px;font-size:32px}.image-nav-prev{left:10px}.image-nav-next{right:10px}.image-modal-info,.image-modal-actions{flex-wrap:wrap;justify-content:center}}.section-tables .section-header h4{color:#6d28d9}.table-count-badge{background:#f5f3ff;color:#6d28d9;padding:2px 8px;border-radius:10px;font-size:12px;font-weight:600;margin-left:8px}.tables-section-content{padding:16px;background:#fff}.tables-loading-small{display:flex;align-items:center;gap:8px;color:#888;font-size:13px;padding:12px}.no-tables-message{color:#888;font-size:13px;padding:12px;text-align:center}.no-tables-message p{margin:0}.tables-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px;padding:8px 0}.table-grid-item{display:flex;flex-direction:column;align-items:center;padding:16px 12px;background:#f8fafc;border-radius:8px;cursor:pointer;transition:all .2s ease;border:2px solid #e5e7eb}.table-grid-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #8b5cf626;border-color:#8b5cf6}.table-grid-item.selected{border-color:#8b5cf6;background:#f5f3ff}.table-grid-icon{font-size:32px;margin-bottom:8px}.table-label{font-size:12px;font-weight:600;color:#6d28d9;text-align:center}.table-size-label{font-size:10px;color:#888;margin-top:4px}.table-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:2000;padding:40px}.table-nav-btn{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffe6;color:#6d28d9;border:2px solid #8b5cf6;width:50px;height:50px;border-radius:50%;font-size:28px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:10;box-shadow:0 4px 12px #00000026}.table-nav-btn:hover{background:#8b5cf6;color:#fff;transform:translateY(-50%) scale(1.1)}.table-nav-prev{left:20px}.table-nav-next{right:20px}.table-modal-content{background:#fff;border-radius:12px;max-width:90vw;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.table-modal-header{display:flex;align-items:center;justify-content:center;gap:16px;padding:16px 20px;background:#f9fafb;border-bottom:1px solid #e5e7eb}.table-counter{background:#f5f3ff;color:#6d28d9;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.table-filename{color:#374151;font-size:14px;font-weight:500}.table-modal-body{flex:1;overflow:auto;padding:20px;background:#fff}.table-preview-modal{width:100%;border-collapse:collapse;font-size:13px}.table-preview-modal th,.table-preview-modal td{padding:10px 14px;text-align:left;border:1px solid #e5e7eb}.table-preview-modal th{background:#f9fafb;color:#6d28d9;font-weight:600;white-space:nowrap;position:sticky;top:0}.table-preview-modal td{color:#374151;background:#fff}.table-preview-modal tr:hover td{background:#f5f3ff}.no-preview{color:#888;text-align:center;padding:40px}.table-row-count{font-size:12px;color:#6b7280;background:#f3f4f6;padding:4px 10px;border-radius:12px;margin-left:auto}.table-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:40px;color:#888}.table-scroll-container{max-height:60vh;overflow:auto;border-radius:6px;border:1px solid #e5e7eb}.table-full-data{min-width:100%}.table-full-data thead{position:sticky;top:0;z-index:10}.table-full-data thead th{background:#f9fafb;border-bottom:2px solid #8b5cf6}.table-preview-note-modal{margin-top:16px;padding:10px 14px;background:#f5f3ff;border-radius:6px;font-size:12px;color:#6d28d9;text-align:center}.table-modal-actions{display:flex;align-items:center;justify-content:center;gap:12px;padding:16px 20px;background:#f9fafb;border-top:1px solid #e5e7eb}.table-modal-actions .btn-modal-download{background:#8b5cf6;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:13px;cursor:pointer;transition:background .2s ease}.table-modal-actions .btn-modal-download:hover{background:#7c3aed}.table-modal-actions .btn-modal-delete{background:#ef4444;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:13px;cursor:pointer;transition:background .2s ease}.table-modal-actions .btn-modal-delete:hover{background:#dc2626}.table-modal-actions .btn-modal-close{background:#f3f4f6;color:#374151;border:1px solid #d1d5db;padding:10px 20px;border-radius:6px;font-size:13px;cursor:pointer;transition:background .2s ease}.table-modal-actions .btn-modal-close:hover{background:#e5e7eb}@media (max-width: 1024px){.library-header{padding:16px 24px}.documents-toolbar{padding:10px 16px}.toolbar-left{gap:8px}.documents-panel.with-analysis{flex:0 0 45%;min-width:320px}.analysis-panel{flex:0 0 55%}.analysis-content{padding:16px}.images-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}}@media (max-width: 768px){.topics-sidebar{width:var(--sidebar-mobile, 50px)}.topics-sidebar:not(.collapsed){position:absolute;width:var(--sidebar-width, 260px);z-index:100;box-shadow:4px 0 20px #0003;height:100%}.library-header{padding:14px 16px;flex-wrap:wrap;gap:12px}.library-header .header-left h1{font-size:22px}.header-right{flex-wrap:wrap;gap:8px}.library-content{height:calc(100vh - 80px)}.main-content-area{flex-direction:column}.documents-panel,.documents-panel.with-analysis{flex:1;min-width:100%;max-height:50vh}.analysis-panel{flex:1;min-width:100%;border-left:none;border-top:1px solid #e0e0e0}.documents-toolbar{flex-wrap:wrap;gap:10px;padding:10px 14px}.toolbar-left{flex-wrap:wrap;width:100%}.toolbar-right{width:100%;justify-content:flex-start}.btn-primary,.btn-action,.btn-select-all{padding:8px 12px;font-size:12px}.documents-list{padding:10px 14px}.document-row{padding:10px 12px;gap:10px}.doc-icon{font-size:20px}.doc-title{font-size:13px}.doc-meta{gap:8px;font-size:11px}.doc-authors{max-width:100px}.extraction-badge{padding:3px 8px;font-size:10px}.doc-actions{gap:4px}.btn-action-small{padding:4px 8px;font-size:11px}.analysis-header{padding:12px 16px}.analysis-header h2{font-size:16px}.analysis-doc-info{padding:14px 16px}.analysis-doc-info h3{font-size:14px}.analysis-content{padding:14px}.analysis-section{margin-bottom:16px}.images-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px}.image-grid-item img{height:80px}.tables-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px}.table-grid-item{padding:12px 8px}.table-grid-icon{font-size:24px}.modal-content{max-width:95%;padding:20px}.chat-sessions-list{max-height:180px;padding:12px}.image-modal-overlay,.table-modal-overlay{padding:20px}.image-nav-btn,.table-nav-btn{width:40px;height:40px;font-size:22px}.image-nav-prev,.table-nav-prev{left:10px}.image-nav-next,.table-nav-next{right:10px}}@media (max-width: 480px){.library-header{padding:12px}.library-header .header-left h1{font-size:18px}.library-header .header-subtitle{font-size:12px}.header-logout-btn,.btn-secondary,.btn-search{padding:8px 14px;font-size:13px}.library-content{height:calc(100vh - 70px)}.topics-sidebar{width:0;min-width:0;overflow:hidden}.topics-sidebar:not(.collapsed){width:85vw;max-width:280px}.topics-sidebar .sidebar-toggle{right:-16px;width:32px;height:32px}.documents-panel,.documents-panel.with-analysis{max-height:none;flex:1}.analysis-panel{position:fixed;top:0;left:0;right:0;bottom:0;z-index:200;max-height:100vh;border-top:none}.btn-close-panel{position:absolute;top:12px;right:12px;z-index:10}.documents-toolbar{padding:10px 12px}.btn-primary,.btn-action,.btn-select-all{padding:8px 10px;font-size:11px;flex:1;text-align:center;justify-content:center}.selection-count{font-size:12px;width:100%;text-align:center;padding:6px 12px}.documents-list{padding:8px 12px}.document-row{padding:10px;flex-wrap:wrap}.doc-checkbox{order:-1}.doc-icon{font-size:18px}.doc-info{flex-basis:calc(100% - 80px)}.doc-title{font-size:12px;white-space:normal;-webkit-line-clamp:2;display:-webkit-box;-webkit-box-orient:vertical}.doc-meta{flex-wrap:wrap;gap:6px}.doc-authors{max-width:100%;width:100%}.doc-badges{width:100%;margin-top:6px;justify-content:flex-start}.doc-actions{width:100%;margin-top:8px;justify-content:flex-end}.analysis-header{padding:12px}.analysis-header h2{font-size:15px;padding-right:40px}.analysis-doc-info{padding:12px}.analysis-doc-info h3{font-size:13px}.analysis-content{padding:12px}.markdown-content{padding:12px;font-size:13px}.images-grid{grid-template-columns:repeat(2,1fr);gap:8px}.image-grid-item img{height:70px}.image-label{font-size:9px;padding:4px 6px}.tables-grid{grid-template-columns:repeat(2,1fr)}.table-grid-item{padding:10px 6px}.table-grid-icon{font-size:20px}.table-label{font-size:11px}.modal-content{padding:16px;margin:12px;border-radius:12px}.modal-content h2{font-size:18px}.form-group label{font-size:12px}.form-group input,.form-group textarea{padding:10px;font-size:14px}.modal-actions{flex-direction:column}.btn-cancel,.btn-primary{width:100%}.chat-history-section{margin-bottom:16px}.chat-history-header{padding:12px 16px}.btn-new-chat{padding:8px 16px;font-size:13px}.chat-sessions-list{max-height:150px;padding:10px;gap:8px}.chat-session-item{padding:10px 12px}.chat-session-title{font-size:13px}.chat-session-meta,.chat-session-preview{font-size:11px}.image-modal-content img,.table-modal-content{max-width:95vw;max-height:70vh}.image-modal-info{flex-direction:column;gap:8px;font-size:12px}.image-modal-actions,.table-modal-actions{flex-wrap:wrap;gap:8px}.btn-modal-download,.btn-modal-close{flex:1;text-align:center}}@media (max-width: 360px){.library-header .header-left h1{font-size:16px}.document-row{padding:8px}.doc-title{font-size:11px}.images-grid,.tables-grid{grid-template-columns:1fr 1fr}.image-grid-item img{height:60px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.mode-modal{background:#fff;border-radius:12px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.mode-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 16px;border-bottom:1px solid #e5e7eb}.mode-modal-header h2{margin:0;font-size:24px;font-weight:600;color:#1a1a1a}.modal-close-btn{background:none;border:none;font-size:28px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.modal-close-btn:hover{background:#f3f4f6;color:#1a1a1a}.mode-modal-content{padding:24px}.mode-description{margin:0 0 20px;color:#6b7280;font-size:15px}.mode-options{display:flex;flex-direction:column;gap:16px}.mode-option{display:flex;align-items:flex-start;gap:12px;padding:16px;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s}.mode-option:hover{border-color:#10a37f;background:#f0fdf4}.mode-option.selected{border-color:#10a37f;background:#f0fdf4;box-shadow:0 0 0 3px #10a37f1a}.mode-option input[type=radio]{margin-top:4px;width:18px;height:18px;cursor:pointer;accent-color:#10a37f}.mode-option-content{flex:1}.mode-option-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.mode-icon{font-size:20px}.mode-title{font-size:18px;font-weight:600;color:#1a1a1a}.mode-option-description{margin:0;color:#6b7280;font-size:14px;line-height:1.5}.mode-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px 24px;border-top:1px solid #e5e7eb}.btn-cancel{padding:10px 20px;background:#fff;color:#6b7280;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel:hover{background:#f9fafb;border-color:#9ca3af;color:#1a1a1a}.btn-confirm{padding:10px 24px;background:#10a37f;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-confirm:hover{background:#0d8f6f}@media (max-width: 768px){.mode-modal{width:95%}.mode-modal-header h2{font-size:20px}.mode-options{gap:12px}.mode-option{padding:12px}.mode-title{font-size:16px}.mode-option-description{font-size:13px}}.uploading-documents-section{margin:0 0 16px;padding:12px 20px}.uploading-header{color:#1f2937;font-size:14px;font-weight:600;margin:0 0 12px;display:flex;align-items:center;gap:8px;padding-left:4px}.document-progress-card{display:flex;align-items:center;gap:16px;padding:12px 16px;background:#fff;border-radius:8px;margin-bottom:8px;transition:all .2s;border:2px solid transparent}.document-progress-card:last-child{margin-bottom:0}.document-progress-card:hover{box-shadow:0 2px 8px #00000014}.document-progress-card.connecting{background:#f9fafb;border:2px dashed #d1d5db}.document-progress-card.error{background:#fef2f2;border:2px solid #fecaca}.document-progress-card.completed{background:#f0fdf4;border:2px solid #86efac;animation:slideOut .3s ease-in-out}@keyframes slideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(20px)}}.doc-name{font-weight:600;color:#1f2937;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 0 200px;min-width:150px}.connection-status{display:flex;align-items:center;gap:4px;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:600;white-space:nowrap;flex-shrink:0}.connection-status.connected{background:#d1fae5;color:#065f46}.connection-status.disconnected{background:#fee2e2;color:#991b1b;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.progress-bar{flex:1;height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden;position:relative;min-width:100px}.progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:3px;transition:width .4s ease;position:relative;overflow:hidden}.progress-fill:after{content:"";position:absolute;top:0;left:0;bottom:0;right:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-percentage{font-weight:600;color:#667eea;font-size:12px;min-width:38px;text-align:right;flex-shrink:0}.progress-message{color:#6b7280;font-size:12px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:0 0 200px;min-width:150px}.progress-message.success{color:#15803d;font-weight:600;font-size:14px}.completion-icon{display:flex;align-items:center;justify-content:center;font-size:20px;color:#15803d;animation:checkmark .5s ease-in-out}@keyframes checkmark{0%{opacity:0;transform:scale(.3)}50%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.progress-info{display:flex;justify-content:space-between;align-items:center}.progress-status{color:#9ca3af;font-size:12px;font-style:italic}.progress-status.error{color:#dc2626;font-weight:600;font-style:normal}.progress-error{color:#dc2626;font-size:11px;font-weight:600;flex-shrink:0}.document-progress-card.connecting .progress-status:after{content:"...";animation:dots 1.5s steps(4,end) infinite}@keyframes dots{0%,20%{content:""}40%{content:"."}60%{content:".."}80%,to{content:"..."}}@media (max-width: 768px){.uploading-documents-section{padding:10px 14px}.uploading-header{font-size:13px}.document-progress-card{padding:10px 12px;gap:12px}.doc-name{font-size:13px;flex:0 0 150px;min-width:120px}.connection-status{font-size:10px;padding:2px 8px}.progress-message{font-size:11px;flex:0 0 150px;min-width:120px}.progress-percentage{font-size:11px;min-width:35px}}@media (max-width: 480px){.uploading-documents-section{padding:8px 12px}.document-progress-card{padding:10px;flex-wrap:wrap;gap:8px}.doc-name{font-size:12px;flex:1 1 100%}.progress-message{font-size:11px;flex:1 1 100%}.progress-bar{flex:1 1 auto}}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.27"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}.markdown-renderer{font-size:.95rem;line-height:1.7;color:#333}.markdown-renderer.compact{font-size:.9rem;line-height:1.5}.markdown-renderer.compact>*:first-child{margin-top:0!important}.markdown-renderer.compact>*:last-child{margin-bottom:0!important}.markdown-renderer .md-h1{font-size:1.5rem;font-weight:700;margin:1.5rem 0 1rem;color:#1a1a1a;border-bottom:2px solid #667eea;padding-bottom:.5rem}.markdown-renderer .md-h2{font-size:1.3rem;font-weight:600;margin:1.25rem 0 .75rem;color:#2d2d2d}.markdown-renderer .md-h3{font-size:1.1rem;font-weight:600;margin:1rem 0 .5rem;color:#3d3d3d}.markdown-renderer .md-h4{font-size:1rem;font-weight:600;margin:.75rem 0 .5rem;color:#4d4d4d}.markdown-renderer.compact .md-h1,.markdown-renderer.compact .md-h2,.markdown-renderer.compact .md-h3,.markdown-renderer.compact .md-h4{margin-top:.5rem;margin-bottom:.25rem}.markdown-renderer.compact .md-h1:first-child,.markdown-renderer.compact .md-h2:first-child,.markdown-renderer.compact .md-h3:first-child,.markdown-renderer.compact .md-h4:first-child{margin-top:0}.markdown-renderer .md-p{margin:.75rem 0}.markdown-renderer.compact .md-p{margin:.25rem 0}.markdown-renderer.compact .md-p:first-child{margin-top:0}.markdown-renderer.compact .md-p:last-child{margin-bottom:0}.markdown-renderer .md-table-wrapper{overflow-x:auto;margin:1rem 0;border-radius:8px;box-shadow:0 1px 3px #0000001a}.markdown-renderer .md-table{width:100%;border-collapse:collapse;font-size:.9rem}.markdown-renderer .md-table th,.markdown-renderer .md-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid #e5e5e5}.markdown-renderer .md-table th{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:600}.markdown-renderer .md-table tr:hover{background-color:#f8f9ff}.markdown-renderer .md-table tr:last-child td{border-bottom:none}.markdown-renderer .md-code-inline{background-color:#f4f4f8;padding:.2rem .4rem;border-radius:4px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85em;color:#e83e8c}.markdown-renderer .md-code-block{background-color:#1e1e1e;color:#d4d4d4;padding:1rem;border-radius:8px;overflow-x:auto;margin:1rem 0;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85rem;line-height:1.5}.markdown-renderer .md-code-block code{background:none;padding:0;color:inherit}.markdown-renderer .md-link{color:#667eea;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s ease}.markdown-renderer .md-link:hover{border-bottom-color:#667eea}.markdown-renderer .md-citation{color:#4f46e5;font-weight:500;background:linear-gradient(135deg,#eff6ff,#f5f3ff);padding:.1rem .4rem;border-radius:4px;font-size:.9em;white-space:nowrap}.markdown-renderer .md-reference{color:#6366f1;font-style:italic}.markdown-renderer .md-ul,.markdown-renderer .md-ol{margin:.75rem 0;padding-left:1.5rem}.markdown-renderer .md-li{margin:.35rem 0}.markdown-renderer.compact .md-ul,.markdown-renderer.compact .md-ol{margin:.25rem 0;padding-left:1.25rem}.markdown-renderer.compact .md-li{margin:.15rem 0}.markdown-renderer .md-blockquote{border-left:4px solid #667eea;padding-left:1rem;margin:1rem 0;color:#555;font-style:italic;background-color:#f8f9ff;padding:.75rem 1rem;border-radius:0 8px 8px 0}.markdown-renderer .katex-display{margin:1rem 0;overflow-x:auto;overflow-y:hidden;padding:.5rem 0}.markdown-renderer .katex{font-size:1.1em}.markdown-renderer .katex-display>.katex{background-color:#f8f9ff;padding:1rem;border-radius:8px;display:inline-block;max-width:100%}.markdown-renderer .katex-inline{padding:0 .1rem}.markdown-renderer .katex-display .tag{position:absolute;right:0;color:#888}.markdown-renderer hr{border:none;border-top:1px solid #e5e5e5;margin:1.5rem 0}.markdown-renderer img,.markdown-renderer .md-image{max-width:100%;height:auto;border-radius:8px;margin:1rem 0;display:block;box-shadow:0 2px 8px #0000001a;border:1px solid #e5e5e5}.markdown-renderer .md-image{cursor:zoom-in;transition:transform .2s ease,box-shadow .2s ease}.markdown-renderer .md-image:hover{transform:scale(1.01);box-shadow:0 4px 16px #00000026}.markdown-renderer .md-p:has(>.md-image)+.md-p em{display:block;text-align:center;color:#666;font-size:.9rem;margin-top:-.5rem}.markdown-renderer strong{font-weight:600;color:#1a1a1a}.markdown-renderer em{font-style:italic}.markdown-renderer sub,.markdown-renderer sup{font-size:.75em}.markdown-renderer>.md-p:first-child{margin-top:0}.markdown-renderer>*:last-child{margin-bottom:0}.react-pdf__Page__textContent{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden;opacity:.2;line-height:1;-webkit-user-select:text;user-select:text}.react-pdf__Page__textContent span{color:transparent;position:absolute;white-space:pre;cursor:text}.react-pdf__Page__textContent span::selection{background:#667eea4d}.react-pdf__Page__annotations{position:absolute;top:0;left:0;right:0;bottom:0}.react-pdf__Page__annotations a{position:absolute}.pdf-preview-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;z-index:1000;display:flex;align-items:center;justify-content:center;padding:10px;overflow:hidden}.pdf-preview-panel{background:#1a1a2e;border-radius:12px;width:98%;max-width:1800px;height:95vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080;overflow:hidden}.pdf-preview-header{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;flex-shrink:0}.pdf-preview-title{display:flex;flex-direction:column;gap:2px}.pdf-preview-title h3{margin:0;font-size:16px;font-weight:600}.pdf-preview-title .paper-name{font-size:12px;opacity:.9;max-width:250px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pdf-preview-tabs{display:flex;gap:6px}.tab-btn{padding:6px 14px;background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.tab-btn:hover{background:#ffffff40}.tab-btn.active{background:#fff;color:#667eea;border-color:#fff}.split-btn.active{background:gold;color:#333;border-color:gold}.images-btn.active{background:#10b981;color:#fff;border-color:#10b981}.header-right{display:flex;align-items:center;gap:12px}.zoom-controls{display:flex;align-items:center;gap:6px;background:#ffffff1a;padding:4px 8px;border-radius:6px}.zoom-controls button{padding:4px 10px;background:#fff3;color:#fff;border:none;border-radius:4px;font-size:14px;cursor:pointer;transition:all .2s ease}.zoom-controls button:hover{background:#ffffff4d}.zoom-level{font-size:12px;color:#fff;min-width:45px;text-align:center}.reset-btn{font-size:11px!important;padding:4px 8px!important}.close-btn{padding:6px 16px;background:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.close-btn:hover{background:#ff646466;border-color:#ff646499}.pdf-preview-content{flex:1;display:flex;overflow:hidden;min-height:0}.pdf-preview-content.split-view{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:#333}.panel-label{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:#2a2a4a;color:#aaa;font-size:12px;font-weight:500;border-bottom:1px solid #444;flex-shrink:0}.panel-label span:first-child{color:#fff;font-weight:600}.page-count{background:#667eea4d;padding:2px 8px;border-radius:10px;font-size:11px}.extraction-method strong{color:#667eea}.pdf-panel{flex:1;display:flex;flex-direction:column;background:#1e1e2e;min-width:0;overflow:hidden}.pdf-viewer{flex:1;overflow-y:auto;overflow-x:auto;padding:20px;background:#2d2d3d}.pdf-document{display:flex;flex-direction:column;align-items:center;gap:20px}.pdf-page-wrapper{display:flex;flex-direction:column;align-items:center}.page-number-label{background:#667eeacc;color:#fff;padding:4px 12px;border-radius:12px;font-size:11px;font-weight:500;margin-bottom:8px}.pdf-viewer .react-pdf__Page{box-shadow:0 4px 20px #0006;border-radius:4px;overflow:hidden}.pdf-viewer .react-pdf__Page canvas{display:block}.pdf-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#aaa}.pdf-loading .spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.2);border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}.pdf-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;color:#ff6b6b;padding:40px}.pdf-error p{margin:0 0 12px}.pdf-error .error-hint{font-size:13px;color:#888}.extracted-panel{flex:1;display:flex;flex-direction:column;align-items:center;background:#f5f5f5;min-width:0;overflow:hidden;padding:20px 40px}.extracted-panel>.panel-label{width:100%;max-width:900px;color:#333}.extracted-panel>.panel-label .extraction-method{color:#666}.extracted-content{flex:1;width:100%;max-width:900px;overflow-y:auto;overflow-x:hidden;padding:24px 32px;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.no-content{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;color:#666}.no-content .hint{font-size:13px;color:#999;margin-top:8px}.pdf-preview-footer{display:flex;justify-content:space-between;align-items:center;padding:10px 20px;background:#2a2a4a;border-top:1px solid #444;flex-shrink:0}.extraction-stats{display:flex;gap:20px}.extraction-stats .stat{font-size:12px;color:#aaa}.extraction-stats .stat strong{color:#fff}.footer-hint{font-size:11px;color:#666;font-style:italic}.pdf-viewer::-webkit-scrollbar{width:10px;height:10px}.pdf-viewer::-webkit-scrollbar-track{background:#1e1e2e}.pdf-viewer::-webkit-scrollbar-thumb{background:#555;border-radius:5px}.pdf-viewer::-webkit-scrollbar-thumb:hover{background:#667eea}.extracted-content::-webkit-scrollbar{width:10px}.extracted-content::-webkit-scrollbar-track{background:#f0f0f0}.extracted-content::-webkit-scrollbar-thumb{background:#ccc;border-radius:5px}.extracted-content::-webkit-scrollbar-thumb:hover{background:#8b5cf6}@media (max-width: 1024px){.pdf-preview-content.split-view{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.pdf-preview-header{flex-wrap:wrap;gap:10px}.pdf-preview-tabs{order:3;width:100%;justify-content:center}}@media (max-width: 768px){.pdf-preview-panel{width:100%;height:100vh;border-radius:0}.pdf-preview-overlay{padding:0}.header-right{flex-wrap:wrap;gap:8px}.extraction-stats{flex-direction:column;gap:4px}}.images-panel{flex:1;display:flex;flex-direction:column;background:#1e1e2e;min-width:0;overflow:hidden}.image-count{background:#10b9814d;padding:2px 8px;border-radius:10px;font-size:11px;color:#10b981}.images-content{flex:1;overflow-y:auto;padding:20px;background:#2d2d3d}.images-loading,.no-images{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#aaa;text-align:center}.images-loading .spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.2);border-top-color:#10b981;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}.no-images p{margin:0 0 8px}.no-images .hint{font-size:13px;color:#666}.images-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.image-card{background:#3a3a4a;border-radius:8px;overflow:hidden;cursor:pointer;transition:all .2s ease;border:2px solid transparent}.image-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000004d;border-color:#667eea}.image-card.selected{border-color:#10b981;box-shadow:0 0 0 2px #10b9814d}.image-thumbnail{position:relative;width:100%;height:150px;background:#2a2a3a;display:flex;align-items:center;justify-content:center;overflow:hidden}.image-thumbnail img{max-width:100%;max-height:100%;object-fit:contain}.image-info{padding:10px 12px;display:flex;flex-direction:column;gap:4px}.image-name{font-size:12px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.image-size{font-size:11px;color:#888}.image-preview-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;z-index:2000;display:flex;align-items:center;justify-content:center;padding:40px}.image-preview-content{max-width:90vw;max-height:90vh;display:flex;flex-direction:column;align-items:center;gap:16px}.image-preview-content img{max-width:100%;max-height:calc(90vh - 80px);object-fit:contain;border-radius:8px;box-shadow:0 8px 32px #00000080}.image-preview-info{display:flex;gap:20px;color:#ccc;font-size:14px}.image-preview-close{padding:8px 24px;background:#667eea;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.image-preview-close:hover{background:#5568d3}.download-all-btn{padding:4px 12px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;transition:all .2s ease;margin-left:auto}.download-all-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #10b98166}.image-download-btn{position:absolute;top:8px;right:8px;width:28px;height:28px;background:#000000b3;color:#fff;border:none;border-radius:6px;font-size:14px;cursor:pointer;opacity:0;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.image-card:hover .image-download-btn{opacity:1}.image-download-btn:hover{background:#10b981;transform:scale(1.1)}.image-preview-actions{display:flex;gap:12px}.image-preview-download{padding:8px 24px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.image-preview-download:hover{transform:translateY(-1px);box-shadow:0 4px 12px #10b98166}.image-nav-btn{position:absolute;top:50%;transform:translateY(-50%);width:50px;height:80px;background:#ffffff1a;border:none;color:#fff;font-size:40px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;border-radius:8px;z-index:2001}.image-nav-btn:hover{background:#ffffff40}.image-nav-prev{left:20px}.image-nav-next{right:20px}.image-preview-info .image-counter{background:#667eeacc;padding:4px 12px;border-radius:16px;font-size:13px;font-weight:500}.images-content::-webkit-scrollbar{width:10px}.images-content::-webkit-scrollbar-track{background:#1e1e2e}.images-content::-webkit-scrollbar-thumb{background:#555;border-radius:5px}.images-content::-webkit-scrollbar-thumb:hover{background:#10b981}@media (max-width: 768px){.images-gallery{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.image-thumbnail{height:120px}.image-preview-modal{padding:20px}}.tables-btn.active{background:#8b5cf6;color:#fff}.tables-panel{flex:1;display:flex;flex-direction:column;align-items:center;background:#1e1e2e;min-width:0;overflow:hidden;padding:20px 40px}.tables-panel>.panel-label,.tables-panel>.tables-content{width:100%;max-width:900px}.table-count{background:#8b5cf64d;padding:2px 8px;border-radius:10px;font-size:11px;color:#a78bfa}.tables-content{flex:1;overflow-y:auto;padding:16px 0;background:transparent}.tables-loading,.no-tables{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#aaa;text-align:center}.tables-loading .spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.2);border-top-color:#8b5cf6;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}.no-tables p{margin:0 0 8px}.no-tables .hint{font-size:13px;color:#666}.tables-list{display:flex;flex-direction:column;gap:12px}.table-card{background:#3a3a4a;border-radius:8px;overflow:hidden;border:2px solid transparent;transition:all .2s ease}.table-card:hover{border-color:#8b5cf6}.table-card.expanded{border-color:#a78bfa}.table-header{display:flex;align-items:flex-start;padding:14px 20px;cursor:pointer;background:#3a3a4a;gap:16px}.table-header:hover{background:#454560}.table-info{flex:1;min-width:0}.table-name{font-weight:500;color:#e0e0e0;font-size:13px;line-height:1.5;margin-bottom:6px}.table-meta{display:flex;align-items:center;gap:10px}.table-size{color:#888;font-size:12px}.table-actions{display:flex;align-items:flex-start;flex-shrink:0;padding-top:2px}.table-download-btn{background:#8b5cf6;color:#fff;border:none;padding:6px 12px;border-radius:4px;font-size:12px;cursor:pointer;transition:background .2s ease}.table-download-btn:hover{background:#7c3aed}.expand-icon{color:#888;font-size:12px;transition:transform .2s ease}.table-card.expanded .expand-icon{color:#a78bfa}.table-preview{padding:16px;background:#2d2d3d;border-top:1px solid #4a4a5a;overflow-x:auto}.table-preview table{width:100%;border-collapse:collapse;font-size:13px;min-width:400px}.table-preview th,.table-preview td{padding:8px 12px;text-align:left;border:1px solid #4a4a5a}.table-preview th{background:#3a3a4a;color:#a78bfa;font-weight:600;white-space:nowrap}.table-preview td{color:#e0e0e0;background:#2d2d3d}.table-preview tr:hover td{background:#353545}.table-preview-note{margin-top:12px;padding:8px 12px;background:#8b5cf61a;border-radius:4px;font-size:12px;color:#a78bfa;text-align:center}.table-row-count{font-size:11px;color:#a78bfa;background:#8b5cf626;padding:2px 8px;border-radius:10px}.table-loading-inline{display:flex;align-items:center;justify-content:center;gap:10px;padding:20px;color:#888}.table-loading-inline .spinner-small{width:16px;height:16px;border:2px solid #4a4a5a;border-top-color:#8b5cf6;border-radius:50%;animation:spin .8s linear infinite}.table-scroll-wrapper{max-height:350px;overflow:auto;border-radius:6px;border:1px solid #4a4a5a}.table-scroll-wrapper::-webkit-scrollbar{width:8px;height:8px}.table-scroll-wrapper::-webkit-scrollbar-track{background:#2d2d3d}.table-scroll-wrapper::-webkit-scrollbar-thumb{background:#5a5a6a;border-radius:4px}.table-scroll-wrapper::-webkit-scrollbar-thumb:hover{background:#8b5cf6}.table-scroll-wrapper table{margin:0}.table-scroll-wrapper table thead{position:sticky;top:0;z-index:5}.table-scroll-wrapper table thead th{background:#3a3a4a;border-bottom:2px solid #8b5cf6}.no-data{color:#888;text-align:center;padding:20px}.tables-content::-webkit-scrollbar{width:8px}.tables-content::-webkit-scrollbar-track{background:#2d2d3d}.tables-content::-webkit-scrollbar-thumb{background:#4a4a5a;border-radius:4px}.tables-content::-webkit-scrollbar-thumb:hover{background:#8b5cf6}@media (max-width: 768px){.tables-panel{padding:16px 20px}.table-preview table{font-size:11px}.table-preview th,.table-preview td{padding:6px 8px}}:root{--react-pdf-text-layer: 1;--highlight-bg-color: rgba(180, 0, 170, 1);--highlight-selected-bg-color: rgba(0, 100, 0, 1)}@media screen and (forced-colors: active){:root{--highlight-bg-color: Highlight;--highlight-selected-bg-color: ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translate(-100%)}.textLayer{position:absolute;text-align:initial;top:0;right:0;bottom:0;left:0;overflow:hidden;line-height:1;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;margin:0;transform-origin:0 0}.textLayer span.markedContent{top:0;height:0}.textLayer .highlight{margin:-1px;padding:1px;background-color:var(--highlight-bg-color);border-radius:4px}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:transparent}.textLayer .endOfContent{display:block;position:absolute;top:100%;right:0;bottom:0;left:0;z-index:-1;cursor:default;-webkit-user-select:none;user-select:none}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{position:absolute;top:0;left:0;width:0;height:0;display:none}:root{--react-pdf-annotation-layer: 1;--annotation-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color: Highlight;--input-focus-outline: 1px solid Canvas;--input-unfocused-border-color: transparent;--input-disabled-border-color: transparent;--input-hover-border-color: black;--link-outline: none}@media screen and (forced-colors: active){:root{--input-focus-border-color: CanvasText;--input-unfocused-border-color: ActiveText;--input-disabled-border-color: GrayText;--input-hover-border-color: Highlight;--link-outline: 1.5px solid LinkText}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{position:absolute;top:0;left:0;pointer-events:none;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{position:absolute;width:100%;height:100%}.annotationLayer section{position:absolute;text-align:initial;pointer-events:auto;box-sizing:border-box;margin:0;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;font-size:1em;top:0;left:0;width:100%;height:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{position:absolute;cursor:pointer;width:100%;height:100%;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--total-scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{background:none;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{background:none;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-image:none;background-color:transparent}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{-webkit-appearance:none;-moz-appearance:none;appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{position:absolute;font-size:calc(9px * var(--total-scale-factor));width:100%;min-width:calc(180px * var(--total-scale-factor));pointer-events:none}.annotationLayer .popup{position:absolute;max-width:calc(180px * var(--total-scale-factor));background-color:#ff9;box-shadow:0 calc(2px * var(--total-scale-factor)) calc(5px * var(--total-scale-factor)) #888;border-radius:calc(2px * var(--total-scale-factor));padding:calc(6px * var(--total-scale-factor));margin-left:calc(5px * var(--total-scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto}.annotationLayer .popup>*{font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px * var(--total-scale-factor))}.annotationLayer .popupContent{border-top:1px solid rgba(51,51,51,1);margin-top:calc(2px * var(--total-scale-factor));padding-top:calc(2px * var(--total-scale-factor))}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{position:absolute;width:100%;height:100%;top:0;left:0}.annotationLayer .annotationTextContent{position:absolute;width:100%;height:100%;opacity:0;color:transparent;-webkit-user-select:none;user-select:none;pointer-events:none}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}.document-chat-container{min-height:100vh;background:#f5f7fa}.document-chat-container .page-header{background:#fff;padding:20px 32px;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #0000000d}.document-chat-container .page-header .header-left{flex:1}.document-chat-container .page-header .header-left h1{margin:0 0 4px;font-size:28px;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.document-chat-container .page-header .header-subtitle{margin:0;color:#666;font-size:14px}.document-chat-container .header-right{display:flex;align-items:center}.document-chat-container .header-logout-btn{padding:10px 20px;background:#fef2f2;color:#dc2626;border:1px solid #dc2626;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.document-chat-container .header-logout-btn:hover{background:#fee2e2;border-color:#b91c1c;color:#b91c1c}.chat-content-wrapper{display:flex;height:calc(100vh - 85px)}.chat-sidebar{width:260px;background:#fff;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;transition:width .3s ease;position:relative;flex-shrink:0}.chat-sidebar.collapsed{width:20px;min-width:20px}.chat-sidebar.collapsed .sidebar-toggle{right:-14px;background:#4f46e5;color:#fff;border-color:#4f46e5}.chat-sidebar.collapsed .sidebar-toggle:hover{background:#4338ca}.chat-sidebar .sidebar-toggle{position:absolute;top:12px;right:-12px;width:24px;height:24px;background:#fff;border:1px solid #e0e0e0;border-radius:50%;color:#666;font-size:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;box-shadow:0 2px 4px #0000001a;transition:all .2s}.chat-sidebar .sidebar-toggle:hover{background:#f0f0f0;color:#333}.chat-sidebar .sidebar-nav-section{padding:16px;border-bottom:1px solid #e0e0e0}.chat-sidebar .sidebar-nav-section h3{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin:0 0 12px}.chat-sidebar .sidebar-nav-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 12px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;font-size:13px;font-weight:600;text-align:center;cursor:pointer;margin-bottom:6px;transition:all .2s ease}.chat-sidebar .sidebar-nav-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translate(2px);box-shadow:0 2px 8px #667eea66}.chat-sidebar .sidebar-nav-btn.logout{background:linear-gradient(135deg,#ef4444,#dc2626);margin-top:12px}.chat-sidebar .sidebar-nav-btn.logout:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 2px 8px #ef444466}.chat-sidebar .sidebar-chats-section{padding:16px;border-bottom:1px solid #e0e0e0;max-height:35%;overflow-y:auto}.chat-sidebar .sidebar-chats-section.multi{flex:1;max-height:none;border-bottom:none;min-height:0}.chat-sidebar .sidebar-chats-section h3{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin:0 0 12px}.sidebar-empty{color:#999;font-size:12px;padding:8px}.sidebar-chat-item.active{background:#e0e7ff;border-left:3px solid #4f46e5}.sidebar-chat-title{color:#333;font-size:13px;font-weight:600;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;height:100vh;background:#f5f5f5}.chat-header{background:#fff;border-bottom:1px solid #e0e0e0;padding:16px 24px;box-shadow:0 2px 4px #0000000d}.chat-header-content{display:flex;align-items:center;gap:20px}.chat-title-section{flex:1;min-width:0}.paper-title{margin:0 0 4px;font-size:18px;color:#1a1a1a;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;line-height:1.4;max-height:2.8em;cursor:default}.chat-title-section .header-subtitle{margin:0 0 8px;color:#666;font-size:13px}.preview-button{padding:10px 20px;background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;flex-shrink:0}.chat-messages{flex:1;overflow-y:auto;padding:20px}.chat-input-form{background:#fff;border-top:1px solid #e0e0e0;padding:20px;display:flex;gap:12px}@media (max-width: 1024px){.document-chat-container .page-header{padding:16px 24px}.chat-header{padding:14px 20px}.chat-messages{padding:16px}.welcome-message{padding:40px 16px}.suggested-questions{max-width:100%;padding:20px}}@media (max-width: 768px){.chat-sidebar{width:var(--sidebar-mobile, 50px)}.chat-sidebar:not(.collapsed){position:absolute;width:var(--sidebar-width, 260px);z-index:100;box-shadow:4px 0 20px #0003;height:100%}.document-chat-container .page-header{padding:14px 16px;flex-wrap:wrap;gap:12px}.document-chat-container .page-header .header-left h1{font-size:22px}.chat-content-wrapper{height:calc(100vh - 80px)}.chat-header{padding:12px}.chat-header-content{flex-wrap:wrap;gap:12px}.paper-title{font-size:16px;-webkit-line-clamp:1}.preview-button{padding:8px 14px;font-size:13px}.message-content{max-width:90%;padding:14px 16px}.assistant-message .message-content{padding:16px 20px}.chat-input-form{padding:14px;gap:8px}.chat-input{padding:10px 14px;font-size:15px}.send-button{padding:10px 18px;font-size:14px}.llm-selector-dropdown{min-width:260px;max-width:90vw}}@media (max-width: 480px){.document-chat-container .page-header{padding:12px}.document-chat-container .page-header .header-left h1{font-size:18px}.document-chat-container .page-header .header-subtitle{font-size:12px}.document-chat-container .header-logout-btn{padding:8px 14px;font-size:13px}.chat-content-wrapper{height:calc(100vh - 70px)}.chat-sidebar{width:0;min-width:0;overflow:hidden}.chat-sidebar:not(.collapsed){width:85vw;max-width:280px}.chat-sidebar .sidebar-toggle{right:-16px;width:32px;height:32px}.chat-header{padding:10px 12px}.paper-title{font-size:14px;margin-bottom:2px}.chat-title-section .header-subtitle{font-size:12px}.preview-button{padding:8px 12px;font-size:12px}.chat-messages{padding:12px}.welcome-message{padding:24px 12px}.welcome-message h2{font-size:22px}.suggested-questions{padding:16px;border-radius:10px;margin-top:20px}.suggested-questions p{font-size:14px}.suggested-questions li{font-size:13px}.message-content{max-width:95%;padding:12px 14px;border-radius:10px}.assistant-message .message-content{padding:14px 16px;border-radius:12px}.message-role{font-size:10px;margin-bottom:8px}.message-text{font-size:14px;line-height:1.6}.chat-input-form{padding:12px;flex-wrap:wrap}.chat-input{flex:1;min-width:100%;padding:12px 14px;font-size:16px;border-radius:8px}.send-button{width:100%;padding:12px;justify-content:center}.llm-selector-container{width:100%}.llm-selector-button{width:100%;justify-content:center}.llm-selector-dropdown{position:fixed;left:12px;right:12px;bottom:auto;top:50%;transform:translateY(-50%);max-width:none;min-width:auto;max-height:80vh;overflow-y:auto}}@media (max-width: 360px){.document-chat-container .page-header .header-left h1{font-size:16px}.paper-title{font-size:13px}.welcome-message h2{font-size:20px}.message-content{padding:10px 12px}}.multi-chat-container{min-height:100vh;background:#f5f7fa}.multi-chat-container .page-header{background:#fff;padding:20px 32px;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;align-items:center}.multi-chat-container .header-right{display:flex;align-items:center}.multi-chat-container .header-logout-btn{padding:10px 20px;background:#fef2f2;color:#dc2626;border:1px solid #dc2626;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.multi-chat-container .header-logout-btn:hover{background:#fee2e2;border-color:#b91c1c;color:#b91c1c}.multi-chat-container .page-header .header-left h1{margin:0 0 4px;font-size:28px;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.multi-chat-container .page-header .header-subtitle{margin:0;color:#666;font-size:14px}.multi-chat-content-wrapper{display:flex;height:calc(100vh - 85px)}.multi-chat-container .chat-sidebar{width:260px;background:#fff;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;transition:width .3s ease;position:relative;flex-shrink:0}.multi-chat-container .chat-sidebar.collapsed{width:20px;min-width:20px}.multi-chat-container .chat-sidebar.collapsed .sidebar-toggle{right:-14px;background:#4f46e5;color:#fff;border-color:#4f46e5}.multi-chat-container .chat-sidebar.collapsed .sidebar-toggle:hover{background:#4338ca}.multi-chat-container .chat-sidebar .sidebar-toggle{position:absolute;top:12px;right:-12px;width:24px;height:24px;background:#fff;border:1px solid #e0e0e0;border-radius:50%;color:#666;font-size:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;box-shadow:0 2px 4px #0000001a;transition:all .2s}.multi-chat-container .chat-sidebar .sidebar-toggle:hover{background:#f0f0f0;color:#333}.multi-chat-container .chat-sidebar .sidebar-nav-section{padding:16px;border-bottom:1px solid #e0e0e0}.multi-chat-container .chat-sidebar .sidebar-nav-section h3{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin:0 0 12px}.multi-chat-container .chat-sidebar .sidebar-nav-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 12px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;font-size:13px;font-weight:600;text-align:center;cursor:pointer;margin-bottom:6px;transition:all .2s ease}.multi-chat-container .chat-sidebar .sidebar-nav-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translate(2px);box-shadow:0 2px 8px #667eea66}.multi-chat-container .chat-sidebar .sidebar-nav-btn.logout{background:linear-gradient(135deg,#ef4444,#dc2626);margin-top:12px}.multi-chat-container .chat-sidebar .sidebar-nav-btn.logout:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 2px 8px #ef444466}.multi-chat-container .chat-sidebar .sidebar-chats-section{padding:16px;border-bottom:1px solid #e0e0e0;max-height:35%;overflow-y:auto}.multi-chat-container .chat-sidebar .sidebar-chats-section.multi{flex:1;max-height:none;border-bottom:none;min-height:0}.multi-chat-container .chat-sidebar .sidebar-chats-section h3{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin:0 0 12px}.multi-chat-container .sidebar-empty{color:#999;font-size:12px;padding:8px}.multi-chat-container .sidebar-chats-list{display:flex;flex-direction:column;gap:6px}.multi-chat-container .sidebar-chat-item{padding:10px;background:#f8fafc;border-radius:8px;cursor:pointer;transition:all .2s ease}.multi-chat-container .sidebar-chat-item:hover{background:#f0f2ff;transform:translate(2px)}.multi-chat-container .sidebar-chat-item.active{background:#e0e7ff;border-left:3px solid #4f46e5}.multi-chat-container .sidebar-chat-item.single{border-left:3px solid #10b981}.multi-chat-container .sidebar-chat-item.multi{border-left:3px solid #f59e0b}.multi-chat-container .sidebar-chat-title{color:#333;font-size:13px;font-weight:600;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.multi-chat-container .sidebar-chat-meta{display:flex;justify-content:space-between;font-size:11px;color:#666}.multi-chat-container .sidebar-chat-count{color:#10b981}.multi-chat-container .sidebar-chat-item.multi .sidebar-chat-count{color:#f59e0b}.multi-chat-container .chat-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;background:#f5f5f5}.multi-chat-container .chat-header{background:#fff;border-bottom:1px solid #e0e0e0;padding:16px 24px;box-shadow:0 2px 4px #0000000d}.multi-chat-container .chat-header-content{display:flex;align-items:flex-start;gap:20px}.multi-chat-container .chat-title-section{flex:1;min-width:0;position:relative}.multi-chat-container .chat-title-section h1{margin:0 0 4px;font-size:20px;color:#1a1a1a}.multi-chat-container .chat-title-section .header-subtitle{margin:0 0 8px;color:#666;font-size:13px}.document-names-header{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 8px;align-items:center}.doc-name-chip{font-size:12px;color:#555;background:#f5f7fa;padding:4px 10px;border-radius:4px;border:1px solid #e0e0e0;cursor:help}.doc-name-chip.more{background:#e0e7ff;color:#4338ca;border-color:#c7d2fe;font-weight:600;cursor:pointer}.doc-count-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;background:linear-gradient(135deg,#667eea15,#764ba215);border:1px solid #667eea40;border-radius:20px;font-size:13px;font-weight:600;color:#667eea;cursor:pointer;margin-bottom:8px}.doc-count-badge:hover{background:linear-gradient(135deg,#667eea25,#764ba225)}.expand-arrow{font-size:10px}.document-list-dropdown{position:absolute;top:100%;left:0;background:#fff;border:1px solid #ddd;border-radius:12px;padding:16px;box-shadow:0 4px 20px #00000026;z-index:100;min-width:300px;max-width:400px}.document-list-dropdown h4{margin:0 0 12px;font-size:14px;color:#333}.document-list-dropdown ul{margin:0;padding:0;list-style:none}.document-list-dropdown li{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid #f0f0f0}.document-list-dropdown li:last-child{border-bottom:none}.doc-bullet{font-size:14px}.doc-name{flex:1;font-size:13px;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-status{font-size:10px;padding:2px 8px;border-radius:10px;text-transform:uppercase;font-weight:600}.doc-status.completed{background:#d4edda;color:#155724}.doc-status.pending{background:#fff3cd;color:#856404}.doc-status.processing{background:#cce5ff;color:#004085}.apply-button{width:100%;padding:10px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer}.apply-button:hover{transform:translateY(-1px)}.multi-chat-container .chat-messages{flex:1;overflow-y:auto;padding:20px}.welcome-message{text-align:center;padding:40px 20px;color:#666}.documents-summary{max-width:600px;margin:30px auto;background:linear-gradient(135deg,#667eea10,#764ba210);border:1px solid #667eea30;padding:20px 24px;border-radius:12px;text-align:center}.documents-summary h3{margin:0 0 12px;font-size:15px;color:#667eea}.documents-summary ul{margin:0;padding-left:24px;color:#555}.documents-summary li{margin:8px 0;line-height:1.5}.suggested-questions{margin-top:30px;text-align:center;max-width:600px;margin-left:auto;margin-right:auto;background:#fff;padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.user-message .message-content{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.assistant-message .message-content{background:#fff;color:#1a1a1a;border:2px solid #667eea40;padding:20px 32px;border-radius:16px}.typing-indicator span{width:8px;height:8px;background:#667eea;border-radius:50%;animation:bounce 1.4s infinite ease-in-out both}.multi-chat-container .chat-input-form{background:#fff;border-top:1px solid #e0e0e0;padding:20px;display:flex;gap:12px}.spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#667eea;border-radius:50%;animation:spin .8s linear infinite}@media (max-width: 1024px){.multi-chat-container .page-header{padding:16px 24px}.multi-chat-container .chat-header{padding:14px 20px}.multi-chat-container .chat-messages{padding:16px}.welcome-message{padding:30px 16px}.documents-summary,.suggested-questions{max-width:100%;padding:20px}}@media (max-width: 768px){.multi-chat-container .chat-sidebar{width:var(--sidebar-mobile, 50px)}.multi-chat-container .chat-sidebar:not(.collapsed){position:absolute;width:var(--sidebar-width, 260px);z-index:100;box-shadow:4px 0 20px #0003;height:100%}.multi-chat-container .page-header{padding:14px 16px;flex-wrap:wrap;gap:12px}.multi-chat-container .page-header .header-left h1{font-size:22px}.multi-chat-content-wrapper{height:calc(100vh - 80px)}.multi-chat-container .chat-header{padding:12px}.multi-chat-container .chat-header-content{flex-wrap:wrap;gap:12px}.multi-chat-container .chat-title-section h1{font-size:18px}.document-names-header{gap:4px}.doc-name-chip{font-size:11px;padding:3px 8px}.doc-count-badge{padding:5px 12px;font-size:12px}.document-list-dropdown{min-width:260px;max-width:90vw;left:0}.message-content{max-width:90%;padding:14px 16px}.assistant-message .message-content{padding:16px 20px}.multi-chat-container .chat-input-form{padding:14px;gap:8px}.chat-input{padding:10px 14px;font-size:15px}.send-button{padding:10px 18px;font-size:14px}.llm-selector-dropdown{min-width:260px;max-width:90vw}}@media (max-width: 480px){.multi-chat-container .page-header{padding:12px}.multi-chat-container .page-header .header-left h1{font-size:18px}.multi-chat-container .page-header .header-subtitle{font-size:12px}.multi-chat-container .header-logout-btn{padding:8px 14px;font-size:13px}.multi-chat-content-wrapper{height:calc(100vh - 70px)}.multi-chat-container .chat-sidebar{width:0;min-width:0;overflow:hidden}.multi-chat-container .chat-sidebar:not(.collapsed){width:85vw;max-width:280px}.multi-chat-container .chat-sidebar .sidebar-toggle{right:-16px;width:32px;height:32px}.multi-chat-container .chat-header{padding:10px 12px}.multi-chat-container .chat-title-section h1{font-size:16px}.multi-chat-container .chat-title-section .header-subtitle{font-size:12px}.document-names-header{display:none}.doc-count-badge{padding:4px 10px;font-size:11px}.document-list-dropdown{position:fixed;left:12px;right:12px;top:50%;transform:translateY(-50%);max-width:none;min-width:auto}.multi-chat-container .chat-messages{padding:12px}.welcome-message{padding:24px 12px}.welcome-message h2{font-size:22px}.documents-summary,.suggested-questions{padding:16px;border-radius:10px;margin:20px auto}.documents-summary h3{font-size:14px}.documents-summary li{font-size:13px}.message-content{max-width:95%;padding:12px 14px;border-radius:10px}.assistant-message .message-content{padding:14px 16px;border-radius:12px}.message-role{font-size:10px;margin-bottom:8px}.message-text{font-size:14px;line-height:1.6}.multi-chat-container .chat-input-form{padding:12px;flex-wrap:wrap}.chat-input{flex:1;min-width:100%;padding:12px 14px;font-size:16px;border-radius:8px}.send-button{width:100%;padding:12px;justify-content:center}.llm-selector-container{width:100%}.llm-selector-button{width:100%;justify-content:center}.llm-selector-dropdown{position:fixed;left:12px;right:12px;bottom:auto;top:50%;transform:translateY(-50%);max-width:none;min-width:auto;max-height:80vh;overflow-y:auto}}@media (max-width: 360px){.multi-chat-container .page-header .header-left h1{font-size:16px}.multi-chat-container .chat-title-section h1{font-size:14px}.welcome-message h2{font-size:20px}.message-content{padding:10px 12px}}.deep-analysis-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#e4e8f0)}.deep-analysis-page .page-header{background:#fff;padding:20px 32px;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;align-items:center}.deep-analysis-page .header-right{display:flex;align-items:center}.deep-analysis-page .header-logout-btn{padding:10px 20px;background:#fef2f2;color:#dc2626;border:1px solid #dc2626;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.deep-analysis-page .header-logout-btn:hover{background:#fee2e2;border-color:#b91c1c;color:#b91c1c}.deep-analysis-page .page-header .header-left{display:flex;flex-direction:column;gap:4px}.deep-analysis-page .page-header .header-left h1{margin:0;font-size:28px;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.deep-analysis-page .page-header .header-subtitle{margin:0;color:#666;font-size:14px}.analysis-content-wrapper{display:flex;height:calc(100vh - 85px)}.analysis-sidebar{width:260px;height:100vh;background:#fff;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;transition:width .3s ease;position:relative;flex-shrink:0;overflow:visible}.analysis-sidebar.collapsed{width:20px;min-width:20px}.analysis-sidebar .sidebar-toggle{position:absolute;top:12px;right:-12px;width:24px;height:24px;background:#fff;border:1px solid #e0e0e0;border-radius:50%;color:#666;font-size:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;box-shadow:0 2px 4px #0000001a;transition:all .2s}.analysis-sidebar .sidebar-toggle:hover{background:#f0f0f0;color:#333}.analysis-sidebar.collapsed .sidebar-toggle{right:-14px;background:#4f46e5;color:#fff;border-color:#4f46e5}.analysis-sidebar.collapsed .sidebar-toggle:hover{background:#4338ca;color:#fff}.analysis-sidebar .sidebar-nav-section{padding:16px;border-bottom:1px solid #e0e0e0}.analysis-sidebar .sidebar-nav-section h3{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px;font-weight:600}.analysis-sidebar .sidebar-nav-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 12px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;font-size:13px;font-weight:600;text-align:center;cursor:pointer;margin-bottom:4px;transition:all .2s ease}.analysis-sidebar .sidebar-nav-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translate(2px);box-shadow:0 2px 8px #667eea66}.analysis-sidebar .sidebar-nav-btn.logout{background:linear-gradient(135deg,#ef4444,#dc2626);margin-top:8px}.analysis-sidebar .sidebar-nav-btn.logout:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 2px 8px #ef444466}.analysis-sidebar .sidebar-analyses-section{flex:1;padding:16px;overflow-y:auto;min-height:0}.analysis-sidebar .sidebar-analyses-section h3{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px;font-weight:600}.analysis-sidebar .sidebar-loading,.analysis-sidebar .sidebar-empty{color:#888;font-size:12px;padding:8px}.analysis-sidebar .sidebar-analyses-list{display:flex;flex-direction:column;gap:6px}.analysis-sidebar .sidebar-analysis-item{padding:10px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease}.analysis-sidebar .sidebar-analysis-item:hover{background:#f1f5f9;border-color:#d1d5db}.analysis-sidebar .sidebar-analysis-item.failed{opacity:.6;cursor:not-allowed}.analysis-sidebar .sidebar-analysis-title{color:#333;font-size:13px;font-weight:600;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.analysis-sidebar .sidebar-analysis-meta{display:flex;justify-content:space-between;font-size:11px;color:#888}.analysis-sidebar .sidebar-status{font-weight:600}.analysis-sidebar .sidebar-status.completed{color:#16a34a}.analysis-sidebar .sidebar-status.in_progress{color:#d97706}.analysis-sidebar .sidebar-status.failed{color:#dc2626}.analysis-sidebar .sidebar-status.pending{color:#9ca3af}.analysis-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.analysis-header-bar{background:#fff;padding:12px 24px;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;align-items:center;gap:16px}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;gap:16px}.error-container h2{color:#dc2626}.analysis-progress{max-width:600px;margin:0 auto;padding:60px 20px}.progress-header{text-align:center;margin-bottom:40px}.progress-header h1{font-size:28px;color:#1a1a1a;margin-bottom:8px}.progress-subtitle{color:#666;font-size:16px}.progress-content{background:#fff;border-radius:16px;padding:32px;box-shadow:0 4px 20px #00000014;margin-bottom:32px}.progress-bar-container{height:12px;background:#e5e7eb;border-radius:6px;overflow:hidden;margin-bottom:12px}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:6px;transition:width .5s ease}.progress-stats{display:flex;justify-content:space-between;font-size:14px;color:#666;margin-bottom:24px}.current-document,.current-step{display:flex;gap:8px;margin-bottom:8px;font-size:14px}.current-document .label,.current-step .label{color:#888}.current-document .value,.current-step .value{color:#333;font-weight:600}.progress-message{color:#666;font-size:14px;margin-top:16px;padding-top:16px;border-top:1px solid #eee}.progress-info{display:flex;flex-direction:column;gap:12px}.info-item{display:flex;align-items:center;gap:12px;font-size:14px;color:#555}.info-item .icon{font-size:20px}.btn-back{background:#f0f4ff;border:1px solid #c7d2fe;color:#6366f1;font-size:13px;cursor:pointer;padding:8px 12px;border-radius:6px;transition:all .2s}.btn-back:hover{background:#e0e7ff;border-color:#a5b4fc}.header-center{display:flex;gap:24px;flex:1;justify-content:center;align-items:center}.paper-names-toggle-container{position:relative}.paper-names-toggle{display:flex;align-items:center;gap:8px;padding:8px 14px;background:linear-gradient(135deg,#f0f4ff,#e8ecff);border:1px solid #c7d2fe;border-radius:20px;font-size:13px;font-weight:600;color:#6366f1;cursor:pointer;transition:all .2s}.paper-names-toggle:hover{background:linear-gradient(135deg,#e0e7ff,#ddd6fe);border-color:#a5b4fc}.paper-names-toggle.active{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-color:transparent}.paper-names-toggle .toggle-arrow{font-size:10px;transition:transform .2s}.paper-names-dropdown{position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:16px;box-shadow:0 8px 24px #00000026;z-index:1000;min-width:350px;max-width:500px;max-height:400px;overflow-y:auto}.paper-names-dropdown h4{margin:0 0 12px;font-size:14px;color:#333;padding-bottom:8px;border-bottom:1px solid #eee}.paper-names-dropdown ul{margin:0;padding:0;list-style:none}.paper-names-dropdown li{display:flex;align-items:flex-start;gap:8px;padding:10px 8px;border-radius:6px;transition:background .2s}.paper-names-dropdown li:hover{background:#f8fafc}.paper-names-dropdown .paper-index{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-radius:50%;font-size:12px;font-weight:600}.paper-names-dropdown .paper-name-full{flex:1;font-size:13px;color:#333;line-height:1.4}.header-right{display:flex;gap:8px}.nav-button{padding:8px 16px;border-radius:6px;font-size:13px;cursor:pointer;transition:all .2s;background:#f5f5f5;color:#555;border:1px solid #e0e0e0}.nav-button:hover{background:#e8e8e8;color:#333}.nav-button.chat-button{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;font-weight:600}.nav-button.chat-button:hover{background:linear-gradient(135deg,#4f46e5,#7c3aed);transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.nav-button.logout{background:#fee2e2;color:#dc2626;border-color:#fecaca}.nav-button.logout:hover{background:#fecaca}.stat{display:flex;gap:6px;font-size:13px}.stat-label{color:#888}.stat-value{font-weight:600;color:#333}.tabs{background:#fff;padding:0 24px;border-bottom:1px solid #e0e0e0;display:flex;gap:4px}.tab{padding:14px 20px;background:none;border:none;font-size:14px;color:#666;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s}.tab:hover{color:#333}.tab.active{color:#6366f1;border-bottom-color:#6366f1;font-weight:600}.tab-content{flex:1;padding:24px;max-width:1200px;margin:0 auto;overflow-y:auto;width:100%}.no-data{color:#888;font-style:italic;text-align:center;padding:40px}.summary-section{background:#fff;border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 2px 8px #0000000d}.summary-section h2{font-size:18px;color:#1a1a1a;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #eee}.markdown-content{font-size:15px;line-height:1.7;color:#333}.markdown-content p{margin:0 0 12px}.markdown-content p:last-child{margin-bottom:0}.markdown-content strong{font-weight:600;color:#1a1a1a}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4{margin:16px 0 8px;color:#1a1a1a;font-weight:600}.markdown-content h1{font-size:1.5em}.markdown-content h2{font-size:1.3em}.markdown-content h3{font-size:1.1em}.markdown-content h4{font-size:1em}.markdown-content ul,.markdown-content ol{margin:8px 0;padding-left:24px}.markdown-content li{margin-bottom:4px}.markdown-content code{background:#f3f4f6;padding:2px 6px;border-radius:4px;font-family:monospace;font-size:.9em}.markdown-content pre{background:#f3f4f6;padding:12px;border-radius:8px;overflow-x:auto}.markdown-content pre code{background:none;padding:0}.markdown-content blockquote{border-left:3px solid #6366f1;margin:12px 0;padding-left:16px;color:#555;font-style:italic}.markdown-content a{color:#6366f1;text-decoration:none}.markdown-content a:hover{text-decoration:underline}.markdown-content table{width:100%;border-collapse:collapse;margin:16px 0;font-size:14px;background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.markdown-content table thead{background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.markdown-content table th{padding:12px 16px;text-align:center;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb;white-space:nowrap}.markdown-content table td{padding:12px 16px;border-bottom:1px solid #f3f4f6;color:#4b5563;vertical-align:top}.markdown-content table tbody tr:last-child td{border-bottom:none}.markdown-content table tbody tr:hover{background:#f9fafb}.markdown-content table tbody tr:nth-child(2n){background:#fafafa}.markdown-content table tbody tr:nth-child(2n):hover{background:#f5f5f5}.markdown-content .table-wrapper{overflow-x:auto;margin:16px 0}.markdown-content table th:first-child,.markdown-content table td:first-child{position:sticky;left:0;background:inherit}.report-field .markdown-content,.qa-answer .markdown-content{overflow-x:auto}.item-list li .markdown-content,.report-field ul li .markdown-content{display:inline}.item-list li .markdown-content p,.report-field ul li .markdown-content p{display:inline;margin:0}.item-list{list-style:none;padding:0;margin:0}.item-list li{padding:12px 16px;background:#f8fafc;border-radius:8px;margin-bottom:8px;font-size:14px;color:#333}.item-list li p{margin:0}.item-list li strong{font-weight:600;color:#1a1a1a}.themes-section{background:#fff;border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 2px 8px #0000000d}.themes-section h2{font-size:18px;color:#1a1a1a;margin:0 0 16px}.item-list.themes li{border-left:3px solid #10b981}.item-list.differences li{border-left:3px solid #f59e0b}.comparison-table-container{background:#fff;border-radius:12px;padding:24px;overflow:visible;box-shadow:0 2px 8px #0000000d;margin-bottom:24px}.comparison-table{width:100%;border-collapse:collapse;font-size:14px;overflow:visible}.comparison-table tbody,.comparison-table tr{overflow:visible}.comparison-table th{text-align:center;padding:12px;background:#f8fafc;color:#555;font-weight:600;border-bottom:2px solid #e0e0e0}.comparison-table td{padding:12px;border-bottom:1px solid #eee;color:#333}.comparison-table .doc-title{font-weight:600;max-width:200px;position:relative}.comparison-table .doc-title-text{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:help}.comparison-table .doc-title-tooltip{display:none;position:absolute;left:0;top:100%;z-index:1000;background:#1f2937;color:#fff;padding:8px 12px;border-radius:6px;font-size:13px;font-weight:400;white-space:normal;max-width:400px;min-width:200px;box-shadow:0 4px 12px #00000026;margin-top:4px;pointer-events:none}.comparison-table .doc-title:hover .doc-title-tooltip{display:block}.comparison-table .comparison-row{cursor:pointer;transition:background-color .2s}.comparison-table .comparison-row:hover{background-color:#f8fafc}.comparison-table .comparison-row.expanded{background-color:#f0f4ff}.comparison-table .col-expand{width:40px;text-align:center}.comparison-table .expand-icon{display:inline-block;transition:transform .2s;color:#666;font-size:12px}.comparison-table .expand-icon.expanded{transform:rotate(180deg)}.comparison-detail-row{background-color:#fafbff}.comparison-detail-row td{padding:0!important;border-bottom:2px solid #e0e0e0}.comparison-detail-content{padding:24px;animation:slideDown .2s ease-out}.comparison-detail-content .detail-section{margin-bottom:24px}.comparison-detail-content .detail-section:last-child{margin-bottom:0}.comparison-detail-content .detail-section h4{color:#4f46e5;font-size:16px;font-weight:600;margin-bottom:12px;padding-bottom:8px;border-bottom:2px solid #e0e7ff}.comparison-detail-content .findings-list,.comparison-detail-content .limitations-list{margin:0;padding-left:24px;list-style-type:disc}.comparison-detail-content .findings-list li,.comparison-detail-content .limitations-list li{margin-bottom:12px;line-height:1.6;color:#333}.comparison-detail-content .findings-list li:last-child,.comparison-detail-content .limitations-list li:last-child{margin-bottom:0}.comparison-detail-content .no-details{color:#999;font-style:italic;text-align:center;padding:20px}.cross-references{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000d}.cross-references h2{font-size:18px;color:#1a1a1a;margin:0 0 16px}.cross-ref-list{display:flex;flex-direction:column;gap:16px}.cross-ref-item{background:#f8fafc;border-radius:8px;padding:16px}.cross-ref-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.cross-ref-header .source,.cross-ref-header .target{font-weight:600;color:#333}.cross-ref-header .arrow{color:#888}.ref-type{padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.ref-type.supports{background:#dcfce7;color:#166534}.ref-type.contradicts{background:#fee2e2;color:#991b1b}.ref-type.extends{background:#dbeafe;color:#1e40af}.ref-type.similar_method{background:#fef3c7;color:#92400e}.ref-type.same_domain{background:#f3e8ff;color:#6b21a8}.cross-ref-desc{font-size:13px;color:#666;margin:0}.individual-tab{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000d}.individual-reports-container{width:100%;overflow-x:auto}.individual-reports-table{width:100%;border-collapse:collapse;table-layout:fixed}.individual-reports-table thead{background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.individual-reports-table th{padding:12px 14px;text-align:center;font-size:12px;font-weight:600;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e5e7eb}.individual-reports-table th:nth-child(1){width:28%}.individual-reports-table th:nth-child(2){width:14%}.individual-reports-table th:nth-child(3){width:40%}.individual-reports-table th:nth-child(4){width:10%}.individual-reports-table th:nth-child(5){width:8%;text-align:center}.individual-reports-table tbody tr.report-row{cursor:pointer;transition:background .2s}.individual-reports-table tbody tr.report-row:hover{background:#f9fafb}.individual-reports-table tbody tr.report-row.expanded{background:#f0f4ff}.individual-reports-table td{padding:12px 14px;border-bottom:1px solid #f3f4f6;vertical-align:top;font-size:14px;color:#333;word-wrap:break-word;overflow-wrap:break-word}.individual-reports-table .col-title{font-weight:600;color:#1f2937;line-height:1.4;position:relative;cursor:help}.individual-reports-table .col-title:after{content:attr(title);position:absolute;left:0;top:100%;margin-top:4px;padding:10px 14px;background:#1f2937;color:#fff;font-size:13px;font-weight:400;border-radius:8px;white-space:normal;max-width:400px;min-width:200px;box-shadow:0 4px 16px #0003;z-index:1000;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;pointer-events:none;line-height:1.4}.individual-reports-table .col-title:hover:after{opacity:1;visibility:visible}.individual-reports-table .col-type,.individual-reports-table .col-domain{vertical-align:middle}.individual-reports-table .col-type .paper-type,.individual-reports-table .col-domain .domain{display:inline-block;word-wrap:break-word;overflow-wrap:break-word;white-space:normal;line-height:1.4}.individual-reports-table .col-qa{vertical-align:middle;text-align:center}.individual-reports-table .col-expand{text-align:center;vertical-align:middle}.report-detail-row td{padding:0!important;background:#fafafa}.paper-type{font-size:12px;padding:4px 10px;border-radius:4px;background:#dbeafe;color:#1e40af;font-weight:600}.domain{font-size:12px;padding:4px 10px;border-radius:4px;background:#dcfce7;color:#166534;font-weight:600}.questions{font-size:12px;padding:4px 10px;border-radius:4px;background:#fef3c7;color:#92400e;font-weight:600}.expand-icon{transition:transform .2s;color:#9ca3af;font-size:12px}.expand-icon.expanded{transform:rotate(180deg);color:#6366f1}.report-card-content{padding:24px;background:#fafafa}.report-field{margin-bottom:24px;background:#fff;border-radius:8px;padding:16px 20px;border:1px solid #e5e7eb}.report-field:last-child{margin-bottom:0}.report-field label{display:block;font-size:11px;font-weight:600;color:#6366f1;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #f3f4f6}.report-field p{margin:0;font-size:14px;color:#333;line-height:1.7}.report-field ul{margin:0;padding-left:20px;list-style:disc}.report-field li{font-size:14px;color:#333;margin-bottom:6px;line-height:1.6}.report-field li:last-child{margin-bottom:0}.report-field .markdown-content{font-size:14px}.report-field .markdown-content table{margin:8px 0}.qa-pairs{max-height:600px;overflow-y:auto;background:#fff;border-radius:8px;padding:16px 20px;border:1px solid #e5e7eb}.qa-pairs label{position:sticky;top:-16px;background:#fff;z-index:1;padding:8px 0 12px;margin:-8px 0 12px}.qa-list{display:flex;flex-direction:column;gap:16px}.qa-item{background:#f9fafb;border-radius:10px;padding:16px 18px;border:1px solid #e5e7eb;transition:all .2s}.qa-item:hover{border-color:#c7d2fe;box-shadow:0 2px 8px #6366f114}.qa-item.user-added{background:#f0fdf4;border-color:#86efac;border-left:4px solid #10b981}.qa-item.user-added:hover{border-color:#6ee7b7;box-shadow:0 2px 8px #10b9811f}.additional-qa label{color:#059669;font-weight:600}.qa-question{font-size:14px;color:#1f2937;margin-bottom:14px;padding-bottom:12px;border-bottom:1px dashed #e5e7eb;display:flex;gap:8px;font-weight:600}.qa-answer{font-size:14px;color:#4b5563;display:flex;gap:8px;line-height:1.7}.qa-label{font-weight:700;flex-shrink:0;font-size:13px;width:20px}.qa-question .qa-label{color:#6366f1}.qa-answer .qa-label{color:#10b981}.qa-answer-text{flex:1;word-break:break-word}.qa-answer-text p{margin:0 0 6px}.qa-answer-text p:last-child{margin-bottom:0}.qa-answer-text ul,.qa-answer-text ol{margin:0 0 6px;padding-left:20px}.qa-answer-text li{margin:2px 0}.btn-primary{padding:10px 20px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary{padding:10px 20px;background:#fff;color:#6366f1;border:2px solid #6366f1;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#f5f5ff;transform:translateY(-1px)}.crossanalysis-tab{display:flex;flex-direction:column;gap:32px}.cross-questions-section,.cross-analysis-reports-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000f}.cross-questions-section h2,.cross-analysis-reports-section h2{font-size:20px;color:#1a1a1a;margin-bottom:8px}.section-description{color:#666;font-size:14px;margin-bottom:20px}.cross-questions-grouped{display:flex;flex-direction:column;gap:16px}.cross-questions-paper-group{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.paper-group-header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:#f1f5f9;border-bottom:1px solid #e2e8f0}.paper-group-header .paper-title{font-weight:600;font-size:14px;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80%}.paper-group-header .question-count{font-size:12px;background:#6366f1;color:#fff;padding:4px 10px;border-radius:12px;flex-shrink:0}.paper-questions-list{padding:12px 18px;display:flex;flex-direction:column;gap:8px}.cq-item{display:flex;gap:8px;padding:10px 12px;background:#fff;border-radius:6px;border:1px solid #e5e7eb;font-size:14px;line-height:1.5;color:#374151}.cq-item .cq-number{font-weight:600;color:#6366f1;flex-shrink:0}.cq-item .cq-text{flex:1}.cq-target{margin-top:8px;font-size:12px;color:#64748b}.cq-target .label{font-weight:600}.cross-reports-container{display:flex;flex-direction:column;gap:16px}.cross-report-card{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.cross-report-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#f8fafc;cursor:pointer;transition:background .2s}.cross-report-header:hover{background:#f1f5f9}.cross-report-header.expanded{border-bottom:1px solid #e2e8f0}.cross-report-title{display:flex;align-items:center;gap:12px;flex:1}.cross-report-title .source-paper{max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:relative;cursor:help;font-weight:600;color:#1e293b}.cross-report-title .target-papers{color:#475569;font-size:13px;max-width:400px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cross-report-title .source-paper:after,.cross-report-title .target-paper:after{content:attr(title);position:absolute;left:0;top:100%;margin-top:8px;padding:10px 14px;background:#1f2937;color:#fff;font-size:13px;font-weight:400;border-radius:8px;white-space:normal;max-width:400px;min-width:200px;box-shadow:0 4px 16px #0003;z-index:1000;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;pointer-events:none;line-height:1.4}.cross-report-title .source-paper:hover:after,.cross-report-title .target-paper:hover:after{opacity:1;visibility:visible}.cross-report-title .arrow{color:#6366f1;font-size:18px}.cross-report-meta{display:flex;align-items:center;gap:16px}.cross-report-meta .qa-count,.cross-report-meta .comparison-count{font-size:13px;color:#64748b;background:#e2e8f0;padding:4px 10px;border-radius:12px}.cross-report-meta .comparison-count{background:#ddd6fe;color:#6366f1}.cross-report-meta .expand-icon{color:#94a3b8;transition:transform .2s}.cross-report-meta .expand-icon.expanded{transform:rotate(180deg)}.cross-report-content{padding:20px;background:#fff}.cross-comparison-table-section{margin-bottom:24px}.cross-comparison-table-section h4,.cross-qa-section h4{font-size:15px;color:#374151;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #f1f5f9}.cross-comparison-table-wrapper{overflow-x:auto}.cross-comparison-table{width:100%;border-collapse:collapse;font-size:14px}.cross-comparison-table th{text-align:center;padding:12px 16px;background:#f8fafc;color:#374151;font-weight:600;border-bottom:2px solid #e5e7eb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.cross-comparison-table th.type-col{width:100px;min-width:100px}.cross-comparison-table th.paper-col{max-width:250px}.cross-comparison-table td{padding:16px;border-bottom:1px solid #e5e7eb;vertical-align:top}.cross-comparison-table .type-cell{font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.3px}.cross-comparison-table .type-cell.similarities{color:#10b981}.cross-comparison-table .type-cell.differences{color:#f59e0b}.cross-comparison-table .content-cell ul{margin:0;padding-left:16px;list-style:disc}.cross-comparison-table .content-cell li{margin-bottom:6px;line-height:1.5;color:#4b5563}.cross-comparison-table .content-cell li:last-child{margin-bottom:0}.cross-comparison-table .no-data-cell{color:#9ca3af}.cross-qa-section{margin-top:24px}.cross-qa-list{display:flex;flex-direction:column;gap:20px}.cross-qa-group{background:#f9fafb;border-radius:10px;padding:16px 20px;border:1px solid #e5e7eb}.cross-qa-question{display:flex;align-items:flex-start;gap:8px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px dashed #e5e7eb;font-weight:600;color:#1f2937}.cross-qa-question .qa-label{color:#6366f1;font-weight:700;flex-shrink:0}.cross-qa-question .question-text{flex:1}.cross-qa-answers{display:flex;flex-direction:column;gap:12px}.cross-qa-answer-item{background:#fff;border-radius:8px;padding:12px 16px;border:1px solid #e5e7eb}.cross-qa-answer-item .answer-paper-name{font-size:12px;font-weight:600;color:#6366f1;text-transform:uppercase;letter-spacing:.3px;margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cross-qa-answer-item .answer-content{font-size:14px;color:#4b5563;line-height:1.6}.cross-qa-answer-item .answer-content p{margin:0 0 8px}.cross-qa-answer-item .answer-content p:last-child{margin-bottom:0}.cross-qa-answer-item .answer-content ul{margin:0 0 8px;padding-left:20px}.cross-qa-answer-item .answer-content li{margin-bottom:4px}.cross-qa-answer-item .no-answer{color:#9ca3af;font-style:italic}.cross-summary{margin-bottom:24px}.cross-summary h4,.cross-similarities h4,.cross-differences h4,.cross-qa-exchanges h4{font-size:15px;color:#374151;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #f1f5f9}.cross-similarities,.cross-differences{margin-bottom:24px}.cross-similarities ul,.cross-differences ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.cross-similarities li,.cross-differences li{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;background:#f8fafc;border-radius:6px;font-size:14px;line-height:1.5}.comparison-category{flex-shrink:0;padding:2px 8px;border-radius:10px;font-size:10px;font-weight:600;text-transform:uppercase}.comparison-category.theory{background:#dbeafe;color:#1e40af}.comparison-category.methodology{background:#dcfce7;color:#166534}.comparison-category.experimentation{background:#fef3c7;color:#92400e}.comparison-category.application{background:#f3e8ff;color:#6b21a8}.comparison-category.other{background:#f1f5f9;color:#475569}.cross-qa-exchanges .qa-list{display:flex;flex-direction:column;gap:16px}.cross-qa-exchanges .qa-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px}.cross-qa-exchanges .qa-question{display:flex;align-items:flex-start;gap:8px;margin-bottom:12px;font-size:14px;color:#1e293b}.cross-qa-exchanges .qa-category{flex-shrink:0;padding:2px 8px;border-radius:10px;font-size:10px;font-weight:600;text-transform:uppercase;margin-right:4px}.cross-qa-exchanges .qa-answer{padding-left:24px;font-size:14px;color:#475569;line-height:1.6}.qa-comparison-target{margin-top:12px;padding-top:12px;border-top:1px dashed #e2e8f0;font-size:12px;color:#64748b}.qa-comparison-target .label{font-weight:600}@media (max-width: 1024px){.deep-analysis-page .page-header{padding:16px 24px}.deep-analysis-page .main-content{padding:20px}.report-content{max-width:100%;padding:20px}.comparison-table-wrapper{overflow-x:auto}.comparison-table{min-width:700px}}@media (max-width: 768px){.deep-analysis-page .sidebar{width:var(--sidebar-mobile, 50px)}.deep-analysis-page .sidebar:not(.collapsed){position:absolute;width:var(--sidebar-width, 260px);z-index:100;box-shadow:4px 0 20px #0003;height:100%}.deep-analysis-page .page-header{padding:14px 16px;flex-direction:column;align-items:flex-start;gap:12px}.deep-analysis-page .page-header .header-left h1{font-size:22px}.header-right{flex-wrap:wrap;gap:8px;width:100%}.header-right .btn-refresh,.header-right .header-logout-btn{flex:1;justify-content:center}.content-wrapper{height:calc(100vh - 100px)}.tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;gap:8px;padding-bottom:8px}.tab-button{padding:8px 14px;font-size:13px;white-space:nowrap}.deep-analysis-page .main-content,.section-card{padding:16px}.section-title{font-size:16px}.individual-reports-table{font-size:13px;display:block;overflow-x:auto}.individual-reports-table th,.individual-reports-table td{padding:10px 8px;min-width:100px}.comparison-table{font-size:12px;min-width:600px}.images-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px}.image-grid-item img{height:80px}.report-content{padding:16px}.report-section{padding:14px}}@media (max-width: 480px){.deep-analysis-page .page-header{padding:12px}.deep-analysis-page .page-header .header-left h1{font-size:18px}.deep-analysis-page .page-header .header-subtitle{font-size:12px}.header-logout-btn{padding:8px 14px;font-size:13px}.content-wrapper{height:calc(100vh - 90px)}.deep-analysis-page .sidebar{width:0;min-width:0;overflow:hidden}.deep-analysis-page .sidebar:not(.collapsed){width:85vw;max-width:280px}.deep-analysis-page .sidebar .sidebar-toggle{right:-16px;width:32px;height:32px}.deep-analysis-page .main-content{padding:12px}.tabs{gap:6px;margin-bottom:16px}.tab-button{padding:8px 12px;font-size:12px}.section-card{padding:14px;border-radius:10px;margin-bottom:16px}.section-title{font-size:15px;margin-bottom:12px}.individual-reports-table th,.individual-reports-table td{padding:8px 6px;font-size:12px}.comparison-table th,.comparison-table td{padding:8px 6px;font-size:11px}.images-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}.image-grid-item img{height:70px}.report-content{padding:12px;border-radius:10px}.report-section{padding:12px;margin-bottom:12px}.report-section h3{font-size:14px}.key-findings ul,.synthesis-section ul{padding-left:16px}.image-modal-overlay{padding:20px}.image-nav-btn{width:36px;height:50px;font-size:28px}.image-nav-prev{left:8px}.image-nav-next{right:8px}.image-modal-info{flex-direction:column;gap:8px;font-size:12px}.cross-qa-exchanges .qa-pair{padding:12px}.cross-qa-exchanges .qa-question{font-size:13px}.cross-qa-exchanges .qa-answer{padding-left:16px;font-size:13px}}@media (max-width: 360px){.deep-analysis-page .page-header .header-left h1{font-size:16px}.tab-button{padding:6px 10px;font-size:11px}.section-title{font-size:14px}.images-grid{grid-template-columns:repeat(2,1fr)}}.toast-container{position:fixed;top:80px;right:20px;z-index:9999;display:flex;flex-direction:column;gap:12px;max-width:400px;pointer-events:none}.toast{display:flex;align-items:center;justify-content:space-between;min-width:300px;padding:16px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026,0 0 0 1px #0000000d;pointer-events:auto;animation:toast-slide-in .3s ease-out;transition:all .2s ease}.toast:hover{box-shadow:0 6px 16px #0003,0 0 0 1px #00000014;transform:translateY(-2px)}.toast-success{border-left:4px solid #10a37f}.toast-error{border-left:4px solid #ef4444}.toast-warning{border-left:4px solid #f59e0b}.toast-info{border-left:4px solid #3b82f6}.toast-content{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.toast-icon{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-weight:600;font-size:14px}.toast-success .toast-icon{background:#d1fae5;color:#10a37f}.toast-error .toast-icon{background:#fee2e2;color:#ef4444}.toast-warning .toast-icon{background:#fef3c7;color:#f59e0b}.toast-info .toast-icon{background:#dbeafe;color:#3b82f6}.toast-message{flex:1;font-size:14px;line-height:1.5;color:#1f2937;word-wrap:break-word;overflow-wrap:break-word}.toast-close{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:4px;color:#6b7280;font-size:20px;line-height:1;cursor:pointer;transition:all .2s;padding:0;margin-left:8px}.toast-close:hover{background:#f3f4f6;color:#1f2937}.toast-close:active{background:#e5e7eb}.toast-close:focus{outline:2px solid #10a37f;outline-offset:2px}@keyframes toast-slide-in{0%{opacity:0;transform:translate(100%) translateY(-10px)}to{opacity:1;transform:translate(0) translateY(0)}}@keyframes toast-slide-out{0%{opacity:1;transform:translate(0) translateY(0)}to{opacity:0;transform:translate(100%) translateY(-10px)}}.toast-exit{animation:toast-slide-out .3s ease-out forwards}@media (max-width: 640px){.toast-container{top:60px;left:16px;right:16px;max-width:none}.toast{min-width:0;width:100%}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes toast-slide-out{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-100%)}}}@media (prefers-reduced-motion: reduce){.toast{animation:none}.toast-exit{animation:none;opacity:0}}.analysis-status-bar{background:#fff;border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 2px 8px #0000001a}.status-bar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.status-bar-title{display:flex;align-items:center;gap:12px}.status-bar-title h2{margin:0;font-size:20px;font-weight:600;color:#1a1a1a}.awaiting-badge{background:#ff9500;color:#fff;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.status-bar-meta{display:flex;gap:16px;font-size:14px;color:#666}.cost-display,.tokens-display{display:flex;align-items:center;gap:4px}.cost-display{font-weight:600;color:#10a37f}.progress-bar-container{display:flex;align-items:center;gap:12px;margin-bottom:24px}.progress-bar{flex:1;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#10a37f,#1a7f64);transition:width .3s ease}.progress-text{min-width:45px;text-align:right;font-size:14px;font-weight:600;color:#1a1a1a}.phase-indicators{display:flex;justify-content:space-between;gap:8px;margin-bottom:16px}.phase-indicator{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;position:relative}.phase-indicator:not(:last-child):after{content:"";position:absolute;top:16px;left:50%;right:-50%;height:2px;background:#e5e7eb;z-index:0}.phase-indicator.completed:not(:last-child):after{background:#10a37f}.phase-circle{width:32px;height:32px;border-radius:50%;background:#fff;border:2px solid #e5e7eb;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:#9ca3af;position:relative;z-index:1;transition:all .3s ease}.phase-indicator.active .phase-circle{border-color:#10a37f;background:#10a37f;color:#fff;box-shadow:0 0 0 4px #10a37f1a}.phase-indicator.completed .phase-circle{border-color:#10a37f;background:#10a37f;color:#fff}.phase-label{font-size:12px;color:#6b7280;text-align:center;max-width:100px}.phase-indicator.active .phase-label{color:#10a37f;font-weight:600}.phase-indicator.completed .phase-label{color:#1a1a1a}.status-message{padding:12px 16px;background:#f3f4f6;border-radius:8px;margin-top:16px}.status-message-text{font-size:14px;color:#4b5563}@media (max-width: 768px){.analysis-status-bar{padding:16px}.status-bar-header{flex-direction:column;align-items:flex-start;gap:12px}.phase-label{font-size:10px;max-width:80px}.phase-circle{width:28px;height:28px;font-size:12px}}.paper-qa-panel{background:#fff;border:2px solid #10a37f;border-radius:8px;margin-top:16px;margin-bottom:16px;overflow:hidden}.qa-panel-header{background:#f0fdf4;border-bottom:1px solid #d1fae5;padding:16px 20px;position:relative}.qa-panel-header h3{margin:0 0 4px;font-size:16px;font-weight:600;color:#1a1a1a;padding-right:30px}.qa-panel-subtitle{margin:0;font-size:13px;color:#6b7280}.qa-panel-close{position:absolute;top:16px;right:16px;background:transparent;border:none;font-size:24px;color:#6b7280;cursor:pointer;padding:0;width:24px;height:24px;line-height:20px;transition:color .2s}.qa-panel-close:hover{color:#1a1a1a}.qa-panel-content{padding:20px}.qa-question-form{display:flex;flex-direction:column;gap:12px}.qa-question-form label{font-weight:600;color:#374151;font-size:14px}.qa-question-form textarea{width:100%;padding:12px;border:1px solid #d1d5db;border-radius:6px;font-family:inherit;font-size:14px;line-height:1.5;resize:vertical;transition:border-color .2s}.qa-question-form textarea:focus{outline:none;border-color:#10a37f;box-shadow:0 0 0 3px #10a37f1a}.qa-question-form textarea:disabled{background:#f3f4f6;cursor:not-allowed}.qa-error{background:#fee2e2;border:1px solid #fecaca;border-radius:6px;padding:12px;color:#991b1b;font-size:14px}.qa-form-actions{display:flex;gap:12px;justify-content:flex-start}.qa-result{display:flex;flex-direction:column;gap:16px}.qa-result-question,.qa-result-answer{display:flex;flex-direction:column;gap:8px}.qa-result-question{background:#f9fafb;padding:12px;border-radius:6px;border-left:3px solid #10a37f}.qa-result-question strong{color:#10a37f;font-weight:700}.qa-result-answer{background:#f0fdf4;padding:12px;border-radius:6px;border-left:3px solid #059669}.qa-result-answer strong{color:#059669;font-weight:700}.qa-result-answer .markdown-content{color:#1a1a1a;line-height:1.6}.qa-result-actions{display:flex;gap:12px;justify-content:flex-start;padding-top:8px;border-top:1px solid #e5e7eb}.qa-result-actions .btn-success{background:#10b981;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.qa-result-actions .btn-success:hover{background:#059669;transform:translateY(-1px);box-shadow:0 2px 8px #10b9814d}.qa-result-actions .btn-primary{background:#667eea;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.qa-result-actions .btn-primary:hover{background:#5568d3;transform:translateY(-1px);box-shadow:0 2px 8px #667eea4d}.qa-result-actions .btn-secondary{background:#f3f4f6;color:#374151;border:1px solid #d1d5db;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.qa-result-actions .btn-secondary:hover{background:#e5e7eb;border-color:#9ca3af}.phase-review-container{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a}.phase-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.phase-header h2{margin:0 0 8px;font-size:24px;font-weight:600;color:#1a1a1a}.phase-description{margin:0;color:#6b7280;font-size:14px;line-height:1.5}.phase-content{margin-bottom:24px;min-height:200px}.reports-list{display:flex;flex-direction:column;gap:16px}.report-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:0;overflow:hidden}.report-card h3{margin:0;font-size:18px;font-weight:600;color:#1a1a1a}.report-summary{margin-bottom:16px}.report-summary p{margin:4px 0;font-size:14px;color:#4b5563}.report-summary strong{color:#1a1a1a}.report-actions{display:flex;gap:12px;flex-wrap:wrap;padding:16px;border-top:1px solid #e5e7eb;background:#fff}.questions-summary{display:flex;flex-direction:column;gap:16px}.summary-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.summary-card h3{margin:0 0 12px;font-size:18px;font-weight:600;color:#1a1a1a}.summary-card p{margin:4px 0;font-size:14px;color:#4b5563}.questions-placeholder{background:#f9fafb;border:1px dashed #d1d5db;border-radius:8px;padding:32px;text-align:center}.questions-placeholder p{margin:0 0 16px;color:#6b7280;font-size:14px}.questions-placeholder button{margin:0 8px}.empty-state{text-align:center;padding:48px 24px;color:#9ca3af}.empty-state p{margin:0;font-size:16px}.progress-display{display:flex;flex-direction:column;align-items:center;padding:48px 24px}.spinner-container{margin-bottom:24px}.spinner{width:64px;height:64px;border:4px solid #e5e7eb;border-top-color:#10a37f;border-radius:50%;animation:spin 1s linear infinite}.progress-message{margin:0 0 8px;font-size:18px;font-weight:600;color:#1a1a1a}.progress-note{margin:0;color:#6b7280;font-size:14px}.phase-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid #e5e7eb}.btn-primary{background:#10a37f;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.btn-primary:hover:not(:disabled){background:#0d8f6f}.btn-primary:disabled{background:#9ca3af;cursor:not-allowed}.report-header{padding:16px;background:#f9fafb;border-radius:8px 8px 0 0;display:flex;flex-direction:column;gap:12px}.report-header-top{cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;justify-content:space-between;align-items:center;gap:16px}.report-header-top:hover{opacity:.9}.report-header-top h3{flex:1;margin:0}.report-summary-stats{display:flex;gap:8px;flex-wrap:wrap}.stat-badge{display:inline-block;background:#e5e7eb;color:#4b5563;padding:4px 12px;border-radius:12px;font-size:13px;font-weight:500}.stat-badge.user-added{background:#dbeafe;color:#1e40af}.expand-toggle{background:transparent;border:none;color:#10a37f;font-size:13px;font-weight:600;cursor:pointer;padding:4px 0;text-align:left;transition:color .2s}.expand-toggle:hover{color:#0d8f6f}.report-card.expanded .report-header{border-radius:8px 8px 0 0}.report-details{padding:24px 16px;border-top:1px solid #e5e7eb}.detail-section{margin-bottom:24px}.detail-section:last-child{margin-bottom:0}.detail-section h4{margin:0 0 8px;font-size:16px;font-weight:600;color:#1a1a1a}.findings-list{margin:8px 0;padding-left:24px}.findings-list li{margin-bottom:8px}.qa-pairs-section,.additional-qa-section{margin-top:20px}.qa-pairs-section h4,.additional-qa-section h4{margin:0 0 12px;font-size:16px;font-weight:600;color:#1a1a1a}.additional-qa-section h4{color:#1e40af}.qa-pairs-list{display:flex;flex-direction:column;gap:16px}.qa-pair-item{background:#f9fafb;padding:12px;border-radius:6px;border-left:3px solid #10a37f}.qa-pair-item.collapsed{background:#fff;border-left:3px solid #e5e7eb}.qa-pair-item.expanded{background:#f0fdf4;border-left:3px solid #10a37f}.qa-question{display:flex;gap:8px;margin-bottom:0;align-items:flex-start}.qa-question.clickable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color .2s;padding:4px;margin:-4px;border-radius:4px}.qa-question.clickable:hover{background:#10a37f1a}.qa-toggle{margin-left:auto;color:#10a37f;font-size:12px;font-weight:600;flex-shrink:0}.qa-answer{display:flex;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb}.qa-label{font-weight:700;color:#374151;min-width:24px;flex-shrink:0}.qa-text{flex:1;color:#1a1a1a;line-height:1.6}.qa-answer .qa-text{color:#4b5563}.cross-questions-section{margin-top:20px}.cross-questions-section h4{margin:0 0 12px;font-size:16px;font-weight:600;color:#1a1a1a}.cross-questions-list{margin:0;padding-left:24px}.cross-question-item{margin-bottom:8px;color:#4b5563;line-height:1.6}.btn-secondary{background:#fff;color:#1a1a1a;border:1px solid #d1d5db;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.btn-secondary:disabled{color:#9ca3af;cursor:not-allowed}@media (max-width: 768px){.phase-review-container{padding:16px}.phase-header h2{font-size:20px}.report-card{padding:16px}.phase-actions{flex-direction:column}.phase-actions button{width:100%}}.cross-questions-container{display:flex;flex-direction:column;gap:24px}.phase-summary{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:16px;text-align:center}.phase-summary p{margin:0;font-size:15px;color:#166534}.source-paper-group{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:20px}.source-paper-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.source-paper-header h3{margin:0;font-size:18px;font-weight:600;color:#1a1a1a}.question-count-badge{background:#dbeafe;color:#1e40af;padding:4px 12px;border-radius:12px;font-size:13px;font-weight:600}.questions-list{display:flex;flex-direction:column;gap:12px}.question-item{display:flex;justify-content:space-between;align-items:flex-start;padding:12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;transition:all .2s}.question-item:hover:not(.editing){border-color:#10a37f;background:#f0fdf4}.question-item.editing{background:#fff;border-color:#10a37f;box-shadow:0 0 0 3px #10a37f1a}.question-text{flex:1;display:flex;gap:8px}.question-text.clickable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s;padding:4px;margin:-4px;border-radius:4px}.question-text.clickable:hover{background:#10a37f1a}.question-number{font-weight:700;color:#6b7280;min-width:28px}.question-content{color:#1a1a1a;line-height:1.6}.question-actions{display:flex;gap:8px;margin-left:12px}.btn-icon{background:transparent;border:none;font-size:16px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .2s}.btn-icon:hover:not(:disabled){background:#e5e7eb}.btn-icon:disabled{opacity:.5;cursor:not-allowed}.question-edit-form,.add-question-form{width:100%}.question-edit-input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;font-family:inherit;line-height:1.6;resize:vertical;margin-bottom:8px}.question-edit-input:focus{outline:none;border-color:#10a37f;box-shadow:0 0 0 3px #10a37f1a}.edit-actions{display:flex;justify-content:flex-end;gap:8px}.btn-sm{padding:6px 16px;font-size:13px}.btn-add-question{width:100%;padding:10px;background:transparent;color:#10a37f;border:2px dashed #d1d5db;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-add-question:hover:not(:disabled){border-color:#10a37f;background:#f0fdf4}.btn-add-question:disabled{opacity:.5;cursor:not-allowed}.loading-overlay{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:12px;padding:32px 48px;box-shadow:0 8px 32px #00000026;display:flex;flex-direction:column;align-items:center;gap:16px;z-index:1000}.loading-overlay:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:#0000004d;z-index:-1}.loading-overlay p{margin:0;color:#374151;font-size:16px;font-weight:500}.deep-analysis-interactive{min-height:100vh;background:#f3f4f6;padding:24px 0}.deep-analysis-interactive .container{max-width:1200px;margin:0 auto;padding:0 24px}.back-link{margin-bottom:16px}.btn-back{background:transparent;color:#6b7280;border:none;padding:8px 0;font-size:14px;font-weight:500;cursor:pointer;transition:color .2s}.btn-back:hover{color:#1a1a1a}.loading-container,.error-container,.completion-container,.pending-container,.unknown-phase-container{background:#fff;border-radius:12px;padding:48px 24px;text-align:center;box-shadow:0 2px 8px #0000001a}.loading-container .spinner,.pending-container .spinner{width:64px;height:64px;border:4px solid #e5e7eb;border-top-color:#10a37f;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 24px}.loading-container p,.pending-container p{margin:0;color:#6b7280;font-size:16px}.error-container{background:#fef2f2;border:1px solid #fecaca}.error-container h3{margin:0 0 12px;color:#dc2626;font-size:20px;font-weight:600}.error-container p{margin:0 0 24px;color:#991b1b;font-size:14px}.completion-container{background:#f0fdf4;border:1px solid #bbf7d0}.completion-container h2{margin:0 0 12px;color:#15803d;font-size:24px;font-weight:600}.completion-container p{margin:0 0 24px;color:#166534;font-size:16px}.unknown-phase-container{background:#fffbeb;border:1px solid #fde68a}.unknown-phase-container p{margin:8px 0;color:#92400e;font-size:14px}.btn-primary{background:#10a37f;color:#fff;border:none;padding:12px 24px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s}.btn-primary:hover{background:#0d8f6f}.btn-secondary{background:#fff;color:#1a1a1a;border:1px solid #d1d5db;padding:12px 24px;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#f9fafb;border-color:#9ca3af}@media (max-width: 768px){.deep-analysis-interactive{padding:16px 0}.deep-analysis-interactive .container{padding:0 16px}.loading-container,.error-container,.completion-container,.pending-container,.unknown-phase-container{padding:32px 16px}}.deep-analysis-history-container{min-height:100vh;background:#f5f7fa}.deep-analysis-history-container .page-header{background:#fff;padding:20px 32px;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;align-items:center}.deep-analysis-history-container .header-right{display:flex;align-items:center}.deep-analysis-history-container .header-logout-btn{padding:10px 20px;background:#fef2f2;color:#dc2626;border:1px solid #dc2626;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.deep-analysis-history-container .header-logout-btn:hover{background:#fee2e2;border-color:#b91c1c;color:#b91c1c}.deep-analysis-history-container .page-header .header-left h1{margin:0 0 4px;font-size:28px;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.deep-analysis-history-container .page-header .header-subtitle{margin:0;color:#666;font-size:14px}.deep-analysis-history-container .history-sidebar{width:260px;background:#fff;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;transition:width .3s ease;position:relative;flex-shrink:0}.deep-analysis-history-container .history-sidebar.collapsed{width:20px;min-width:20px}.history-sidebar .sidebar-toggle{position:absolute;top:12px;right:-12px;width:24px;height:24px;background:#fff;border:1px solid #e0e0e0;border-radius:50%;color:#666;font-size:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;box-shadow:0 2px 4px #0000001a;transition:all .2s}.history-sidebar .sidebar-toggle:hover{background:#f0f0f0;color:#333}.history-sidebar.collapsed .sidebar-toggle{right:-14px;background:#4f46e5;color:#fff;border-color:#4f46e5}.history-sidebar.collapsed .sidebar-toggle:hover{background:#4338ca;color:#fff}.history-sidebar .sidebar-nav-section{padding:16px;border-bottom:1px solid #e0e0e0}.history-sidebar .sidebar-nav-section h3{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px;font-weight:600}.history-sidebar .sidebar-nav-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 12px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;font-size:13px;font-weight:600;text-align:center;cursor:pointer;margin-bottom:4px;transition:all .2s ease}.history-sidebar .sidebar-nav-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translate(2px);box-shadow:0 2px 8px #667eea66}.history-sidebar .sidebar-nav-btn.logout{background:linear-gradient(135deg,#ef4444,#dc2626);margin-top:8px}.history-sidebar .sidebar-nav-btn.logout:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 2px 8px #ef444466}.sidebar-analyses-section{flex:1;padding:16px;overflow-y:auto;min-height:0}.sidebar-analyses-section h3{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px;margin:0 0 12px;font-weight:600}.sidebar-loading,.sidebar-empty{color:#888;font-size:12px;padding:8px}.sidebar-analyses-list{display:flex;flex-direction:column;gap:6px}.sidebar-analysis-item{padding:10px;background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease}.sidebar-analysis-item:hover{background:#f1f5f9;border-color:#d1d5db}.sidebar-analysis-item.failed{opacity:.6;cursor:not-allowed}.sidebar-analysis-title{color:#333;font-size:13px;font-weight:600;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-analysis-meta{display:flex;justify-content:space-between;font-size:11px;color:#888}.sidebar-status{font-weight:600}.sidebar-status.completed{color:#16a34a}.sidebar-status.in_progress{color:#d97706;animation:pulse 1.5s infinite}.sidebar-status.failed{color:#dc2626}.sidebar-status.pending{color:#9ca3af}.deep-analysis-history-container .history-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;gap:16px}.history-header{background:#fff;padding:16px 24px;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000d}.header-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:16px}.header-content h1{margin:0 0 4px;font-size:28px;color:#1a1a1a}.header-left{flex:1}.back-button{background:none;border:none;color:#6366f1;font-size:14px;cursor:pointer;padding:8px 12px;border-radius:6px;transition:background .2s}.back-button:hover{background:#f0f4ff}.dashboard-button,.logout-button{padding:8px 16px;border-radius:6px;font-size:13px;cursor:pointer;transition:all .2s}.dashboard-button{background:#f0f4ff;color:#6366f1;border:1px solid #c7d2fe}.dashboard-button:hover{background:#e0e7ff}.logout-button{background:#fee2e2;color:#dc2626;border:1px solid #fecaca}.logout-button:hover{background:#fecaca}.header-nav-buttons{display:flex;gap:8px;align-items:center}.nav-button{padding:8px 14px;background:#f5f7fa;color:#374151;border:1px solid #e5e7eb;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.nav-button:hover{background:#e5e7eb;border-color:#d1d5db}.history-content{flex:1;max-width:900px;margin:0 auto;padding:24px;overflow-y:auto;width:100%}.btn-primary{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.sessions-list{display:flex;flex-direction:column;gap:8px}.session-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border-radius:8px;margin-bottom:0;cursor:pointer;transition:all .2s;border:2px solid transparent}.session-card.clickable:hover{box-shadow:0 2px 8px #00000014;border-color:#667eea}.session-card:not(.clickable){cursor:not-allowed;opacity:.6}.session-icon{font-size:24px;flex-shrink:0}.session-info-main{flex:1;min-width:0}.session-title{margin:0 0 4px;font-size:14px;font-weight:600;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.session-meta-inline{display:flex;gap:12px;font-size:12px;color:#888}.session-badges{display:flex;gap:6px;align-items:center;flex-shrink:0}.status-pending{background:#fef3c7;color:#92400e}.status-progress{background:#eff6ff;color:#3b82f6}.status-completed{background:#f0fdf4;color:#16a34a}.status-failed{background:#fef2f2;color:#991b1b}.session-actions{display:flex;gap:6px;flex-shrink:0}.btn-delete{padding:10px 20px;background:#dc2626;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.doc-count-btn{background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;padding:4px 10px;font-size:13px;color:#0369a1;cursor:pointer;transition:all .2s}.doc-count-btn:hover{background:#e0f2fe;border-color:#7dd3fc}.docs-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.docs-modal{background:#fff;border-radius:12px;max-width:600px;width:90%;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d}.docs-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb}.docs-modal-header h3{margin:0;font-size:16px;color:#1a1a1a}.modal-close-btn{background:none;border:none;font-size:24px;color:#9ca3af;cursor:pointer;padding:0;line-height:1}.modal-close-btn:hover{color:#4b5563}.docs-modal-body{padding:16px 20px;overflow-y:auto}.docs-list{list-style:none;padding:0;margin:0}.doc-item{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid #f3f4f6}.doc-item:last-child{border-bottom:none}.doc-number{color:#9ca3af;font-weight:600;min-width:24px}.doc-title{color:#374151;line-height:1.5;word-break:break-word}.no-docs{color:#9ca3af;text-align:center;padding:20px;margin:0}@media (max-width: 1024px){.deep-analysis-history-container .page-header{padding:16px 24px}.history-content{padding:20px;max-width:100%}}@media (max-width: 768px){.deep-analysis-history-container .history-sidebar{width:var(--sidebar-mobile, 50px)}.deep-analysis-history-container .history-sidebar:not(.collapsed){position:absolute;width:var(--sidebar-width, 260px);z-index:100;box-shadow:4px 0 20px #0003;height:100%}.deep-analysis-history-container .page-header{padding:14px 16px;flex-wrap:wrap;gap:12px}.deep-analysis-history-container .page-header .header-left h1{font-size:22px}.history-content-wrapper{height:calc(100vh - 80px)}.header-content{flex-wrap:wrap;gap:12px}.header-content h1{order:-1;width:100%;text-align:center;font-size:22px}.history-content{padding:16px}.session-header{flex-direction:column;align-items:flex-start;gap:8px}.session-card{padding:16px}.completed-info{flex-direction:column;align-items:flex-start;gap:8px}.paper-tabs{gap:6px}.paper-tab{padding:3px 8px;font-size:11px;max-width:140px}.delete-modal{max-width:95%;padding:20px}.docs-modal{max-width:95%}}@media (max-width: 480px){.deep-analysis-history-container .page-header{padding:12px}.deep-analysis-history-container .page-header .header-left h1{font-size:18px}.deep-analysis-history-container .page-header .header-subtitle{font-size:12px}.deep-analysis-history-container .header-logout-btn{padding:8px 14px;font-size:13px}.history-content-wrapper{height:calc(100vh - 70px)}.deep-analysis-history-container .history-sidebar{width:0;min-width:0;overflow:hidden}.deep-analysis-history-container .history-sidebar:not(.collapsed){width:85vw;max-width:280px}.deep-analysis-history-container .history-sidebar .sidebar-toggle{right:-16px;width:32px;height:32px}.history-content{padding:12px}.history-intro{padding:12px 16px;margin-bottom:16px}.history-intro p{font-size:13px}.header-content h1{font-size:20px}.header-nav-buttons{flex-wrap:wrap;gap:8px}.nav-button{padding:8px 12px;font-size:12px;flex:1;text-align:center}.session-card{padding:14px;border-radius:10px}.session-date{font-size:12px}.status-badge{padding:3px 8px;font-size:11px}.doc-count{font-size:12px}.paper-tab{padding:2px 6px;font-size:10px;max-width:120px}.paper-tab:after{max-width:250px;min-width:120px;font-size:12px}.delete-modal{padding:16px;margin:12px}.delete-modal-header h3{font-size:16px}.delete-modal p{font-size:13px}.delete-modal-actions{flex-direction:column}.btn-cancel,.btn-delete{width:100%}.docs-modal{margin:12px}.docs-modal-header,.docs-modal-body{padding:12px 16px}.doc-item{padding:10px 0}}@media (max-width: 360px){.deep-analysis-history-container .page-header .header-left h1{font-size:16px}.header-content h1{font-size:18px}.session-card{padding:12px}.paper-tabs{display:none}}.analysis-chat-container{min-height:100vh;background:#f5f7fa}.analysis-chat-container .page-header{background:#fff;padding:20px 32px;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;align-items:center}.analysis-chat-container .header-right{display:flex;align-items:center}.analysis-chat-container .header-logout-btn{padding:10px 20px;background:#fef2f2;color:#dc2626;border:1px solid #dc2626;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.analysis-chat-container .header-logout-btn:hover{background:#fee2e2;border-color:#b91c1c;color:#b91c1c}.analysis-chat-container .page-header .header-left h1{margin:0 0 4px;font-size:28px;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.analysis-chat-container .page-header .header-subtitle{margin:0;color:#666;font-size:14px}.analysis-chat-content-wrapper{display:flex;height:calc(100vh - 85px)}.analysis-chat-container .nav-sidebar{width:260px;background:#fff;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;transition:width .3s ease;position:relative;flex-shrink:0}.analysis-chat-container .nav-sidebar.collapsed{width:20px;min-width:20px}.nav-sidebar .sidebar-toggle{position:absolute;top:12px;right:-12px;width:24px;height:24px;background:#fff;border:1px solid #e0e0e0;border-radius:50%;color:#666;font-size:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;box-shadow:0 2px 4px #0000001a;transition:all .2s}.nav-sidebar .sidebar-toggle:hover{background:#f0f0f0;color:#333}.nav-sidebar.collapsed .sidebar-toggle{right:-14px;background:#4f46e5;color:#fff;border-color:#4f46e5}.nav-sidebar.collapsed .sidebar-toggle:hover{background:#4338ca}.sidebar-nav-section{padding:16px;border-bottom:1px solid #e0e0e0}.sidebar-nav-section h3{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin:0 0 12px}.sidebar-nav-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 12px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;font-size:13px;font-weight:600;text-align:center;cursor:pointer;margin-bottom:6px;transition:all .2s ease}.sidebar-nav-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translate(2px);box-shadow:0 2px 8px #667eea66}.sidebar-nav-btn.logout{background:linear-gradient(135deg,#ef4444,#dc2626);margin-top:12px}.sidebar-nav-btn.logout:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 2px 8px #ef444466}.sidebar-sessions-section{flex:1;padding:16px;overflow-y:auto;border-top:1px solid #e0e0e0}.sidebar-sessions-section h3{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin:0 0 12px}.sidebar-empty{color:#999;font-size:12px;text-align:center;padding:20px 0}.sidebar-sessions-list{display:flex;flex-direction:column;gap:6px}.sidebar-session-item{padding:10px 12px;background:#f8fafc;border-radius:8px;cursor:pointer;transition:all .2s ease;border-left:3px solid #6366f1}.sidebar-session-item:hover{background:#f0f2ff;transform:translate(2px)}.sidebar-session-item.active{background:#e0e7ff;border-left-color:#4f46e5}.sidebar-session-title{color:#333;font-size:13px;font-weight:600;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-session-meta{display:flex;justify-content:space-between;align-items:center}.sidebar-session-count{color:#666;font-size:11px}.sidebar-session-time{color:#999;font-size:11px}.chat-main-wrapper{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.chat-header{background:#fff;border-bottom:2px solid #e0e0e0;padding:20px;box-shadow:0 2px 8px #00000014;z-index:100}.chat-header-content{max-width:1400px;display:flex;align-items:center;gap:20px}.back-button{padding:10px 20px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.back-button:hover{background:linear-gradient(135deg,#4f46e5,#7c3aed);transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.chat-title-section h1{margin:0 0 6px;font-size:24px;color:#1a1a1a;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.session-subtitle{margin:0 0 8px;font-size:13px;color:#666;font-style:italic}.doc-count-badge-container{position:relative;display:inline-block}.doc-count-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;background:linear-gradient(135deg,#6366f115,#8b5cf615);border:1px solid #6366f140;border-radius:20px;font-size:13px;font-weight:600;color:#6366f1}.doc-count-badge.clickable{cursor:pointer;transition:all .2s ease}.doc-count-badge.clickable:hover{background:linear-gradient(135deg,#6366f125,#8b5cf625);border-color:#6366f1}.badge-arrow{font-size:10px;margin-left:4px}.papers-dropdown{position:absolute;top:100%;left:0;margin-top:8px;background:#fff;border:1px solid #e0e7ff;border-radius:12px;box-shadow:0 8px 24px #6366f126;min-width:350px;max-width:500px;max-height:400px;overflow-y:auto;z-index:1000}.papers-dropdown-header{padding:12px 16px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#6366f1;background:linear-gradient(135deg,#f0f2ff,#f5f3ff);border-bottom:1px solid #e0e7ff;border-radius:12px 12px 0 0}.papers-dropdown-item{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;border-bottom:1px solid #f0f0f0;transition:background .2s ease}.papers-dropdown-item:last-child{border-bottom:none;border-radius:0 0 12px 12px}.papers-dropdown-item:hover{background:#f8f9ff}.paper-letter-badge{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:6px;color:#fff;font-size:12px;font-weight:600}.paper-full-title{flex:1;font-size:13px;color:#333;line-height:1.4}.dashboard-button{padding:10px 20px;background:#f0fdf4;color:#166534;border:1px solid #bbf7d0;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.dashboard-button:hover{background:#dcfce7;border-color:#86efac}.logout-button{padding:10px 20px;background:#dc3545;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.chat-main{display:flex;flex:1;overflow:hidden;width:100%}.inline-paper-reference{padding:12px 20px;background:#fff;border-bottom:1px solid #e0e0e0}.paper-chips{display:flex;flex-wrap:wrap;gap:8px}.paper-chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:16px;font-size:11px;font-weight:600;color:#fff;cursor:help;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-content{flex:1;display:flex;flex-direction:column;overflow:hidden}.llm-selector-container{position:relative;padding:12px 20px;background:#fff;border-bottom:1px solid #e0e0e0}.llm-selector-button:hover{background:#e8e8e8;border-color:#6366f1}.dropdown-arrow{font-size:10px}.llm-selector-dropdown{position:absolute;top:100%;left:20px;margin-top:8px;background:#fff;border:1px solid #ddd;border-radius:8px;padding:16px;box-shadow:0 4px 12px #00000026;z-index:1000;min-width:280px}.provider-section select,.model-section select{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;background:#fff;cursor:pointer}.provider-option:hover:not(.disabled){border-color:#6366f1;background:#f0f2ff}.provider-option.selected{border-color:#6366f1;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.provider-name{font-weight:600;font-size:14px}.apply-button{width:100%;padding:10px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer}.chat-messages{flex:1;overflow-y:auto;padding:20px;background:#f8f9fa}.welcome-message{text-align:center;padding:40px 20px;color:#666;max-width:800px;margin:0 auto}.welcome-message h2{margin:0 0 12px;color:#1a1a1a;font-size:28px}.analysis-info-card{max-width:700px;margin:30px auto;background:#fff;border:2px solid #e0e7ff;padding:24px;border-radius:12px;text-align:center;box-shadow:0 4px 12px #6366f11a}.analysis-info-card h3{margin:0 0 16px;font-size:16px;color:#6366f1}.analysis-info-card ul{margin:0;padding-left:24px;color:#555}.analysis-info-card li{margin:10px 0;line-height:1.6}.analysis-info-card strong{color:#1a1a1a}.suggested-questions{margin-top:30px;text-align:center;max-width:700px;margin-left:auto;margin-right:auto;background:linear-gradient(135deg,#eff6ff,#f5f3ff);padding:24px;border-radius:12px;border:1px solid #c7d2fe}.user-message .message-content{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.assistant-message .message-content{background:#fff;color:#1a1a1a;border:2px solid #e0e7ff;padding:20px 24px;border-radius:16px}.assistant-message .message-role{color:#6366f1;background:linear-gradient(135deg,#6366f115,#8b5cf615);padding:4px 10px;border-radius:4px;display:inline-block;border-left:3px solid #6366f1}.assistant-message .message-text{white-space:normal;font-size:.95rem;color:#374151}.citation-badges{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:16px;padding-top:12px;border-top:1px solid #e0e7ff}.citation-label{font-size:11px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.citation-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;color:#fff;border:1px solid;box-shadow:0 2px 4px #0000001a;cursor:help;transition:all .2s ease}.citation-badge:hover{transform:translateY(-1px);box-shadow:0 4px 8px #00000026}.typing-indicator{display:flex;gap:4px;padding:10px 0}.typing-indicator span{width:8px;height:8px;background:#6366f1;border-radius:50%;animation:bounce 1.4s infinite ease-in-out both}.typing-indicator span:nth-child(1){animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}.typing-indicator span:nth-child(3){animation-delay:0}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.chat-input-form{background:#fff;border-top:2px solid #e0e0e0;padding:20px;display:flex;gap:12px}.chat-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a}.send-button{padding:12px 24px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:8px}.send-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #6366f166}.error-container button{padding:12px 24px;background:#6366f1;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer}.spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#6366f1;border-radius:50%;animation:spin .8s linear infinite}@media (max-width: 1024px){.analysis-chat-container .page-header{padding:16px 24px}.chat-header-content{max-width:100%}.chat-messages{padding:16px}.welcome-message{padding:30px 16px}.analysis-info-card,.suggested-questions{max-width:100%;padding:20px}}@media (max-width: 768px){.paper-reference-sidebar{display:none}.analysis-chat-container .nav-sidebar{width:var(--sidebar-mobile, 50px)}.analysis-chat-container .nav-sidebar:not(.collapsed){position:absolute;width:var(--sidebar-width, 260px);z-index:100;box-shadow:4px 0 20px #0003;height:100%}.analysis-chat-container .page-header{padding:14px 16px;flex-wrap:wrap;gap:12px}.analysis-chat-container .page-header .header-left h1{font-size:22px}.analysis-chat-content-wrapper{height:calc(100vh - 80px)}.chat-header{padding:14px}.chat-header-content{flex-wrap:wrap;gap:12px}.chat-title-section h1{font-size:20px}.back-button,.dashboard-button{padding:8px 14px;font-size:13px}.message-content{max-width:90%;padding:14px 16px}.assistant-message .message-content{padding:16px 20px}.chat-input-form{padding:14px;gap:8px}.chat-input{padding:10px 14px;font-size:15px}.send-button{padding:10px 18px;font-size:14px}.papers-dropdown{min-width:280px;max-width:90vw;left:0;right:auto}.llm-selector-dropdown{min-width:260px;max-width:90vw}}@media (max-width: 480px){.analysis-chat-container .page-header{padding:12px}.analysis-chat-container .page-header .header-left h1{font-size:18px}.analysis-chat-container .page-header .header-subtitle{font-size:12px}.analysis-chat-container .header-logout-btn{padding:8px 14px;font-size:13px}.analysis-chat-content-wrapper{height:calc(100vh - 70px)}.analysis-chat-container .nav-sidebar{width:0;min-width:0;overflow:hidden}.analysis-chat-container .nav-sidebar:not(.collapsed){width:85vw;max-width:280px}.nav-sidebar .sidebar-toggle{right:-16px;width:32px;height:32px}.chat-header{padding:12px}.chat-title-section h1{font-size:18px}.session-subtitle{font-size:12px}.doc-count-badge{padding:4px 10px;font-size:12px}.back-button,.dashboard-button{padding:8px 12px;font-size:12px}.chat-messages{padding:12px}.welcome-message{padding:24px 12px}.welcome-message h2{font-size:22px}.analysis-info-card,.suggested-questions{padding:16px;border-radius:10px;margin:20px auto}.message-content{max-width:95%;padding:12px 14px;border-radius:10px}.assistant-message .message-content{padding:14px 16px;border-radius:12px}.message-role{font-size:10px;margin-bottom:8px}.message-text{font-size:14px;line-height:1.6}.chat-input-form{padding:12px;flex-wrap:wrap}.chat-input{flex:1;min-width:100%;padding:12px 14px;font-size:16px;border-radius:8px}.send-button{width:100%;padding:12px;justify-content:center}.llm-selector-container{width:100%}.llm-selector-button{width:100%;justify-content:center}.llm-selector-dropdown{position:fixed;left:12px;right:12px;bottom:auto;top:50%;transform:translateY(-50%);max-width:none;min-width:auto;max-height:80vh;overflow-y:auto}.citation-badges{gap:6px;margin-top:12px;padding-top:10px}.citation-badge{padding:3px 8px;font-size:11px}}@media (max-width: 360px){.analysis-chat-container .page-header .header-left h1,.chat-title-section h1{font-size:16px}.welcome-message h2{font-size:20px}.message-content{padding:10px 12px}}.chat-history-container{min-height:100vh;background:#f5f7fa}.chat-history-container .history-header{background:#fff;padding:20px 32px;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;align-items:center}.chat-history-container .header-right{display:flex;align-items:center}.chat-history-container .header-logout-btn{padding:10px 20px;background:#fef2f2;color:#dc2626;border:1px solid #dc2626;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.chat-history-container .header-logout-btn:hover{background:#fee2e2;border-color:#b91c1c;color:#b91c1c}.chat-history-container .history-header .header-left h1{margin:0 0 4px;font-size:28px;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.chat-history-container .history-header .header-subtitle{margin:0;color:#666;font-size:14px}.history-content-wrapper{display:flex;height:calc(100vh - 85px)}.chat-history-container .history-sidebar{width:260px;background:#fff;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;transition:width .3s ease;position:relative;flex-shrink:0}.chat-history-container .history-sidebar.collapsed{width:20px;min-width:20px}.chat-history-container .history-sidebar.collapsed .sidebar-toggle{right:-14px;background:#4f46e5;color:#fff;border-color:#4f46e5}.chat-history-container .history-sidebar.collapsed .sidebar-toggle:hover{background:#4338ca}.chat-history-container .history-sidebar .sidebar-toggle{position:absolute;top:12px;right:-12px;width:24px;height:24px;background:#fff;border:1px solid #e0e0e0;border-radius:50%;color:#666;font-size:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;box-shadow:0 2px 4px #0000001a;transition:all .2s}.chat-history-container .history-sidebar .sidebar-toggle:hover{background:#f0f0f0;color:#333}.chat-history-container .sidebar-nav-section{padding:16px;border-bottom:1px solid #e0e0e0}.chat-history-container .sidebar-nav-section h3{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin:0 0 12px}.chat-history-container .sidebar-nav-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 12px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;font-size:13px;font-weight:600;text-align:center;cursor:pointer;margin-bottom:6px;transition:all .2s ease}.chat-history-container .sidebar-nav-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translate(2px);box-shadow:0 2px 8px #667eea66}.chat-history-container .sidebar-nav-btn.logout{background:linear-gradient(135deg,#ef4444,#dc2626);margin-top:12px}.chat-history-container .sidebar-nav-btn.logout:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 2px 8px #ef444466}.sidebar-chats-section{padding:16px;border-bottom:1px solid #e0e0e0;max-height:35%;overflow-y:auto}.sidebar-chats-section.multi{flex:1;max-height:none;border-bottom:none;min-height:0}.sidebar-chats-section h3{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin:0 0 12px}.sidebar-loading,.sidebar-empty{color:#999;font-size:12px;padding:8px}.sidebar-chats-list{display:flex;flex-direction:column;gap:6px}.sidebar-chat-item{padding:10px;background:#f8fafc;border-radius:8px;cursor:pointer;transition:all .2s ease}.sidebar-chat-item:hover{background:#f0f2ff;transform:translate(2px)}.sidebar-chat-item.single{border-left:3px solid #10b981}.sidebar-chat-item.multi{border-left:3px solid #f59e0b}.sidebar-chat-title{color:#333;font-size:13px;font-weight:500;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-chat-meta{display:flex;justify-content:space-between;font-size:11px;color:#666}.sidebar-chat-count{color:#10b981}.sidebar-chat-item.multi .sidebar-chat-count{color:#f59e0b}.chat-history-container .history-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.chat-history-container .history-content{flex:1;max-width:900px;margin:0 auto;padding:24px;overflow-y:auto;width:100%}.error-message{background:#fee2e2;color:#dc2626;padding:12px 16px;border-radius:8px;margin-bottom:20px}.history-intro{background:#fff;padding:16px 20px;border-radius:12px;margin-bottom:24px;border-left:4px solid #6366f1}.history-intro p{margin:0;color:#555;font-size:14px;line-height:1.6}.history-tabs{display:flex;gap:12px;margin-bottom:24px}.tab-button{padding:12px 24px;background:#fff;color:#666;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.tab-button:hover{background:#f5f5f5}.tab-button.active{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-color:transparent}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000d;gap:16px}.loading-spinner{width:40px;height:40px;border:3px solid #e0e0e0;border-top-color:#6366f1;border-radius:50%;animation:spin .8s linear infinite}.loading-state p{margin:0;color:#666;font-size:14px}.empty-state{text-align:center;padding:60px 20px;background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000d}.empty-icon{font-size:48px;margin-bottom:16px}.empty-state h3{margin:0 0 8px;font-size:18px;color:#333}.empty-state p{margin:0 0 24px;color:#666;font-size:14px}.btn-primary{padding:12px 24px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6366f14d}.chats-list{display:flex;flex-direction:column;gap:16px}.chat-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000d;transition:all .2s}.chat-card.clickable{cursor:pointer}.chat-card.clickable:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.chat-card.multi{border-left:4px solid #10b981}.chat-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.chat-info{display:flex;align-items:center;gap:12px}.chat-date{font-size:14px;color:#666}.msg-badge{padding:4px 10px;background:#dbeafe;color:#1e40af;border-radius:12px;font-size:12px;font-weight:500}.doc-badge{padding:4px 10px;background:#dcfce7;color:#166534;border-radius:12px;font-size:12px;font-weight:500}.delete-chat-btn{background:none;border:none;cursor:pointer;font-size:16px;padding:4px 8px;border-radius:4px;opacity:.6;transition:all .2s}.delete-chat-btn:hover{opacity:1;background:#fee2e2}.chat-title-row{display:flex;align-items:center;gap:10px;margin-bottom:12px}.chat-icon{font-size:20px}.chat-title-row h3{margin:0;font-size:16px;font-weight:600;color:#1a1a1a}.chat-preview{margin:0 0 12px;color:#666;font-size:13px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.chat-footer{display:flex;justify-content:flex-end;padding-top:12px;border-top:1px solid #f0f0f0}.continue-link{font-size:13px;color:#6366f1;font-weight:500}.delete-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.delete-modal{background:#fff;border-radius:12px;padding:24px;max-width:400px;width:90%;box-shadow:0 20px 60px #0000004d}.delete-modal-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.delete-modal-header .delete-icon{font-size:24px}.delete-modal-header h3{margin:0;font-size:18px;color:#1a1a1a}.delete-modal p{margin:0 0 24px;color:#666;font-size:14px;line-height:1.6}.delete-modal-actions{display:flex;gap:12px;justify-content:flex-end}.btn-cancel{padding:10px 20px;background:#f5f5f5;color:#666;border:1px solid #e0e0e0;border-radius:8px;font-size:14px;cursor:pointer;transition:all .2s}.btn-cancel:hover:not(:disabled){background:#e8e8e8}.btn-delete{padding:10px 20px;background:#dc2626;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-delete:hover:not(:disabled){background:#b91c1c}.btn-delete:disabled,.btn-cancel:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 1024px){.chat-history-container .history-header{padding:16px 24px}.chat-history-container .history-content{padding:20px;max-width:100%}}@media (max-width: 768px){.chat-history-container .history-sidebar{width:var(--sidebar-mobile, 50px)}.chat-history-container .history-sidebar:not(.collapsed){position:absolute;width:var(--sidebar-width, 260px);z-index:100;box-shadow:4px 0 20px #0003;height:100%}.chat-history-container .history-header{padding:14px 16px;flex-wrap:wrap;gap:12px}.chat-history-container .history-header .header-left h1{font-size:22px}.history-content-wrapper{height:calc(100vh - 80px)}.history-tabs{flex-direction:column}.tab-button{width:100%;text-align:center}.chat-history-container .history-content{padding:16px}.chat-header{flex-direction:column;align-items:flex-start;gap:8px}.chat-card{padding:16px}.delete-modal{max-width:95%;padding:20px}}@media (max-width: 480px){.chat-history-container .history-header{padding:12px}.chat-history-container .history-header .header-left h1{font-size:18px}.chat-history-container .history-header .header-subtitle{font-size:12px}.chat-history-container .header-logout-btn{padding:8px 14px;font-size:13px}.history-content-wrapper{height:calc(100vh - 70px)}.chat-history-container .history-sidebar{width:0;min-width:0;overflow:hidden}.chat-history-container .history-sidebar:not(.collapsed){width:85vw;max-width:280px}.chat-history-container .history-sidebar .sidebar-toggle{right:-16px;width:32px;height:32px}.chat-history-container .history-content{padding:12px}.history-intro{padding:12px 16px;margin-bottom:16px}.history-intro p{font-size:13px}.tab-button{padding:10px 16px;font-size:13px}.chat-card{padding:14px;border-radius:10px}.chat-title-row h3{font-size:14px}.chat-preview{font-size:12px}.chat-info{flex-wrap:wrap;gap:8px}.msg-badge,.doc-badge{padding:3px 8px;font-size:11px}.delete-modal{padding:16px;margin:12px}.delete-modal-header h3{font-size:16px}.delete-modal p{font-size:13px}.delete-modal-actions{flex-direction:column}.btn-cancel,.btn-delete{width:100%}}@media (max-width: 360px){.chat-history-container .history-header .header-left h1{font-size:16px}.chat-card{padding:12px}.chat-title-row h3{font-size:13px}}.paper-search-container{min-height:100vh;background:#f5f7fa}.paper-search-header{background:#fff;padding:20px 32px;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;align-items:center}.paper-search-header .header-right{display:flex;align-items:center}.paper-search-header .header-logout-btn{padding:10px 20px;background:#fef2f2;color:#dc2626;border:1px solid #dc2626;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.paper-search-header .header-logout-btn:hover{background:#fee2e2;border-color:#b91c1c;color:#b91c1c}.paper-search-header .header-left h1{margin:0 0 4px;font-size:28px;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.paper-search-header .header-subtitle{margin:0;color:#666;font-size:14px}.paper-search-content-wrapper{display:flex;height:calc(100vh - 85px);position:relative;overflow:hidden}.paper-search-sidebar{width:260px;background:#fff;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;transition:width .3s ease;position:relative;flex-shrink:0}.paper-search-sidebar.collapsed{width:20px;min-width:20px}.paper-search-sidebar.collapsed .sidebar-toggle{right:-14px;background:#4f46e5;color:#fff;border-color:#4f46e5}.paper-search-sidebar.collapsed .sidebar-toggle:hover{background:#4338ca}.paper-search-sidebar .sidebar-toggle{position:absolute;top:12px;right:-12px;width:24px;height:24px;background:#fff;border:1px solid #e0e0e0;border-radius:50%;color:#666;font-size:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;box-shadow:0 2px 4px #0000001a;transition:all .2s}.paper-search-sidebar .sidebar-toggle:hover{background:#f0f0f0;color:#333}.paper-search-sidebar .sidebar-nav-section{padding:16px;border-bottom:1px solid #e0e0e0}.paper-search-sidebar .sidebar-nav-section h3{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin:0 0 12px}.paper-search-sidebar .sidebar-nav-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 12px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;font-size:13px;font-weight:600;text-align:center;cursor:pointer;margin-bottom:6px;transition:all .2s ease}.paper-search-sidebar .sidebar-nav-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translate(2px);box-shadow:0 2px 8px #667eea66}.paper-search-sidebar .sidebar-nav-btn.logout{background:linear-gradient(135deg,#ef4444,#dc2626);margin-top:12px}.paper-search-sidebar .sidebar-nav-btn.logout:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 2px 8px #ef444466}.sidebar-tips-section{flex:1;padding:16px;overflow-y:auto;border-top:1px solid #e0e0e0}.sidebar-tips-section h3{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin:0 0 12px}.tip-item{display:flex;align-items:flex-start;gap:8px;padding:10px;background:#f8fafc;border-radius:8px;margin-bottom:6px;border-left:3px solid #6366f1}.tip-icon{font-size:16px;flex-shrink:0}.tip-text{color:#333;font-size:12px;line-height:1.4}.paper-search-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.paper-search-body{flex:1;overflow-y:auto;padding:32px}.search-form-card{max-width:800px;margin:0 auto;background:#fff;border-radius:16px;padding:32px;box-shadow:0 4px 16px #00000014}.search-form-card h2{font-size:22px;font-weight:600;color:#1a1a1a;margin:0 0 8px}.search-form-card .subtitle{color:#666;font-size:14px;margin:0 0 24px}.search-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.search-form .form-group{display:flex;flex-direction:column;gap:8px}.search-form label{font-size:14px;font-weight:600;color:#374151}.optional-hint{color:#9ca3af;font-weight:400}.search-form input,.search-form select{padding:12px 16px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;transition:border-color .2s,box-shadow .2s}.search-form input:focus,.search-form select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.search-form input:disabled,.search-form select:disabled{background:#f5f5f5;cursor:not-allowed}.source-selection{margin-bottom:24px}.source-selection>label{display:block;font-size:14px;font-weight:600;color:#374151;margin-bottom:4px}.source-hint{font-size:12px;color:#9ca3af;margin:0 0 12px}.sources-loading{font-size:13px;color:#9ca3af;padding:12px;background:#f9fafb;border-radius:8px}.source-checkboxes{display:flex;flex-wrap:wrap;gap:8px}.source-checkbox{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#f5f7fa;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease}.source-checkbox:hover:not(.disabled){border-color:#667eea;background:#f0f4ff}.source-checkbox.selected{background:#e0e7ff;border-color:#667eea}.source-checkbox.disabled{opacity:.6;cursor:not-allowed}.source-checkbox input[type=checkbox]{margin:0;padding:0;width:16px;height:16px;cursor:inherit}.source-name{font-size:13px;font-weight:600;color:#374151}.coming-soon-badge,.api-key-badge,.unavailable-badge{font-size:10px;padding:2px 6px;border-radius:4px;font-weight:600}.coming-soon-badge{background:#fef3c7;color:#92400e}.api-key-badge{background:#dbeafe;color:#1e40af}.unavailable-badge{background:#fee2e2;color:#991b1b}.advanced-options{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}.helper-text{font-size:11px;color:#9ca3af;margin-top:4px}.error-message{background:#fee2e2;color:#dc2626;padding:12px 16px;border-radius:8px;font-size:14px;margin-bottom:20px}.search-button{width:100%;padding:14px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.search-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.search-button:disabled{opacity:.6;cursor:not-allowed}.spinner-small{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.upload-hint{margin-top:24px;padding-top:20px;border-top:1px solid #e5e7eb;text-align:center}.upload-hint p{margin:0;font-size:14px;color:#6b7280}.link-button{background:none;border:none;color:#667eea;font-size:14px;font-weight:600;cursor:pointer;text-decoration:underline}.link-button:hover{color:#764ba2}@media (max-width: 1024px){.paper-search-header{padding:16px 24px}.paper-search-body{padding:24px}.search-form-card{max-width:100%}}@media (max-width: 768px){.paper-search-sidebar{width:var(--sidebar-mobile, 50px);min-width:var(--sidebar-mobile, 50px)}.paper-search-sidebar.collapsed{width:0;min-width:0;overflow:hidden}.paper-search-sidebar:not(.collapsed){position:absolute;left:0;top:0;width:var(--sidebar-width, 260px);z-index:100;box-shadow:4px 0 20px #0003;height:100%;background:#fff}.paper-search-main{flex:1;width:100%}.paper-search-header{padding:14px 16px;flex-wrap:wrap;gap:12px}.paper-search-header .header-left h1{font-size:22px}.paper-search-content-wrapper{height:calc(100vh - 80px)}.paper-search-body{padding:20px}.search-form-card{padding:24px}.search-form-card h2{font-size:20px}.search-form .form-row,.advanced-options{grid-template-columns:1fr;gap:16px}.source-checkboxes{gap:8px}.source-checkbox{padding:8px 12px}.source-name{font-size:12px}.search-button{padding:12px 20px;font-size:15px}}@media (max-width: 480px){.paper-search-header{padding:12px}.paper-search-header .header-left h1{font-size:18px}.paper-search-header .header-subtitle{font-size:12px}.paper-search-header .header-logout-btn{padding:8px 14px;font-size:13px}.paper-search-content-wrapper{height:calc(100vh - 70px)}.paper-search-sidebar{width:0;min-width:0;overflow:hidden}.paper-search-sidebar:not(.collapsed){position:absolute;left:0;top:0;width:85vw;max-width:280px;height:100%;background:#fff;z-index:100;box-shadow:4px 0 20px #0003}.paper-search-sidebar .sidebar-toggle{right:-16px;width:32px;height:32px}.paper-search-body{padding:12px}.search-form-card{padding:16px;border-radius:12px}.search-form-card h2{font-size:18px;margin-bottom:4px}.search-form-card .subtitle{font-size:13px;margin-bottom:20px}.search-form .form-group{gap:6px}.search-form label{font-size:13px}.search-form input,.search-form select{padding:10px 14px;font-size:16px;border-radius:6px}.source-selection{margin-bottom:20px}.source-checkboxes{flex-direction:column}.source-checkbox{width:100%;justify-content:flex-start}.advanced-options{gap:12px;margin-bottom:20px}.helper-text{font-size:10px}.error-message{padding:10px 14px;font-size:13px}.search-button{padding:14px 20px;font-size:15px;border-radius:8px}.upload-hint{margin-top:20px;padding-top:16px}.upload-hint p{font-size:13px}.sidebar-tips-section{padding:12px}.tip-item{padding:8px}.tip-text{font-size:11px}}@media (max-width: 360px){.paper-search-header .header-left h1{font-size:16px}.search-form-card{padding:14px}.search-form-card h2{font-size:16px}.search-form label{font-size:12px}.source-checkbox{padding:8px 10px}.source-name{font-size:11px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;border-radius:20px;padding:32px;width:100%;max-width:480px;box-shadow:0 25px 80px #0000004d;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-content.search-modal{text-align:center}.modal-header{margin-bottom:24px}.modal-header h2{margin:0;font-size:24px;color:#1a1a1a;font-weight:600}.modal-body{display:flex;flex-direction:column;align-items:center;gap:16px}.modal-spinner-large{width:64px;height:64px;border:4px solid #e5e7eb;border-top-color:#667eea;border-radius:50%;animation:spin 1s linear infinite}.modal-message{font-size:16px;color:#374151;margin:0;font-weight:600}.modal-details{width:100%;background:#f8fafc;border-radius:12px;padding:16px 20px;margin-top:8px}.detail-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #e5e7eb}.detail-item:last-child{border-bottom:none}.detail-label{font-size:13px;color:#6b7280;font-weight:600}.detail-value{font-size:13px;color:#1f2937;font-weight:600;max-width:60%;text-align:right;word-break:break-word}.modal-hint{font-size:13px;color:#9ca3af;margin:8px 0 0;font-style:italic}@media (max-width: 768px){.modal-content{max-width:90%;padding:24px;margin:16px}.modal-header h2{font-size:20px}.modal-spinner-large{width:56px;height:56px}.modal-message{font-size:15px}.modal-details{padding:14px 16px}.detail-item{flex-direction:column;align-items:flex-start;gap:4px}.detail-value{max-width:100%;text-align:center}}@media (max-width: 480px){.modal-content{max-width:95%;padding:20px;border-radius:16px}.modal-header h2{font-size:18px}.modal-spinner-large{width:48px;height:48px;border-width:3px}.modal-message{font-size:14px}.modal-details{padding:12px}.detail-label,.detail-value,.modal-hint{font-size:12px}}.paper-results-container{min-height:100vh;background:#f5f7fa}.paper-results-header{background:#fff;padding:20px 32px;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;align-items:center}.paper-results-header .header-left h1{margin:0 0 4px;font-size:28px;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.paper-results-header .header-subtitle{margin:0;color:#666;font-size:14px}.paper-results-header .header-right{display:flex;align-items:center}.paper-results-header .header-logout-btn{padding:10px 20px;background:#fef2f2;color:#dc2626;border:1px solid #dc2626;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.paper-results-header .header-logout-btn:hover{background:#fee2e2;border-color:#b91c1c;color:#b91c1c}.paper-results-content-wrapper{display:flex;height:calc(100vh - 85px);position:relative;overflow:hidden}.paper-results-sidebar{width:260px;background:#fff;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;transition:width .3s ease;position:relative;flex-shrink:0}.paper-results-sidebar.collapsed{width:20px;min-width:20px}.paper-results-sidebar.collapsed .sidebar-toggle{right:-14px;background:#4f46e5;color:#fff;border-color:#4f46e5}.paper-results-sidebar.collapsed .sidebar-toggle:hover{background:#4338ca}.paper-results-sidebar .sidebar-toggle{position:absolute;top:12px;right:-12px;width:24px;height:24px;background:#fff;border:1px solid #e0e0e0;border-radius:50%;color:#666;font-size:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;box-shadow:0 2px 4px #0000001a;transition:all .2s}.paper-results-sidebar .sidebar-toggle:hover{background:#f0f0f0;color:#333}.paper-results-sidebar .sidebar-nav-section{padding:16px;border-bottom:1px solid #e0e0e0}.paper-results-sidebar .sidebar-nav-section h3{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin:0 0 12px}.paper-results-sidebar .sidebar-nav-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 12px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;font-size:13px;font-weight:600;text-align:center;cursor:pointer;margin-bottom:6px;transition:all .2s ease}.paper-results-sidebar .sidebar-nav-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translate(2px);box-shadow:0 2px 8px #667eea66}.sidebar-info-section{padding:16px;border-top:1px solid #e0e0e0}.sidebar-info-section h3{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin:0 0 12px}.info-item{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;background:#f8fafc;border-radius:6px;margin-bottom:6px}.info-label{color:#666;font-size:12px}.info-value{color:#1a1a1a;font-size:14px;font-weight:600}.paper-results-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.paper-results-body{flex:1;overflow-y:auto;padding:24px}.results-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 4px 16px #00000014}.results-header{margin-bottom:20px}.results-header h2{font-size:22px;font-weight:600;color:#1a1a1a;margin:0 0 8px}.results-hint{color:#666;font-size:14px;margin:0}.sources-summary{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:14px 16px;background:#f8fafc;border-radius:10px;margin-bottom:16px}.sources-summary-label{font-size:13px;font-weight:600;color:#666}.sources-list{display:flex;flex-wrap:wrap;gap:8px}.source-count-badge{display:flex;align-items:center;gap:6px}.source-badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600;text-transform:capitalize;background:#e0e7ff;color:#4338ca}.source-badge.semantic_scholar{background:#dbeafe;color:#1e40af}.source-badge.arxiv{background:#fef3c7;color:#92400e}.source-badge.crossref{background:#d1fae5;color:#065f46}.source-badge.google_scholar{background:#fee2e2;color:#991b1b}.source-count-badge .count{font-size:11px;color:#888}.queries-section{margin-bottom:20px}.queries-section h3{font-size:14px;font-weight:600;color:#374151;margin:0 0 12px}.queries-list{display:flex;flex-wrap:wrap;gap:8px}.query-tag{display:inline-block;padding:6px 12px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:20px;font-size:12px;font-weight:600}.papers-list{display:flex;flex-direction:column;gap:12px}.no-results{text-align:center;padding:40px 20px;color:#666}.no-results p{margin:0;font-size:15px}.paper-card{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;transition:all .2s ease}.paper-card:hover{border-color:#667eea;box-shadow:0 2px 8px #667eea26}.paper-card.expanded{border-color:#667eea;background:#fff}.paper-header{padding:16px;cursor:pointer}.paper-title-row{display:flex;align-items:flex-start;gap:12px}.paper-title{flex:1;font-size:15px;font-weight:600;color:#1a1a1a;margin:0;line-height:1.4}.expand-button{flex-shrink:0;width:28px;height:28px;background:#fff;border:1px solid #e0e0e0;border-radius:6px;color:#666;font-size:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.expand-button:hover{background:#f0f0f0;color:#333}.paper-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:10px}.sources-found{display:flex;gap:6px}.meta-item{font-size:12px;color:#666;padding:3px 8px;background:#fff;border-radius:4px}.meta-item.citations{color:#059669;background:#d1fae5;font-weight:600}.paper-details{padding:0 16px 16px;border-top:1px solid #e5e7eb}.paper-venue,.paper-authors{font-size:13px;color:#4b5563;margin-top:12px;line-height:1.5}.paper-abstract{margin-top:12px}.paper-abstract strong{font-size:13px;color:#374151}.paper-abstract p{margin:8px 0 0;font-size:13px;color:#4b5563;line-height:1.6}.paper-footer{display:flex;gap:12px;margin-top:16px;padding-top:12px;border-top:1px solid #e5e7eb}.paper-link,.pdf-link{display:inline-flex;align-items:center;padding:8px 14px;border-radius:6px;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s;cursor:pointer}.paper-link{background:#f3f4f6;color:#374151;border:1px solid #e5e7eb}.paper-link:hover{background:#e5e7eb;color:#1f2937}.pdf-link{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none}.pdf-link:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}@media (max-width: 1024px){.paper-results-header{padding:16px 24px}.paper-results-body,.results-card{padding:20px}}@media (max-width: 768px){.paper-results-sidebar{width:var(--sidebar-mobile, 50px);min-width:var(--sidebar-mobile, 50px)}.paper-results-sidebar.collapsed{width:0;min-width:0;overflow:hidden}.paper-results-sidebar:not(.collapsed){position:absolute;left:0;top:0;width:var(--sidebar-width, 260px);z-index:100;box-shadow:4px 0 20px #0003;height:100%;background:#fff}.paper-results-main{flex:1;width:100%}.paper-results-header{padding:14px 16px;flex-wrap:wrap;gap:12px}.paper-results-header .header-left h1{font-size:22px}.paper-results-content-wrapper{height:calc(100vh - 80px)}.paper-results-body,.results-card{padding:16px}.results-header h2{font-size:18px}.sources-summary{flex-direction:column;align-items:flex-start;gap:8px}.queries-list{gap:6px}.query-tag{padding:5px 10px;font-size:11px}.paper-title{font-size:14px}.paper-footer{flex-direction:column;gap:8px}.paper-link,.pdf-link{justify-content:center;width:100%}}@media (max-width: 480px){.paper-results-header{padding:12px}.paper-results-header .header-left h1{font-size:18px}.paper-results-header .header-subtitle{font-size:12px}.paper-results-header .header-logout-btn{padding:8px 14px;font-size:13px}.paper-results-content-wrapper{height:calc(100vh - 70px)}.paper-results-sidebar{width:0;min-width:0;overflow:hidden}.paper-results-sidebar:not(.collapsed){position:absolute;left:0;top:0;width:85vw;max-width:280px;height:100%;background:#fff;z-index:100;box-shadow:4px 0 20px #0003}.paper-results-sidebar .sidebar-toggle{right:-16px;width:32px;height:32px}.paper-results-body{padding:12px}.results-card{padding:14px;border-radius:12px}.results-header h2{font-size:16px}.results-hint{font-size:13px}.sources-summary{padding:12px}.source-badge{padding:3px 8px;font-size:11px}.queries-section h3{font-size:13px}.query-tag{padding:4px 8px;font-size:10px}.paper-card{border-radius:10px}.paper-header{padding:12px}.paper-title{font-size:13px}.expand-button{width:24px;height:24px;font-size:9px}.paper-meta{gap:6px;margin-top:8px}.meta-item{font-size:11px;padding:2px 6px}.paper-details{padding:0 12px 12px}.paper-venue,.paper-authors,.paper-abstract p{font-size:12px}.paper-link,.pdf-link{padding:10px 14px;font-size:13px}.sidebar-info-section{padding:12px}.info-item{padding:6px 8px}.info-label{font-size:11px}.info-value{font-size:13px}}@media (max-width: 360px){.paper-results-header .header-left h1{font-size:16px}.results-card{padding:12px}.results-header h2{font-size:15px}.paper-title{font-size:12px}.source-badge{font-size:10px}}.chat-container{display:flex;flex-direction:column;height:100vh;background:#f5f5f5}.chat-header{background:#fff;border-bottom:1px solid #e0e0e0;padding:20px;box-shadow:0 2px 4px #0000001a}.chat-header-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:20px}.back-button{padding:10px 20px;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s ease}.back-button:hover{background:#5568d3}.chat-title-section{flex:1}.preview-button{padding:10px 20px;background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:6px}.preview-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #28a7454d}.preview-button:disabled{opacity:.6;cursor:not-allowed}.dashboard-button{padding:10px 20px;background:#f3f4ff;color:#4a4fa1;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s ease}.dashboard-button:hover{background:#e1e5ff}.chat-title-section h1{margin:0 0 4px;font-size:24px;color:#1a1a1a}.paper-title{margin:0 0 8px;font-size:14px;color:#666;font-style:italic}.llm-selector-container{position:relative;margin-top:8px}.llm-selector-button{padding:8px 16px;background:#f0f0f0;border:1px solid #ddd;border-radius:6px;font-size:13px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .2s ease}.llm-selector-button:hover{background:#e8e8e8;border-color:#667eea}.dropdown-arrow{font-size:10px;transition:transform .2s ease}.llm-selector-dropdown{position:absolute;top:100%;left:0;margin-top:8px;background:#fff;border:1px solid #ddd;border-radius:8px;padding:16px;box-shadow:0 4px 12px #00000026;z-index:1000;min-width:280px}.provider-section,.model-section{margin-bottom:16px}.provider-section label,.model-section label{display:block;margin-bottom:6px;font-size:13px;font-weight:600;color:#333}.provider-section select,.model-section select{width:100%;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;background:#fff;cursor:pointer;transition:border-color .2s ease}.provider-section select:focus,.model-section select:focus{outline:none;border-color:#667eea}.provider-options{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.provider-option{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#f8f9fa;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;transition:all .2s ease}.provider-option:hover:not(.disabled){border-color:#667eea;background:#f0f2ff}.provider-option.selected{border-color:#667eea;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.provider-option.selected .provider-name{color:#fff}.provider-option.disabled{opacity:.6;cursor:not-allowed;background:#f5f5f5}.provider-name{font-weight:500;font-size:14px}.coming-soon-badge{font-size:10px;padding:3px 8px;border-radius:10px;font-weight:600;text-transform:uppercase;background:linear-gradient(135deg,#e0e7ff,#c7d2fe);color:#4338ca;border:1px solid #a5b4fc}.apply-button{width:100%;padding:10px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:transform .2s ease}.apply-button:hover{transform:translateY(-1px);box-shadow:0 2px 8px #667eea4d}.logout-button{padding:10px 20px;background:#dc3545;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s ease}.chat-messages{flex:1;overflow-y:auto;padding:20px;max-width:1200px;width:100%;margin:0 auto}.welcome-message{text-align:center;padding:60px 20px;color:#666}.welcome-message h2{margin:0 0 12px;color:#1a1a1a}.suggested-questions{margin-top:30px;text-align:left;max-width:600px;margin-left:auto;margin-right:auto;background:#fff;padding:24px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.suggested-questions p{margin:0 0 12px;font-weight:600;color:#333}.suggested-questions ul{margin:12px 0 0;padding-left:20px;color:#555}.suggested-questions li{margin:8px 0;line-height:1.6}.message{margin-bottom:20px;display:flex}.user-message{justify-content:flex-end}.assistant-message{justify-content:flex-start}.message-content{max-width:75%;padding:16px 20px;border-radius:12px;box-shadow:0 2px 4px #0000001a}.user-message .message-content{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:14px 18px}.assistant-message .message-content{background:#fff;color:#1a1a1a;border:2px solid #667eea40;padding:20px 32px;border-radius:16px;box-shadow:0 2px 8px #0000000f}.message-role{font-size:11px;font-weight:700;margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px}.user-message .message-role{color:#ffffffe6}.assistant-message .message-role{color:#667eea;background:linear-gradient(135deg,#667eea15,#764ba215);padding:4px 10px;border-radius:4px;display:inline-block;border-left:3px solid #667eea}.message-text{line-height:1.7;word-wrap:break-word}.user-message .message-text{white-space:pre-wrap;font-size:.95rem}.assistant-message .message-text{white-space:normal;font-size:.95rem;color:#374151;text-align:justify}.assistant-message .message-text .markdown-renderer{margin:0;padding:0}.assistant-message .message-text p{margin-bottom:.75em;line-height:1.7}.assistant-message .message-text p:last-child{margin-bottom:0}.assistant-message .message-text ul,.assistant-message .message-text ol{margin:.5em 0;padding-left:1.5em}.assistant-message .message-text li{margin-bottom:.35em;line-height:1.6}.assistant-message .message-text strong{font-weight:600;color:#1f2937}.assistant-message .message-text code{background-color:#f3f4f6;padding:.15em .4em;border-radius:4px;font-size:.9em;font-family:SF Mono,Monaco,Menlo,monospace;color:#6366f1}.error-message{padding:12px;background:#fee;color:#c33;border-radius:8px;margin:20px 0;text-align:center}.chat-input-form{background:#fff;border-top:1px solid #e0e0e0;padding:20px;display:flex;gap:12px;max-width:1200px;width:100%;margin:0 auto}.chat-input{flex:1;padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:16px;transition:border-color .2s ease}.chat-input:focus{outline:none;border-color:#667eea}.chat-input:disabled{background:#f5f5f5;cursor:not-allowed}.send-button{padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;display:flex;align-items:center;gap:8px}.send-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.send-button:disabled{opacity:.6;cursor:not-allowed}.loading-container,.error-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100vh;gap:20px}.error-container button{padding:12px 24px;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer}.spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top:2px solid white;border-radius:50%;animation:spin .8s linear infinite}.admin-container{min-height:100vh;background:#f5f5f5;padding:20px}.admin-header{background:#fff;border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:0 2px 4px #0000001a}.admin-header-content{display:flex;justify-content:space-between;align-items:center}.admin-header h1{margin:0;color:#1a1a1a}.admin-header-actions{display:flex;gap:12px}.nav-button,.logout-button{padding:10px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.nav-button{background:#667eea;color:#fff}.nav-button:hover{background:#5568d3}.logout-button{background:#dc3545;color:#fff}.logout-button:hover{background:#c82333}.error-banner{background:#fee;color:#c33;padding:12px 20px;border-radius:8px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center}.error-banner button{background:none;border:none;color:#c33;font-size:18px;cursor:pointer;padding:0;width:24px;height:24px}.admin-content{max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:20px}.admin-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 4px #0000001a}.admin-card h2{margin:0 0 20px;color:#1a1a1a}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.card-header h2{margin:0}.danger-button{padding:10px 20px;background:#dc3545;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s ease}.danger-button:hover:not(:disabled){background:#c82333}.danger-button:disabled{opacity:.6;cursor:not-allowed}.refresh-button{padding:8px 16px;border:none;border-radius:8px;background:#f3f4ff;color:#4a4fa1;font-weight:600;cursor:pointer;transition:background .2s ease}.refresh-button:hover:not(:disabled){background:#e1e5ff}.refresh-button:disabled{opacity:.6;cursor:not-allowed}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat-item{padding:20px;background:#f8f9fa;border-radius:8px;text-align:center}.stat-label{font-size:13px;color:#666;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:28px;font-weight:700;color:#1a1a1a;margin-bottom:4px}.stat-sublabel{font-size:12px;color:#999}.provider-stats{margin-top:30px}.provider-stats h3{margin:0 0 16px;font-size:18px;color:#333}.provider-list{display:flex;flex-direction:column;gap:8px}.provider-item{padding:12px 16px;background:#f8f9fa;border-radius:8px;display:flex;align-items:center;gap:20px}.provider-name{font-weight:600;color:#1a1a1a;text-transform:capitalize;min-width:100px;display:flex;align-items:center}.provider-details{display:flex;gap:16px;font-size:13px;color:#666}.provider-details span{white-space:nowrap}.users-table{overflow-x:auto}.table-header,.table-row{display:grid;grid-template-columns:2fr 1.5fr .8fr 1fr 1.2fr 1fr 1fr;gap:16px;padding:12px 0;align-items:center}.table-header{font-weight:600;color:#666;border-bottom:2px solid #e0e0e0;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.table-row{border-bottom:1px solid #f0f0f0;transition:background .2s ease}.table-row:hover{background:#f8f9fa}.admin-badge{display:inline-block;padding:4px 12px;background:#667eea;color:#fff;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase}.view-button{padding:6px 16px;background:#667eea;color:#fff;border:none;border-radius:6px;font-size:13px;cursor:pointer;transition:background .2s ease}.view-button:hover{background:#5568d3}.usage-card{margin-top:20px}.usage-summary{display:flex;gap:30px;margin-bottom:30px;padding:20px;background:#f8f9fa;border-radius:8px}.summary-item{display:flex;flex-direction:column;gap:8px}.summary-label{font-size:13px;color:#666;text-transform:uppercase;letter-spacing:.5px}.summary-value{font-size:24px;font-weight:700;color:#1a1a1a}.usage-section{margin-top:30px}.usage-section h3{margin:0 0 16px;font-size:18px;color:#333}.usage-list{display:flex;flex-direction:column;gap:12px}.usage-item{padding:16px;background:#f8f9fa;border-radius:8px}.usage-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.usage-item-name{font-weight:600;color:#1a1a1a}.usage-item-cost{font-weight:600;color:#667eea}.usage-item-details{display:flex;gap:20px;font-size:13px;color:#666}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:20px}.spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite}.suggestions-card{margin-top:10px}.suggestions-list{display:flex;flex-direction:column;gap:16px}.suggestion-item{border:1px solid #ececec;border-radius:12px;padding:16px;background:#fafbff}.suggestion-meta{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px;font-size:13px;color:#555}.suggestion-author{font-weight:600;color:#1a1a1a;display:block}.suggestion-email{font-size:12px;color:#777}.suggestion-date{font-size:12px;color:#999}.suggestion-topic{font-size:13px;color:#4a4fa1;margin-bottom:6px}.suggestion-body{margin:0;font-size:14px;color:#333;line-height:1.5;white-space:pre-wrap}.empty-state{margin:0;padding:16px;border-radius:10px;background:#f8f9fb;color:#777;text-align:center;font-size:14px}.header-buttons{display:flex;gap:12px}.create-button{padding:10px 20px;background:#28a745;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s ease}.create-button:hover{background:#218838}.success-banner{background:#d4edda;color:#155724;padding:12px 20px;border-radius:8px;margin-bottom:20px;display:flex;justify-content:space-between;align-items:center}.success-banner button{background:none;border:none;color:#155724;font-size:18px;cursor:pointer;padding:0;width:24px;height:24px}.action-buttons{display:flex;gap:6px;flex-wrap:wrap}.edit-button,.reset-button,.delete-button{padding:4px 10px;border:none;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s ease}.edit-button{background:#17a2b8;color:#fff}.edit-button:hover{background:#138496}.reset-button{background:#ffc107;color:#212529}.reset-button:hover{background:#e0a800}.delete-button{background:#dc3545;color:#fff}.delete-button:hover:not(:disabled){background:#c82333}.delete-button:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;border-radius:12px;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 20px #0003}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e0e0e0}.modal-header h3{margin:0;font-size:18px;color:#1a1a1a}.modal-close{background:none;border:none;font-size:20px;cursor:pointer;color:#666;padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:4px}.modal-close:hover{background:#f0f0f0;color:#333}.modal form,.modal-body{padding:24px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:#333}.form-group input[type=email],.form-group input[type=text],.form-group input[type=password]{width:100%;padding:12px 14px;border:1px solid #ddd;border-radius:8px;font-size:14px;transition:border-color .2s ease;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#667eea}.form-group input:disabled{background:#f5f5f5;color:#999}.checkbox-group label{display:flex;align-items:center;gap:10px;cursor:pointer}.checkbox-group input[type=checkbox]{width:18px;height:18px;cursor:pointer}.password-field{display:flex;gap:10px}.password-field input{flex:1}.regenerate-button{padding:12px 16px;background:#f3f4ff;color:#667eea;border:1px solid #667eea;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .2s ease}.regenerate-button:hover{background:#667eea;color:#fff}.modal-success{background:#d4edda;color:#155724;padding:14px 16px;border-radius:8px;margin-bottom:20px;font-weight:500}.copy-hint{font-size:12px;font-weight:400;margin-top:6px;opacity:.8}.modal-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:10px;border-top:1px solid #e0e0e0;margin-top:10px}.cancel-button{padding:12px 24px;background:#f5f5f5;color:#333;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background .2s ease}.cancel-button:hover{background:#e0e0e0}.submit-button{padding:12px 24px;background:#667eea;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s ease}.submit-button:hover:not(:disabled){background:#5568d3}.submit-button:disabled{opacity:.6;cursor:not-allowed}.table-header,.table-row{grid-template-columns:2fr 1.5fr .8fr .8fr 1fr .8fr 1.8fr}.col-actions{min-width:200px}.expand-icon{display:inline-block;margin-right:8px;font-size:10px;color:#667eea;transition:transform .2s ease}.expand-icon.expanded{transform:rotate(90deg)}.expand-hint{font-size:12px;font-weight:400;color:#999;margin-left:8px}.clickable{cursor:pointer}.clickable:hover{background:#f0f4ff!important}.clickable-cell{cursor:pointer;display:flex;align-items:center}.provider-item-wrapper{margin-bottom:4px}.provider-item.clickable{cursor:pointer;transition:all .2s ease}.provider-item.clickable:hover{background:#eef1ff;border-left:3px solid #667eea;padding-left:13px}.provider-item.expanded{background:#f0f4ff;border-left:3px solid #667eea;padding-left:13px;border-radius:8px 8px 0 0}.nested-models{background:#f8f9fc;border-left:3px solid #667eea;margin-left:16px;padding:6px 0;border-radius:0 0 8px 8px;display:flex;flex-direction:column;align-items:center}.model-item{padding:6px 16px;display:grid;grid-template-columns:200px 100px 120px 80px;align-items:center;gap:12px;font-size:13px;width:fit-content}.model-item:hover{background:#eef1ff}.model-name{font-weight:500;color:#444}.model-details{display:contents}.model-details span{white-space:nowrap;font-size:12px;color:#666}.model-details span:last-child{text-align:right;font-weight:500;color:#555}.table-row-wrapper{border-bottom:1px solid #f0f0f0}.table-row-wrapper .table-row{border-bottom:none}.user-usage-breakdown{padding:12px 16px 16px;background:#f8f9fc;border-left:3px solid #667eea;margin-left:20px;margin-bottom:8px}.user-providers-list{display:flex;flex-direction:column;gap:4px}.user-provider-wrapper{margin-bottom:2px}.user-provider-item{padding:8px 14px;background:#fff;border-radius:6px;display:flex;align-items:center;gap:16px;border:1px solid #e8e8e8}.user-provider-item.clickable{cursor:pointer;transition:all .2s ease}.user-provider-item.clickable:hover{background:#f0f4ff;border-color:#667eea}.user-provider-item.expanded{background:#f0f4ff;border-color:#667eea;border-radius:6px 6px 0 0}.user-provider-name{font-weight:600;color:#333;text-transform:capitalize;display:flex;align-items:center;min-width:80px}.user-provider-details{display:flex;gap:12px;font-size:12px;color:#666}.user-provider-details span{white-space:nowrap}.user-models-list{background:#fafbff;border:1px solid #667eea;border-top:none;border-radius:0 0 6px 6px;margin-left:20px;padding:4px 0;display:flex;flex-direction:column;align-items:center}.user-model-item{padding:5px 14px;display:grid;grid-template-columns:180px 90px 110px 70px;align-items:center;gap:10px;font-size:12px;width:fit-content}.user-model-item:hover{background:#eef1ff}.user-model-name{font-weight:500;color:#444}.user-model-details{display:contents}.user-model-details span{white-space:nowrap;font-size:11px;color:#666}.user-model-details span:last-child{text-align:right;font-weight:500;color:#555}.ai-chat-box{background:#fff;border:2px solid #667eea;border-radius:12px;padding:1rem;margin-top:1rem;box-shadow:0 8px 24px #667eea40;animation:slideUp .2s ease-out}.ai-chat-header{display:flex;align-items:center;gap:.5rem;padding-bottom:.75rem;border-bottom:1px solid #e2e8f0;margin-bottom:.75rem}.ai-icon{font-size:.75rem;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.25rem .5rem;border-radius:4px}.ai-title{font-weight:600;color:#374151;flex:1}.ai-close-btn{background:none;border:none;font-size:1.25rem;color:#9ca3af;cursor:pointer;padding:0;line-height:1;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s}.ai-close-btn:hover{color:#ef4444;background:#fef2f2}.selected-text-preview{background:#f8fafc;border-radius:6px;padding:.75rem;margin-bottom:.75rem}.preview-label{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.preview-text{margin:.25rem 0 0;font-size:.875rem;color:#4b5563;font-style:italic;line-height:1.5}.quick-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.quick-action-btn{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:20px;padding:.375rem .75rem;font-size:.75rem;color:#4b5563;cursor:pointer;transition:all .2s}.quick-action-btn:hover:not(:disabled){background:#667eea;color:#fff;border-color:#667eea}.quick-action-btn:disabled{opacity:.5;cursor:not-allowed}.ai-prompt-form{display:flex;flex-direction:column;gap:.75rem}.ai-prompt-input{width:100%;padding:.75rem;border:2px solid #e2e8f0;border-radius:8px;font-family:inherit;font-size:.875rem;resize:none;transition:border-color .2s;box-sizing:border-box}.ai-prompt-input:focus{outline:none;border-color:#667eea}.ai-prompt-input:disabled{background:#f9fafb;cursor:not-allowed}.ai-form-actions{display:flex;justify-content:flex-end}.ai-submit-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;padding:.625rem 1.25rem;font-weight:600;font-size:.875rem;cursor:pointer;display:flex;align-items:center;gap:.5rem;transition:all .2s}.ai-submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.ai-submit-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.loading-spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.ai-response-section{background:#f0fdf4;border:1px solid #86efac;border-radius:8px;padding:1rem}.response-label{font-size:.75rem;color:#16a34a;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.ai-response-preview{margin:.5rem 0;padding:.75rem;background:#fff;border-radius:6px;font-size:.9375rem;line-height:1.6;color:#374151;max-height:200px;overflow-y:auto;white-space:pre-wrap}.ai-response-actions{display:flex;gap:.75rem;margin-top:.75rem;justify-content:flex-end}.btn-accept{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:6px;padding:.5rem 1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-accept:hover{box-shadow:0 2px 8px #10b98166;transform:translateY(-1px)}.btn-reject{background:#f3f4f6;color:#6b7280;border:1px solid #d1d5db;border-radius:6px;padding:.5rem 1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-reject:hover{background:#e5e7eb}.ai-error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:.75rem;margin-bottom:.75rem;color:#dc2626;font-size:.875rem}.markdown-content.editable{position:relative}.edit-mode-hint{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.75em 1em;margin:-.5em -.5em 1.5em;border-radius:6px;text-align:center;font-size:.9rem;font-weight:500;box-shadow:0 2px 8px #667eea4d}.markdown-content.clickable .editable-text{cursor:pointer;transition:all .2s ease;padding:.25em .5em;margin:-.25em -.5em;border-radius:4px;position:relative}.markdown-content.clickable .editable-text:hover{background-color:#667eea14;box-shadow:0 0 0 2px #667eea26}.markdown-content.clickable .editable-text:hover:after{content:"✏️ Click to edit";position:absolute;top:-1.5em;right:0;background:#667eeaf2;color:#fff;padding:.2em .6em;border-radius:4px;font-size:.75rem;font-weight:500;white-space:nowrap;pointer-events:none;z-index:10;box-shadow:0 2px 6px #0003}.markdown-content.editable h1,.markdown-content.editable h2,.markdown-content.editable h3,.markdown-content.editable h4,.markdown-content.editable h5,.markdown-content.editable h6{cursor:default;opacity:.9}.inline-edit-container{background:#fff;border:2px solid #667eea;border-radius:8px;padding:1em;box-shadow:0 8px 24px #667eea40;margin:2em 0;max-width:100%}.inline-edit-box{min-height:100px;padding:1em;font-family:inherit;font-size:1.0625rem;line-height:1.8;color:#2d3748;background:#fafbfc;border:2px solid #e2e8f0;border-radius:6px;outline:none;transition:all .2s ease;max-width:100%;overflow-wrap:break-word;word-wrap:break-word}.inline-edit-box:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.inline-edit-controls{display:flex;align-items:center;gap:.5em;justify-content:flex-end;margin-top:.75em;padding-top:.75em;border-top:1px solid #e2e8f0}.edit-hint{font-size:.75rem;color:#718096;margin-right:auto;font-style:italic}.btn-save-inline,.btn-cancel-inline{padding:.5em 1.2em;border-radius:6px;font-size:.875rem;font-weight:600;cursor:pointer;border:none;transition:all .2s ease;display:flex;align-items:center;gap:.3em}.btn-save-inline{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 2px 8px #10b9814d}.btn-save-inline:hover{transform:translateY(-1px);box-shadow:0 4px 12px #10b98166}.btn-save-inline:active{transform:translateY(0)}.btn-cancel-inline{background:#e2e8f0;color:#4a5568}.btn-cancel-inline:hover{background:#cbd5e0}.markdown-content.editing-active{padding:1em;background:#f7fafc;border-radius:8px}@media (max-width: 768px){.edit-mode-hint{font-size:.8rem;padding:.6em .8em}.markdown-content.clickable .editable-text:hover:after{font-size:.7rem;top:-1.3em}.inline-edit-box{font-size:1rem;padding:.75em}.edit-hint{display:none}.btn-save-inline,.btn-cancel-inline{padding:.4em .8em;font-size:.8rem}}.citation-link{color:#6366f1;text-decoration:none;cursor:pointer;padding:.1em .2em;margin:0 -.1em;border-radius:3px;transition:all .2s ease;font-weight:500}.citation-link:hover{background-color:#6366f11a;color:#4f46e5;text-decoration:underline}.citation-link:active{background-color:#6366f133}.citation-text{color:inherit;font-style:inherit}.citation-highlight{animation:highlightPulse 2s ease-out}@keyframes highlightPulse{0%{background-color:#6366f14d;box-shadow:0 0 0 4px #6366f133}50%{background-color:#6366f126;box-shadow:0 0 0 2px #6366f11a}to{background-color:transparent;box-shadow:none}}.review-status-container{min-height:100vh;background-color:#f5f7fa}.review-header{background:#fff;padding:20px 32px;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;align-items:center}.review-header-left{flex-shrink:0}.review-header-left h1{margin:0 0 4px;font-size:28px;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.header-subtitle{margin:0;color:#666;font-size:14px}.review-header-center{display:flex;align-items:center;gap:.5rem;flex:1;justify-content:center}.review-header-right{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.review-content-wrapper{display:flex;height:calc(100vh - 85px)}.review-sidebar{width:260px;background:#fff;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;transition:width .3s ease;position:relative;flex-shrink:0}.review-sidebar.collapsed{width:20px;min-width:20px}.review-sidebar.collapsed .sidebar-toggle{right:-14px;background:#4f46e5;color:#fff;border-color:#4f46e5}.review-sidebar.collapsed .sidebar-toggle:hover{background:#4338ca}.review-sidebar .sidebar-toggle{position:absolute;top:12px;right:-12px;width:24px;height:24px;background:#fff;border:1px solid #e0e0e0;border-radius:50%;color:#666;font-size:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;box-shadow:0 2px 4px #0000001a;transition:all .2s}.review-sidebar .sidebar-toggle:hover{background:#f0f0f0;color:#333}.review-sidebar .sidebar-nav-section{padding:16px;border-bottom:1px solid #e0e0e0}.review-sidebar .sidebar-nav-section h3{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin:0 0 12px}.review-sidebar .sidebar-nav-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 12px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;font-size:13px;font-weight:600;text-align:center;cursor:pointer;margin-bottom:6px;transition:all .2s ease}.review-sidebar .sidebar-nav-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translate(2px);box-shadow:0 2px 8px #667eea66}.review-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.review-content{flex:1;overflow-y:auto;padding:32px;max-width:1200px;margin:0 auto;width:100%}.btn-export,.btn-regenerate,.btn-delete,.btn-edit{padding:.5rem 1rem;border:none;border-radius:.375rem;font-size:.875rem;cursor:pointer;transition:all .2s}.btn-edit{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:600}.btn-edit:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.btn-edit.active{background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 0 0 3px #667eea33}.btn-edit.active:hover{background:linear-gradient(135deg,#4f58c9,#5f3db0)}.btn-edit:disabled{opacity:.6;cursor:not-allowed}.btn-export{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:600}.btn-export:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.btn-regenerate{background:#f3f4f6;color:#374151;border:1px solid #d1d5db;font-weight:600}.btn-regenerate:hover{background:#e5e7eb;border-color:#9ca3af;transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.btn-delete{background:#fef2f2;color:#dc2626;border:1px solid #dc2626;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-delete:hover{background:#fef7f7;border-color:#dc2626;color:#dc2626}.success-banner{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1rem 1.5rem;border-radius:.5rem;margin-bottom:1.5rem;font-weight:500;box-shadow:0 4px 12px #667eea4d;animation:slideDown .3s ease-out;display:flex;align-items:center;gap:.5rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.progress-section{background:#fff;border-radius:.5rem;padding:2rem;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem}.progress-section h2{font-size:1.5rem;color:#111827;margin-bottom:1.5rem}.progress-bar-container{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.progress-bar{flex:1;height:1.5rem;background-color:#e5e7eb;border-radius:.75rem;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);transition:width .5s ease}.progress-percent{font-size:1.125rem;font-weight:600;color:#6366f1;min-width:4rem;text-align:right}.stages-list{display:flex;flex-direction:column;gap:.75rem}.stage-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:.375rem;background-color:#f9fafb}.stage-item.active{background-color:#ede9fe;border-left:3px solid #8b5cf6}.stage-item.completed{opacity:.6}.stage-icon{font-size:1.25rem;width:1.5rem;text-align:center}.stage-label{flex:1;font-weight:500;color:#374151}.stage-status{font-size:.875rem;color:#8b5cf6;font-style:italic}.papers-processed{margin-top:1rem;color:#6b7280;text-align:center}.metrics-preview{display:flex;gap:2rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb;justify-content:center}.metric{display:flex;flex-direction:column;align-items:center}.metric-label{font-size:.875rem;color:#6b7280}.metric-value{font-size:1.125rem;font-weight:600;color:#111827}.error-section{background:#fff;border-radius:.5rem;padding:2rem;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;border-left:4px solid #ef4444}.error-section h2{color:#ef4444;margin-bottom:1rem}.error-message{background-color:#fef2f2;padding:1rem;border-radius:.375rem;color:#991b1b}.completed-section{display:flex;flex-direction:column;gap:2rem}.review-summary{background:#fff;border-radius:.5rem;padding:2rem;box-shadow:0 1px 3px #0000001a}.review-summary h2{font-size:1.5rem;color:#111827;margin-bottom:1.5rem}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.summary-item{display:flex;flex-direction:column;padding:1rem;background-color:#f9fafb;border-radius:.375rem}.summary-label{font-size:.875rem;color:#6b7280;margin-bottom:.25rem}.summary-value{font-size:1.5rem;font-weight:600;color:#111827}.target-indicator{font-size:.875rem;font-weight:400;color:#6b7280}.documents-section{background:#fff;border-radius:.5rem;padding:2rem;box-shadow:0 1px 3px #0000001a}.documents-section h3{font-size:1.25rem;color:#111827;margin-bottom:1rem}.review-content-section{background:#fff;border-radius:.5rem;padding:3rem 2rem;box-shadow:0 1px 3px #0000001a;transition:all .3s ease}.review-content-section.edit-mode-active{border-left:4px solid #667eea;box-shadow:0 1px 3px #0000001a,-4px 0 12px #667eea26}.edit-mode-indicator{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:.75rem 1.5rem;border-radius:.5rem;margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem;font-size:.875rem;font-weight:500;box-shadow:0 2px 8px #667eea4d}.edit-mode-icon{font-size:1.25rem}.edit-mode-text{flex:1}.review-content-section>h3{font-size:1.5rem;color:#111827;margin-bottom:2rem;text-align:center;font-weight:600;padding-bottom:1rem;border-bottom:2px solid #e5e7eb}.documents-list{display:flex;flex-direction:column;gap:.75rem}.document-item{padding:.75rem;background-color:#f9fafb;border-radius:.375rem;display:flex;flex-direction:column;gap:.25rem}.doc-title{font-weight:500;color:#111827}.doc-authors{font-size:.875rem;color:#6b7280}.outline-section{margin-bottom:2rem;border:1px solid #e5e7eb;border-radius:.375rem;padding:1rem}.outline-section summary{font-weight:600;cursor:pointer;-webkit-user-select:none;user-select:none}.outline-content{margin-top:1rem}.outline-content pre{background-color:#f9fafb;padding:1rem;border-radius:.375rem;overflow-x:auto}.toc{background-color:#f9fafb;padding:1.5rem;border-radius:.5rem}.toc h4{margin:0 0 1rem;font-size:1.125rem;color:#111827}.toc-sections{margin:0;padding-left:1.5rem;list-style:decimal}.toc-section{margin-bottom:.75rem;color:#111827;line-height:1.6}.toc-section strong{font-size:1rem}.toc-subsections{margin:.5rem 0 0;padding-left:1.5rem;list-style:lower-alpha}.toc-subsection{margin-bottom:.5rem;color:#4b5563;font-size:.938rem;line-height:1.5}.toc-link{color:inherit;text-decoration:none;cursor:pointer;transition:color .2s ease;display:inline-block}.toc-link:hover{color:#667eea;text-decoration:underline}.toc-section .toc-link strong{font-weight:600}.toc-missing{color:#9ca3af;font-style:italic;cursor:default}.missing-indicator{font-size:.75rem;color:#ef4444;font-weight:400;margin-left:.5rem}.toc-section .toc-missing strong{font-weight:500;color:#9ca3af}html{scroll-behavior:smooth}.markdown-content{line-height:1.8;color:#374151;font-size:1.0625rem;max-width:900px;margin:0 auto;counter-reset:h2-counter 0}.markdown-content>*:first-child{counter-reset:h2-counter 0}.markdown-content h1{font-size:2.5rem;font-weight:700;color:#111827;margin-top:3rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:3px solid #6366f1;text-align:center;line-height:1.2;letter-spacing:-.02em}.markdown-content h1:first-child{margin-top:0}.markdown-content h2{font-size:1.875rem;font-weight:700;color:#1f2937;margin-top:3.5rem;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:2px solid #e5e7eb;line-height:1.3;letter-spacing:-.01em;counter-increment:h2-counter;counter-reset:h3-counter;position:relative;padding-left:0}.markdown-content h2:before{content:counter(h2-counter) ". ";color:#6366f1;font-weight:700;margin-right:.5rem}.markdown-content h2:is([id*=introduction],[id*=conclusion],[id*=references],[id*=bibliography],[id*=abstract]):before{content:none}.markdown-content h2:is([id*=introduction],[id*=conclusion],[id*=references],[id*=bibliography],[id*=abstract]){counter-increment:none}.markdown-content h3{font-size:1.5rem;font-weight:600;color:#374151;margin-top:2.5rem;margin-bottom:1.25rem;padding-left:0;line-height:1.4;letter-spacing:-.005em;counter-increment:h3-counter;counter-reset:h4-counter}.markdown-content h3:before{content:counter(h2-counter) "." counter(h3-counter) " ";color:#6366f1;font-weight:600;margin-right:.5rem}.markdown-content h4{font-size:1.25rem;font-weight:600;color:#4b5563;margin-top:2rem;margin-bottom:1rem;padding-left:0;line-height:1.5;counter-increment:h4-counter;counter-reset:h5-counter}.markdown-content h4:before{content:counter(h2-counter) "." counter(h3-counter) "." counter(h4-counter) " ";color:#6366f1;font-weight:600;margin-right:.5rem}.markdown-content h5{font-size:1.125rem;font-weight:600;color:#6b7280;margin-top:1.5rem;margin-bottom:.75rem;line-height:1.5;counter-increment:h5-counter;counter-reset:h6-counter}.markdown-content h5:before{content:counter(h2-counter) "." counter(h3-counter) "." counter(h4-counter) "." counter(h5-counter) " ";color:#6366f1;font-weight:600;margin-right:.5rem}.markdown-content h6{font-size:1rem;font-weight:600;color:#6b7280;margin-top:1.5rem;margin-bottom:.75rem;line-height:1.5;text-transform:uppercase;letter-spacing:.05em;counter-increment:h6-counter}.markdown-content h6:before{content:counter(h2-counter) "." counter(h3-counter) "." counter(h4-counter) "." counter(h5-counter) "." counter(h6-counter) " ";color:#6366f1;font-weight:600;margin-right:.5rem}.markdown-content p{margin-bottom:1.25rem;text-align:justify;-webkit-hyphens:auto;hyphens:auto}.markdown-content h1+p,.markdown-content h2+p,.markdown-content h3+p,.markdown-content h4+p,.markdown-content h5+p,.markdown-content h6+p{margin-top:.5rem}.markdown-content a{color:#6366f1;text-decoration:none;border-bottom:1px solid transparent;transition:all .2s ease}.markdown-content a:hover{color:#4f46e5;border-bottom-color:#6366f1}.markdown-content ul,.markdown-content ol{margin-bottom:1.5rem;padding-left:2rem}.markdown-content li{margin-bottom:.5rem;line-height:1.7}.markdown-content ul ul,.markdown-content ol ol,.markdown-content ul ol,.markdown-content ol ul{margin-top:.5rem;margin-bottom:.5rem}.markdown-content blockquote{border-left:4px solid #6366f1;padding-left:1.5rem;margin:1.5rem 0;color:#4b5563;font-style:italic}.markdown-content pre{background-color:#f9fafb;border:1px solid #e5e7eb;border-radius:.5rem;padding:1.25rem;overflow-x:auto;margin:1.5rem 0;font-size:.875rem;line-height:1.6}.markdown-content code{background-color:#f3f4f6;padding:.2rem .4rem;border-radius:.25rem;font-size:.9em;font-family:Courier New,monospace}.markdown-content pre code{background-color:transparent;padding:0}.markdown-content table{width:100%;border-collapse:collapse;margin:1.5rem 0}.markdown-content th,.markdown-content td{border:1px solid #e5e7eb;padding:.75rem;text-align:left}.markdown-content th{background-color:#f9fafb;font-weight:600;color:#111827}.markdown-content tr:nth-child(2n){background-color:#f9fafb}.markdown-content strong{font-weight:600;color:#111827}.markdown-content em{font-style:italic}.markdown-content hr{border:none;border-top:2px solid #e5e7eb;margin:3rem 0}.bibliography-section{margin-top:3rem;padding:2rem;background:#fafbfc;border-radius:.5rem;border:1px solid #e5e7eb}.bibliography-section .bibliography-heading{font-size:1.75rem;font-weight:700;color:#1f2937;margin:0 0 1.5rem;padding-bottom:.75rem;border-bottom:2px solid #6366f1;counter-increment:none}.bibliography-section .bibliography-heading:before{content:none!important;display:none}.bibliography-list{display:flex;flex-direction:column;gap:1rem}.bibliography-entry{display:flex;gap:.75rem;padding:.75rem 1rem;background:#fff;border-radius:.375rem;border-left:3px solid #e5e7eb;transition:all .2s ease;scroll-margin-top:100px}.bibliography-entry:hover{border-left-color:#6366f1;box-shadow:0 2px 8px #0000000d}.bibliography-entry:target{border-left-color:#6366f1;background:#f0f4ff;box-shadow:0 2px 12px #6366f126}.bibliography-number{font-weight:600;color:#6366f1;min-width:2.5rem;flex-shrink:0}.bibliography-text{color:#374151;line-height:1.6;word-break:break-word}.bibliography-text a{color:#6366f1;text-decoration:none}.bibliography-text a:hover{text-decoration:underline}.loading,.error-banner{background:#fff;padding:2rem;border-radius:.5rem;box-shadow:0 1px 3px #0000001a;text-align:center}.error-banner{background-color:#fef2f2;color:#991b1b;border-left:4px solid #ef4444}.back-to-top{position:fixed;bottom:2rem;right:2rem;width:3rem;height:3rem;border-radius:50%;background:#667eea;color:#fff;border:none;font-size:1.5rem;cursor:pointer;box-shadow:0 4px 12px #667eea66;transition:all .3s ease;z-index:1000;display:flex;align-items:center;justify-content:center}.back-to-top:hover{background:#764ba2;transform:translateY(-3px);box-shadow:0 6px 16px #667eea80}.back-to-top:active{transform:translateY(-1px)}@media (max-width: 1024px){.review-header{padding:16px 24px}.review-content{padding:24px}}@media (max-width: 768px){.review-sidebar{width:50px}.review-sidebar:not(.collapsed){position:absolute;width:260px;z-index:100;box-shadow:4px 0 20px #0003;height:100%}.review-header{padding:14px 16px;flex-wrap:wrap;gap:12px}.review-header-left h1{font-size:22px}.review-content{padding:16px}.review-header-center,.review-header-right{width:100%;flex-wrap:wrap}.markdown-content{font-size:1rem;padding:0 1rem}.markdown-content h1{font-size:2rem}.markdown-content h2{font-size:1.5rem;margin-top:2.5rem}.markdown-content h3{font-size:1.25rem;margin-top:2rem}.markdown-content h4{font-size:1.125rem}.summary-grid{grid-template-columns:repeat(2,1fr)}.review-content-section{padding:2rem 1rem}}@media print{.review-header-right,.back-btn,.back-to-top,.outline-section{display:none}.review-status-container{max-width:100%;padding:0}.markdown-content{max-width:100%;font-size:11pt;line-height:1.6}.markdown-content h1{font-size:24pt;page-break-after:avoid}.markdown-content h2{font-size:18pt;page-break-after:avoid;margin-top:2rem}.markdown-content h3{font-size:14pt;page-break-after:avoid}.markdown-content p{text-align:left;orphans:3;widows:3}}.review-list-page{min-height:100vh;background:#f5f7fa}.page-header{background:#fff;padding:20px 32px;border-bottom:1px solid #e0e0e0;box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;align-items:center}.header-logout-btn{padding:10px 20px;background:#fef2f2;color:#dc2626;border:1px solid #dc2626;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.header-left h1{color:#1a1a1a;font-size:28px;margin:0 0 4px;font-weight:600}.header-subtitle{color:#666;margin:0;font-size:14px}.header-right{display:flex;align-items:center}.btn{padding:.75rem 1.5rem;border:none;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none}.btn-primary:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translateY(-1px);box-shadow:0 4px 12px #667eea4d}.btn-secondary{background:#f3f4f6;color:#374151;border:1px solid #d1d5db}.btn-secondary:hover{background:#e5e7eb;border-color:#9ca3af}.btn-danger{background:#fef2f2;color:#dc2626;border:1px solid #dc2626}.btn-danger:hover{background:#fef2f2;border-color:#dc2626;color:#dc2626}.btn-sm{padding:.5rem 1rem;font-size:.813rem}.content-wrapper{display:flex;height:calc(100vh - 85px)}.review-list-sidebar{width:260px;background:#fff;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;transition:width .3s ease;position:relative;flex-shrink:0}.review-list-sidebar.collapsed{width:20px;min-width:20px}.review-list-sidebar.collapsed .sidebar-toggle{right:-14px;background:#4f46e5;color:#fff;border-color:#4f46e5}.review-list-sidebar.collapsed .sidebar-toggle:hover{background:#4338ca}.review-list-sidebar .sidebar-toggle{position:absolute;top:12px;right:-12px;width:24px;height:24px;background:#fff;border:1px solid #e0e0e0;border-radius:50%;color:#666;font-size:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;box-shadow:0 2px 4px #0000001a;transition:all .2s}.review-list-sidebar .sidebar-toggle:hover{background:#f0f0f0;color:#333}.review-list-sidebar .sidebar-nav-section{padding:16px;border-bottom:1px solid #e0e0e0}.review-list-sidebar .sidebar-nav-section h3{color:#888;font-size:11px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin:0 0 12px}.review-list-sidebar .sidebar-nav-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px 12px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;font-size:13px;font-weight:600;text-align:center;cursor:pointer;margin-bottom:6px;transition:all .2s ease}.review-list-sidebar .sidebar-nav-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translate(2px);box-shadow:0 2px 8px #667eea66}.review-list-main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.review-list-content{flex:1;overflow-y:auto;padding:32px}.alert{margin:0 0 1.5rem;padding:1rem 1.5rem;border-radius:.5rem;display:flex;justify-content:space-between;align-items:center;background:#fff;box-shadow:0 2px 8px #0000001a}.alert-error{background:#fef2f2;color:#991b1b;border-left:4px solid #ef4444}.alert button{background:none;border:none;color:inherit;font-size:1.5rem;cursor:pointer;padding:0;width:2rem;height:2rem}.empty-state{background:#fff;border-radius:1rem;padding:4rem 2rem;text-align:center;box-shadow:0 4px 20px #0000001a}.empty-icon{font-size:5rem;margin-bottom:1.5rem;opacity:.5}.empty-state h2{font-size:1.75rem;color:#1f2937;margin:0 0 .75rem}.empty-state p{color:#6b7280;font-size:1.125rem;margin:0 0 2rem}.reviews-list{display:flex;flex-direction:column;gap:8px}.review-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border-radius:8px;margin-bottom:0;cursor:pointer;transition:all .2s;border:2px solid transparent}.review-item:hover{box-shadow:0 2px 8px #00000014;border-color:#667eea}.review-icon{font-size:24px;flex-shrink:0}.review-info{flex:1;min-width:0}.review-title{margin:0 0 4px;font-size:14px;font-weight:600;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.review-meta{display:flex;gap:12px;font-size:12px;color:#888}.meta-item{white-space:nowrap}.review-badges{display:flex;gap:6px;align-items:center;flex-shrink:0}.status-badge{padding:4px 10px;border-radius:12px;font-size:11px;font-weight:500;flex-shrink:0}.badge-completed{background:#f0fdf4;color:#16a34a}.badge-in_progress{background:#eff6ff;color:#3b82f6}.badge-failed{background:#fef2f2;color:#dc2626}.badge-pending{background:#fef3c7;color:#92400e}.review-actions{display:flex;gap:6px;flex-shrink:0}.btn-delete-small{padding:4px 8px;background:#fef2f2;border:1px solid #fecaca;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s;color:#dc2626}.btn-delete-small:hover{background:#fef2f2;border-color:#fecaca;color:#dc2626}.page-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;color:#fff}.spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.page-loading p{font-size:1.125rem;margin:0}@media (max-width: 768px){.review-list-page{padding:1rem}.header-content{flex-direction:column;align-items:flex-start}.header-title h1{font-size:2rem}.header-actions{width:100%;justify-content:flex-end}.review-item{flex-direction:column;align-items:stretch}.review-actions{flex-direction:row;width:100%}.review-actions .btn{flex:1}.review-meta{font-size:.75rem}}.suggestion-widget{position:fixed;bottom:24px;right:24px;z-index:1100;display:flex;flex-direction:column;align-items:flex-end;gap:12px}.suggestion-fab{width:52px;height:52px;border-radius:50%;border:none;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:24px;cursor:pointer;box-shadow:0 8px 20px #667eea66;transition:transform .2s ease,box-shadow .2s ease}.suggestion-fab:hover{transform:translateY(-2px);box-shadow:0 12px 24px #667eea73}.suggestion-panel{width:320px;background:#fff;border-radius:16px;padding:20px;box-shadow:0 16px 40px #0003;animation:slideUp .25s ease}.suggestion-panel-header{display:flex;justify-content:space-between;gap:12px;margin-bottom:16px}.suggestion-panel-header h3{margin:0;font-size:18px;color:#1a1a1a}.suggestion-panel-header p{margin:4px 0 0;font-size:13px;color:#666}.panel-close{border:none;background:#f3f4ff;color:#667eea;border-radius:50%;width:32px;height:32px;cursor:pointer;font-size:16px}.suggestion-form{display:flex;flex-direction:column;gap:14px}.suggestion-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#333}.suggestion-form input,.suggestion-form textarea{border:1px solid #e0e0e0;border-radius:10px;padding:10px 12px;font-size:14px;resize:none;font-family:inherit}.suggestion-form textarea{min-height:120px}.suggestion-form input:focus,.suggestion-form textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 2px #667eea33}.suggestion-feedback{padding:10px 12px;border-radius:10px;font-size:13px}.suggestion-feedback.error{background:#ffe8e8;color:#c23333}.suggestion-feedback.success{background:#e5f8ef;color:#1a7f4b}.suggestion-submit{padding:12px 18px;border:none;border-radius:10px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.suggestion-submit:disabled{opacity:.6;cursor:not-allowed}.suggestion-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px #667eea59}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 600px){.suggestion-widget{bottom:16px;right:16px}.suggestion-panel{width:calc(100vw - 48px)}}.error-boundary{display:flex;align-items:center;justify-content:center;min-height:60vh;padding:40px 20px;background:#f9fafb}.error-boundary-content{max-width:600px;width:100%;text-align:center;background:#fff;border-radius:12px;padding:48px 32px;box-shadow:0 4px 12px #0000001a}.error-icon{font-size:64px;margin-bottom:24px;animation:error-pulse 2s ease-in-out infinite}@keyframes error-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.error-boundary-content h2{font-size:28px;font-weight:600;color:#1f2937;margin:0 0 16px}.error-message{font-size:16px;line-height:1.6;color:#6b7280;margin:0 0 32px}.error-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.error-actions .btn-primary,.error-actions .btn-secondary{min-width:150px}.error-details{margin-top:32px;text-align:left;border-top:1px solid #e5e7eb;padding-top:24px}.error-details summary{cursor:pointer;font-weight:600;color:#6b7280;padding:8px;background:#f3f4f6;border-radius:4px;transition:background .2s}.error-details summary:hover{background:#e5e7eb}.error-stack{margin-top:16px;padding:16px;background:#1f2937;border-radius:8px;color:#f9fafb}.error-stack h4{margin:0 0 8px;font-size:14px;color:#10a37f}.error-stack pre{margin:0;padding:12px;background:#111827;border-radius:4px;overflow-x:auto;font-size:12px;line-height:1.6;color:#ef4444;white-space:pre-wrap;word-wrap:break-word}.error-stack h4+pre{margin-bottom:16px}@media (max-width: 640px){.error-boundary-content{padding:32px 24px}.error-icon{font-size:48px}.error-boundary-content h2{font-size:24px}.error-message{font-size:14px}.error-actions{flex-direction:column}.error-actions .btn-primary,.error-actions .btn-secondary{width:100%}}@media (prefers-reduced-motion: reduce){.error-icon{animation:none}}.loading-container{display:flex;justify-content:center;align-items:center;min-height:100vh}.spinner{border:4px solid rgba(255,255,255,.3);border-top:4px solid #fff;border-radius:50%;width:50px;height:50px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}*{margin:0;padding:0;box-sizing:border-box}:root{--spacing-xs: clamp(4px, 1vw, 8px);--spacing-sm: clamp(8px, 2vw, 12px);--spacing-md: clamp(12px, 3vw, 20px);--spacing-lg: clamp(16px, 4vw, 32px);--spacing-xl: clamp(20px, 5vw, 40px);--font-xs: clamp(10px, 2vw, 11px);--font-sm: clamp(12px, 2.5vw, 13px);--font-base: clamp(13px, 3vw, 14px);--font-md: clamp(14px, 3.5vw, 16px);--font-lg: clamp(18px, 4vw, 24px);--font-xl: clamp(20px, 5vw, 28px);--sidebar-width: 260px;--sidebar-collapsed: 20px;--sidebar-mobile: 50px;--header-height: 85px;--header-height-mobile: 70px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;overflow-x:hidden}#root{min-height:100vh;overflow-x:hidden}@media (max-width: 480px){:root{--header-height: 60px}}@media (hover: none) and (pointer: coarse){button,.btn-primary,.btn-secondary,input[type=checkbox],input[type=radio],select{min-height:44px;min-width:44px}}
