:root{--bg: #0A0A0A;--bg2: #0F0F0F;--bg3: #1A1A1A;--border: #27272A;--border-subtle: #18181B;--text: #F4F4F5;--text2: #A1A1AA;--text3: #52525B;--text4: #3F3F46;--font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;background:var(--bg);color:var(--text);font-family:var(--font);font-size:13px;-webkit-font-smoothing:antialiased}.app{display:flex;flex-direction:column;height:100vh;overflow:hidden}.app-header{height:48px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;padding:0 16px;flex-shrink:0;background:var(--bg)}.header-left{display:flex;align-items:center;gap:8px}.app-name{font-weight:500;font-size:14px;color:var(--text);letter-spacing:.1em}.app-plan{font-size:10px;font-family:monospace;color:var(--text3);text-transform:uppercase;letter-spacing:.1em;margin-left:8px}.header-right{display:flex;align-items:center;gap:16px}.workspace-label{font-size:12px;color:var(--text3)}.workspace-label strong{color:var(--text2);font-weight:500}.cmd-badge{width:20px;height:20px;border:1px solid var(--border);border-radius:3px;display:flex;align-items:center;justify-content:center;color:var(--text3)}.app-body{display:flex;flex:1;overflow:hidden}.sidebar{width:240px;border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;background:var(--bg2);flex-shrink:0}.sidebar-search{padding:12px;position:relative}.search-icon{position:absolute;left:20px;top:50%;transform:translateY(-50%);color:var(--text3);pointer-events:none}.search-input{width:100%;background:var(--bg3);border:1px solid var(--border);border-radius:3px;padding:6px 8px 6px 24px;font-size:12px;color:var(--text);outline:none;font-family:var(--font);transition:border-color .15s}.search-input:focus{border-color:var(--text3)}.search-input::placeholder{color:var(--text3)}.sidebar-content{flex:1;overflow-y:auto;padding:4px 8px}.sidebar-section-label{font-size:10px;font-weight:500;color:var(--text3);text-transform:uppercase;letter-spacing:.1em;padding:0 8px;margin-bottom:6px}.sidebar-item{width:100%;text-align:left;padding:6px 8px;font-size:12px;color:var(--text3);background:none;border:none;border-radius:3px;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .15s;font-family:var(--font);justify-content:space-between;margin-bottom:2px}.sidebar-item:hover,.sidebar-item.active{color:var(--text2);background:var(--bg3)}.sidebar-item-icon{color:var(--text4);flex-shrink:0}.sidebar-item-dot{width:6px;height:6px;border-radius:50%;background:var(--text3);flex-shrink:0}.main{flex:1;display:flex;flex-direction:column;position:relative;background:var(--bg);overflow:hidden}.messages{flex:1;overflow-y:auto;padding:32px 32px 120px;display:flex;flex-direction:column;gap:32px}.messages::-webkit-scrollbar{width:3px}.messages::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.msg{display:flex;flex-direction:column}.msg-user{align-items:flex-end}.msg-user .msg-text{font-size:14px;color:var(--text);max-width:70%;line-height:1.7}.msg-assistant{align-items:flex-start;max-width:85%}.msg-meta{display:flex;align-items:center;gap:8px;margin-bottom:10px}.msg-badge{padding:2px 6px;border:1px solid var(--border);border-radius:3px;font-size:9px;font-family:monospace;text-transform:uppercase;letter-spacing:.1em;color:var(--text3)}.msg-assistant .msg-text{font-size:14px;color:var(--text2);line-height:1.8}.msg-text code{background:var(--bg3);padding:2px 5px;border-radius:3px;font-family:monospace;font-size:12px;color:var(--text2)}.msg-text strong{color:var(--text);font-weight:500}.msg-image-wrap{max-width:480px}.msg-image{width:100%;border-radius:6px;border:1px solid var(--border-subtle)}.msg-file-indicator{display:inline-flex;align-items:center;gap:6px;margin-top:6px;padding:3px 8px;background:var(--bg3);border:1px solid var(--border);border-radius:3px;font-size:11px;color:var(--text3)}.chat-input-wrap{position:absolute;bottom:0;left:0;right:0;padding:24px;background:linear-gradient(to top,var(--bg) 80%,transparent);display:flex;flex-direction:column;align-items:center}.chat-input-row{max-width:640px;width:100%;margin:0 auto;display:flex;align-items:center;gap:12px}.chat-input{flex:1;background:transparent;border:none;border-bottom:1px solid var(--border);padding-bottom:8px;font-size:14px;color:var(--text);outline:none;font-family:var(--font);transition:border-color .15s}.chat-input:focus{border-color:var(--text3)}.chat-input::placeholder{color:var(--text3)}.icon-btn{background:none;border:none;cursor:pointer;color:var(--text3);padding:0;display:flex;align-items:center;gap:4px;transition:color .15s}.icon-btn:hover{color:var(--text)}.icon-btn.send{color:var(--text3)}.icon-btn.send:hover{color:var(--text)}.image-gen-btn{color:var(--text4);transition:color .15s}.image-gen-btn:hover{color:var(--text)}.attached-file-badge{max-width:640px;width:100%;margin:0 auto 8px;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:var(--bg3);border:1px solid var(--border);border-radius:4px;font-size:12px;color:var(--text2);align-self:flex-start}.attached-file-name{max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attached-file-remove{background:none;border:none;cursor:pointer;color:var(--text3);padding:0;display:flex;align-items:center;margin-left:4px;transition:color .15s}.attached-file-remove:hover{color:var(--text)}.canvas-panel{width:380px;border-left:1px solid var(--border-subtle);background:var(--bg2);display:flex;flex-direction:column;flex-shrink:0}.canvas-header{height:48px;border-bottom:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;padding:0 16px;flex-shrink:0}.canvas-title{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:var(--text2)}.canvas-actions{display:flex;gap:12px}.canvas-body{flex:1;padding:24px;overflow-y:auto}.canvas-body::-webkit-scrollbar{width:3px}.canvas-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.canvas-text{font-size:13px;line-height:1.9;color:var(--text2);font-family:Georgia,serif;white-space:pre-wrap;margin:0;background:transparent;border:none;padding:0}.cursor-blink{display:inline-block;width:6px;height:16px;background:var(--text2);margin-left:2px;vertical-align:middle;animation:blink 1s infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.export-dropdown-wrap{position:relative}.export-dropdown{position:absolute;top:100%;right:0;margin-top:4px;background:var(--bg3);border:1px solid var(--border);border-radius:4px;min-width:140px;z-index:50;overflow:hidden}.export-dropdown-item{width:100%;text-align:left;padding:8px 12px;font-size:12px;color:var(--text2);background:none;border:none;cursor:pointer;font-family:var(--font);transition:all .1s;display:block}.export-dropdown-item:hover{background:var(--border);color:var(--text)}.login-screen{height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg)}.login-box{display:flex;flex-direction:column;align-items:center;gap:12px;width:360px}.login-title{font-size:18px;font-weight:500;letter-spacing:.1em;color:var(--text)}.login-subtitle{font-size:13px;color:var(--text3);margin-bottom:16px}.loading-screen{height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg)}.empty-chat{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;gap:12px}.empty-title{font-size:18px;font-weight:500;letter-spacing:.1em;color:var(--text)}.empty-subtitle{font-size:14px;color:var(--text3)}.sidebar-top{padding:0 8px 8px}.sidebar-new-btn{width:100%;display:flex;align-items:center;gap:8px;padding:6px 8px;font-size:12px;color:var(--text3);background:none;border:1px solid var(--border);border-radius:3px;cursor:pointer;font-family:var(--font);transition:all .15s}.sidebar-new-btn:hover{color:var(--text2);border-color:var(--text3)}.sidebar-empty{padding:16px 8px;font-size:12px;color:var(--text4);text-align:center}.landing{min-height:100vh;background:#0a0a0a;color:#f4f4f5;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}.landing-nav{position:fixed;top:0;left:0;right:0;z-index:100;background:#0a0a0acc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid #18181B}.landing-nav-inner{max-width:1080px;margin:0 auto;padding:0 24px;height:56px;display:flex;align-items:center;justify-content:space-between}.landing-logo{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:500;letter-spacing:.1em;color:#f4f4f5}.landing-logo-icon{width:18px;height:18px;background:#f4f4f5;border-radius:3px}.landing-nav-links{display:flex;align-items:center;gap:8px}.landing-nav-link{background:none;border:none;padding:6px 12px;font-size:13px;color:#71717a;cursor:pointer;font-family:inherit;transition:color .15s;border-radius:4px}.landing-nav-link:hover{color:#f4f4f5;background:#ffffff0a}.landing-nav-actions{display:flex;align-items:center;gap:8px}.landing-nav-btn{background:none;border:1px solid #27272A;border-radius:4px;padding:6px 16px;font-size:13px;color:#a1a1aa;cursor:pointer;font-family:inherit;transition:all .15s}.landing-nav-btn:hover{color:#f4f4f5;border-color:#3f3f46}.landing-nav-cta{background:#f4f4f5;color:#0a0a0a;border:none;border-radius:4px;padding:6px 16px;font-size:13px;font-weight:500;cursor:pointer;font-family:inherit;transition:all .15s}.landing-nav-cta:hover{background:#e4e4e7}.landing-hero{padding:160px 24px 80px;text-align:center}.landing-hero-inner{max-width:640px;margin:0 auto}.landing-badge{display:inline-block;padding:4px 14px;border:1px solid #27272A;border-radius:20px;font-size:11px;color:#a1a1aa;letter-spacing:.05em;margin-bottom:32px}.landing-hero-title{font-size:72px;font-weight:600;letter-spacing:.15em;color:#f4f4f5;margin-bottom:20px;line-height:1}.landing-hero-subtitle{font-size:17px;color:#a1a1aa;line-height:1.7;max-width:500px;margin:0 auto 40px}.landing-hero-actions{display:flex;align-items:center;justify-content:center;gap:12px}.landing-cta{display:inline-flex;align-items:center;gap:8px;background:#f4f4f5;color:#0a0a0a;border:none;border-radius:4px;padding:10px 24px;font-size:14px;font-weight:500;cursor:pointer;font-family:inherit;transition:all .15s}.landing-cta:hover{background:#e4e4e7}.landing-cta-secondary{display:inline-flex;align-items:center;gap:8px;background:none;color:#a1a1aa;border:1px solid #27272A;border-radius:4px;padding:10px 24px;font-size:14px;font-weight:500;cursor:pointer;font-family:inherit;transition:all .15s}.landing-cta-secondary:hover{color:#f4f4f5;border-color:#3f3f46}.landing-stats{border-top:1px solid #18181B;border-bottom:1px solid #18181B;padding:0 24px}.landing-stats-inner{max-width:1080px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:0}.landing-stat{display:flex;flex-direction:column;align-items:center;padding:32px 16px;border-right:1px solid #18181B}.landing-stat:last-child{border-right:none}.landing-stat-value{font-size:28px;font-weight:600;color:#f4f4f5;letter-spacing:-.02em}.landing-stat-label{font-size:12px;color:#52525b;margin-top:4px;letter-spacing:.02em}.landing-logos{padding:48px 24px;text-align:center;border-bottom:1px solid #18181B}.landing-logos-label{font-size:12px;color:#3f3f46;letter-spacing:.08em;text-transform:uppercase;margin-bottom:24px}.landing-logos-row{display:flex;align-items:center;justify-content:center;gap:48px;flex-wrap:wrap}.landing-logo-text{font-size:18px;font-weight:600;color:#27272a;letter-spacing:.02em;transition:color .2s}.landing-logo-text:hover{color:#3f3f46}.landing-section-inner{max-width:1080px;margin:0 auto}.landing-section-header{text-align:center;margin-bottom:48px}.landing-section-badge{display:inline-block;padding:3px 10px;border:1px solid #27272A;border-radius:12px;font-size:10px;color:#71717a;letter-spacing:.08em;text-transform:uppercase;margin-bottom:16px}.landing-section-title{font-size:28px;font-weight:500;letter-spacing:.02em;color:#f4f4f5;margin-bottom:12px}.landing-section-subtitle{font-size:15px;color:#52525b;margin-bottom:0}.landing-features{padding:80px 24px}.landing-features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.landing-feature-card{background:#0f0f0f;border:1px solid #18181B;border-radius:8px;padding:32px;transition:border-color .2s}.landing-feature-card:hover{border-color:#27272a}.landing-feature-icon{color:#a1a1aa;margin-bottom:16px}.landing-feature-title{font-size:15px;font-weight:500;color:#f4f4f5;margin-bottom:8px}.landing-feature-desc{font-size:13px;color:#52525b;line-height:1.6}.landing-how{padding:80px 24px;border-top:1px solid #18181B}.landing-how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:48px}.landing-how-card{background:#0f0f0f;border:1px solid #18181B;border-radius:8px;padding:32px}.landing-how-step{font-size:32px;font-weight:700;color:#1a1a1a;font-family:SF Mono,Fira Code,monospace;margin-bottom:16px;line-height:1}.landing-how-card:hover .landing-how-step{color:#27272a}.landing-how-title{font-size:15px;font-weight:500;color:#f4f4f5;margin-bottom:8px}.landing-how-desc{font-size:13px;color:#52525b;line-height:1.6}.landing-how-detail{background:#0f0f0f;border:1px solid #18181B;border-radius:8px;padding:32px;text-align:center}.landing-how-detail-title{font-size:10px;color:#52525b;letter-spacing:.12em;text-transform:uppercase;margin-bottom:20px}.landing-how-flow{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}.flow-node{padding:6px 14px;border:1px solid #27272A;border-radius:4px;font-size:12px;color:#a1a1aa;font-family:SF Mono,Fira Code,monospace}.flow-arrow{color:#3f3f46;font-size:14px}.landing-how-detail-text{font-size:13px;color:#3f3f46;line-height:1.6;max-width:600px;margin:0 auto}.landing-testimonials{padding:80px 24px;border-top:1px solid #18181B}.landing-testimonials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.landing-testimonial-card{background:#0f0f0f;border:1px solid #18181B;border-radius:8px;padding:28px;display:flex;flex-direction:column;transition:border-color .2s}.landing-testimonial-card:hover{border-color:#27272a}.landing-testimonial-text{font-size:13px;color:#a1a1aa;line-height:1.7;flex:1;margin-bottom:20px;font-style:italic}.landing-testimonial-author{display:flex;align-items:center;gap:12px;padding-top:16px;border-top:1px solid #18181B}.landing-testimonial-avatar{width:36px;height:36px;border-radius:50%;background:#1a1a1a;border:1px solid #27272A;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:#71717a;letter-spacing:.05em;flex-shrink:0}.landing-testimonial-name{font-size:13px;font-weight:500;color:#f4f4f5}.landing-testimonial-role{font-size:11px;color:#52525b;margin-top:2px}.landing-pricing{padding:80px 24px;border-top:1px solid #18181B}.landing-pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.landing-plan-card{background:#0f0f0f;border:1px solid #18181B;border-radius:8px;padding:32px;display:flex;flex-direction:column;position:relative;transition:border-color .2s}.landing-plan-card:hover{border-color:#27272a}.landing-plan-card.highlight{border-color:#f4f4f5}.landing-plan-badge{position:absolute;top:-10px;left:50%;transform:translate(-50%);background:#f4f4f5;color:#0a0a0a;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:3px 12px;border-radius:10px}.landing-plan-name{font-size:14px;font-weight:500;color:#a1a1aa;text-transform:uppercase;letter-spacing:.1em;margin-bottom:16px}.landing-plan-price{display:flex;align-items:baseline;gap:4px;margin-bottom:24px}.landing-plan-amount{font-size:36px;font-weight:600;color:#f4f4f5}.landing-plan-period{font-size:13px;color:#52525b}.landing-plan-features{list-style:none;padding:0;margin:0 0 32px;flex:1;display:flex;flex-direction:column;gap:10px}.landing-plan-features li{display:flex;align-items:center;gap:8px;font-size:13px;color:#a1a1aa}.landing-plan-features li svg{color:#52525b;flex-shrink:0}.landing-plan-cta{width:100%;padding:10px;border-radius:4px;font-size:13px;font-weight:500;cursor:pointer;font-family:inherit;transition:all .15s;background:none;border:1px solid #27272A;color:#a1a1aa}.landing-plan-cta:hover{color:#f4f4f5;border-color:#3f3f46}.landing-plan-cta.primary{background:#f4f4f5;color:#0a0a0a;border:none}.landing-plan-cta.primary:hover{background:#e4e4e7}.landing-faq{padding:80px 24px;border-top:1px solid #18181B}.landing-faq-list{max-width:680px;margin:0 auto;display:flex;flex-direction:column;gap:0}.faq-item{border-bottom:1px solid #18181B;cursor:pointer;transition:background .15s}.faq-item:first-child{border-top:1px solid #18181B}.faq-item:hover{background:#ffffff03}.faq-question{display:flex;align-items:center;justify-content:space-between;padding:20px 0;font-size:14px;font-weight:500;color:#f4f4f5;gap:16px}.faq-chevron{color:#52525b;flex-shrink:0;transition:transform .2s}.faq-item.open .faq-chevron{transform:rotate(180deg)}.faq-answer{font-size:13px;color:#71717a;line-height:1.7;padding-bottom:20px;animation:faqOpen .2s ease}@keyframes faqOpen{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.landing-final-cta{padding:80px 24px;border-top:1px solid #18181B}.landing-footer{padding:60px 24px 0;border-top:1px solid #18181B}.landing-footer-inner{max-width:1080px;margin:0 auto;display:flex;justify-content:space-between;gap:48px}.landing-footer-left{display:flex;flex-direction:column;gap:8px}.landing-footer-brand{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:500;letter-spacing:.1em;color:#f4f4f5}.landing-footer-tagline{font-size:12px;color:#3f3f46}.landing-footer-links{display:flex;gap:64px}.landing-footer-col{display:flex;flex-direction:column;gap:8px}.landing-footer-col-title{font-size:11px;font-weight:600;color:#52525b;text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px}.landing-footer-link{background:none;border:none;padding:0;font-size:13px;color:#71717a;cursor:pointer;font-family:inherit;text-align:left;transition:color .15s}.landing-footer-link:hover{color:#a1a1aa}.landing-footer-link.disabled{cursor:default}.landing-footer-link.disabled:hover{color:#71717a}.landing-footer-bottom{max-width:1080px;margin:48px auto 0;padding:32px 0;border-top:1px solid #18181B;text-align:center}.landing-footer-bottom p{font-size:12px;color:#3f3f46}@media (max-width: 768px){.landing-hero-title{font-size:48px}.landing-hero{padding:120px 24px 60px}.landing-nav-links{display:none}.landing-stats-inner{grid-template-columns:repeat(2,1fr)}.landing-stat{border-bottom:1px solid #18181B}.landing-stat:nth-child(odd){border-right:1px solid #18181B}.landing-stat:nth-child(2n){border-right:none}.landing-stat:nth-last-child(-n+2){border-bottom:none}.landing-logos-row{gap:24px}.landing-logo-text{font-size:14px}.landing-features-grid,.landing-how-grid,.landing-testimonials-grid{grid-template-columns:1fr}.landing-pricing-grid{grid-template-columns:1fr;max-width:400px;margin-left:auto;margin-right:auto}.landing-footer-inner{flex-direction:column;gap:32px}.landing-footer-links{gap:32px;flex-wrap:wrap}.landing-hero-actions{flex-direction:column}.landing-how-flow{gap:8px}.flow-node{font-size:10px;padding:4px 8px}}@media (max-width: 480px){.landing-hero-title{font-size:36px}.landing-section-title,.landing-stat-value{font-size:22px}}
