@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Noto+Sans+JP:wght@300;400;500;600;700;800;900&family=Playfair+Display:wght@400;600;700;800;900&display=swap";:root{--editor-bg: #0f0f14;--editor-surface: #1a1a24;--editor-surface-hover: #222233;--editor-border: #2a2a3a;--editor-border-active: #6366f1;--editor-text: #e4e4e7;--editor-text-muted: #71717a;--editor-accent: #6366f1;--editor-accent-hover: #818cf8;--editor-success: #22c55e;--editor-warning: #f59e0b;--editor-danger: #ef4444;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 24px;--space-2xl: 32px;--space-3xl: 48px;--font-ui: "Inter", "Noto Sans JP", sans-serif;--font-serif: "Playfair Display", serif;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 12px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .4);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .5);--shadow-glow: 0 0 30px rgba(99, 102, 241, .3)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-ui);background:var(--editor-bg);color:var(--editor-text);line-height:1.6;overflow:hidden;height:100vh}#root{height:100vh;overflow:hidden}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#ffffff08}::-webkit-scrollbar-thumb{background:var(--editor-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--editor-text-muted)}.editor-layout{display:grid;grid-template-columns:260px 1fr 320px;grid-template-rows:56px 1fr;height:100vh;gap:0}.editor-topbar{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-lg);background:linear-gradient(180deg,rgba(35,35,50,.6) 0%,var(--editor-surface) 100%);border-bottom:1px solid var(--editor-border);z-index:100}.editor-topbar-logo{display:flex;align-items:center;gap:var(--space-sm);font-weight:700;font-size:15px;letter-spacing:-.02em}.editor-topbar-logo .logo-icon{width:28px;height:28px;background:linear-gradient(135deg,#6366f1,#a855f7,#ec4899);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:14px}.editor-topbar-actions{display:flex;align-items:center;gap:var(--space-sm)}.editor-sidebar{background:var(--editor-surface);border-right:1px solid var(--editor-border);display:flex;flex-direction:column;overflow:hidden}.sidebar-header{padding:var(--space-lg);border-bottom:1px solid var(--editor-border);display:flex;align-items:center;justify-content:space-between}.sidebar-header h3{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--editor-text-muted)}.section-count{background:var(--editor-surface-hover);color:var(--editor-text-muted);font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;min-width:20px;text-align:center}.sidebar-sections{flex:1;overflow-y:auto;padding:var(--space-sm)}.section-item{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);cursor:pointer;transition:all .15s ease;font-size:13px;font-weight:500;color:var(--editor-text-muted);-webkit-user-select:none;user-select:none;margin-bottom:2px;border:1px solid transparent}.section-item:hover{background:var(--editor-surface-hover);color:var(--editor-text);border-left-color:var(--editor-accent);border-left-width:2px;border-left-style:solid}.section-item.active{background:#6366f11f;color:var(--editor-accent-hover);border-color:#6366f140}.section-item .section-icon{font-size:16px;width:24px;text-align:center;flex-shrink:0}.section-item .drag-handle{margin-left:auto;color:var(--editor-border);cursor:grab;font-size:14px;padding:2px}.section-item .drag-handle:hover{color:var(--editor-text-muted)}.editor-canvas{background:#18181d;overflow-y:auto;position:relative;padding:0}.canvas-viewport{width:100%;margin:0 auto;position:relative;zoom:.65}.section-html-content{width:100%}.section-html-content>*{width:100%}.canvas-section-wrapper{position:relative;cursor:pointer;transition:border-radius .2s ease,margin .2s ease,box-shadow .2s ease;border-radius:var(--radius-md);margin-bottom:4px}.canvas-section-wrapper:before{content:"";position:absolute;inset:-2px;border-radius:calc(var(--radius-md) + 2px);border:2px solid transparent;pointer-events:none;transition:border-color .2s ease;z-index:10}.canvas-section-wrapper:hover:before{border-color:#6366f14d;box-shadow:0 0 16px #6366f11f}.canvas-section-wrapper.active:before{border-color:var(--editor-accent);box-shadow:var(--shadow-glow)}.canvas-section-wrapper .section-label{position:absolute;top:-1px;left:12px;background:var(--editor-accent);color:#fff;font-size:10px;font-weight:600;padding:2px 8px;border-radius:0 0 4px 4px;opacity:0;transition:opacity .2s ease;z-index:11;text-transform:uppercase;letter-spacing:.05em}.canvas-section-wrapper:hover .section-label,.canvas-section-wrapper.active .section-label{opacity:1}.editor-panel{background:var(--editor-surface);border-left:1px solid var(--editor-border);overflow-y:auto;display:flex;flex-direction:column}.panel-header{padding:var(--space-lg);border-bottom:1px solid var(--editor-border)}.panel-header h3{font-size:13px;font-weight:600;margin-bottom:var(--space-xs)}.panel-header .panel-type{font-size:11px;color:var(--editor-accent-hover);font-weight:500}.panel-section{padding:var(--space-lg);border-bottom:1px solid var(--editor-border)}.panel-section-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--editor-text-muted);margin-bottom:var(--space-md)}.panel-field{margin-bottom:var(--space-lg)}.panel-field label{display:block;font-size:12px;color:var(--editor-text-muted);margin-bottom:var(--space-xs);font-weight:500}.panel-field input[type=text],.panel-field textarea,.panel-field select{width:100%;padding:var(--space-sm) var(--space-md);background:var(--editor-bg);border:1px solid var(--editor-border);border-radius:var(--radius-sm);color:var(--editor-text);font-size:13px;font-family:var(--font-ui);transition:border-color .15s ease;outline:none}.panel-field input[type=text]:focus,.panel-field textarea:focus,.panel-field select:focus{border-color:var(--editor-accent)}.panel-field textarea{resize:vertical;min-height:80px;line-height:1.5}.panel-field input[type=color]{-webkit-appearance:none;border:1px solid var(--editor-border);border-radius:var(--radius-sm);width:36px;height:36px;padding:2px;cursor:pointer;background:var(--editor-bg)}.panel-color-row{display:flex;align-items:center;gap:var(--space-sm)}.panel-color-row input[type=text]{flex:1}.panel-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--editor-text-muted);text-align:center;padding:var(--space-2xl)}.panel-empty .empty-icon{font-size:40px;margin-bottom:var(--space-lg);opacity:.4}.panel-empty p{font-size:13px;line-height:1.5}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-sm);font-size:13px;font-weight:500;font-family:var(--font-ui);cursor:pointer;transition:all .2s ease;border:1px solid transparent;white-space:nowrap}.btn-primary{background:var(--editor-accent);color:#fff}.btn-primary:hover{background:var(--editor-accent-hover);transform:scale(1.02)}.btn-ghost{background:transparent;color:var(--editor-text-muted);border-color:var(--editor-border)}.btn-ghost:hover{background:var(--editor-surface-hover);color:var(--editor-text)}.btn-icon{width:32px;height:32px;padding:0;border-radius:var(--radius-sm);background:transparent;color:var(--editor-text-muted);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:16px;transition:all .2s ease}.btn-icon:hover{background:var(--editor-surface-hover);color:var(--editor-text)}.btn-danger{color:var(--editor-danger)}.btn-danger:hover{background:#ef44441a;color:var(--editor-danger)}.btn:focus-visible{outline:2px solid var(--editor-accent);outline-offset:2px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--editor-accent);outline-offset:1px}.btn-icon:focus-visible{outline:2px solid var(--editor-accent);outline-offset:2px}.add-section-btn{display:flex;align-items:center;gap:var(--space-sm);width:100%;padding:var(--space-md);background:transparent;border:1px dashed var(--editor-border);border-radius:var(--radius-md);color:var(--editor-text-muted);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:var(--font-ui)}.add-section-btn:hover{border-color:var(--editor-accent);color:var(--editor-accent-hover);background:#6366f10d}.modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .15s ease}.modal{background:var(--editor-surface);border-radius:var(--radius-lg);border:1px solid var(--editor-border);width:90%;max-width:640px;max-height:80vh;overflow-y:auto;box-shadow:var(--shadow-xl);animation:slideUp .2s ease}.modal-header{padding:var(--space-xl);border-bottom:1px solid var(--editor-border);display:flex;align-items:center;justify-content:space-between}.modal-header h2{font-size:16px;font-weight:600}.modal-body{padding:var(--space-xl)}.modal-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md)}.template-card{padding:var(--space-lg);border:1px solid var(--editor-border);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease}.template-card:hover{border-color:var(--editor-accent);background:#6366f10d;transform:translateY(-1px)}.template-card .template-icon{font-size:24px;margin-bottom:var(--space-sm)}.template-card .template-name{font-size:13px;font-weight:600;margin-bottom:var(--space-xs)}.template-card .template-desc{font-size:11px;color:var(--editor-text-muted);line-height:1.4}.ai-panel-toggle{position:fixed;bottom:var(--space-xl);right:340px;width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#a855f7);color:#fff;border:none;font-size:20px;cursor:pointer;box-shadow:var(--shadow-lg),0 0 20px #6366f166;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:50}.ai-panel-toggle{animation:ai-toggle-pulse 2.5s ease-in-out infinite}.ai-panel-toggle:hover{transform:scale(1.08);box-shadow:var(--shadow-lg),0 0 30px #6366f180;animation:none}@keyframes ai-toggle-pulse{0%,to{box-shadow:var(--shadow-lg),0 0 20px #6366f166}50%{box-shadow:var(--shadow-lg),0 0 32px #6366f199,0 0 48px #a855f733}}.ai-chat-panel{position:fixed;width:380px;background:var(--editor-surface);border:1px solid var(--editor-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl),0 0 40px #00000026;z-index:50;display:flex;flex-direction:column;max-height:560px;height:calc(100vh - 140px);animation:slideUp .2s ease;resize:both;overflow:hidden;min-width:320px;min-height:300px}.ai-chat-header{padding:var(--space-lg);border-bottom:1px solid var(--editor-border);display:flex;align-items:center;justify-content:space-between}.ai-chat-header h4{display:flex;align-items:center;gap:var(--space-sm);font-size:14px;font-weight:600}.ai-chat-header .ai-badge{background:linear-gradient(135deg,#6366f1,#a855f7);color:#fff;font-size:9px;font-weight:700;padding:2px 6px;border-radius:4px;letter-spacing:.05em}.ai-tab{padding:6px 14px;font-size:12px;font-weight:600;font-family:var(--font-ui);background:transparent;color:var(--editor-text-muted);border:1px solid transparent;border-radius:8px;cursor:pointer;transition:all .2s}.ai-tab:hover{color:var(--editor-text);background:var(--editor-bg)}.ai-tab.active{color:var(--editor-accent);background:#6366f11a;border-color:#6366f133}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.gen-path-card{display:flex;align-items:center;gap:14px;width:100%;padding:16px;margin-bottom:10px;background:var(--editor-surface);border:1px solid var(--editor-border);border-radius:14px;cursor:pointer;transition:all .25s ease;text-align:left;font-family:var(--font-ui);color:var(--editor-text)}.gen-path-card:hover{border-color:var(--editor-accent);background:#6366f10d;transform:translateY(-1px);box-shadow:0 4px 16px #6366f11a}.gen-path-icon{font-size:28px;flex-shrink:0}.gen-path-info{flex:1}.gen-path-title{font-size:14px;font-weight:700;margin-bottom:4px}.gen-path-desc{font-size:11px;color:var(--editor-text-muted);line-height:1.6}.gen-path-arrow{font-size:16px;color:var(--editor-text-muted);transition:transform .2s}.gen-path-card:hover .gen-path-arrow{transform:translate(3px);color:var(--editor-accent)}.design-dials-container{display:flex;flex-direction:column;gap:20px}.design-dial{padding:0 4px}.design-dial-header{margin-bottom:8px}.design-dial-label{font-size:12px;font-weight:600;color:var(--editor-text)}.design-dial-track{display:flex;align-items:center;gap:10px}.design-dial-end{font-size:10px;color:var(--editor-text-muted);min-width:52px;white-space:nowrap}.design-dial-end:last-child{text-align:right}.design-dial-slider{flex:1;display:flex;justify-content:space-between;align-items:center;padding:4px 0;position:relative}.design-dial-slider:before{content:"";position:absolute;top:50%;left:10%;right:10%;height:2px;background:var(--editor-border);transform:translateY(-50%)}.design-dial-dot{position:relative;width:28px;height:28px;border:none;background:transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:1;padding:0}.dial-dot-inner{width:14px;height:14px;border-radius:50%;background:var(--editor-surface);border:2px solid var(--editor-border);transition:all .2s ease}.design-dial-dot:hover .dial-dot-inner{border-color:var(--editor-accent);transform:scale(1.15)}.design-dial-dot.active .dial-dot-inner{background:var(--editor-accent);border-color:var(--editor-accent);box-shadow:0 0 10px #6366f166;transform:scale(1.2)}.gen-spinner{font-size:40px;animation:genSpin 2s ease-in-out infinite}@keyframes genSpin{0%{transform:scale(1) rotate(0)}50%{transform:scale(1.2) rotate(180deg)}to{transform:scale(1) rotate(360deg)}}.section-generating{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 40px;text-align:center;min-height:300px}.generating-label{font-size:16px;font-weight:600;color:var(--editor-text);margin-top:16px}.generating-sub{font-size:13px;color:var(--editor-text-muted);margin-top:8px}.ai-chat-messages{flex:1;overflow-y:auto;padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-md)}.ai-message{padding:var(--space-md);border-radius:var(--radius-md);font-size:13px;line-height:1.5;max-width:90%}.ai-message.assistant{background:#6366f11a;border:1px solid rgba(99,102,241,.15);align-self:flex-start}.ai-message.user{background:var(--editor-surface-hover);align-self:flex-end}.ai-chat-input{padding:var(--space-md);border-top:1px solid var(--editor-border);display:flex;gap:var(--space-sm)}.ai-chat-input input{flex:1;padding:var(--space-sm) var(--space-md);background:var(--editor-bg);border:1px solid var(--editor-border);border-radius:var(--radius-sm);color:var(--editor-text);font-size:13px;font-family:var(--font-ui);outline:none}.ai-chat-input input:focus{border-color:var(--editor-accent)}.ai-chat-input button{padding:var(--space-sm) var(--space-lg);background:var(--editor-accent);color:#fff;border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer;transition:background .15s ease;font-family:var(--font-ui)}.ai-chat-input button:hover{background:var(--editor-accent-hover)}.lp-section{overflow:hidden;border-radius:var(--radius-sm)}.lp-hero{position:relative;padding:100px 48px 80px;text-align:center;overflow:hidden}.lp-hero .hero-bg{position:absolute;inset:0;z-index:0}.lp-hero .hero-bg:after{content:"";position:absolute;inset:0;background:#00000040}.lp-hero .hero-content{position:relative;z-index:1;max-width:600px;margin:0 auto}.lp-hero .hero-badge{display:inline-block;background:#ffffff26;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.2);padding:6px 20px;border-radius:100px;font-size:12px;font-weight:600;color:#ffffffe6;letter-spacing:.05em;margin-bottom:24px}.lp-hero h1{font-size:42px;font-weight:800;line-height:1.2;letter-spacing:-.02em;color:#fff;margin-bottom:20px;text-shadow:0 2px 20px rgba(0,0,0,.3)}.lp-hero .hero-sub{font-size:17px;color:#ffffffd9;line-height:1.7;margin-bottom:36px}.lp-hero .hero-cta{display:inline-flex;align-items:center;gap:8px;padding:16px 40px;background:#fff;color:#1a1a2e;font-size:15px;font-weight:700;border-radius:100px;border:none;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #0003;font-family:var(--font-ui);letter-spacing:.01em}.lp-hero .hero-cta:hover{transform:translateY(-2px);box-shadow:0 8px 30px #0000004d}.lp-hero .hero-cta .cta-arrow{transition:transform .3s ease}.lp-hero .hero-cta:hover .cta-arrow{transform:translate(4px)}.lp-problem{padding:80px 48px;background:#fafafa;color:#1a1a2e}.lp-problem .problem-header{text-align:center;margin-bottom:48px}.lp-problem .problem-header .section-tag{display:inline-block;font-size:12px;font-weight:700;color:#ef4444;text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px}.lp-problem .problem-header h2{font-size:28px;font-weight:800;line-height:1.3;color:#1a1a2e}.lp-problem .problem-items{display:flex;flex-direction:column;gap:16px;max-width:540px;margin:0 auto}.lp-problem .problem-item{display:flex;align-items:flex-start;gap:16px;padding:20px 24px;background:#fff;border-radius:var(--radius-md);border:1px solid #f0f0f0;box-shadow:0 1px 3px #0000000a;transition:transform .2s ease}.lp-problem .problem-item:hover{transform:translate(4px)}.lp-problem .problem-check{width:24px;height:24px;background:#fef2f2;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;flex-shrink:0;margin-top:2px}.lp-problem .problem-text{font-size:15px;color:#374151;line-height:1.6}.lp-solution{padding:80px 48px;background:#fff;color:#1a1a2e}.lp-solution .solution-header{text-align:center;margin-bottom:48px}.lp-solution .solution-header .section-tag{display:inline-block;font-size:12px;font-weight:700;color:#6366f1;text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px}.lp-solution .solution-header h2{font-size:28px;font-weight:800;line-height:1.3}.lp-solution .solution-steps{display:flex;flex-direction:column;gap:24px;max-width:540px;margin:0 auto}.lp-solution .step-card{display:flex;gap:20px;align-items:flex-start}.lp-solution .step-number{width:44px;height:44px;background:linear-gradient(135deg,#6366f1,#a855f7);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:800;color:#fff;flex-shrink:0}.lp-solution .step-content h3{font-size:17px;font-weight:700;margin-bottom:6px;color:#1a1a2e}.lp-solution .step-content p{font-size:14px;color:#6b7280;line-height:1.6}.lp-features{padding:80px 48px;background:#f8f7ff;color:#1a1a2e}.lp-features .features-header{text-align:center;margin-bottom:48px}.lp-features .features-header .section-tag{display:inline-block;font-size:12px;font-weight:700;color:#a855f7;text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px}.lp-features .features-header h2{font-size:28px;font-weight:800;line-height:1.3}.lp-features .features-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:600px;margin:0 auto}.lp-features .feature-card{padding:28px 24px;background:#fff;border-radius:var(--radius-lg);border:1px solid rgba(99,102,241,.08);box-shadow:0 1px 3px #0000000a;transition:all .3s ease}.lp-features .feature-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #6366f11f}.lp-features .feature-icon{font-size:32px;margin-bottom:16px}.lp-features .feature-card h3{font-size:16px;font-weight:700;margin-bottom:8px;color:#1a1a2e}.lp-features .feature-card p{font-size:13px;color:#6b7280;line-height:1.6}.lp-testimonials{padding:80px 48px;background:#fff;color:#1a1a2e}.lp-testimonials .testimonials-header{text-align:center;margin-bottom:48px}.lp-testimonials .testimonials-header .section-tag{display:inline-block;font-size:12px;font-weight:700;color:#f59e0b;text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px}.lp-testimonials .testimonials-header h2{font-size:28px;font-weight:800;line-height:1.3}.lp-testimonials .testimonial-cards{display:flex;flex-direction:column;gap:20px;max-width:540px;margin:0 auto}.lp-testimonials .testimonial-card{padding:28px;background:#fffbeb;border-radius:var(--radius-lg);border:1px solid rgba(245,158,11,.15)}.lp-testimonials .testimonial-stars{color:#f59e0b;font-size:14px;margin-bottom:12px;letter-spacing:2px}.lp-testimonials .testimonial-text{font-size:15px;line-height:1.7;color:#374151;margin-bottom:16px;font-style:italic}.lp-testimonials .testimonial-author{display:flex;align-items:center;gap:12px}.lp-testimonials .author-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#f59e0b,#ec4899);display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;color:#fff}.lp-testimonials .author-info .author-name{font-size:14px;font-weight:600;color:#1a1a2e}.lp-testimonials .author-info .author-role{font-size:12px;color:#9ca3af}.lp-cta{padding:80px 48px;text-align:center;position:relative;overflow:hidden}.lp-cta .cta-content{position:relative;z-index:1;max-width:500px;margin:0 auto}.lp-cta .cta-badge{display:inline-block;background:#ffffff26;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:6px 16px;border-radius:100px;font-size:12px;font-weight:700;color:#ffffffe6;margin-bottom:20px;border:1px solid rgba(255,255,255,.2)}.lp-cta h2{font-size:32px;font-weight:800;color:#fff;line-height:1.3;margin-bottom:16px;text-shadow:0 2px 10px rgba(0,0,0,.2)}.lp-cta .cta-sub{font-size:15px;color:#ffffffd9;margin-bottom:32px;line-height:1.6}.lp-cta .cta-button{display:inline-flex;align-items:center;gap:8px;padding:18px 48px;background:#fff;color:#1a1a2e;font-size:16px;font-weight:700;border-radius:100px;border:none;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #0003;font-family:var(--font-ui);animation:pulse-glow 2s ease-in-out infinite}.lp-cta .cta-button:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 8px 30px #0000004d}.lp-cta .cta-note{margin-top:16px;font-size:12px;color:#fff9}.lp-faq{padding:80px 48px;background:#fafafa;color:#1a1a2e}.lp-faq .faq-header{text-align:center;margin-bottom:48px}.lp-faq .faq-header .section-tag{display:inline-block;font-size:12px;font-weight:700;color:#6366f1;text-transform:uppercase;letter-spacing:.1em;margin-bottom:12px}.lp-faq .faq-header h2{font-size:28px;font-weight:800;line-height:1.3}.lp-faq .faq-list{max-width:540px;margin:0 auto;display:flex;flex-direction:column;gap:8px}.lp-faq .faq-item{background:#fff;border-radius:var(--radius-md);border:1px solid #f0f0f0;overflow:hidden}.lp-faq .faq-question{width:100%;padding:18px 24px;background:none;border:none;text-align:left;font-size:15px;font-weight:600;color:#1a1a2e;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-family:var(--font-ui);transition:background .15s ease}.lp-faq .faq-question:hover{background:#f9fafb}.lp-faq .faq-arrow{transition:transform .2s ease;color:#9ca3af;font-size:18px}.lp-faq .faq-arrow.open{transform:rotate(180deg)}.lp-faq .faq-answer{padding:0 24px 18px;font-size:14px;color:#6b7280;line-height:1.7}.lp-footer{padding:48px;background:#1a1a2e;color:#fff9;text-align:center}.lp-footer .footer-brand{font-size:18px;font-weight:700;color:#fff;margin-bottom:12px}.lp-footer .footer-links{display:flex;justify-content:center;gap:24px;margin-bottom:24px}.lp-footer .footer-links a{color:#ffffff80;text-decoration:none;font-size:13px;transition:color .15s ease}.lp-footer .footer-links a:hover{color:#fffc}.lp-footer .footer-copy{font-size:12px;color:#ffffff4d}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-glow{0%,to{box-shadow:0 4px 20px #0003}50%{box-shadow:0 4px 30px #0000004d,0 0 40px #ffffff1a}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.section-item.dragging{opacity:.5;background:#6366f114}.section-item.drag-over{border-top:2px solid var(--editor-accent)}.block-wrapper{position:relative;outline:2px solid transparent;outline-offset:2px;border-radius:6px;transition:outline-color .15s,background .15s;cursor:pointer}.block-wrapper:hover{outline-color:#6366f140}.block-wrapper.block-selected{outline-color:#6366f1}.block-wrapper.block-dragging{opacity:.4}.block-wrapper.block-drag-over{outline-color:#a855f7;outline-style:dashed}.block-wrapper.block-drag-over:before{content:"";position:absolute;top:-3px;left:0;right:0;height:3px;background:linear-gradient(90deg,#6366f1,#a855f7);border-radius:4px;z-index:10}.block-drag-handle{position:absolute;left:-28px;top:50%;transform:translateY(-50%);width:20px;height:28px;display:flex;align-items:center;justify-content:center;font-size:10px;letter-spacing:2px;color:#ffffff4d;cursor:grab;opacity:0;transition:opacity .15s;z-index:5;border-radius:4px}.block-wrapper:hover .block-drag-handle{opacity:1}.block-drag-handle:active{cursor:grabbing;color:var(--editor-accent)}.panel-block-item{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:6px;background:var(--editor-bg);font-size:12px;cursor:pointer;transition:background .1s,outline .15s;outline:2px solid transparent}.panel-block-item:hover{background:var(--editor-surface-hover)}.panel-block-item.panel-block-dragging{opacity:.4}.panel-block-item.panel-block-over{outline-color:var(--editor-accent)}.panel-block-handle{cursor:grab;color:var(--editor-text-muted);font-size:10px;-webkit-user-select:none;user-select:none}.panel-block-handle:active{cursor:grabbing}.design-accordion{border-top:1px solid var(--editor-border);margin-top:4px}.design-accordion-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 16px;background:transparent;border:none;color:var(--editor-text-muted);font-size:12px;font-weight:600;font-family:var(--font-ui);cursor:pointer;transition:color .15s}.design-accordion-header:hover{color:var(--editor-text)}.design-accordion-arrow{font-size:10px;transition:transform .2s}.design-accordion-body{padding:0 16px 12px}.template-gallery-modal{background:var(--editor-surface);border:1px solid var(--editor-border);border-radius:var(--radius-lg);max-width:640px;width:90%;max-height:80vh;display:flex;flex-direction:column;box-shadow:var(--shadow-xl)}.template-gallery-body{padding:0 24px 24px;overflow-y:auto;flex:1}.template-category{margin-bottom:20px}.template-category-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:1.5px;color:var(--editor-text-muted);padding:8px 0;border-bottom:1px solid var(--editor-border);margin-bottom:12px}.template-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.layout-template-card{background:var(--editor-bg);border:1px solid var(--editor-border);border-radius:var(--radius-md);cursor:pointer;overflow:hidden;transition:all .2s}.layout-template-card:hover{border-color:var(--editor-accent);transform:translateY(-2px);box-shadow:var(--shadow-md),0 0 16px #6366f126}.layout-template-preview{padding:14px;background:#6366f10a;border-bottom:1px solid var(--editor-border);display:flex;align-items:center;justify-content:center;min-height:64px}.layout-template-preview pre{font-family:var(--font-ui);font-size:10px;line-height:1.4;color:var(--editor-text-muted);text-align:center;margin:0;letter-spacing:1px}.layout-template-info{padding:10px 12px;display:flex;align-items:center;gap:10px}.layout-template-icon{font-size:20px;flex-shrink:0}.layout-template-name{font-size:12px;font-weight:600;color:var(--editor-text)}.layout-template-desc{font-size:10px;color:var(--editor-text-muted);line-height:1.3}.canvas-add-divider{position:relative;height:24px;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:5}.canvas-add-line{position:absolute;left:5%;right:5%;height:2px;background:var(--editor-accent);opacity:0;transition:opacity .2s}.canvas-add-line.visible{opacity:.5}.canvas-add-btn{width:28px;height:28px;border-radius:50%;background:var(--editor-surface);border:2px solid var(--editor-border);color:var(--editor-text-muted);font-size:18px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .2s;z-index:1;line-height:1;padding:0}.canvas-add-btn.visible{opacity:1}.canvas-add-btn:hover{background:var(--editor-accent);border-color:var(--editor-accent);color:#fff;transform:scale(1.15)}.element-toolbar{position:absolute;transform:translate(-50%);display:flex;gap:4px;background:var(--editor-surface);border:1px solid var(--editor-border);border-radius:8px;padding:3px;box-shadow:var(--shadow-md);z-index:20;animation:fadeIn .15s ease}.element-toolbar-btn{width:30px;height:26px;border:none;border-radius:5px;background:transparent;color:var(--editor-text-muted);font-size:11px;font-weight:700;font-family:var(--font-ui);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.element-toolbar-btn:hover{background:#6366f126;color:var(--editor-accent)}.element-toolbar-btn.danger:hover{background:#ef444426;color:var(--editor-danger)}@media(max-width:800px){.lp-features .features-grid{grid-template-columns:1fr}.lp-hero h1{font-size:28px}.lp-hero{padding:60px 24px}}.login-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--editor-bg);padding:24px}.login-card{width:100%;max-width:400px;background:var(--editor-surface);border:1px solid var(--editor-border);border-radius:16px;padding:40px 32px}.login-logo{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:32px}.login-logo-icon{font-size:28px}.login-logo-text{font-size:20px;font-weight:700;color:var(--editor-text)}.login-logo-sub{font-size:12px;color:var(--editor-text-muted);font-weight:400;margin-left:4px}.login-heading{text-align:center;font-size:22px;font-weight:700;color:var(--editor-text);margin:0 0 24px}.login-form{display:flex;flex-direction:column;gap:16px}.login-field label{display:block;font-size:13px;font-weight:600;color:var(--editor-text);margin-bottom:6px}.login-field input{width:100%;padding:10px 14px;border:1px solid var(--editor-border);border-radius:8px;background:var(--editor-bg);color:var(--editor-text);font-size:14px;font-family:inherit;box-sizing:border-box;outline:none;transition:border-color .2s}.login-field input:focus{border-color:var(--editor-accent)}.login-error{padding:10px 14px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:var(--editor-danger);font-size:13px}.login-btn{width:100%;padding:12px;border:none;border-radius:8px;background:linear-gradient(135deg,#6366f1,#a855f7);color:#fff;font-size:15px;font-weight:600;font-family:inherit;cursor:pointer;transition:opacity .2s}.login-btn:hover{opacity:.9}.login-btn:disabled{opacity:.5;cursor:not-allowed}.login-switch{text-align:center;margin-top:20px;font-size:13px;color:var(--editor-text-muted)}.login-switch button{background:none;border:none;color:var(--editor-accent);font-size:13px;font-family:inherit;cursor:pointer;text-decoration:underline}.login-success{text-align:center}.login-success h2{font-size:18px;font-weight:700;color:var(--editor-text);margin:0 0 8px}.login-success p{font-size:14px;color:var(--editor-text-muted);margin-bottom:24px}.legal-page{min-height:100vh;background:var(--editor-bg);color:var(--editor-text);overflow-y:auto;padding:48px 24px 80px}.legal-container{max-width:720px;margin:0 auto}.legal-back{display:inline-flex;align-items:center;gap:6px;background:none;border:1px solid var(--editor-border);border-radius:var(--radius-sm);color:var(--editor-text-muted);font-size:13px;font-family:inherit;padding:8px 16px;cursor:pointer;transition:all .2s;margin-bottom:32px}.legal-back:hover{color:var(--editor-text);border-color:var(--editor-text-muted);background:var(--editor-surface)}.legal-title{font-size:32px;font-weight:800;color:var(--editor-text);margin-bottom:8px;letter-spacing:-.02em}.legal-updated{font-size:13px;color:var(--editor-text-muted);margin-bottom:48px;padding-bottom:24px;border-bottom:1px solid var(--editor-border)}.legal-body{display:flex;flex-direction:column;gap:36px}.legal-section h2{font-size:18px;font-weight:700;color:var(--editor-text);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--editor-border)}.legal-section h3{font-size:15px;font-weight:600;color:var(--editor-text);margin:16px 0 8px}.legal-section p{font-size:14px;line-height:1.8;color:var(--editor-text);opacity:.85;margin-bottom:8px}.legal-section ul,.legal-section ol{padding-left:24px;margin:8px 0 12px;display:flex;flex-direction:column;gap:6px}.legal-section li{font-size:14px;line-height:1.7;color:var(--editor-text);opacity:.85}.legal-section strong{color:var(--editor-text);opacity:1;font-weight:600}.legal-footer{margin-top:64px;padding-top:24px;border-top:1px solid var(--editor-border);text-align:center}.legal-footer p{font-size:13px;color:var(--editor-text-muted)}.login-legal-links{display:flex;justify-content:center;gap:16px;margin-top:24px;padding-top:16px;border-top:1px solid var(--editor-border)}.login-legal-links a{font-size:12px;color:var(--editor-text-muted);text-decoration:none;cursor:pointer;transition:color .2s}.login-legal-links a:hover{color:var(--editor-accent)}.dashboard-screen{min-height:100vh;background:var(--editor-bg);color:var(--editor-text)}.dashboard-header{display:flex;align-items:center;justify-content:space-between;padding:0 24px;height:56px;border-bottom:1px solid var(--editor-border);background:linear-gradient(135deg,var(--editor-surface) 0%,rgba(99,102,241,.04) 100%)}.dashboard-logo{display:flex;align-items:center;gap:8px}.dashboard-user{display:flex;align-items:center;gap:12px}.dashboard-email{font-size:13px;color:var(--editor-text-muted)}.dashboard-content{max-width:1000px;margin:0 auto;padding:40px 24px}.dashboard-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}.dashboard-title-row h1{font-size:24px;font-weight:700;margin:0}.dashboard-loading{text-align:center;padding:60px 0;color:var(--editor-text-muted)}.dashboard-empty{text-align:center;padding:80px 0}.dashboard-empty h2{font-size:18px;font-weight:600;margin:0 0 8px}.dashboard-empty p{color:var(--editor-text-muted);font-size:14px}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.dashboard-card{background:var(--editor-surface);border:1px solid var(--editor-border);border-radius:12px;overflow:hidden;cursor:pointer;transition:all .2s;position:relative}.dashboard-card:hover{border-color:var(--editor-accent);transform:translateY(-2px);box-shadow:0 4px 16px #6366f126}.dashboard-card-preview{height:120px;background:linear-gradient(135deg,#1a1a2e,#2a2a4a);display:flex;align-items:center;justify-content:center;font-size:40px}.dashboard-card-info{padding:16px}.dashboard-card-info h3{font-size:15px;font-weight:600;margin:0 0 4px;color:var(--editor-text)}.dashboard-card-date{font-size:12px;color:var(--editor-text-muted)}.dashboard-card-delete{width:32px;height:32px;border:none;border-radius:8px;background:#0009;color:#fff;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center}.dashboard-card-delete:hover{background:var(--editor-danger)}.dashboard-published-badge{position:absolute;top:8px;left:8px;padding:2px 10px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:11px;font-weight:700;border-radius:100px;letter-spacing:.02em}.dashboard-card-actions{position:absolute;top:8px;right:8px;display:flex;gap:4px;opacity:.4;transition:opacity .2s}.dashboard-card:hover .dashboard-card-actions{opacity:1}.dashboard-card-link{width:32px;height:32px;border:none;border-radius:8px;background:#0009;color:#fff;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;text-decoration:none;transition:background .15s}.dashboard-card-link:hover{background:var(--editor-accent)}.dashboard-footer{text-align:center;padding:32px 0 24px;font-size:12px;color:var(--editor-text-muted)}.dashboard-footer a{color:var(--editor-text-muted);text-decoration:none;cursor:pointer;transition:color .2s}.dashboard-footer a:hover{color:var(--editor-accent)}.dashboard-footer-sep{margin:0 8px;opacity:.4}.btn-publish{display:inline-flex;align-items:center;padding:6px 16px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;font-size:12px;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:all .15s}.btn-publish:hover{transform:translateY(-1px);box-shadow:0 4px 12px #10b9814d}.btn-publish:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-published{display:inline-flex;align-items:center;padding:6px 16px;background:#10b9811f;color:#059669;font-size:12px;font-weight:600;border:1px solid rgba(16,185,129,.25);border-radius:8px;cursor:pointer;transition:all .15s}.btn-published:hover{background:#10b98133}.publish-overlay{position:fixed;inset:0;z-index:999}.publish-popover{position:absolute;top:calc(100% + 8px);right:0;width:360px;background:var(--editor-surface);border:1px solid var(--editor-border);border-radius:12px;box-shadow:0 8px 32px #00000026;padding:16px;z-index:1000;animation:popoverIn .15s ease}@keyframes popoverIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.publish-popover-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-size:13px;font-weight:600;color:#059669}.publish-status-dot{width:8px;height:8px;border-radius:50%;background:#10b981;animation:dotPulse 2s ease infinite}@keyframes dotPulse{0%,to{opacity:1}50%{opacity:.5}}.publish-url-row{display:flex;gap:6px;margin-bottom:12px}.publish-url-input{flex:1;padding:8px 10px;background:var(--editor-bg);border:1px solid var(--editor-border);border-radius:6px;font-size:11px;color:var(--editor-text);outline:none;font-family:SF Mono,Fira Code,monospace}.publish-url-input:focus{border-color:var(--editor-accent)}.publish-copy-btn{white-space:nowrap;font-size:12px!important;padding:6px 12px!important}.publish-actions{display:flex;gap:6px;flex-wrap:wrap}.publish-action-link{text-decoration:none!important;font-size:12px!important}.publish-unpublish-btn{color:var(--editor-danger)!important;font-size:12px!important;margin-left:auto}.slug-section{border-top:1px solid var(--editor-border);margin-top:8px;padding-top:8px}.slug-section-title{font-size:11px;font-weight:600;color:var(--editor-text-muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.slug-input-row{display:flex;align-items:center;gap:0;background:var(--editor-bg);border:1px solid var(--editor-border);border-radius:6px;overflow:hidden}.slug-input{flex:1;background:transparent;border:none;outline:none;color:var(--editor-text);font-size:12px;padding:6px 8px;min-width:0}.slug-domain-suffix{font-size:11px;color:var(--editor-text-muted);padding:6px 8px 6px 0;white-space:nowrap}.slug-status{font-size:11px;margin-top:4px;padding:0 2px}.slug-status.available{color:#4ade80}.slug-status.taken{color:var(--editor-danger)}.slug-status.checking{color:var(--editor-text-muted)}.slug-edit-actions{display:flex;gap:4px;margin-top:6px}.slug-display{display:flex;flex-direction:column;gap:4px}.slug-url-row{display:flex;align-items:center;gap:4px}.slug-url-text{font-size:12px;color:var(--editor-accent);font-weight:500}.slug-display-actions{display:flex;gap:4px}.dashboard-card-slug{font-size:10px;color:var(--editor-accent);opacity:.8;display:block;margin-top:2px}.publish-error-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);padding:12px 24px;background:var(--editor-danger);color:#fff;font-size:13px;font-weight:500;border-radius:8px;box-shadow:0 4px 16px #0000004d;z-index:9999;cursor:pointer;animation:toastIn .3s ease}@keyframes toastIn{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.toast-container{position:fixed;bottom:24px;right:24px;z-index:10000;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:var(--radius-md);font-size:13px;font-weight:500;box-shadow:var(--shadow-lg);pointer-events:auto;cursor:pointer;animation:toastSlideIn .3s ease;min-width:280px;max-width:420px}@keyframes toastSlideIn{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}.toast-success{background:#065f46;color:#d1fae5;border:1px solid #10b981}.toast-error{background:#7f1d1d;color:#fecaca;border:1px solid #ef4444}.toast-warning{background:#78350f;color:#fef3c7;border:1px solid #f59e0b}.toast-info{background:#1e3a5f;color:#dbeafe;border:1px solid #3b82f6}.toast-icon{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;font-size:11px;font-weight:700;flex-shrink:0}.toast-success .toast-icon{background:#10b981;color:#fff}.toast-error .toast-icon{background:#ef4444;color:#fff}.toast-warning .toast-icon{background:#f59e0b;color:#fff}.toast-info .toast-icon{background:#3b82f6;color:#fff}.toast-message{flex:1;line-height:1.4}.toast-close{background:none;border:none;color:inherit;opacity:.6;cursor:pointer;font-size:16px;padding:2px 4px;line-height:1}.toast-close:hover{opacity:1}.toast-exit{animation:toast-slide-out .3s ease forwards}@keyframes toast-slide-out{to{transform:translate(120%);opacity:0}}.confirm-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10001;display:flex;align-items:center;justify-content:center;animation:fadeIn .15s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.confirm-modal{background:var(--editor-surface);border:1px solid var(--editor-border);border-radius:var(--radius-lg);padding:28px;max-width:400px;width:90%;box-shadow:var(--shadow-xl);animation:modalIn .2s ease}@keyframes modalIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.confirm-message{font-size:14px;line-height:1.6;color:var(--editor-text);margin-bottom:24px}.confirm-actions{display:flex;justify-content:flex-end;gap:8px}.error-boundary{display:flex;align-items:center;justify-content:center;height:100vh;background:var(--editor-bg);padding:40px}.error-boundary-inner{text-align:center;max-width:480px}.error-boundary-inner h2{font-size:20px;font-weight:700;color:var(--editor-text);margin-bottom:12px}.error-boundary-inner p{font-size:14px;color:var(--editor-text-muted);line-height:1.6;margin-bottom:20px}.error-boundary-inner pre{text-align:left;background:var(--editor-surface);border:1px solid var(--editor-border);border-radius:var(--radius-md);padding:16px;font-size:12px;color:var(--editor-danger);overflow-x:auto;margin-bottom:20px;max-height:150px}.onboarding-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10002;display:flex;align-items:center;justify-content:center;animation:fadeIn .3s ease}.onboarding-card{background:var(--editor-surface);border:1px solid var(--editor-border);border-radius:var(--radius-xl);padding:40px;max-width:480px;width:90%;text-align:center;box-shadow:var(--shadow-xl);animation:modalIn .3s ease}.onboarding-icon{font-size:48px;margin-bottom:20px}.onboarding-card h2{font-size:22px;font-weight:700;color:var(--editor-text);margin-bottom:12px}.onboarding-card p{font-size:14px;color:var(--editor-text-muted);line-height:1.7;margin-bottom:28px}.onboarding-dots{display:flex;justify-content:center;gap:8px;margin-bottom:24px}.onboarding-dot{width:8px;height:8px;border-radius:50%;background:var(--editor-border);transition:background .2s}.onboarding-dot.active{background:var(--editor-accent)}.onboarding-actions{display:flex;justify-content:space-between;align-items:center}.topbar-undo-redo{display:flex;gap:2px}.btn-icon-sm{width:32px!important;height:32px!important;padding:0!important;display:inline-flex!important;align-items:center;justify-content:center;font-size:16px!important;min-width:unset!important}.btn-icon-sm:disabled{opacity:.3;cursor:not-allowed}.topbar-divider{width:1px;height:24px;background:var(--editor-border);margin:0 4px}.export-menu{position:absolute;top:100%;right:0;margin-top:4px;background:var(--editor-surface);border:1px solid var(--editor-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;min-width:200px;padding:4px;animation:modalIn .15s ease}.export-menu-item{display:block;width:100%;padding:10px 14px;background:none;border:none;color:var(--editor-text);font-size:13px;font-family:var(--font-ui);text-align:left;cursor:pointer;border-radius:var(--radius-sm);transition:background .15s}.export-menu-item:hover{background:var(--editor-surface-hover)}.skeleton-card{pointer-events:none}.skeleton-shimmer{background:linear-gradient(90deg,var(--editor-surface) 25%,var(--editor-surface-hover) 50%,var(--editor-surface) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-sm)}.skeleton-line{height:14px;border-radius:4px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.loading-dots span{animation:loadingDot 1.4s ease-in-out infinite;opacity:0}.loading-dots span:nth-child(1){animation-delay:0s}.loading-dots span:nth-child(2){animation-delay:.4s}.loading-dots span:nth-child(3){animation-delay:.8s}@keyframes loadingDot{0%,60%,to{opacity:0}30%{opacity:1}}.canvas-edit-hint{position:absolute;background:#000000bf;color:#fff;font-size:11px;font-weight:500;padding:3px 8px;border-radius:4px;pointer-events:none;white-space:nowrap;z-index:100;opacity:0;transition:opacity .15s ease;font-family:var(--font-ui);transform:translate(-50%)}.canvas-edit-hint.visible{opacity:1}.canvas-editing-indicator{position:absolute;background:var(--editor-accent);color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:3px;pointer-events:none;white-space:nowrap;z-index:100;font-family:var(--font-ui);letter-spacing:.03em;transform:translate(-50%);animation:editIndicatorIn .15s ease}@keyframes editIndicatorIn{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}button:disabled,.btn:disabled,.btn-primary:disabled,.btn-secondary:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}
