@import"https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";:root{--bg-primary: #0a0e1a;--bg-secondary: #111827;--accent-cyan: #00d9ff;--accent-teal: #10b981;--accent-purple: #8b5cf6;--text-primary: #f3f4f6;--text-secondary: #9ca3af;--glass-bg: rgba(22, 30, 52, .55);--glass-border: rgba(0, 217, 255, .15);--glass-border-focus: rgba(0, 217, 255, .4);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .37);--font-sans: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--transition-smooth: all .3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);overflow-x:hidden;min-height:100vh;background-image:radial-gradient(at 10% 20%,rgba(99,102,241,.08) 0px,transparent 50%),radial-gradient(at 90% 10%,rgba(6,182,212,.08) 0px,transparent 50%),radial-gradient(at 50% 80%,rgba(139,92,246,.06) 0px,transparent 50%);background-attachment:fixed}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#0a0e1a80}::-webkit-scrollbar-thumb{background:#00d9ff33;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#00d9ff66}.glass-panel{background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:16px;box-shadow:var(--glass-shadow);transition:var(--transition-smooth)}.glass-panel:hover{border-color:#00d9ff40;box-shadow:0 12px 40px #00d9ff14}.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;border-radius:10px;font-weight:500;cursor:pointer;border:1px solid var(--glass-border);background:#161e3499;color:var(--text-primary);gap:8px;transition:var(--transition-smooth)}.btn:hover{background:#00d9ff1a;border-color:var(--accent-cyan);box-shadow:0 0 15px #00d9ff26;transform:translateY(-1px)}.btn-primary{background:linear-gradient(135deg,#06b6d466,#6366f166);border-color:var(--glass-border-focus)}.btn-primary:hover{background:linear-gradient(135deg,#06b6d499,#6366f199);box-shadow:0 0 20px #00d9ff4d}.btn-danger{background:#ef444426;border-color:#ef44444d;color:#fca5a5}.btn-danger:hover{background:#ef44444d;border-color:#ef4444;box-shadow:0 0 15px #ef444440}.upload-zone{border:2px dashed var(--glass-border);border-radius:16px;padding:30px 20px;text-align:center;background:#161e3440;cursor:pointer;transition:var(--transition-smooth)}.upload-zone:hover,.upload-zone.dragging{border-color:var(--accent-cyan);background:#00d9ff0d;box-shadow:0 0 20px #00d9ff1a}.app-container{display:flex;flex-direction:column;height:100vh;max-width:1440px;margin:0 auto;padding:16px}.app-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--glass-border);margin-bottom:16px}.app-title{font-size:1.8rem;font-weight:700;letter-spacing:-.5px;background:linear-gradient(90deg,#fff,var(--accent-cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.app-main{display:grid;grid-template-columns:360px 1fr;gap:20px;flex:1;min-height:0}@media (max-width: 1024px){.app-main{grid-template-columns:1fr}}.sidebar{display:flex;flex-direction:column;gap:16px;min-height:0}.content-area{display:flex;flex-direction:column;gap:20px;min-height:0}.search-container{position:relative;display:flex;gap:12px}.search-input{flex:1;background:#0a0e1a99;border:1px solid var(--glass-border);border-radius:12px;padding:14px 16px 14px 44px;color:var(--text-primary);font-size:1rem;outline:none;transition:var(--transition-smooth)}.search-input:focus{border-color:var(--accent-cyan);box-shadow:0 0 15px #00d9ff26;background:#0a0e1acc}.search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--text-secondary);pointer-events:none}.doc-list{display:flex;flex-direction:column;gap:10px;overflow-y:auto;flex:1;padding-right:4px}.doc-card{padding:12px;border-radius:12px;display:flex;align-items:center;justify-content:space-between;background:#1e29484d;border:1px solid rgba(255,255,255,.05);transition:var(--transition-smooth)}.doc-card:hover{background:#1e294880;border-color:#00d9ff33}.results-list{display:flex;flex-direction:column;gap:16px;overflow-y:auto;flex:1;padding-right:4px}.result-card{padding:20px;border-radius:16px;border:1px solid var(--glass-border);background:#161e3459;display:flex;flex-direction:column;gap:12px;transition:var(--transition-smooth)}.result-card:hover{border-color:var(--glass-border-focus);transform:translateY(-1px)}.result-header{display:flex;justify-content:space-between;align-items:center}.result-tag{font-size:.75rem;padding:3px 8px;border-radius:6px;font-weight:500;text-transform:uppercase}.tag-text{background:#6366f126;color:#818cf8;border:1px solid rgba(99,102,241,.3)}.tag-table{background:#10b98126;color:#34d399;border:1px solid rgba(16,185,129,.3)}.tag-equation{background:#8b5cf626;color:#c084fc;border:1px solid rgba(139,92,246,.3)}mark{background:#00d9ff40;color:var(--accent-cyan);padding:0 4px;border-radius:4px;font-weight:500;border-bottom:1.5px solid var(--accent-cyan)}.table-container{overflow-x:auto;border-radius:10px;border:1px solid var(--glass-border);margin-top:10px}table{width:100%;border-collapse:collapse;text-align:left;font-size:.9rem}th{background:#0a0e1acc;color:var(--accent-cyan);font-weight:600;padding:12px 14px;border-bottom:2px solid var(--glass-border)}td{padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.05);color:#d1d5db}tr:nth-child(2n){background:#1e294826}tr:hover{background:#00d9ff0d}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0a0e1ad9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;justify-content:center;align-items:center;padding:24px}.modal-content{width:100%;max-width:800px;max-height:85vh;display:flex;flex-direction:column;animation:modalEntrance .3s cubic-bezier(.34,1.56,.64,1)}@keyframes modalEntrance{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{padding:16px 20px;border-bottom:1px solid var(--glass-border);display:flex;justify-content:space-between;align-items:center}.modal-body{padding:20px;overflow-y:auto;flex:1;line-height:1.6;color:#d1d5db}.modal-body p{margin-bottom:12px}.spinner{border:3px solid rgba(0,217,255,.1);border-top:3px solid var(--accent-cyan);border-radius:50%;width:24px;height:24px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:60px 40px;color:var(--text-secondary);display:flex;flex-direction:column;align-items:center;gap:16px}.skeleton-glow{background:linear-gradient(90deg,#ffffff08 25%,#ffffff14,#ffffff08 75%);background-size:200% 100%;animation:skeleton-loading 1.5s infinite;border-radius:4px}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.markdown-content p{margin-top:0;margin-bottom:12px}.markdown-content ul,.markdown-content ol{margin-top:6px;margin-bottom:12px;padding-left:20px}.markdown-content li{margin-bottom:6px}.markdown-content strong{color:var(--accent-cyan);font-weight:600}@media (max-width: 1024px){.app-container{height:auto!important;min-height:100vh;overflow-y:auto!important;padding:12px;display:block}.app-main{display:flex;flex-direction:column;height:auto;gap:16px;margin-top:8px}.sidebar{order:2;height:auto;flex:none}.sidebar .glass-panel{height:auto!important;min-height:auto!important}.sidebar div[style*=overflow-y],.sidebar div[style*=overflowY]{max-height:220px!important;overflow-y:auto!important}.content-area{order:1;height:auto;flex:none;display:flex;flex-direction:column;gap:14px}.content-area>div:nth-child(1){order:2;height:auto!important;min-height:350px!important}.content-area>div:nth-child(2){order:1;position:sticky;top:10px;z-index:100;box-shadow:0 10px 30px #0006!important;background:#0d1426d9!important;-webkit-backdrop-filter:blur(16px)!important;backdrop-filter:blur(16px)!important}.ai-answer-panel{max-height:480px;overflow-y:auto}}@media (max-width: 768px){.app-header{flex-direction:column;align-items:flex-start;gap:10px;padding-bottom:12px;margin-bottom:12px}.app-title{font-size:1.4rem;text-align:left}}
