:root{--clr-bg-deep:#0d1117;--clr-bg-mid:#161b22;--clr-bg-panel:#0d111773;--clr-bg-panel-hov:#161b228c;--clr-accent-cyan:#3b82f6;--clr-accent-violet:#8b5cf6;--clr-accent-green:#10b981;--clr-accent-warm:#f59e0b;--clr-text-primary:#f0f6fc;--clr-text-muted:#8b949e;--clr-text-dim:#484f58;--clr-border:#ffffff14;--clr-border-glow:#ffffff26;--glass-blur:blur(24px);--glass-sat:saturate(180%);--shadow-panel:0 8px 32px #0000004d;--shadow-btn:0 2px 4px #0003;--radius-sm:8px;--radius-md:12px;--radius-lg:20px;--radius-xl:28px;--font-main:"Outfit", sans-serif;--font-mono:"JetBrains Mono", monospace;--tr-fast:.15s cubic-bezier(.4, 0, .2, 1);--tr-med:.3s cubic-bezier(.4, 0, .2, 1);--tr-slow:.5s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-main);background:var(--clr-bg-deep);color:var(--clr-text-primary);-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 15%,#3b82f614,#0000 25%),radial-gradient(circle at 85% 30%,#8b5cf614,#0000 25%);background-attachment:fixed;min-height:100vh;overflow-x:hidden}#root{flex-direction:column;min-height:100vh;display:flex}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--clr-bg-mid)}::-webkit-scrollbar-thumb{background:var(--clr-accent-violet);border-radius:3px}.glass{background:var(--clr-bg-panel);-webkit-backdrop-filter:var(--glass-blur) var(--glass-sat);border:1px solid var(--clr-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-panel)}.glass-hover{transition:background var(--tr-med), border-color var(--tr-med), box-shadow var(--tr-med)}.glass-hover:hover{background:var(--clr-bg-panel-hov);border-color:var(--clr-border-glow);box-shadow:var(--shadow-panel), var(--shadow-glow-cyan)}.btn{border-radius:var(--radius-md);font-family:var(--font-main);cursor:pointer;transition:all var(--tr-med);white-space:nowrap;border:none;align-items:center;gap:8px;padding:10px 20px;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background:linear-gradient(#ffffff26 0%,#ffffff0d 100%);background-color:var(--clr-text-primary);color:#0d1117;box-shadow:var(--shadow-btn), inset 0 1px 0 #fff6;border:1px solid #fff3}.btn-primary:hover{box-shadow:var(--shadow-btn), inset 0 1px 0 #ffffff80, 0 4px 12px #ffffff1a;background-color:#fff;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-ghost{color:var(--clr-text-primary);border:1px solid var(--clr-border);-webkit-backdrop-filter:var(--glass-blur) var(--glass-sat);backdrop-filter:var(--glass-blur) var(--glass-sat);background:#ffffff08}.btn-ghost:hover{border-color:var(--clr-border-glow);background:#ffffff14}.btn-danger{color:#fca5a5;background:#ef44441a;border:1px solid #ef444433}.btn-danger:hover{background:#ef444426;border-color:#ef44444d}.input{border:1px solid var(--clr-border);border-radius:var(--radius-md);width:100%;color:var(--clr-text-primary);font-family:var(--font-main);transition:border-color var(--tr-fast), box-shadow var(--tr-fast);background:#0003;outline:none;padding:12px 16px;font-size:.95rem}.input::placeholder{color:var(--clr-text-dim)}.input:focus{border-color:var(--clr-text-muted)}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #00f5ff33}50%{box-shadow:0 0 40px #00f5ff80}}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes particle-drift{0%{opacity:.6;transform:translate(0)scale(1)}50%{transform:translate(var(--dx,40px), var(--dy,-60px)) scale(1.2);opacity:1}to{opacity:.6;transform:translate(0)scale(1)}}@keyframes orb-move{0%,to{transform:translate(0)}33%{transform:translate(80px,-60px)}66%{transform:translate(-50px,40px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes typewriter{0%{width:0}to{width:100%}}.gradient-text{-webkit-text-fill-color:var(--clr-text-primary);color:var(--clr-text-primary);background:0 0}.divider{background:linear-gradient(90deg, transparent, var(--clr-border), transparent);width:100%;height:1px;margin:16px 0}.badge{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;align-items:center;gap:4px;padding:3px 10px;font-size:.72rem;font-weight:600;display:inline-flex}.badge-cyan{color:#93c5fd;background:#3b82f61a;border:1px solid #3b82f633}.badge-violet{color:#c4b5fd;background:#8b5cf61a;border:1px solid #8b5cf633}.badge-green{color:#6ee7b7;background:#10b9811a;border:1px solid #10b98133}.fade-in{animation:.5s forwards fadeInUp}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,#ffffff0a 25%,#ffffff14 50%,#ffffff0a 75%) 0 0/200% 100%;animation:1.5s infinite shimmer}.landing-root{min-height:100vh;color:var(--clr-text-primary);background:0 0;position:relative;overflow-x:hidden}.landing-canvas{pointer-events:none;z-index:0;position:fixed;inset:0}.landing-orb{filter:blur(80px);opacity:.5;pointer-events:none;z-index:0;border-radius:50%;position:absolute}.lp-orb-1{background:#3b82f626;width:600px;height:600px;top:-200px;left:-150px}.lp-orb-2{background:#8b5cf61f;width:500px;height:500px;top:30%;right:-150px}.lp-orb-3{background:#10b9811a;width:400px;height:400px;bottom:5%;left:20%}.lp-nav,.lp-hero,.lp-stats,.lp-features,.lp-pricing,.lp-cta,.lp-footer{z-index:1;position:relative}.lp-nav{border-top:none;border-left:none;border-right:none;border-bottom:1px solid var(--clr-border);z-index:500;border-radius:0;justify-content:space-between;align-items:center;height:64px;padding:0 40px;display:flex;position:sticky;top:0}.lp-nav-brand{align-items:center;gap:10px;display:flex}.lp-nav-name{letter-spacing:-.02em;color:var(--clr-text-primary);font-size:1.15rem;font-weight:800}.lp-nav-links{align-items:center;gap:32px;display:flex}.lp-nav-link{color:var(--clr-text-muted);transition:color var(--tr-fast);font-size:.9rem;font-weight:500;text-decoration:none}.lp-nav-link:hover{color:var(--clr-accent-cyan)}.lp-nav-cta{align-items:center;gap:10px;display:flex}.lp-nav-btn{padding:8px 18px;font-size:.85rem}.lp-hero{text-align:center;flex-direction:column;align-items:center;gap:24px;max-width:900px;margin:0 auto;padding:80px 24px 60px;display:flex}.lp-hero-badge{padding:6px 14px;font-size:.8rem;animation:.5s forwards fadeInUp}.lp-hero-headline{letter-spacing:-.02em;color:var(--clr-text-primary);margin-bottom:8px;font-size:clamp(2.5rem,6vw,4.5rem);font-weight:700;line-height:1.1}.lp-hero-headline .gradient-text{-webkit-text-fill-color:var(--clr-accent-cyan);background:0 0;background-clip:unset}.lp-word{opacity:0;transition:opacity .3s,transform .3s;display:inline-block;transform:translateY(10px)}.lp-word-visible{opacity:1;transform:translateY(0)}.lp-hero-sub{color:var(--clr-text-muted);max-width:620px;font-size:clamp(1rem,2vw,1.2rem);line-height:1.65}.lp-hero-actions{flex-wrap:wrap;justify-content:center;gap:14px;display:flex}.lp-btn-lg{padding:16px 32px;font-size:1rem}.lp-hero-note{color:var(--clr-text-dim);letter-spacing:.02em;font-size:.8rem}.lp-editor-preview{border-radius:var(--radius-xl);border:1px solid #00f5ff26;width:100%;max-width:900px;margin-top:12px;overflow:hidden;box-shadow:0 40px 100px #000c,0 0 60px #00f5ff14}.lp-preview-topbar{border-bottom:1px solid var(--clr-border);background:#ffffff0a;align-items:center;gap:12px;padding:10px 16px;display:flex}.lp-preview-dots{gap:6px;display:flex}.lp-preview-dots span{border-radius:50%;width:10px;height:10px}.lp-preview-title{font-size:.78rem;font-family:var(--font-mono);color:var(--clr-text-muted)}.lp-preview-body{grid-template-columns:44px 1fr 260px;height:360px;display:grid}.lp-preview-toolbar{border-right:1px solid var(--clr-border);background:#ffffff05;flex-direction:column;align-items:center;gap:4px;padding:10px 4px;display:flex}.lp-preview-tool{width:32px;height:32px;color:var(--clr-text-dim);cursor:default;border-radius:7px;justify-content:center;align-items:center;font-size:.85rem;display:flex}.lp-preview-tool-active{color:var(--clr-accent-cyan);background:#00f5ff1f;border:1px solid #00f5ff4d}.lp-preview-sep{background:var(--clr-border);width:20px;height:1px;margin:2px 0}.lp-preview-viewport{background:radial-gradient(at 35% 45%,#00f5ff0f 0%,#0000 55%),radial-gradient(at 65% 55%,#9d5cff0f 0%,#0000 55%),#070c1a;position:relative;overflow:hidden}.lp-cube{border-radius:6px;animation:4s ease-in-out infinite float;position:absolute}.lp-cube-1{background:linear-gradient(135deg,#00f5ff59,#00f5ff1a);border:1px solid #00f5ff66;width:80px;height:80px;animation-delay:0s;top:90px;left:140px;transform:rotate(15deg);box-shadow:0 0 30px #00f5ff33,inset 0 0 20px #00f5ff1a}.lp-cube-2{background:linear-gradient(135deg,#9d5cff59,#9d5cff1a);border:1px solid #9d5cff66;width:60px;height:60px;animation-delay:-1.5s;top:120px;left:280px;transform:rotate(-10deg);box-shadow:0 0 25px #9d5cff33,inset 0 0 15px #9d5cff1a}.lp-cube-3{background:linear-gradient(135deg,#00ffb34d,#00ffb314);border:1px solid #00ffb359;width:50px;height:50px;animation-delay:-2.8s;top:60px;left:240px;transform:rotate(25deg);box-shadow:0 0 20px #00ffb326,inset 0 0 12px #00ffb314}.lp-grid-lines{background-image:linear-gradient(#ffffff06 1px,#0000 1px),linear-gradient(90deg,#ffffff06 1px,#0000 1px);background-size:40px 40px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(#000 0%,#0000 70%);mask-image:radial-gradient(#000 0%,#0000 70%)}.lp-viewport-label{font-size:.68rem;font-family:var(--font-mono);border:1px solid var(--clr-border);color:var(--clr-text-muted);background:#050814b3;border-radius:5px;padding:2px 8px;position:absolute;top:10px;left:10px}.lp-preview-chat{border-left:1px solid var(--clr-border);background:#05081499;flex-direction:column;gap:8px;padding:12px;display:flex;overflow:hidden}.lp-chat-msg{align-items:flex-start;gap:6px;display:flex}.lp-chat-user{flex-direction:row-reverse}.lp-chat-icon{width:22px;height:22px;color:var(--clr-accent-cyan);background:linear-gradient(135deg,#00f5ff26,#9d5cff26);border:1px solid #00f5ff33;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:.6rem;font-weight:800;display:flex}.lp-chat-bubble{border-radius:10px;max-width:190px;padding:7px 10px;font-size:.72rem;line-height:1.5}.lp-chat-ai .lp-chat-bubble{color:var(--clr-text-primary);background:#ffffff0d;border:1px solid #ffffff12;border-radius:3px 10px 10px}.lp-chat-user .lp-chat-bubble{color:var(--clr-text-primary);text-align:right;background:linear-gradient(135deg,#00f5ff1f,#9d5cff1f);border:1px solid #00f5ff2e;border-radius:10px 3px 10px 10px}.lp-chat-success{color:var(--clr-accent-green)!important;background:#00ffb314!important;border-color:#00ffb333!important}.lp-chat-input-row{gap:6px;margin-top:auto;display:flex}.lp-chat-fake-input{border:1px solid var(--clr-border);color:var(--clr-text-dim);background:#ffffff0d;border-radius:8px;flex:1;padding:6px 10px;font-size:.68rem}.lp-chat-send{background:linear-gradient(135deg, var(--clr-accent-cyan), var(--clr-accent-violet));color:#020408;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;font-size:.8rem;font-weight:700;display:flex}.lp-stats{grid-template-columns:repeat(4,1fr);gap:16px;max-width:900px;margin:0 auto;padding:60px 24px;display:grid}.lp-stat-card{text-align:center;cursor:default;flex-direction:column;align-items:center;gap:6px;padding:28px 20px;display:flex}.lp-stat-value{letter-spacing:-.04em;font-size:2.4rem;font-weight:800}.lp-stat-label{color:var(--clr-text-muted);font-size:.82rem;line-height:1.4}.lp-features{max-width:1100px;margin:0 auto;padding:60px 24px 80px}.lp-section-header{text-align:center;flex-direction:column;align-items:center;gap:14px;margin-bottom:48px;display:flex}.lp-section-title{letter-spacing:-.03em;font-size:clamp(1.8rem,4vw,2.8rem);font-weight:800;line-height:1.2}.lp-section-sub{color:var(--clr-text-muted);max-width:500px;font-size:1rem}.lp-features-grid{grid-template-columns:repeat(3,1fr);gap:20px;display:grid}.lp-feature-card{transition:transform var(--tr-med), box-shadow var(--tr-med), border-color var(--tr-med);flex-direction:column;gap:12px;padding:28px;display:flex}.lp-feature-card:hover{transform:translateY(-4px)}.lp-feature-icon{border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.4rem;display:flex}.lp-icon-cyan{background:#00f5ff1a;border:1px solid #00f5ff33}.lp-icon-violet{background:#9d5cff1a;border:1px solid #9d5cff33}.lp-icon-green{background:#00ffb31a;border:1px solid #00ffb333}.lp-feature-card.lp-feature-cyan:hover{box-shadow:var(--shadow-panel), 0 0 30px #00f5ff14;border-color:#00f5ff4d}.lp-feature-card.lp-feature-violet:hover{box-shadow:var(--shadow-panel), 0 0 30px #9d5cff14;border-color:#9d5cff4d}.lp-feature-card.lp-feature-green:hover{box-shadow:var(--shadow-panel), 0 0 30px #00ffb314;border-color:#00ffb34d}.lp-feature-title{color:var(--clr-text-primary);font-size:1.05rem;font-weight:700}.lp-feature-desc{color:var(--clr-text-muted);font-size:.87rem;line-height:1.6}.lp-pricing{max-width:1000px;margin:0 auto;padding:60px 24px 80px}.lp-pricing-grid{grid-template-columns:1fr 1.1fr 1fr;align-items:start;gap:20px;display:grid}.lp-plan-card{flex-direction:column;gap:16px;padding:32px;display:flex;position:relative}.lp-plan-pro{box-shadow:var(--shadow-panel), 0 0 40px #00f5ff1a;border-color:#00f5ff4d;transform:scale(1.03)}.lp-plan-badge{align-self:flex-start}.lp-plan-name{color:var(--clr-text-primary);font-size:1.1rem;font-weight:700}.lp-plan-price{letter-spacing:-.04em;background:linear-gradient(135deg, var(--clr-accent-cyan), var(--clr-accent-violet));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:2.8rem;font-weight:800}.lp-plan-price span{-webkit-text-fill-color:var(--clr-text-muted);color:var(--clr-text-muted);font-size:1rem;font-weight:500}.lp-plan-features{flex-direction:column;gap:8px;list-style:none;display:flex}.lp-plan-features li{color:var(--clr-text-primary);font-size:.87rem}.lp-plan-features li.dim{color:var(--clr-text-dim)}.lp-plan-btn{justify-content:center;width:100%;padding:13px}.lp-cta{max-width:800px;margin:0 auto;padding:60px 24px 80px}.lp-cta-card{text-align:center;box-shadow:var(--shadow-panel), 0 0 60px #00f5ff12;border-color:#00f5ff26;flex-direction:column;align-items:center;gap:16px;padding:60px 40px;display:flex}.lp-cta-title{letter-spacing:-.03em;font-size:clamp(1.8rem,4vw,2.5rem);font-weight:800}.lp-cta-sub{color:var(--clr-text-muted);font-size:1rem}.lp-footer{border-top:1px solid var(--clr-border);justify-content:space-between;align-items:center;padding:24px 40px;display:flex}.lp-footer-copy{color:var(--clr-text-dim);font-size:.8rem}@media (width<=900px){.lp-features-grid,.lp-stats{grid-template-columns:repeat(2,1fr)}.lp-pricing-grid{grid-template-columns:1fr}.lp-plan-pro{transform:none}.lp-nav-links{display:none}.lp-preview-body{grid-template-columns:44px 1fr}.lp-preview-chat{display:none}}@media (width<=600px){.lp-features-grid{grid-template-columns:1fr}.lp-stats{grid-template-columns:repeat(2,1fr)}.lp-nav{padding:0 16px}.lp-nav-cta .lp-nav-btn:first-child{display:none}.lp-hero{padding:48px 16px 40px}.lp-hero-actions{flex-direction:column;align-items:stretch}.lp-btn-lg{justify-content:center}.lp-footer{text-align:center;flex-direction:column;gap:8px}}.auth-root{background:radial-gradient(at 20%,#0a0f2e 0%,#050811 60%),radial-gradient(at 80% 20%,#0d0520 0%,#0000 60%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex;position:relative;overflow:hidden}.auth-canvas{pointer-events:none;z-index:0;position:absolute;inset:0}.auth-orb{filter:blur(80px);pointer-events:none;z-index:0;border-radius:50%;position:absolute}.auth-orb-1{background:#00f5ff14;width:500px;height:500px;animation:14s ease-in-out infinite orb-move;top:-150px;left:-150px}.auth-orb-2{background:#9d5cff1a;width:400px;height:400px;animation:18s ease-in-out infinite reverse orb-move;bottom:-100px;right:-100px}.auth-orb-3{background:#00ffb30f;width:300px;height:300px;animation:22s ease-in-out infinite orb-move;top:50%;left:50%;transform:translate(-50%,-50%)}.auth-center{z-index:1;flex-direction:column;align-items:center;gap:24px;width:100%;max-width:440px;display:flex;position:relative}.auth-brand{text-align:center;flex-direction:column;align-items:center;gap:10px;display:flex}.auth-logo{filter:drop-shadow(0 0 20px #00f5ff80);width:56px;height:56px;animation:4s ease-in-out infinite float}.auth-logo svg{width:100%;height:100%}.auth-title{letter-spacing:-.03em;color:var(--clr-text-primary);font-size:2rem;font-weight:800}.auth-subtitle{color:var(--clr-text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.875rem;font-weight:400}.auth-card{flex-direction:column;gap:20px;width:100%;padding:32px;display:flex}.auth-tabs{border-radius:var(--radius-md);background:#ffffff0a;gap:4px;padding:4px;display:flex}.auth-tab{color:var(--clr-text-muted);font-family:var(--font-main);cursor:pointer;transition:all var(--tr-med);background:0 0;border:none;border-radius:10px;flex:1;padding:10px;font-size:.875rem;font-weight:600}.auth-tab.active{color:var(--clr-text-primary);background:linear-gradient(135deg,#00f5ff26,#9d5cff26);border:1px solid #00f5ff33}.auth-tab:not(.active):hover{color:var(--clr-text-primary)}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-field{flex-direction:column;gap:6px;display:flex;position:relative}.auth-field label{color:var(--clr-text-muted);letter-spacing:.04em;text-transform:uppercase;font-size:.82rem;font-weight:600}.auth-forgot{color:var(--clr-accent-cyan);font-size:.78rem;font-family:var(--font-main);cursor:pointer;text-align:right;opacity:.8;transition:opacity var(--tr-fast);background:0 0;border:none;padding:2px 0}.auth-forgot:hover{opacity:1}.auth-submit{justify-content:center;width:100%;margin-top:4px;padding:14px;font-size:1rem;position:relative}.auth-spinner{border:2px solid #0000004d;border-top-color:#020408;border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin-slow;display:inline-block}.auth-error{color:#ff7070;border-radius:var(--radius-sm);background:#ff46461a;border:1px solid #ff464640;padding:8px 12px;font-size:.83rem}.auth-divider{color:var(--clr-text-dim);align-items:center;gap:12px;font-size:.8rem;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--clr-border);flex:1;height:1px}.auth-oauth{grid-template-columns:1fr 1fr;gap:10px;display:grid}.auth-oauth-btn{justify-content:center;padding:11px;font-size:.875rem}.auth-footer{color:var(--clr-text-muted);text-align:center;font-size:.875rem}.auth-link{color:var(--clr-accent-cyan);font-family:var(--font-main);cursor:pointer;text-underline-offset:3px;transition:color var(--tr-fast);background:0 0;border:none;font-size:.875rem;font-weight:600;text-decoration:underline}.auth-link:hover{color:var(--clr-accent-violet)}.auth-back{align-self:flex-start;margin-bottom:-8px;padding:7px 14px;font-size:.82rem}@media (width<=480px){.auth-card{padding:24px 20px}.auth-title{font-size:1.6rem}}.ai-agent{-webkit-backdrop-filter:blur(12px)saturate(150%);border:1px solid var(--clr-border);border-radius:var(--radius-lg);width:380px;max-height:560px;transition:max-height var(--tr-med), box-shadow var(--tr-med);z-index:100;background:#0f172acc;flex-direction:column;display:flex;position:absolute;bottom:24px;right:24px;overflow:hidden;box-shadow:0 12px 40px #0006}.ai-agent.closed{max-height:64px}.ai-header{border-bottom:1px solid var(--clr-border);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--tr-fast);background:#ffffff05;flex-shrink:0;justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.ai-header:hover{background:#ffffff0a}.ai-header-left{align-items:center;gap:10px;display:flex}.ai-avatar{border:1px solid var(--clr-border);width:36px;height:36px;color:var(--clr-text-primary);background:#ffffff1a;border-radius:8px;justify-content:center;align-items:center;font-size:.9rem;font-weight:800;display:flex;position:relative}.ai-status-dot{background:var(--clr-accent-green);border:2px solid var(--clr-bg-deep);border-radius:50%;width:10px;height:10px;position:absolute;bottom:-2px;right:-2px}.ai-name{color:var(--clr-text-primary);font-size:.9rem;font-weight:700;display:block}.ai-role{color:var(--clr-text-muted);font-size:.7rem;font-weight:400;display:block}.ai-header-right{align-items:center;gap:8px;display:flex}.ai-toggle-btn{color:var(--clr-text-muted);cursor:pointer;transition:color var(--tr-fast);background:0 0;border:none;padding:4px;font-size:.75rem}.ai-toggle-btn:hover{color:var(--clr-accent-cyan)}.ai-messages{flex-direction:column;flex:1;gap:12px;max-height:380px;padding:16px;display:flex;overflow-y:auto}.ai-msg{align-items:flex-start;gap:8px;animation:.25s fadeInUp;display:flex}.ai-msg-user{flex-direction:row-reverse}.ai-msg-icon{border:1px solid var(--clr-border);width:28px;height:28px;color:var(--clr-text-primary);background:#ffffff0d;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:800;display:flex}.ai-msg-bubble{border-radius:14px;max-width:82%;padding:10px 14px;font-size:.84rem;line-height:1.55}.ai-msg-ai .ai-msg-bubble{border:1px solid var(--clr-border);color:var(--clr-text-primary);background:#ffffff0a;border-radius:2px 12px 12px}.ai-msg-user .ai-msg-bubble{background:var(--clr-text-primary);border:1px solid var(--clr-text-primary);color:#000;text-align:right;border-radius:14px 4px 14px 14px}.ai-msg-system .ai-msg-bubble{color:gold;border-radius:var(--radius-sm);background:#ffdc0014;border:1px solid #ffdc0033;font-size:.78rem}.ai-suggestions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.ai-suggestion-btn{border:1px solid var(--clr-border);color:var(--clr-text-primary);font-size:.75rem;font-family:var(--font-main);cursor:pointer;transition:all var(--tr-fast);white-space:nowrap;background:#ffffff0d;border-radius:999px;padding:4px 10px}.ai-suggestion-btn:hover{border-color:var(--clr-text-muted);background:#ffffff1a}.ai-typing{align-items:center;gap:5px;padding:12px 16px!important;display:flex!important}.ai-typing span{background:var(--clr-accent-cyan);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite bounce}.ai-typing span:nth-child(2){animation-delay:.2s}.ai-typing span:nth-child(3){animation-delay:.4s}@keyframes bounce{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-6px)}}.ai-input-row{border-top:1px solid #ffffff0f;flex-shrink:0;gap:8px;padding:12px 16px;display:flex}.ai-input{border-radius:12px;flex:1;padding:10px 14px;font-size:.84rem}.ai-send{border-radius:12px;justify-content:center;min-width:44px;padding:10px 16px;font-size:1.1rem}@media (width<=768px){.ai-agent{width:calc(100vw - 32px);bottom:16px;right:16px}}.toolbar{border-top:none;border-bottom:none;border-left:none;border-right:1px solid var(--clr-border);z-index:50;border-radius:0;flex-direction:column;flex-shrink:0;align-items:center;gap:4px;width:56px;padding:12px 6px;display:flex;overflow:visible auto}.toolbar-btn{border-radius:var(--radius-sm);width:40px;height:40px;color:var(--clr-text-muted);cursor:pointer;transition:all var(--tr-fast);background:0 0;border:1px solid #0000;flex-direction:column;justify-content:center;align-items:center;font-size:1rem;display:flex;position:relative}.toolbar-btn:hover{color:var(--clr-accent-cyan);background:#00f5ff14;border-color:#00f5ff33}.toolbar-btn.active{color:var(--clr-accent-cyan);background:linear-gradient(135deg,#00f5ff26,#9d5cff1f);border-color:#00f5ff59;box-shadow:0 0 12px #00f5ff26}.toolbar-icon{pointer-events:none;font-size:1.05rem;line-height:1}.toolbar-shortcut{font-size:.55rem;font-family:var(--font-mono);color:var(--clr-text-dim);pointer-events:none;margin-top:2px}.toolbar-btn.active .toolbar-shortcut{color:#00f5ff80}.toolbar-sep{background:var(--clr-border);flex-shrink:0;width:28px;height:1px;margin:4px 0}.toolbar-tooltip{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--clr-border);border-radius:var(--radius-sm);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--tr-fast);z-index:999;background:#050814f2;align-items:center;gap:8px;padding:5px 10px;display:flex;position:absolute;top:50%;left:calc(100% + 10px);transform:translateY(-50%);box-shadow:0 8px 24px #00000080}.toolbar-btn:hover .toolbar-tooltip{opacity:1}.toolbar-tooltip-label{color:var(--clr-text-primary);font-size:.8rem;font-weight:500}.toolbar-tooltip-key{font-size:.7rem;font-family:var(--font-mono);color:var(--clr-accent-cyan);background:#ffffff1a;border:1px solid #ffffff26;border-radius:4px;padding:1px 6px}.editor-root{background:var(--clr-bg-deep);flex-direction:column;height:100vh;display:flex;overflow:hidden}.editor-topbar{border-top:none;border-left:none;border-right:none;border-bottom:1px solid var(--clr-border);z-index:200;border-radius:0;flex-shrink:0;justify-content:space-between;align-items:center;height:56px;padding:0 20px;display:flex;position:relative}.editor-brand{align-items:center;gap:10px;min-width:180px;display:flex}.editor-logo-svg{width:28px;height:28px}.editor-brand-name{letter-spacing:-.01em;color:var(--clr-text-primary);font-size:1.05rem;font-weight:700}.editor-topbar-center{flex-direction:column;align-items:center;gap:2px;display:flex}.editor-project-name{color:var(--clr-text-primary);font-size:.9rem;font-weight:600}.editor-status{color:var(--clr-text-muted);align-items:center;gap:5px;font-size:.72rem;display:flex}.editor-status-dot{background:var(--clr-accent-green);border-radius:50%;width:6px;height:6px}.editor-topbar-right{justify-content:flex-end;align-items:center;gap:10px;min-width:180px;display:flex}.editor-topbar-btn{padding:7px 14px;font-size:.8rem}.editor-user-pill{border:1px solid var(--clr-border);cursor:pointer;transition:all var(--tr-fast);background:#ffffff0d;border-radius:999px;align-items:center;gap:8px;padding:5px 12px 5px 6px;display:flex}.editor-user-pill:hover{border-color:var(--clr-accent-cyan);background:#00f5ff0d}.editor-user-avatar{background:var(--clr-text-primary);color:#000;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.8rem;font-weight:700;display:flex}.editor-user-name{color:var(--clr-text-primary);text-overflow:ellipsis;white-space:nowrap;max-width:80px;font-size:.82rem;font-weight:600;overflow:hidden}.editor-profile-menu{z-index:300;flex-direction:column;gap:6px;width:260px;padding:16px;display:flex;position:absolute;top:64px;right:20px}.editor-profile-header{align-items:center;gap:10px;padding-bottom:8px;display:flex}.editor-profile-avatar{background:var(--clr-text-primary);color:#000;border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:1rem;font-weight:700;display:flex}.editor-profile-name{font-size:.9rem;font-weight:700}.editor-profile-email{color:var(--clr-text-muted);font-size:.75rem}.editor-profile-item{color:var(--clr-text-primary);font-family:var(--font-main);border-radius:var(--radius-sm);cursor:pointer;text-align:left;transition:background var(--tr-fast);background:0 0;border:none;padding:9px 12px;font-size:.87rem}.editor-profile-item:hover{background:#ffffff0f}.editor-profile-logout{color:#ff7070}.editor-profile-logout:hover{background:#ff46461a}.editor-workspace{flex:1;display:flex;overflow:hidden}.editor-viewport{flex:1;position:relative;overflow:hidden}.editor-viewport-bg{background:var(--clr-bg-deep);pointer-events:none;z-index:0;position:absolute;inset:0}.editor-viewport canvas{z-index:1;position:relative}.viewport-overlay-tl{z-index:10;pointer-events:none;flex-direction:column;gap:4px;display:flex;position:absolute;top:16px;left:16px}.viewport-label{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--clr-border);font-size:.72rem;font-family:var(--font-mono);color:var(--clr-text-muted);background:#050814b3;border-radius:6px;padding:3px 10px}.viewport-overlay-br{z-index:10;pointer-events:none;position:absolute;bottom:24px;left:24px}.viewport-hint{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--clr-border);color:var(--clr-text-dim);background:#05081499;border-radius:6px;padding:4px 12px;font-size:.72rem}.editor-rightpanel{border-top:none;border-bottom:none;border-right:none;border-left:1px solid var(--clr-border);border-radius:0;flex-direction:column;flex-shrink:0;gap:10px;width:240px;padding:16px;display:flex;overflow-y:auto}.panel-title{text-transform:uppercase;letter-spacing:.1em;color:var(--clr-text-dim);padding-bottom:8px;font-size:.68rem;font-weight:700}.panel-empty{color:var(--clr-text-dim);font-size:.8rem;line-height:1.5}.scene-list{flex-direction:column;gap:4px;display:flex}.scene-item{border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;align-items:center;gap:8px;padding:7px 10px;display:flex}.scene-item-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.scene-item-name{color:var(--clr-text-primary);font-size:.82rem;font-family:var(--font-mono);flex:1}.scene-item-remove{color:var(--clr-text-dim);cursor:pointer;transition:all var(--tr-fast);background:0 0;border:none;border-radius:4px;padding:2px 4px;font-size:.7rem}.scene-item.active{background:#ffffff1a;border-color:#fff3}.props-panel{flex-direction:column;gap:12px;display:flex}.prop-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.prop-row span{color:var(--clr-text-muted);font-size:.78rem}.prop-val{font-family:var(--font-mono);color:var(--clr-text-primary);text-transform:capitalize}.prop-color-picker{border:1px solid var(--clr-border);cursor:pointer;background:0 0;border-radius:4px;width:40px;height:24px;padding:0}.prop-range{-webkit-appearance:none;background:#ffffff1a;border-radius:2px;outline:none;flex:1;height:4px}.prop-range::-webkit-slider-thumb{-webkit-appearance:none;background:var(--clr-text-primary);cursor:pointer;border-radius:50%;width:14px;height:14px}.print-settings{flex-direction:column;gap:8px;display:flex}.print-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.print-row span{color:var(--clr-text-muted);flex-shrink:0;font-size:.78rem}.print-select{border:1px solid var(--clr-border);border-radius:var(--radius-sm);color:var(--clr-text-primary);font-family:var(--font-main);cursor:pointer;background:#ffffff0d;outline:none;flex:1;max-width:120px;padding:5px 8px;font-size:.75rem}.print-select:focus{border-color:var(--clr-accent-cyan)}
