@import url("https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&family=Sora:wght@300;400;500;600;700;800&display=swap");:root{--bg-primary:#07070b;--bg-secondary:#0d0d14;--bg-tertiary:#111118;--bg-card:hsla(0,0%,100%,.02);--bg-card-hover:hsla(0,0%,100%,.04);--bg-glass:hsla(0,0%,100%,.03);--bg-glass-hover:hsla(0,0%,100%,.06);--bg-badge:hsla(0,0%,100%,.04);--text-primary:#f5f5f7;--text-secondary:#9191a4;--text-muted:#5a5a72;--accent-primary:#7c6fff;--accent-primary-hover:#9b8fff;--accent-secondary:#a78bff;--accent-glow:rgba(124,111,255,.18);--accent-gradient:linear-gradient(135deg,#7c6fff,#a78bff);--accent-gradient-text:linear-gradient(135deg,#c5bcff,#e9e4ff);--success:#34d399;--success-bg:rgba(52,211,153,.08);--warning:#fbbf24;--warning-bg:rgba(251,191,36,.08);--error:#f87171;--error-bg:hsla(0,91%,71%,.08);--info:#60a5fa;--info-bg:rgba(96,165,250,.08);--border:hsla(0,0%,100%,.06);--border-subtle:hsla(0,0%,100%,.04);--border-hover:hsla(0,0%,100%,.12);--border-accent:rgba(124,111,255,.35);--radius-xs:6px;--radius-sm:10px;--radius-md:14px;--radius-lg:18px;--radius-xl:24px;--radius-pill:999px;--shadow-sm:0 2px 8px rgba(0,0,0,.3);--shadow-md:0 4px 20px rgba(0,0,0,.4);--shadow-lg:0 8px 40px rgba(0,0,0,.5);--shadow-glow:0 0 48px rgba(124,111,255,.12);--shadow-glow-strong:0 0 60px rgba(124,111,255,.25);--transition-fast:120ms ease;--transition-base:220ms ease;--transition-slow:380ms ease;--sidebar-width:240px}*,:after,:before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;background-image:radial-gradient(ellipse 80% 60% at 20% 0,rgba(124,111,255,.04) 0,transparent 65%),radial-gradient(ellipse 60% 40% at 80% 100%,rgba(167,139,255,.03) 0,transparent 65%);background-attachment:fixed}a{text-decoration:none;color:inherit}button{cursor:pointer}button,input,textarea{font-family:inherit}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:hsla(0,0%,100%,.08);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:hsla(0,0%,100%,.15)}.font-display{font-family:Sora,Inter,sans-serif}h1,h2,h3,h4{font-weight:700;line-height:1.2;letter-spacing:-.02em}.gradient-text{background:var(--accent-gradient-text);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar-width);background:var(--bg-secondary);border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;z-index:50;padding:0}.sidebar-logo-wrap{display:flex;align-items:center;gap:10px;padding:24px 20px 20px;border-bottom:1px solid var(--border-subtle)}.sidebar-logo-icon{width:34px;height:34px;border-radius:var(--radius-sm);background:var(--accent-gradient);display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0;box-shadow:0 4px 16px rgba(124,111,255,.35)}.sidebar-logo-text{font-family:Sora,sans-serif;font-size:18px;font-weight:700;background:var(--accent-gradient-text);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.5px}.sidebar-nav{flex:1 1;padding:16px 10px;list-style:none;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.sidebar-section-label{font-size:10px;font-weight:600;color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;padding:12px 12px 6px}.sidebar-link{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);color:var(--text-secondary);font-weight:500;font-size:13.5px;transition:all var(--transition-fast);position:relative}.sidebar-link:hover{background:var(--bg-glass);color:var(--text-primary)}.sidebar-link.active{background:rgba(124,111,255,.1);color:var(--accent-secondary)}.sidebar-link.active:before{content:"";position:absolute;left:0;top:25%;bottom:25%;width:2.5px;background:var(--accent-gradient);border-radius:0 2px 2px 0}.sidebar-link svg{width:17px;height:17px;flex-shrink:0;opacity:.8}.sidebar-link.active svg{opacity:1}.sidebar-footer{padding:16px 10px;border-top:1px solid var(--border-subtle)}.sidebar-user{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.sidebar-user:hover{background:var(--bg-glass)}.sidebar-user-info{flex:1 1;min-width:0}.sidebar-user-name{font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-role{font-size:11px;color:var(--text-muted)}.main-content{margin-left:var(--sidebar-width);min-height:100vh}.sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:49;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:fadeSlideIn .2s ease}.sidebar-overlay.visible{display:block}.mobile-menu-toggle{display:none;position:fixed;top:14px;left:14px;z-index:51;width:40px;height:40px;border-radius:var(--radius-sm);background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-secondary);align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.mobile-menu-toggle:hover{background:var(--bg-glass-hover);color:var(--text-primary);border-color:var(--border-hover)}@media (max-width:768px){.sidebar{transform:translateX(-100%);transition:transform .25s cubic-bezier(.4,0,.2,1)}.sidebar.mobile-open{transform:translateX(0)}.main-content{margin-left:0!important}.mobile-menu-toggle{display:flex}}.page-container{max-width:1200px;margin:0 auto;padding:40px 32px}@media (max-width:768px){.page-container{padding:68px 16px 32px}}@media (max-width:480px){.page-container{padding:68px 12px 24px}}.page-header{margin-bottom:36px}.page-title{font-family:Sora,Inter,sans-serif;font-size:clamp(24px,3vw,32px);font-weight:700;letter-spacing:-.04em;color:var(--text-primary);margin-bottom:6px}.page-subtitle{color:var(--text-secondary);font-size:14px;line-height:1.6}.glass-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);transition:border-color var(--transition-base),background var(--transition-base),box-shadow var(--transition-base)}.glass-card:hover{border-color:var(--border-hover);background:var(--bg-card-hover)}.glass-card.glow:hover{box-shadow:var(--shadow-glow)}.glass-card.featured{background:linear-gradient(160deg,rgba(124,111,255,.08),rgba(167,139,255,.05));border-color:var(--border-accent);box-shadow:0 0 48px rgba(124,111,255,.08)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 18px;border-radius:var(--radius-sm);font-weight:600;font-size:13.5px;cursor:pointer;border:none;transition:all var(--transition-base);text-decoration:none;white-space:nowrap;letter-spacing:-.01em;position:relative;overflow:hidden}.btn:disabled{opacity:.4;cursor:not-allowed;pointer-events:none}.btn-primary{background:var(--accent-gradient);color:#fff;box-shadow:0 4px 16px rgba(124,111,255,.3)}.btn-primary:hover{box-shadow:0 6px 24px rgba(124,111,255,.45);transform:translateY(-1px);filter:brightness(1.08)}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--bg-glass);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--bg-glass-hover);border-color:var(--border-hover);transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:var(--bg-glass);color:var(--text-primary)}.btn-danger{background:var(--error-bg);color:var(--error);border:1px solid hsla(0,91%,71%,.15)}.btn-danger:hover{background:hsla(0,91%,71%,.15)}.btn-lg{padding:12px 24px;font-size:15px;border-radius:var(--radius-md)}.btn-sm{padding:6px 12px;font-size:12px;border-radius:var(--radius-xs)}.btn-xl{padding:14px 32px;font-size:16px;border-radius:var(--radius-md)}.btn-icon{background:var(--bg-glass);border:1px solid var(--border);color:var(--text-secondary);padding:8px;border-radius:var(--radius-sm);font-size:15px;transition:all var(--transition-fast)}.btn-icon:hover{background:var(--bg-glass-hover);border-color:var(--border-hover);color:var(--text-primary)}.w-full{width:100%}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:var(--radius-pill);font-size:11px;font-weight:600;letter-spacing:.01em;border:1px solid transparent}.badge-success{background:var(--success-bg);color:var(--success);border-color:rgba(52,211,153,.15)}.badge-warning{background:var(--warning-bg);color:var(--warning);border-color:rgba(251,191,36,.15)}.badge-error{background:var(--error-bg);color:var(--error);border-color:hsla(0,91%,71%,.15)}.badge-info{background:var(--info-bg);color:var(--info);border-color:rgba(96,165,250,.15)}.badge-accent{background:var(--accent-glow);color:var(--accent-secondary);border-color:var(--border-accent)}.badge-secondary{background:var(--bg-glass);color:var(--text-secondary);border-color:var(--border)}.grid{display:grid;grid-gap:20px;gap:20px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width:1024px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.stat-card{padding:24px 28px}.stat-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-weight:600;margin-bottom:10px}.stat-value{font-family:Sora,sans-serif;font-size:36px;font-weight:800;letter-spacing:-.04em;background:var(--accent-gradient-text);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}.input{width:100%;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:11px 14px;color:var(--text-primary);font-family:inherit;font-size:14px;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.input::placeholder{color:var(--text-muted)}.input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px rgba(124,111,255,.12)}.upload-zone{border:1.5px dashed var(--border);border-radius:var(--radius-lg);padding:52px 40px;text-align:center;cursor:pointer;transition:all var(--transition-base);background:var(--bg-glass);position:relative}.upload-zone:hover{border-color:var(--accent-primary);background:rgba(124,111,255,.04);box-shadow:0 0 0 4px rgba(124,111,255,.06)}.upload-zone.dragging{border-color:var(--accent-primary);background:rgba(124,111,255,.08);box-shadow:var(--shadow-glow)}.upload-icon{font-size:40px;margin-bottom:12px;opacity:.7}.document-card{gap:16px;padding:18px 22px;transition:all var(--transition-fast)}.document-card,.document-icon{display:flex;align-items:center}.document-icon{width:44px;height:44px;border-radius:var(--radius-sm);justify-content:center;font-size:18px;flex-shrink:0}.document-icon.pdf{background:hsla(0,91%,71%,.1)}.document-icon.audio{background:rgba(96,165,250,.1)}.document-icon.image{background:rgba(52,211,153,.1)}.document-icon.video{background:rgba(167,139,255,.1)}.document-info{flex:1 1;min-width:0}.document-name{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-meta{font-size:12px;color:var(--text-muted);margin-top:2px}.document-actions{display:flex;gap:6px}.chat-container{display:flex;flex-direction:column;height:calc(100vh - 40px)}.chat-messages{flex:1 1;overflow-y:auto;padding:28px 32px;display:flex;flex-direction:column;gap:20px;scroll-behavior:smooth}@media (max-width:768px){.chat-messages{padding:16px 12px;gap:16px}}.chat-message{max-width:72%;padding:14px 18px;border-radius:var(--radius-md);line-height:1.65;animation:fadeSlideIn .25s ease;font-size:14px}.chat-message.user{align-self:flex-end;background:var(--accent-gradient);color:#fff;border-bottom-right-radius:4px;box-shadow:0 4px 20px rgba(124,111,255,.25)}.chat-message.assistant{align-self:flex-start;background:var(--bg-card);border:1px solid var(--border);border-bottom-left-radius:4px;color:var(--text-primary)}.chat-input{flex:1 1;background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:13px 16px;color:var(--text-primary);font-family:inherit;font-size:14px;outline:none;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);resize:none;line-height:1.5}.chat-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px rgba(124,111,255,.1)}.chat-input::placeholder{color:var(--text-muted)}.table{width:100%;border-collapse:collapse}.table th{padding:12px 20px;text-align:left;font-size:11px;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.07em}.table td,.table th{border-bottom:1px solid var(--border-subtle)}.table td{padding:14px 20px;font-size:13.5px}.table tbody tr{transition:background var(--transition-fast)}.table tbody tr:hover{background:var(--bg-glass)}.table tbody tr:last-child td{border-bottom:none}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;text-align:center}.empty-state-icon{font-size:52px;margin-bottom:16px;opacity:.3}.empty-state-text{color:var(--text-muted);font-size:14px;max-width:360px;line-height:1.6;margin-top:6px}.loading-dots{display:inline-flex;gap:5px;align-items:center}.loading-dots span{width:7px;height:7px;border-radius:50%;background:var(--accent-primary);animation:dotPulse 1.4s ease-in-out infinite}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}.landing-hero{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:80px 24px 60px;position:relative;overflow:hidden}.landing-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 70% 50% at 20% 30%,rgba(124,111,255,.07) 0,transparent 60%),radial-gradient(ellipse 50% 40% at 85% 70%,rgba(167,139,255,.05) 0,transparent 60%);pointer-events:none}.landing-content{position:relative;z-index:1;max-width:720px}.landing-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:var(--radius-pill);border:1px solid var(--border-accent);background:rgba(124,111,255,.06);font-size:12px;font-weight:600;color:var(--accent-secondary);letter-spacing:.04em;text-transform:uppercase;margin-bottom:28px}.landing-title{font-family:Sora,sans-serif;font-size:clamp(38px,6.5vw,68px);font-weight:800;line-height:1.05;letter-spacing:-.04em;margin-bottom:22px;background:linear-gradient(150deg,#f5f5f7,#e0dcff 40%,#a78bff 85%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-subtitle{font-size:17px;color:var(--text-secondary);max-width:540px;margin:0 auto 44px;line-height:1.7}.landing-cta-group{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:20px;gap:20px;margin-top:96px;max-width:900px;margin-left:auto;margin-right:auto}@media (max-width:1024px){.features-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.features-grid{grid-template-columns:1fr;margin-top:60px}.landing-subtitle{font-size:15px}.landing-cta-group{flex-direction:column;align-items:center}.landing-cta-group .btn{width:100%;max-width:280px}}.feature-card{text-align:left;padding:28px 24px}.feature-icon{font-size:28px;margin-bottom:14px;display:block}.feature-title{font-size:16px;font-weight:700;margin-bottom:6px}.feature-desc{color:var(--text-secondary);font-size:13px;line-height:1.65}.pricing-card{padding:36px;text-align:center;position:relative;overflow:hidden}.pricing-card.featured{border-color:var(--border-accent);box-shadow:var(--shadow-glow)}.pricing-card.featured:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--accent-gradient)}.pricing-name{font-size:16px;font-weight:600;margin-bottom:6px}.pricing-price{font-family:Sora,sans-serif;font-size:44px;font-weight:800;letter-spacing:-.04em;background:var(--accent-gradient-text);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.pricing-period{color:var(--text-muted);font-size:13px}.pricing-features{list-style:none;margin:24px 0;text-align:left}.pricing-features li{padding:7px 0;color:var(--text-secondary);font-size:13.5px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--border-subtle)}.pricing-features li:last-child{border-bottom:none}.pricing-features li:before{content:"✓";color:var(--success);font-weight:700;font-size:12px;flex-shrink:0}.hover-bg-light:hover{background:var(--bg-glass)!important}.hover-lift:hover{transform:translateY(-2px)}.interactive{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.divider{height:1px;background:var(--border-subtle);margin:24px 0}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes dotPulse{0%,80%,to{transform:scale(.7);opacity:.5}40%{transform:scale(1);opacity:1}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes glow-pulse{0%,to{box-shadow:var(--shadow-glow)}50%{box-shadow:var(--shadow-glow-strong)}}.animate-fade-in{animation:fadeSlideIn .4s ease}.animate-glow-pulse{animation:glow-pulse 3s ease-in-out infinite}.text-muted{color:var(--text-muted)}.text-success{color:var(--success)}.text-error{color:var(--error)}.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width:768px){.chat-message{max-width:90%}.upload-zone{padding:36px 20px}.stat-value{font-size:28px}.document-card{gap:12px;padding:14px 16px}.document-info .document-name{font-size:13px}.billing-tabs-wrap,.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.billing-tabs-wrap{width:100%;scrollbar-width:none}.billing-tabs-wrap::-webkit-scrollbar{display:none}.wallet-card{padding:24px 20px 20px!important}.page-header-row{flex-direction:column!important;align-items:flex-start!important}.page-header-row .btn{width:100%}.quick-actions-header{margin-bottom:8px!important}.cta-banner{padding:24px 20px!important;text-align:center}.cta-banner-inner{flex-direction:column!important;align-items:center!important;text-align:center}.cta-banner-inner>div{text-align:center!important}.cta-banner-inner .btn{width:100%;max-width:280px}}@media (max-width:480px){.document-card{flex-wrap:wrap}.document-actions{margin-left:auto}.stat-card{padding:18px 16px}.btn-xl{padding:12px 22px;font-size:15px}}