@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400&display=swap";:root{--color-bg-app: #0B0F1A;--color-bg-sidebar: #111827;--color-bg-card: #1A2235;--color-bg-input: #1E2A3A;--color-bg-hover: #243044;--color-border: #2D3F55;--color-border-glow: #3B82F6;--color-primary: #3B82F6;--color-primary-light: #60A5FA;--color-gold: #F59E0B;--color-gold-light: #FCD34D;--color-success: #10B981;--color-error: #EF4444;--color-text-primary: #F1F5F9;--color-text-secondary: #94A3B8;--color-text-muted: #4B5E78;--gradient-primary: linear-gradient(135deg, #1E3A5F 0%, #0B1628 100%);--gradient-gold: linear-gradient(90deg, #F59E0B, #FCD34D);--gradient-blue: linear-gradient(135deg, #3B82F6, #1D4ED8);--shadow-glow-blue: 0 0 24px rgba(59, 130, 246, .25);--shadow-glow-gold: 0 0 20px rgba(245, 158, 11, .3);--shadow-card: 0 4px 24px rgba(0, 0, 0, .4);--bg-header: #0D1424;--text-on-navy: #F1F5F9}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,system-ui,-apple-system,sans-serif;background-color:var(--color-bg-app);color:var(--color-text-primary);line-height:1.7;-webkit-font-smoothing:antialiased;min-height:100vh;position:relative;overflow-x:hidden}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");opacity:.05;z-index:-1}.App{display:flex;flex-direction:column;height:100vh;width:100vw;overflow:hidden;background:radial-gradient(ellipse 80% 60% at 50% 0%,rgba(59,130,246,.07) 0%,transparent 60%);position:relative}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#2d3f55;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#3b82f6}h1,h2,h3{font-family:Plus Jakarta Sans,sans-serif;font-weight:700;color:var(--color-text-primary)}.main-wrapper{display:flex;flex-grow:1;overflow:hidden;position:relative}.header-container{height:64px;background:#0d1424;border-bottom:1px solid rgba(59,130,246,.3);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between;z-index:50}.header-left{display:flex;align-items:center;gap:1.5rem}.logo-brand{font-family:Plus Jakarta Sans,sans-serif;font-weight:700;font-size:18px;color:#f1f5f9;letter-spacing:-.01em}.logo-com{font-size:11px;color:#f59e0b;text-transform:uppercase;letter-spacing:.15em;margin-left:2px}.status-pill{display:flex;align-items:center;gap:6px;background:#10b9811a;padding:4px 10px;border-radius:99px;font-size:10px;font-weight:700;color:#10b981;text-transform:uppercase;letter-spacing:.05em}.pulse-dot{width:6px;height:6px;background:#10b981;border-radius:50%;animation:pulse-glow 2s infinite}.user-profile{width:34px;height:34px;border-radius:50%;background:var(--gradient-blue);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.user-profile:hover{box-shadow:var(--shadow-glow-blue);transform:scale(1.05)}.sidebar-container{width:260px;background:linear-gradient(180deg,#131c2e,#0f1822);border-right:1px solid #1E2D42;display:flex;flex-direction:column;padding:1.25rem 1rem;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:40}.sidebar-container.closed{transform:translate(-100%);width:0;padding:0;border:none}.new-tab-btn{height:42px;background:linear-gradient(135deg,#1e3a5f,#162d4a);border:1px solid rgba(59,130,246,.35);border-radius:10px;color:#60a5fa!important;font-weight:500;font-size:14px;display:flex;align-items:center;justify-content:center;gap:10px;cursor:pointer;transition:all .2s;margin-bottom:1.5rem}.new-tab-btn:hover{border-color:#3b82f6;box-shadow:var(--shadow-glow-blue);transform:translateY(-1px)}.new-tab-btn svg{color:#f59e0b}.nav-item{padding:12px 14px;border-radius:10px;display:flex;align-items:flex-start;gap:12px;cursor:pointer;transition:all .2s;color:#64748b;margin-bottom:4px}.nav-item-text{display:flex;flex-direction:column;line-height:1.3}.nav-item-text span:first-child{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.nav-item-text span:last-child{font-size:11px;opacity:.7}.nav-item:hover{background:#3b82f614;color:#94a3b8}.nav-item.active{background:linear-gradient(135deg,#3b82f626,#1d4ed81a);border-left:3px solid #3B82F6;color:#60a5fa;box-shadow:inset 0 0 20px #3b82f60d}.nav-item.active svg{color:#f59e0b!important}.nav-item.active .nav-item-text span:last-child{color:#94a3b8}.sidebar-footer{margin-top:auto;padding-top:1rem;border-top:1px solid rgba(255,255,255,.05);display:flex;flex-direction:column;align-items:center;gap:8px}.powered-by{font-size:10px;color:#2d3f55;text-transform:uppercase;letter-spacing:.05em}.main-content{flex-grow:1;display:flex;flex-direction:column;position:relative;overflow:hidden}.empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center}.intelligence-badge{background:#f59e0b1f;border:1px solid rgba(245,158,11,.3);color:#f59e0b!important;font-size:10px!important;font-weight:700;text-transform:uppercase;letter-spacing:.12em;padding:4px 14px;border-radius:99px;margin-bottom:1.5rem}.empty-state h2{font-family:Plus Jakarta Sans,sans-serif!important;font-size:3rem!important;color:#f1f5f9!important;letter-spacing:-.02em!important;margin-bottom:.5rem!important}.brand-rule{width:60px;height:2px;background:var(--gradient-gold);margin:1.5rem auto}.empty-desc{font-size:1.1rem!important;color:#64748b!important;max-width:580px!important;margin-bottom:3rem!important}.briefings-label{font-size:10px;font-weight:700;color:#4b5e78;text-transform:uppercase;letter-spacing:.1em;margin-bottom:1rem}.intelligence-card{background:#1a2235;border:1px solid #2D3F55;border-radius:12px;padding:16px 20px;min-width:200px;display:flex;flex-direction:column;align-items:flex-start;text-align:left;cursor:pointer;transition:all .25s ease;position:relative;overflow:hidden;border-left:3px solid #F59E0B}.intelligence-card:before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:var(--gradient-gold)}.intelligence-card:hover{border-color:#3b82f6;box-shadow:var(--shadow-glow-blue);transform:translateY(-3px)}.intelligence-card span{font-family:Inter,sans-serif!important;font-size:15px!important;font-weight:600!important;color:#f1f5f9!important;margin-bottom:2px!important}.intelligence-card small{font-family:Inter,sans-serif!important;font-size:11px!important;color:#4b5e78!important;text-transform:uppercase;letter-spacing:.05em}.chat-container{flex:1;overflow-y:auto;padding:2rem;display:flex;flex-direction:column}.chat-messages{max-width:800px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem;padding-bottom:100px}.message-wrapper{animation:slideInUp .3s ease forwards}.message-wrapper.user .message-content{background:linear-gradient(135deg,#1a2d45,#162438);border:1px solid #2D3F55;border-radius:14px;padding:16px 20px;border-left:4px solid #3B82F6;color:#d1d5db;font-size:15px}.message-wrapper.ai .message-content{background:#141e2e;border:1px solid #1E2D42;border-radius:14px;padding:0;position:relative;transition:all .2s ease}.ai-response-inner{padding:20px 24px;position:relative}.ai-response-inner:before{content:"";position:absolute;top:0;left:0;width:100%;height:2px;background:var(--gradient-gold)}.ai-badge{position:absolute;top:12px;right:12px;width:20px;height:20px;background:var(--gradient-blue);border-radius:50%;color:#fff;font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;z-index:10}.message-wrapper.ai:hover .message-content{border-color:#3b82f666;box-shadow:var(--shadow-glow-blue)}.prose{color:#c8d3e0;font-size:15px;line-height:1.8}.prose h1,.prose h2,.prose h3{font-family:Plus Jakarta Sans,sans-serif;color:#f1f5f9;border-bottom:1px solid #1E2D42;padding-bottom:.5rem;margin-top:1.5rem}.prose strong,.prose b{color:#60a5fa}.prose code{background:#0d1a2e;color:#f59e0b;border:1px solid #2D3F55;font-family:JetBrains Mono,monospace;padding:2px 5px;border-radius:4px}.prose pre{background:#0d1a2e!important;border:1px solid #2D3F55!important;border-left:3px solid #3B82F6!important;padding:1rem;border-radius:8px}.prose blockquote{background:#3b82f614;border-left:4px solid #3B82F6!important;color:#94a3b8;padding:.5rem 1rem;font-style:italic}.prose table{width:100%;border-collapse:collapse;margin:1rem 0}.prose th{background:#1e2d42;color:#60a5fa;text-align:left;padding:10px;border:1px solid #2D3F55}.prose td{padding:8px 10px;border:1px solid #2D3F55}.prose tr:hover{background:#3b82f60d}.prose a{color:#60a5fa;text-decoration:none}.prose a:hover{text-decoration:underline;color:#fcd34d}.input-container{padding:1.5rem 2rem 2.5rem;background:linear-gradient(to top,#0B0F1A 60%,transparent);width:100%;display:flex;justify-content:center;position:absolute;bottom:0;left:0;z-index:30}.query-input-wrapper{background:#141e2e;border:1px solid #2D3F55;border-radius:16px;padding:10px 18px 10px 24px;width:100%;max-width:800px;display:flex;align-items:flex-end;gap:12px;transition:all .3s ease;box-shadow:0 -10px 40px #0b0f1acc}.query-input-wrapper:focus-within{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626,0 -10px 40px #0b0f1acc;transform:translateY(-2px)}.query-input-wrapper textarea{background:transparent;border:none;outline:none;color:#d1d5db;font-size:15px;font-family:inherit;resize:none;padding:10px 0;flex:1;max-height:200px}.query-input-wrapper textarea::placeholder{color:#4b5e78}.send-btn{width:38px;height:38px;background:var(--gradient-blue);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;border:none;cursor:pointer;transition:all .2s;flex-shrink:0;margin-bottom:4px}.send-btn:hover:not(:disabled){box-shadow:var(--shadow-glow-blue);transform:scale(1.08)}.send-btn:disabled{background:#1e2d42;color:#4b5e78;cursor:not-allowed}.loading-status-container{display:flex;flex-direction:column;gap:12px;padding:20px 24px}.typing-indicator{display:flex;gap:6px}.dot{width:8px;height:8px;background:#3b82f6;border-radius:50%;animation:bounce 1.4s infinite ease-in-out both}.loading-status-text{font-size:13px;color:#4b5e78;font-style:italic;animation:fadeInOut 2s infinite ease-in-out}.page-header{display:flex;align-items:center;gap:16px;margin-bottom:2rem}.page-accent{width:12px;height:40px;background:var(--gradient-gold);border-radius:4px}.upload-box{background:linear-gradient(135deg,#0f1e2e,#0d1728)!important;border:2px dashed #2D3F55!important;border-radius:16px!important;padding:48px 24px!important;position:relative;transition:all .3s ease!important}.step-badge{position:absolute;top:16px;left:16px;font-size:9px;font-weight:700;padding:2px 10px;border-radius:99px;text-transform:uppercase;letter-spacing:.1em}.step-badge.gold{color:#f59e0b;background:#f59e0b1a;border:1px solid rgba(245,158,11,.25)}.step-badge.blue{color:#3b82f6;background:#3b82f61a;border:1px solid rgba(59,130,246,.25)}.upload-box:hover{border-color:#3b82f6!important}.upload-box.has-file{border-color:#10b981!important;background:#10b9810d!important}.browse-btn{background:#1e2d42!important;border:1px solid #2D3F55!important;color:#94a3b8!important;border-radius:8px!important}.browse-btn:hover{border-color:#3b82f6!important;color:#60a5fa!important}.generate-btn{background:linear-gradient(135deg,#1d4ed8,#2563eb)!important;height:52px;border-radius:12px!important;width:100%;font-weight:600!important;display:flex!important;align-items:center;justify-content:center;gap:10px}.generate-btn:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#3b82f6)!important;box-shadow:0 6px 24px #2563eb66!important}.generate-btn.loading{animation:shimmer 2s infinite linear;background-size:200% auto}@keyframes slideInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@keyframes pulse-glow{0%,to{opacity:1;box-shadow:0 0 4px #10b981}50%{opacity:.5;box-shadow:0 0 8px #10b981}}@keyframes pulse-glow-blue{0%,to{opacity:1;box-shadow:0 0 4px #3b82f6}50%{opacity:.5;box-shadow:0 0 8px #3b82f6}}.pulse-dot-blue{width:6px;height:6px;background:#3b82f6;border-radius:50%;animation:pulse-glow-blue 2s infinite}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes fadeInOut{0%,to{opacity:.6}50%{opacity:1}}@media(max-width:768px){.sidebar-container{position:fixed;top:64px;height:calc(100vh - 64px);z-index:100}.empty-state h2{font-size:1.75rem!important}.upload-panels{flex-direction:column}.suggestions{overflow-x:auto;flex-wrap:nowrap;padding-bottom:1rem;width:100%;justify-content:flex-start}}.maintenance-container{position:fixed;top:0;left:0;width:100vw;height:100vh;background:var(--color-bg-app);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000;padding:2rem;text-align:center;overflow:hidden}.maintenance-glow{position:absolute;width:400px;height:400px;background:radial-gradient(circle,rgba(59,130,246,.15) 0%,transparent 70%);border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%);animation:pulse-large 4s infinite ease-in-out;pointer-events:none}.maintenance-content{position:relative;z-index:10;max-width:600px}.maintenance-logo{font-family:Plus Jakarta Sans,sans-serif;font-weight:700;font-size:2.5rem;margin-bottom:2rem;letter-spacing:-.02em}.maintenance-title{font-size:2.5rem;background:linear-gradient(135deg,#f1f5f9,#94a3b8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:1rem;opacity:0;animation:fadeIn .8s ease-out forwards}.maintenance-subtitle{font-size:1.25rem;color:var(--color-text-secondary);font-weight:400;letter-spacing:.05em;opacity:0;animation:fadeIn .8s ease-out .3s forwards}.maintenance-spinner{margin-top:3rem;width:40px;height:40px;border:3px solid rgba(59,130,246,.1);border-top-color:#3b82f6;border-radius:50%;animation:spin 1.5s linear infinite;opacity:0;animation:spin 1.5s linear infinite .6s forwards,fadeIn .8s ease-out .6s forwards}@keyframes pulse-large{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.5}50%{transform:translate(-50%,-50%) scale(1.2);opacity:.8}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}
