@import url(https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@300;400;500;600;700;900&family=Playfair+Display:wght@400;500;600;700;800;900&display=swap);@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.marketplace-container{--primary-gradient:linear-gradient(135deg,#667eea,#764ba2);--secondary-gradient:linear-gradient(135deg,#f093fb,#f5576c);--accent-gradient:linear-gradient(135deg,#4facfe,#00f2fe);--success-gradient:linear-gradient(135deg,#43e97b,#38f9d7);--warning-gradient:linear-gradient(135deg,#fa709a,#fee140);--glass-bg:#ffffff14;--glass-border:#ffffff1f;--glass-hover:#ffffff26;--shadow-sm:0 2px 8px #00000026;--shadow-md:0 4px 16px #0003;--shadow-lg:0 8px 32px #00000040;--shadow-xl:0 16px 64px #0000004d;--border-radius-sm:8px;--border-radius-md:12px;--border-radius-lg:16px;--border-radius-xl:24px;background:radial-gradient(circle at 20% 80%,#7877c633 0,#0000 50%),radial-gradient(circle at 80% 20%,#ff77c61a 0,#0000 50%),radial-gradient(circle at 40% 40%,#78dbff14 0,#0000 50%),url(/static/media/background.b797ef38e331f2044075.jpg),linear-gradient(135deg,#0a0a1a,#1a1a2e 50%,#16213e);background-attachment:fixed;background-position:50%,50%,50%,50%,50%;background-size:cover,cover,cover,cover,cover;color:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh;overflow-x:hidden}.marketplace-container:before{background:radial-gradient(600px circle at 50% 50%,#667eea0f 0,#0000 40%);background:radial-gradient(600px circle at var(--mouse-x,50%) var(--mouse-y,50%),#667eea0f 0,#0000 40%);bottom:0;content:"";left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:0}.marketplace-container>*{position:relative;z-index:1}.marketplace-container *{box-sizing:border-box}.marketplace-container ::-webkit-scrollbar{width:8px}.marketplace-container ::-webkit-scrollbar-track{background:#ffffff1a}.marketplace-container ::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px}.marketplace-container ::-webkit-scrollbar-thumb:hover{background:#ffffff80}.login-modal-overlay{align-items:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.login-modal-container{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);max-height:90vh;max-width:420px;overflow-y:auto;position:relative;width:100%}.login-modal-header{background:linear-gradient(135deg,#667eea1a,#764ba21a);border-bottom:1px solid var(--glass-border);padding:2rem 2rem 1rem;position:relative;text-align:center}.login-modal-header h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2 50%,#f093fb);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:1.75rem;font-weight:700;margin:0 0 .5rem}.login-modal-header p{color:#ffffffb3;font-size:.9rem;margin:0}.login-modal-close{background:none;border:none;border-radius:var(--border-radius-sm);color:#ffffffb3;cursor:pointer;padding:.5rem;position:absolute;right:1rem;top:1rem;transition:all .2s ease}.login-modal-close:hover{background:#ffffff1a;color:#fff}.login-modal-content{padding:2rem}.login-modal-tabs{border-bottom:1px solid var(--glass-border);display:flex;margin-bottom:2rem}.login-modal-tab-btn{background:none;border:none;border-bottom:2px solid #0000;color:#fff9;cursor:pointer;flex:1 1;font-size:1rem;font-weight:500;padding:.75rem 0;transition:all .3s ease}.login-modal-tab-btn.active{border-bottom-color:#667eea;color:#fff}.login-modal-tab-btn:hover:not(.active){color:#fffc}.login-modal-form{gap:1.5rem}.login-modal-form,.login-modal-form-group{display:flex;flex-direction:column}.login-modal-form-group label{color:#ffffffe6;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.login-modal-form-group input{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);color:#fff;font-size:1rem;padding:.75rem 1rem;transition:all .3s ease}.login-modal-form-group input::placeholder{color:#ffffff80}.login-modal-form-group input:focus{background:#ffffff14;border-color:#667eea;box-shadow:0 0 0 3px #667eea33;outline:none}.login-modal-form-group input:disabled{background:#ffffff05;cursor:not-allowed;opacity:.6}.login-modal-password-input{align-items:center;display:flex;position:relative}.login-modal-password-input input{flex:1 1;padding-right:3rem}.login-modal-password-toggle{align-items:center;background:none;border:none;border-radius:var(--border-radius-sm);color:#fff9;cursor:pointer;display:flex;justify-content:center;padding:.25rem;position:absolute;right:.75rem;transition:all .2s ease}.login-modal-password-toggle:hover:not(:disabled){background:#ffffff1a;color:#fffc}.login-modal-password-toggle:disabled{cursor:not-allowed;opacity:.4}.login-modal-submit-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:var(--border-radius-sm);color:#fff;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:.5rem;justify-content:center;margin-top:.5rem;padding:.875rem 1.5rem;transition:all .3s ease}.login-modal-submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:var(--shadow-md);transform:translateY(-1px)}.login-modal-submit-btn:disabled{background:#fff3;box-shadow:none;cursor:not-allowed;transform:none}.login-modal-loading-spinner{animation:spin 1s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.login-modal-error{background:#ef44441a;border:1px solid #ef44444d;border-radius:var(--border-radius-sm);color:#fca5a5;font-size:.9rem;margin:-.5rem 0 .5rem;padding:.75rem 1rem}.login-modal-footer{border-top:1px solid var(--glass-border);margin-top:1.5rem;padding-top:1.5rem;text-align:center}.login-modal-footer p{color:#ffffffb3;font-size:.9rem;margin:0}.login-modal-switch-btn{background:none;border:none;color:#667eea;cursor:pointer;font-weight:500;margin-left:.25rem;text-decoration:underline;transition:color .2s ease}.login-modal-switch-btn:hover:not(:disabled){color:#5a67d8}.login-modal-switch-btn:disabled{color:#fff6;cursor:not-allowed;text-decoration:none}@media (max-width:480px){.login-modal-overlay{padding:10px}.login-modal-container{max-width:100%}.login-modal-header{padding:1.5rem 1.5rem 1rem}.login-modal-content{padding:1.5rem}.login-modal-header h2{font-size:1.5rem}}.login-modal-message{background:#10b9811a;border:1px solid #10b9814d;border-radius:var(--border-radius-sm);color:#6ee7b7;font-size:.9rem;margin:-.5rem 0 .5rem;padding:.75rem 1rem}.login-modal-divider{margin:1.5rem 0;position:relative;text-align:center}.login-modal-divider:before{background:var(--glass-border);content:"";height:1px;left:0;position:absolute;right:0;top:50%}.login-modal-divider span{background:var(--glass-bg);color:#ffffff80;font-size:.875rem;padding:0 1rem}.login-modal-google-btn{align-items:center;background:#ffffff1a;border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.75rem;justify-content:center;padding:.75rem 1.5rem;transition:all .3s ease}.login-modal-google-btn:hover:not(:disabled){background:#ffffff26;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.login-modal-google-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.login-modal-verify-code{padding:2rem 0;text-align:center}.login-modal-verify-icon{margin-bottom:1.5rem}.login-modal-verify-icon svg{color:#10b981;opacity:.8}.login-modal-verify-code h3{color:#fff;font-size:1.5rem;font-weight:600;margin:0 0 1rem}.login-modal-verify-code p{color:#ffffffb3;line-height:1.5;margin:0 0 1rem}.login-modal-verify-code p strong{color:#fff;font-weight:600}.login-modal-verify-actions{display:flex;flex-direction:column;gap:1rem;margin-top:2rem}.login-modal-verify-actions .login-modal-back-btn,.login-modal-verify-actions .login-modal-resend-btn{border:none;border-radius:var(--border-radius-sm);cursor:pointer;font-size:.875rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.login-modal-verify-actions .login-modal-resend-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.login-modal-verify-actions .login-modal-resend-btn:hover:not(:disabled){background:linear-gradient(135deg,#5a67d8,#6b46c1);transform:translateY(-1px)}.login-modal-verify-actions .login-modal-back-btn{background:#ffffff1a;border:1px solid var(--glass-border);color:#ffffffb3}.login-modal-verify-actions .login-modal-back-btn:hover:not(:disabled){background:#ffffff26;color:#fff}.login-modal-verify-actions .login-modal-back-btn:disabled,.login-modal-verify-actions .login-modal-resend-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.header{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#0a0a1acc;border-bottom:1px solid var(--glass-border);box-shadow:var(--shadow-sm);padding:0;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header-content{justify-content:space-between;margin:0 auto;max-width:1500px;padding:1.25rem 2rem}.header-content,.header-left{align-items:center;display:flex}.header-left{gap:2rem}.header-logo{align-items:center;cursor:pointer;display:flex;transition:transform .2s ease}.header-logo:hover{transform:scale(1.02)}.header-logo-text{-webkit-text-fill-color:#0000;animation:gradientShift 4s ease-in-out infinite;background:linear-gradient(135deg,#667eea,#764ba2 50%,#f093fb);-webkit-background-clip:text;background-clip:text;background-size:200% 200%;color:#fff;font-size:1.75rem;font-weight:800;letter-spacing:-.02em;text-decoration:none}.header-nav{gap:2rem}.header-nav,.header-nav-links{align-items:center;display:flex}.header-nav-links{gap:.75rem}.header-nav-link{background:none;border:none;border-radius:var(--border-radius-sm);color:#fffc;cursor:pointer;font-size:.9rem;font-weight:600;padding:.5rem 1rem;position:relative;transition:all .2s ease}.header-nav-link:hover{background:#ffffff0d;color:#fff}.header-nav-link.active{color:#fff}.header-nav-link.active:after{background:var(--primary-gradient);border-radius:1px;bottom:-2px;content:"";height:2px;left:50%;position:absolute;transform:translateX(-50%);width:20px}.header-login-btn{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;overflow:hidden;padding:.75rem 1.5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.header-login-btn:before{background:linear-gradient(90deg,#0000,#ffffff1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.header-login-btn:hover:before{left:100%}.header-login-btn:hover{background:var(--glass-hover);border-color:#ffffff40;box-shadow:var(--shadow-md);transform:translateY(-2px)}.header-login-btn:active{transform:translateY(-1px)}.header-user-menu{position:relative}.header-user-btn{align-items:center;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.5rem 1rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.header-user-btn:hover{background:var(--glass-hover);border-color:#ffffff40;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.header-user-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;font-size:.75rem;font-weight:600;height:24px;justify-content:center;width:24px}.header-user-name{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-user-chevron{transition:transform .2s ease}.header-user-chevron.open{transform:rotate(180deg)}.header-user-dropdown{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);box-shadow:var(--shadow-lg);min-width:200px;overflow:hidden;position:absolute;right:0;top:calc(100% + .5rem);z-index:1000}.header-user-info{border-bottom:1px solid var(--glass-border);padding:1rem}.header-user-info-name{color:#fff;font-weight:600;margin-bottom:.25rem}.header-user-info-role{color:#fff9;font-size:.8rem}.header-user-divider{background:var(--glass-border);height:1px}.header-user-menu-item{align-items:center;background:none;border:none;color:#fffc;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;padding:.75rem 1rem;transition:all .2s ease;width:100%}.header-user-menu-item:hover{background:#ffffff0d;color:#fff}@media (max-width:768px){.header-content{padding:1rem}.header-logo-text{font-size:1.25rem}.header-user-name{display:none}.header-user-dropdown{right:-1rem}}.hero-section{align-items:center;background:radial-gradient(circle at 25% 25%,#667eea26 0,#0000 50%),radial-gradient(circle at 75% 75%,#764ba21a 0,#0000 50%),linear-gradient(135deg,#0a0a1ae6,#1a1a2ecc),url(/static/media/background.b797ef38e331f2044075.jpg);background-attachment:fixed;background-position:50%;background-repeat:no-repeat;background-size:cover;display:flex;justify-content:center;min-height:70vh;overflow:hidden;padding:10rem 2rem 8rem;position:relative;text-align:center}.hero-section:before{animation:floatingOrbs 20s ease-in-out infinite;background:radial-gradient(circle at 20% 30%,#667eea14 0,#0000 40%),radial-gradient(circle at 80% 70%,#f093fb0f 0,#0000 40%),radial-gradient(circle at 50% 50%,#4facfe0a 0,#0000 60%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}@keyframes floatingOrbs{0%,to{background:radial-gradient(circle at 20% 30%,#667eea14 0,#0000 40%),radial-gradient(circle at 80% 70%,#f093fb0f 0,#0000 40%),radial-gradient(circle at 50% 50%,#4facfe0a 0,#0000 60%)}50%{background:radial-gradient(circle at 80% 20%,#667eea14 0,#0000 40%),radial-gradient(circle at 20% 80%,#f093fb0f 0,#0000 40%),radial-gradient(circle at 60% 40%,#4facfe0a 0,#0000 60%)}}.hero-content{margin:0 auto;max-width:900px;position:relative;transform:translateY(-2rem);z-index:1}.hero-main-title{-webkit-text-fill-color:#0000;animation:titleGradient 6s ease-in-out infinite;background:linear-gradient(135deg,#fff,#f0f0f0 25%,#667eea 50%,#764ba2 75%,#fff);-webkit-background-clip:text;background-clip:text;background-size:300% 300%;font-size:3.5rem;font-weight:800;letter-spacing:-.02em;line-height:1.1;margin-bottom:1rem;text-shadow:0 8px 32px #0000004d}.hero-subtitle{color:#fff9;font-size:1.4rem;font-weight:400;letter-spacing:.02em;line-height:1.4;margin-bottom:1.5rem;text-shadow:0 4px 16px #0003}@keyframes titleGradient{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.hero-cta-section{display:flex;justify-content:center;margin-top:3rem}.hero-lets-go-btn{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#667eea,#764ba2);border:1px solid #fff3;border-radius:50px;box-shadow:0 8px 32px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:1.3rem;font-weight:600;gap:.5rem;justify-content:center;letter-spacing:.5px;overflow:hidden;padding:1.2rem 3rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.hero-lets-go-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s ease;width:100%}.hero-lets-go-btn:hover:before{left:100%}.hero-lets-go-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 12px 40px #667eea80;transform:translateY(-3px) scale(1.05)}.hero-lets-go-btn:active{transform:translateY(-1px) scale(1.02)}@media (max-width:768px){.hero-section{padding:3rem 1rem}.hero-main-title{font-size:2rem}.hero-subtitle{font-size:1.1rem}.hero-lets-go-btn{font-size:1.1rem;padding:1rem 2.5rem}}.marketplace-notification-container{display:flex;flex-direction:column;gap:12px;max-width:400px;pointer-events:none;position:fixed;right:20px;top:20px;z-index:10000}.marketplace-notification{align-items:flex-start;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg);display:flex;gap:12px;opacity:0;overflow:hidden;padding:16px;pointer-events:auto;position:relative;transform:translateX(100%);transition:all .4s cubic-bezier(.4,0,.2,1)}.marketplace-notification:before{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1}.marketplace-notification>*{position:relative;z-index:2}.marketplace-notification-visible{opacity:1;transform:translateX(0)}.marketplace-notification-removing{opacity:0;transform:translateX(100%)}.marketplace-notification-success{border-left:4px solid #10b981}.marketplace-notification-success .marketplace-notification-icon{color:#34d399}.marketplace-notification-error{border-left:4px solid #ef4444}.marketplace-notification-error .marketplace-notification-icon{color:#f87171}.marketplace-notification-warning{border-left:4px solid #f59e0b}.marketplace-notification-warning .marketplace-notification-icon{color:#fbbf24}.marketplace-notification-info{border-left:4px solid #3b82f6}.marketplace-notification-info .marketplace-notification-icon{color:#60a5fa}.marketplace-notification-icon{align-items:center;display:flex;flex-shrink:0;height:24px;justify-content:center;margin-top:2px;width:24px}.marketplace-notification-content{flex:1 1;min-width:0}.marketplace-notification-message{word-wrap:break-word;color:#fffffff2;font-size:14px;font-weight:500;line-height:1.4;margin:0}.marketplace-notification-close{align-items:center;background:none;border:none;border-radius:4px;color:#fff9;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;margin-top:2px;padding:4px;transition:all .2s ease}.marketplace-notification-close:hover{background:#ffffff1a;color:#ffffffe6}.marketplace-notification-close:active{transform:scale(.95)}@media (max-width:768px){.marketplace-notification-container{left:10px;max-width:none;right:10px;top:10px}.marketplace-notification{gap:10px;padding:14px}.marketplace-notification-message{font-size:13px}}@media (max-width:480px){.marketplace-notification-container{left:5px;right:5px;top:5px}.marketplace-notification{gap:8px;padding:12px}.marketplace-notification-icon{height:20px;width:20px}.marketplace-notification-icon svg{height:16px;width:16px}.marketplace-notification-close svg{height:14px;width:14px}}.marketplace-notification:nth-child(n+4){opacity:.8;transform:translateX(0) scale(.95)}.marketplace-notification:nth-child(n+5){opacity:.6;transform:translateX(0) scale(.9)}.marketplace-notification:nth-child(n+6){display:none}.marketplace-confirm-overlay{align-items:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;opacity:0;padding:20px;position:fixed;right:0;top:0;transition:opacity .3s ease;z-index:10001}.marketplace-confirm-visible{opacity:1}.marketplace-confirm-dialog{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-xl);max-width:480px;overflow:hidden;position:relative;transform:scale(.9) translateY(20px);transition:transform .3s cubic-bezier(.4,0,.2,1);width:100%}.marketplace-confirm-visible .marketplace-confirm-dialog{transform:scale(1) translateY(0)}.marketplace-confirm-dialog:before{background:linear-gradient(135deg,#ffffff1a,#ffffff0d);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1}.marketplace-confirm-dialog>*{position:relative;z-index:2}.marketplace-confirm-danger{border-left:4px solid #ef4444}.marketplace-confirm-warning{border-left:4px solid #f59e0b}.marketplace-confirm-info{border-left:4px solid #3b82f6}.marketplace-confirm-header{align-items:center;display:flex;gap:16px;padding:24px 24px 16px}.marketplace-confirm-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:48px;justify-content:center;transition:all .3s ease;width:48px}.marketplace-confirm-danger .marketplace-confirm-icon{background:#ef444426;color:#f87171}.marketplace-confirm-warning .marketplace-confirm-icon{background:#f59e0b26;color:#fbbf24}.marketplace-confirm-info .marketplace-confirm-icon{background:#3b82f626;color:#60a5fa}.marketplace-confirm-title{color:#fffffff2;flex:1 1;font-size:20px;font-weight:600;line-height:1.3}.marketplace-confirm-content{padding:0 24px 24px}.marketplace-confirm-message{color:#fffc;font-size:16px;line-height:1.5;margin:0}.marketplace-confirm-actions{display:flex;gap:12px;justify-content:flex-end;padding:0 24px 24px}.marketplace-confirm-btn{align-items:center;border:none;border-radius:var(--border-radius-md);cursor:pointer;display:flex;font-size:14px;font-weight:600;justify-content:center;min-width:100px;padding:12px 24px;transition:all .2s ease}.marketplace-confirm-cancel{background:var(--glass-bg);border:1px solid var(--glass-border);color:#fffc}.marketplace-confirm-cancel:hover{background:var(--glass-hover);border-color:#ffffff40;color:#fffffff2;transform:translateY(-1px)}.marketplace-confirm-cancel:active{transform:translateY(0)}.marketplace-confirm-confirm.marketplace-confirm-danger{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:var(--shadow-sm);color:#fff}.marketplace-confirm-confirm.marketplace-confirm-danger:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:var(--shadow-md);transform:translateY(-2px)}.marketplace-confirm-confirm.marketplace-confirm-warning{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:var(--shadow-sm);color:#fff}.marketplace-confirm-confirm.marketplace-confirm-warning:hover{background:linear-gradient(135deg,#d97706,#b45309);box-shadow:var(--shadow-md);transform:translateY(-2px)}.marketplace-confirm-confirm.marketplace-confirm-info{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:var(--shadow-sm);color:#fff}.marketplace-confirm-confirm.marketplace-confirm-info:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:var(--shadow-md);transform:translateY(-2px)}.marketplace-confirm-confirm:active{transform:translateY(0)}@media (max-width:768px){.marketplace-confirm-overlay{padding:16px}.marketplace-confirm-header{gap:12px;padding:20px 20px 12px}.marketplace-confirm-icon{height:40px;width:40px}.marketplace-confirm-icon svg{height:20px;width:20px}.marketplace-confirm-title{font-size:18px}.marketplace-confirm-content{padding:0 20px 20px}.marketplace-confirm-message{font-size:15px}.marketplace-confirm-actions{gap:10px;padding:0 20px 20px}.marketplace-confirm-btn{font-size:13px;min-width:80px;padding:10px 20px}}@media (max-width:480px){.marketplace-confirm-overlay{padding:12px}.marketplace-confirm-actions{flex-direction:column-reverse}.marketplace-confirm-btn{min-width:auto;width:100%}}.project-card{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--border-radius-md);cursor:pointer;overflow:hidden;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.project-card:before{background:linear-gradient(135deg,#667eea0d,#764ba20d);bottom:0;content:"";left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .3s ease;z-index:1}.project-card:hover:before{opacity:1}.project-card:hover{border-color:#667eea4d;box-shadow:var(--shadow-xl);transform:translateY(-8px) scale(1.02)}.project-card>*{position:relative;z-index:2}.project-thumbnail{background:#ffffff05;height:0;overflow:hidden;padding-bottom:56.25%;position:relative;width:100%}.project-thumbnail img{height:100%;left:0;object-fit:cover;object-position:top center;position:absolute;top:0;transition:transform .3s ease;width:100%}.project-card:hover .project-thumbnail img{transform:scale(1.05)}.project-card-action-buttons{grid-gap:.5rem;align-content:start;background:#000c;bottom:0;display:grid;gap:.5rem;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,minmax(40px,1fr));left:0;opacity:0;padding:1rem;position:absolute;right:0;top:0;transition:opacity .3s ease}.community-buttons{align-content:start;display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(1,minmax(40px,1fr))}.layout-buttons,.project-buttons{grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(2,minmax(40px,1fr))}.layout-buttons .project-card-action-btn:nth-child(4){grid-column:1/2}.layout-buttons .project-card-action-btn:nth-child(5){grid-column:2/3}.project-card.project-card-hovered .project-card-action-buttons{opacity:1}.project-card-action-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;justify-content:center;min-height:40px;padding:.75rem 1rem;text-align:center;transition:all .2s ease;white-space:nowrap}.project-card-action-btn.project-card-primary{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:var(--shadow-sm);color:#fff}.project-card-action-btn.project-card-primary:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:var(--shadow-md);transform:translateY(-2px)}.project-card-action-btn.project-card-secondary{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--glass-bg);border:1px solid var(--glass-border);color:#fff}.project-card-action-btn.project-card-secondary:hover{background:var(--glass-hover);border-color:#ffffff40;box-shadow:var(--shadow-sm);transform:translateY(-1px)}.project-card-action-btn.project-card-danger{background:#ef444426;border:1px solid #ef44444d;color:#fca5a5}.project-card-action-btn.project-card-danger:hover{background:#ef444440;border-color:#ef444480;box-shadow:0 4px 12px #ef444433;color:#fecaca;transform:translateY(-1px)}.project-info{padding:1rem 1.25rem}.project-title-row{align-items:center;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:.75rem}.project-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#fff;display:-webkit-box;flex:1 1;font-size:.95rem;font-weight:600;line-height:1.3;margin:0;overflow:hidden}.project-status-badge{border:1px solid;border-radius:12px;flex-shrink:0;font-size:.7rem;font-weight:600;letter-spacing:.5px;padding:.25rem .5rem;text-transform:uppercase}.project-status-badge.private{background:#ef444426;border-color:#ef44444d;color:#fca5a5}.project-status-badge.public{background:#22c55e26;border-color:#22c55e4d;color:#86efac}.project-meta{gap:.75rem}.author-avatar,.project-meta{align-items:center;display:flex}.author-avatar{background:linear-gradient(135deg,#667eea,#764ba2 50%,#f093fb);border:2px solid #ffffff1a;border-radius:50%;box-shadow:var(--shadow-sm);color:#fff;flex-shrink:0;font-size:.9rem;font-weight:700;height:40px;justify-content:center;transition:all .3s ease;width:40px}.project-card:hover .author-avatar{border-color:#fff3;box-shadow:var(--shadow-md);transform:scale(1.1)}.project-details{display:flex;flex:1 1;flex-direction:column;gap:.25rem;min-width:0}.author-name{color:#ffffffe6;font-size:.8rem;font-weight:500;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-stats{display:flex;gap:.75rem}.stat-item{align-items:center;color:#ffffffb3;display:flex;font-size:.7rem;font-weight:500;gap:.25rem;line-height:1.2}.stat-item svg{flex-shrink:0;height:12px;opacity:.8;width:12px}@media (max-width:768px){.project-info{padding:1rem}.project-title{font-size:.9rem}.project-stats{gap:.75rem}.project-card-action-buttons{gap:.375rem;padding:.75rem}.project-card-action-btn{font-size:.7rem;padding:.375rem .5rem}.layout-buttons,.project-buttons{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr)}.layout-buttons .project-card-action-btn:nth-child(4),.layout-buttons .project-card-action-btn:nth-child(5){grid-column:auto}}@media (max-width:480px){.project-card-action-buttons{grid-template-columns:1fr!important;grid-template-rows:auto!important}.project-card-action-btn{text-align:center;width:100%}.layout-buttons .project-card-action-btn:nth-child(4),.layout-buttons .project-card-action-btn:nth-child(5){grid-column:auto}}.project-card-global-loading-overlay{align-items:center;animation:project-card-fadeIn .3s ease;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.project-card-loading-spinner{align-items:center;animation:none!important;color:#fff;display:flex;flex-direction:column;gap:1rem;transform:none!important}.project-card-spinner{animation:project-card-spin 1s linear infinite;border:4px solid #fff3;border-radius:50%;border-top-color:#667eea;height:48px;width:48px}.project-card-loading-spinner p{animation:none!important;color:#ffffffe6;font-size:1rem;font-weight:500;margin:0;text-align:center;transform:none!important}@keyframes project-card-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes project-card-fadeIn{0%{opacity:0}to{opacity:1}}.project-grid-container{margin-bottom:4rem}.project-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));margin-bottom:3rem}.project-grid-loading{align-items:center;color:#fffc;display:flex;flex-direction:column;justify-content:center;padding:6rem 2rem}.project-grid-loading-spinner{animation:spin 1.2s cubic-bezier(.68,-.55,.265,1.55) infinite;border:4px solid #ffffff1a;border-radius:50%;border-top-color:#0000;height:48px;margin-bottom:2rem;position:relative;width:48px}.project-grid-loading-spinner:before{animation:spin 2s linear infinite reverse;border:4px solid #0000;border-radius:50%;border-top-color:#667eea;bottom:-4px;content:"";left:-4px;position:absolute;right:-4px;top:-4px}.project-grid-loading p{font-size:1.1rem;font-weight:500;opacity:.8}.project-grid-empty-state{align-items:center;color:#fffc;display:flex;flex-direction:column;justify-content:center;padding:6rem 2rem;text-align:center}.project-grid-coming-soon,.project-grid-no-content{align-items:center;display:flex;flex-direction:column;max-width:400px}.project-grid-coming-soon-icon,.project-grid-no-content-icon{color:#fff9;margin-bottom:1.5rem;opacity:.6}.project-grid-coming-soon h3,.project-grid-no-content h3{color:#ffffffe6;font-size:1.5rem;font-weight:600;margin-bottom:.75rem}.project-grid-coming-soon p,.project-grid-no-content p{color:#ffffffb3;font-size:1rem;font-weight:400;line-height:1.5;margin:0}@media (max-width:1500px){.project-grid{gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}@media (max-width:768px){.project-grid{gap:1rem;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}@media (max-width:480px){.project-grid{gap:1rem;grid-template-columns:1fr}}.pagination{justify-content:center;margin-top:3rem;padding:2rem 0}.pagination,.pagination-btn{align-items:center;display:flex;gap:.75rem}.pagination-btn{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;overflow:hidden;padding:1rem 1.5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.pagination-btn:before{background:linear-gradient(90deg,#0000,#ffffff1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.pagination-btn:hover:not(:disabled):before{left:100%}.pagination-btn:hover:not(:disabled){background:var(--glass-hover);border-color:#667eea4d;box-shadow:var(--shadow-md);transform:translateY(-2px)}.pagination-btn:disabled{cursor:not-allowed;opacity:.4;transform:none}.pagination-numbers{align-items:center;display:flex;gap:.5rem;margin:0 1.5rem}.pagination-number{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;min-width:48px;padding:.75rem 1rem;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1)}.pagination-number:hover{background:var(--glass-hover);border-color:#667eea4d;box-shadow:var(--shadow-sm);transform:translateY(-2px)}.pagination-number.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;box-shadow:var(--shadow-md);transform:translateY(-1px)}.pagination-ellipsis{color:#ffffff80;font-size:.95rem;font-weight:600;padding:.75rem .5rem}@media (max-width:768px){.pagination{flex-wrap:wrap;gap:.25rem}.pagination-btn{font-size:.8rem;padding:.5rem .75rem}.pagination-numbers{gap:.125rem;margin:0 .5rem}.pagination-number{font-size:.8rem;min-width:36px;padding:.4rem .6rem}}@media (max-width:480px){.pagination{flex-wrap:nowrap;justify-content:space-between}.pagination-numbers{-ms-overflow-style:none;flex:1 1;justify-content:center;margin:0 .5rem;overflow-x:auto;scrollbar-width:none}.pagination-numbers::-webkit-scrollbar{display:none}.pagination-btn{flex-shrink:0}}.workspace-section{background:radial-gradient(circle at 10% 20%,#667eea08 0,#0000 50%),radial-gradient(circle at 90% 80%,#764ba205 0,#0000 50%),#0a0a1a;min-height:60vh;padding:4rem 2rem;position:relative}.workspace-content{margin:0 auto;max-width:1500px}.workspace-header{justify-content:space-between;margin-bottom:3rem}.workspace-header,.workspace-section-tabs-section{align-items:center;display:flex;gap:2rem}.workspace-section-tabs{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);display:flex;gap:.25rem;padding:.5rem}.workspace-section-tab{background:#0000;border:none;border-radius:var(--border-radius-sm);color:#ffffffb3;cursor:pointer;font-size:.95rem;font-weight:600;overflow:hidden;padding:.875rem 1.75rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap}.workspace-section-tab:before{background:linear-gradient(90deg,#0000,#ffffff1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.workspace-section-tab:hover:before{left:100%}.workspace-section-tab:hover{background:var(--glass-hover);color:#fff;transform:translateY(-1px)}.workspace-section-tab.active{background:linear-gradient(135deg,#667eea33,#764ba226);border:1px solid #667eea4d;box-shadow:var(--shadow-md);color:#fff}.workspace-section-create-new-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:var(--border-radius-sm);box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:.75rem;overflow:hidden;padding:1rem 2rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap}.workspace-section-create-new-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .6s ease;width:100%}.workspace-section-create-new-btn:hover:before{left:100%}.workspace-section-create-new-btn:hover{background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:var(--shadow-md);transform:translateY(-2px)}.workspace-section-create-new-btn:active{box-shadow:var(--shadow-sm);transform:translateY(-1px)}.workspace-section-create-new-btn svg{height:18px;width:18px}.workspace-search{flex:1 1;max-width:450px}.workspace-section-search-container{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);display:flex;padding:.75rem 1rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.workspace-section-search-container:focus-within{background:var(--glass-hover);border-color:#667eea66;box-shadow:var(--shadow-sm),0 0 0 3px #667eea1a;transform:translateY(-1px)}.workspace-search .workspace-section-search-input{background:#0000;border:none;color:#fff;flex:1 1;font-size:.95rem;font-weight:500;outline:none;padding:.25rem 0}.workspace-search .workspace-section-search-input::placeholder{color:#ffffff80;font-weight:400}.workspace-search .workspace-section-search-btn{align-items:center;background:#0000;border:none;border-radius:var(--border-radius-sm);color:#ffffffb3;cursor:pointer;display:flex;justify-content:center;margin-left:.5rem;padding:.5rem;transition:all .2s ease}.workspace-search .workspace-section-search-btn:hover{background:#ffffff1a;color:#fff;transform:scale(1.1)}@media (max-width:768px){.workspace-section{padding:2rem 1rem}.workspace-header{align-items:stretch;flex-direction:column;gap:1rem}.workspace-section-tabs{justify-content:center}.workspace-search{max-width:none}.workspace-section-tab{flex:1 1;text-align:center}}.brand-showcase{align-items:center;background:#0000;background:radial-gradient(circle at 20% 60%,#0f172a66 0,#0000 70%),radial-gradient(circle at 80% 40%,#1e293b4d 0,#0000 60%);display:flex;justify-content:flex-end;min-height:100vh;overflow:hidden;padding:4rem 6rem 4rem 2rem;position:relative}.brand-showcase-content{margin-right:1rem;max-width:700px;position:relative;text-align:right;width:100%;z-index:2}.brand-showcase-title-container{margin-bottom:2rem;position:relative}.brand-showcase-title{-webkit-text-fill-color:#0000;background:linear-gradient(160deg,#0f172a,#1e293b 30%,#334155 60%,#475569);-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 8px 16px rgba(15,23,42,.6));font-family:Playfair Display,"Noto Serif JP",serif;font-size:clamp(4.5rem,12vw,9rem);font-weight:800;letter-spacing:-.03em;line-height:.85;margin:0;position:relative;text-shadow:0 0 40px #4755694d}.brand-showcase-title:after{background:linear-gradient(90deg,#0000,#33415599,#475569cc);bottom:-8px;content:"";height:2px;position:absolute;right:0;width:60%}.brand-showcase-subtitle{color:#334155cc;font-family:"Noto Serif JP",serif;font-size:clamp(1.4rem,3.5vw,2.4rem);font-weight:400;letter-spacing:.2em;margin-top:1rem;text-shadow:0 2px 8px #0f172a4d}.brand-showcase-description{margin:3rem 0;position:relative;text-align:right}.brand-showcase-text{color:#1e293be6;font-family:"Noto Serif JP",serif;font-size:clamp(1.4rem,2.8vw,2.2rem);font-weight:500;line-height:1.5;margin:2rem 0;text-shadow:0 2px 6px #0f172a33}.brand-showcase-highlight-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1e293b,#334155);-webkit-background-clip:text;background-clip:text;font-family:"Noto Serif JP",serif;font-weight:700;position:relative}.brand-showcase-highlight-text:after{background:linear-gradient(90deg,#1e293b99,#33415566);bottom:-2px;content:"";height:1px;left:0;position:absolute;width:100%}.brand-showcase-subtext{color:#1e293be6;font-family:Playfair Display,serif;font-size:clamp(1.1rem,2.2vw,1.6rem);font-style:italic;font-weight:500;line-height:1.7;margin:0 0 0 auto;max-width:650px;text-shadow:0 2px 6px #0f172a66}.brand-showcase-wave-decoration{bottom:3rem;height:80px;position:absolute;right:2rem;width:400px}.brand-showcase-wave-line{background:linear-gradient(90deg,#0000,#33415566,#1e293b99,#0000);border-radius:.5px;height:1px;position:absolute;width:100%}.brand-showcase-wave-1{animation:brand-showcase-wave1 10s ease-in-out infinite;top:0}.brand-showcase-wave-2{animation:brand-showcase-wave2 10s ease-in-out 1s infinite;top:25px}.brand-showcase-wave-3{animation:brand-showcase-wave3 10s ease-in-out 2s infinite;top:50px}.brand-showcase-floating-elements{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:1}.brand-showcase-foam-particle{animation:brand-showcase-float-up 16s linear infinite;background:#3341554d;border-radius:50%;height:3px;position:absolute;width:3px}.brand-showcase-foam-1{animation-delay:0s;left:60%}.brand-showcase-foam-2{animation-delay:3s;left:70%}.brand-showcase-foam-3{animation-delay:6s;left:80%}.brand-showcase-foam-4{animation-delay:9s;left:85%}.brand-showcase-foam-5{animation-delay:12s;left:90%}.brand-showcase-foam-6{animation-delay:15s;left:95%}@keyframes brand-showcase-float{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}@keyframes brand-showcase-wave1{0%,to{opacity:.4;transform:scaleX(1) translateY(0)}50%{opacity:.6;transform:scaleX(1.3) translateY(-8px)}}@keyframes brand-showcase-wave2{0%,to{opacity:.3;transform:scaleX(.7) translateY(0)}50%{opacity:.5;transform:scaleX(1.1) translateY(-5px)}}@keyframes brand-showcase-wave3{0%,to{opacity:.2;transform:scaleX(.8) translateY(0)}50%{opacity:.4;transform:scaleX(1) translateY(-3px)}}@keyframes brand-showcase-float-up{0%{opacity:0;transform:translateY(100vh) scale(0)}15%{opacity:.3}85%{opacity:.3}to{opacity:0;transform:translateY(-100px) scale(1)}}@media (max-width:768px){.brand-showcase{justify-content:center;min-height:80vh;padding:2rem 2rem 2rem 1rem}.brand-showcase-content{margin-right:0;text-align:center}.brand-showcase-title-container{margin-bottom:2rem}.brand-showcase-description{margin:2rem 0;text-align:center}.brand-showcase-subtext{margin:0 auto}.brand-showcase-wave-decoration{bottom:1rem;right:50%;transform:translateX(50%);width:250px}}@media (max-width:480px){.brand-showcase{min-height:70vh;padding:1.5rem}}.brand-showcase:before{background:radial-gradient(circle at 70% 30%,#0f172a1a 0,#0000 60%),radial-gradient(circle at 30% 70%,#1e293b14 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:0}.footer{background:radial-gradient(circle at 30% 40%,#667eea05 0,#0000 50%),radial-gradient(circle at 70% 60%,rgba(118,75,162,.015) 0,#0000 50%),#0a0a1a;border-top:1px solid var(--glass-border);margin-top:auto;padding:1.5rem 2rem;position:relative}.footer:before{background:linear-gradient(90deg,#0000,#667eea4d,#0000);content:"";height:1px;left:0;position:absolute;right:0;top:0}.footer-content{margin:0 auto;max-width:1500px}.footer-main-layout{grid-gap:8rem;align-items:flex-start;display:grid;gap:8rem;grid-template-columns:1fr auto auto;margin:0 auto;max-width:1100px}.footer-brand-section{max-width:550px;padding-left:0}.footer-brand-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:3rem;font-weight:800;margin-bottom:.6rem}.footer-brand-subtitle{color:#ffffffb3;font-size:1.2rem;font-weight:400;line-height:1.5}.footer-links-section{display:contents}.footer-column{display:flex;flex-direction:column}.footer-category{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;color:#fff;font-size:1.1rem;font-weight:700;letter-spacing:.5px;margin-bottom:1.5rem;text-transform:uppercase}.footer-list{list-style:none;margin:0;padding:0}.footer-list li{margin-bottom:1rem}.footer-link{color:#ffffffb3;display:inline-block;font-size:.95rem;font-weight:500;position:relative;text-decoration:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.footer-link:after{background:linear-gradient(135deg,#667eea,#764ba2);bottom:-2px;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.footer-link:hover{color:#fff;transform:translateX(4px)}.footer-link:hover:after{width:100%}.footer-copyright-section{border-top:1px solid #ffffff1a;margin-top:2rem;padding-top:1.5rem;text-align:center}.footer-copyright-text{color:#ffffff80;font-size:.85rem;font-weight:400;letter-spacing:.3px;margin:0}@media (max-width:768px){.footer{padding:2rem 1rem 1.5rem}.footer-main-layout{gap:2rem;grid-template-columns:1fr;max-width:none}.footer-brand-section{max-width:none;padding-left:0}.footer-brand-title{font-size:2.2rem}.footer-brand-subtitle{font-size:1rem}.footer-links-section{display:flex;gap:2rem}.footer-category{font-size:.9rem;margin-bottom:.75rem}.footer-link{font-size:.85rem}.footer-copyright-section{margin-top:1.5rem;padding-top:1rem}.footer-copyright-text{font-size:.8rem}}@media (max-width:480px){.footer-links-section{flex-direction:column;gap:1.5rem}.footer-brand-title{font-size:1.9rem}.footer-brand-subtitle{font-size:.95rem}}.whole-progress-app{--primary-gradient:linear-gradient(135deg,#667eea,#764ba2);--secondary-gradient:linear-gradient(135deg,#a8edea,#fed6e3);--accent-gradient:linear-gradient(135deg,#d299c2,#fef9d7);--success-gradient:linear-gradient(135deg,#89f7fe,#66a6ff);--glass-bg:#ffffff14;--glass-border:#ffffff1f;--glass-hover:#ffffff26;--shadow-sm:0 2px 8px #00000014;--shadow-md:0 4px 16px #0000001f;--shadow-lg:0 8px 32px #00000029;--shadow-xl:0 16px 64px #0003;--border-radius-sm:8px;--border-radius-md:12px;--border-radius-lg:16px;--border-radius-xl:24px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at 15% 85%,#a78bfa26 0,#0000 50%),radial-gradient(circle at 85% 15%,#ec48991a 0,#0000 50%),radial-gradient(circle at 50% 50%,#3b82f614 0,#0000 50%),linear-gradient(135deg,#f8fafc,#f1f5f9 50%,#e2e8f0);color:#1e293b;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;min-height:100vh;position:relative}.whole-progress-app:before{background:radial-gradient(600px circle at 50% 50%,#a78bfa0a 0,#0000 40%);background:radial-gradient(600px circle at var(--mouse-x,50%) var(--mouse-y,50%),#a78bfa0a 0,#0000 40%);bottom:0;content:"";left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:0}.whole-progress-app>*{position:relative;z-index:1}.whole-progress-app-loading{align-items:center;background:radial-gradient(circle at 20% 80%,#a78bfa1a 0,#0000 50%),linear-gradient(135deg,#f8fafc,#f1f5f9);display:flex;flex-direction:column;height:100vh;justify-content:center}.whole-progress-app-loading .loading-spinner{animation:elegant-spin 1.2s linear infinite;border:3px solid #a78bfa33;border-radius:50%;border-top-color:#a78bfa;filter:drop-shadow(0 4px 8px rgba(167,139,250,.2));height:48px;margin-bottom:24px;width:48px}.whole-progress-app-loading p{color:#64748b;font-size:16px;font-weight:500;letter-spacing:.025em;margin:0}.whole-progress-app ::-webkit-scrollbar{width:6px}.whole-progress-app ::-webkit-scrollbar-track{background:#94a3b81a;border-radius:3px}.whole-progress-app ::-webkit-scrollbar-thumb{background:#94a3b84d;border-radius:3px;-webkit-transition:background .2s ease;transition:background .2s ease}.whole-progress-app ::-webkit-scrollbar-thumb:hover{background:#94a3b880}.whole-progress-app-login-container{align-items:center;background:linear-gradient(135deg,#0a0a1a,#1a1a2e 50%,#16213e);bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0}.whole-progress-app-login-backdrop{align-items:center;display:flex;height:100%;justify-content:center;padding:20px;width:100%}.loading-spinner{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:currentcolor;height:16px;width:16px}.loading-dots{display:flex;gap:4px;margin-left:8px}.loading-dots .dot{animation:loading-bounce 1.4s ease-in-out infinite;background-color:currentColor;border-radius:50%;height:6px;width:6px}.loading-dots .dot:first-child{animation-delay:-.32s}.loading-dots .dot:nth-child(2){animation-delay:-.16s}.loading-dots .dot:nth-child(3){animation-delay:0s}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24;margin:0}.form-group{display:flex;flex-direction:column}.form-group label{color:#495057;font-size:14px;font-weight:500;margin-bottom:8px}.form-group input{background-color:#fff;border:2px solid #e9ecef;border-radius:8px;font-size:16px;padding:12px 16px;transition:border-color .3s ease}.form-group input:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.form-group input:disabled{background-color:#f8f9fa;cursor:not-allowed}.generate-section{background-color:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;margin:16px 0;padding:20px;text-align:center}.generate-btn,.generate-overview-btn{background-color:#10b981;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;margin-top:12px;padding:12px 24px;transition:background-color .2s}.generate-btn:hover:not(:disabled),.generate-overview-btn:hover:not(:disabled){background-color:#059669}.generate-btn:disabled,.generate-overview-btn:disabled{background-color:#9ca3af;cursor:not-allowed;opacity:.6}@keyframes loading-bounce{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.session-list-sidebar{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffffff2,#ffffffe6);border-right:1px solid #94a3b833;box-shadow:0 0 0 1px #ffffff0d,0 4px 32px #00000014;color:#1e293b;display:flex;flex-direction:column;flex-shrink:0;max-width:400px;min-width:200px;position:relative;width:260px;width:var(--sidebar-width,260px)}.session-list-back-home{background:#f8fafc80;border-bottom:1px solid #94a3b826;padding:16px}.session-list-back-home-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:var(--border-radius-md);box-shadow:0 2px 8px #667eea40,inset 0 0 0 1px #ffffff1a;color:#fff;cursor:pointer;font-family:Inter,sans-serif;font-size:14px;font-weight:600;letter-spacing:.025em;overflow:hidden;padding:12px 16px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.session-list-back-home-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.session-list-back-home-btn:hover{box-shadow:0 4px 16px #667eea59,inset 0 0 0 1px #fff3;transform:translateY(-1px)}.session-list-back-home-btn:hover:before{left:100%}.session-list-back-home-btn:active{transform:translateY(0)}.session-list-user-info{align-items:center;background:#f8fafc80;border-top:1px solid #94a3b826;display:flex;justify-content:space-between;margin-top:auto;padding:16px}.session-list-user-profile{align-items:center;display:flex;flex:1 1;gap:12px;min-width:0}.session-list-user-avatar{align-items:center;background:linear-gradient(135deg,#a78bfa,#ec4899);border-radius:50%;box-shadow:0 2px 8px #a78bfa4d,inset 0 0 0 2px #ffffff1a;color:#fff;display:flex;flex-shrink:0;font-size:16px;font-weight:700;height:40px;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);width:40px}.session-list-user-avatar:hover{box-shadow:0 4px 16px #a78bfa66,inset 0 0 0 2px #fff3;transform:scale(1.05)}.session-list-user-details{flex:1 1;min-width:0}.session-list-user-name{color:#1e293b;font-family:Inter,sans-serif;font-size:14px;font-weight:600;margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-list-user-status{align-items:center;color:#059669;display:flex;font-size:12px;font-weight:500;gap:4px}.session-list-user-status:before{animation:pulse 2s infinite;background:#059669;border-radius:50%;content:"";height:6px;width:6px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.session-list-logout-btn{align-items:center;background:#ef44441a;border:1px solid #ef444433;border-radius:var(--border-radius-sm);color:#dc2626;cursor:pointer;display:flex;flex-shrink:0;font-size:16px;height:36px;justify-content:center;padding:8px;transition:all .3s cubic-bezier(.4,0,.2,1);width:36px}.session-list-logout-btn:hover{background:#dc2626;box-shadow:0 4px 12px #dc26264d;color:#fff;transform:translateY(-1px)}.session-list-logout-btn:active{transform:translateY(0)}.session-list-header{border-bottom:1px solid #94a3b826;padding:16px}.session-list-new-chat-btn{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffffb3;border:1px solid #94a3b833;border-radius:var(--border-radius-md);color:#475569;cursor:pointer;display:flex;font-family:Inter,sans-serif;font-size:14px;font-weight:500;gap:8px;justify-content:center;padding:12px 16px;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.session-list-new-chat-btn svg{transition:transform .2s ease}.session-list-new-chat-btn:hover svg{transform:rotate(90deg)}.session-list-new-chat-btn:hover{background:#ffffffe6;border-color:#a78bfa4d;box-shadow:0 4px 12px #0000001a;color:#1e293b;transform:translateY(-1px)}.session-list-new-chat-btn:active{transform:translateY(0)}.session-list-chat-history{flex:1 1;overflow-y:auto;padding:8px 12px}.session-list-loading-container{align-items:center;color:#64748b;display:flex;flex-direction:column;justify-content:center;padding:40px 20px}.session-list-loading-spinner{animation:session-list-spin 1s linear infinite;border:2px solid #94a3b833;border-radius:50%;border-top-color:#667eea;height:24px;margin-bottom:12px;width:24px}.session-list-loading-text{color:#64748b;font-family:Inter,sans-serif;font-size:14px;font-weight:500;margin:0}@keyframes session-list-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.session-list-chat-item{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fff6;border:1px solid #fff3;border-radius:var(--border-radius-md);cursor:pointer;font-size:14px;margin:4px 0;padding:12px 16px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);word-break:break-word}.session-list-chat-item:hover{background:#fff9;border-color:#a78bfa4d;box-shadow:0 4px 12px #00000014;transform:translateY(-1px)}.session-list-chat-item.active{background:linear-gradient(135deg,#a78bfa26,#ec48991a);border-color:#a78bfa66;box-shadow:0 4px 16px #a78bfa33,inset 0 0 0 1px #a78bfa1a}.session-list-chat-item-title{color:#1e293b;font-family:Inter,sans-serif;font-weight:600;margin-bottom:4px}.session-list-chat-item-meta{color:#64748b;font-size:12px;font-weight:400}.session-list-chat-item-actions{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffffe6;border-radius:var(--border-radius-sm);display:flex;gap:4px;opacity:0;padding:4px;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:all .3s cubic-bezier(.4,0,.2,1)}.session-list-chat-item:hover .session-list-chat-item-actions{opacity:1}.session-list-delete-btn,.session-list-edit-btn{align-items:center;background:none;border:none;border-radius:4px;color:#64748b;cursor:pointer;display:flex;font-size:12px;justify-content:center;padding:6px;transition:all .2s cubic-bezier(.4,0,.2,1)}.session-list-edit-btn:hover{background:#3b82f61a;color:#3b82f6}.session-list-delete-btn:hover{background:#ef44441a;color:#ef4444}@media (max-width:768px){.session-list-sidebar{position:absolute;transform:translateX(-100%);transition:transform .3s cubic-bezier(.4,0,.2,1);width:100%;z-index:100}.session-list-sidebar.open{transform:translateX(0)}}.progress-indicator{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:linear-gradient(135deg,#ffffffe6,#fffc);border-bottom:1px solid #94a3b833;box-shadow:0 2px 8px #0000000d;padding:12px 24px}.progress-steps{justify-content:center;margin:0 auto;max-width:800px}.progress-step,.progress-steps{align-items:center;display:flex}.progress-step{border-radius:var(--border-radius-md);cursor:pointer;flex-direction:row;gap:8px;padding:4px 8px;transition:all .3s cubic-bezier(.4,0,.2,1)}.progress-step.clickable:hover{transform:translateY(-1px)}.progress-step.disabled{cursor:not-allowed;opacity:.5}.step-circle{align-items:center;background:#f8fafccc;border:2px solid #cbd5e166;border-radius:50%;box-shadow:0 1px 3px #0000000d;color:#94a3b8;display:flex;flex-shrink:0;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:13px;font-weight:600;height:26px;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);width:26px}.progress-step.clickable .step-circle{background:linear-gradient(135deg,#60a5fa,#3b82f6);border-color:#60a5fa80;box-shadow:0 2px 8px #60a5fa40;color:#fff}.progress-step.current .step-circle{background:linear-gradient(135deg,#8b5cf6,#7c3aed);border-color:#8b5cf699;box-shadow:0 0 0 3px #8b5cf626,0 2px 8px #8b5cf659;color:#fff}.step-name{color:#64748b;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:13px;font-weight:500;letter-spacing:.025em;white-space:nowrap}.progress-step.current .step-name{color:#7c3aed;font-weight:600}.progress-step.clickable .step-name{color:#3b82f6;font-weight:500}.progress-connection{flex:1 1;height:2px;margin:0 8px;min-width:20px;position:relative}.connection-line{background:#94a3b84d;border-radius:1px;height:100%;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.progress-connection.active .connection-line{background:linear-gradient(90deg,#60a5fa,#3b82f6);box-shadow:0 0 4px #60a5fa4d}@media (max-width:768px){.progress-indicator{padding:10px 16px}.progress-steps{flex-direction:column;gap:12px}.progress-step{justify-content:center;padding:8px 16px;width:100%}.progress-connection{align-self:center;height:24px;margin:0;width:2px}.connection-line{border-radius:1px;height:100%;width:100%}.step-name{font-size:12px}}.fixed-action-section{bottom:30px;right:30px}.fixed-action-btn{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 8px 25px #667eea4d;justify-content:center;min-width:200px}.fixed-action-btn:hover:not(.disabled):not(.loading){background:linear-gradient(135deg,#5a6fd8,#6a4190);box-shadow:0 12px 35px #667eea66;transform:translateY(-2px)}.fixed-action-btn:active:not(.disabled):not(.loading){box-shadow:0 6px 20px #667eea4d;transform:translateY(0)}.fixed-action-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2)}.fixed-action-btn.success{background:linear-gradient(135deg,#4facfe,#00f2fe)}.fixed-action-btn.warning{background:linear-gradient(135deg,#fa709a,#fee140)}.fixed-action-btn.danger{background:linear-gradient(135deg,#ff6b6b,#ee5a24)}.fixed-action-btn.disabled{background:#ccc;box-shadow:0 4px 15px #0000001a;cursor:not-allowed;opacity:.6;transform:none!important}.fixed-action-btn.loading{cursor:wait;opacity:.8}.loading-content{align-items:center;display:flex;gap:8px}@media (max-width:768px){.fixed-action-section{bottom:20px;right:20px}.fixed-action-btn{font-size:14px;min-width:160px;padding:14px 24px}}@media (max-width:480px){.fixed-action-section{bottom:15px;left:15px;right:15px}.fixed-action-btn{min-width:auto;padding:16px 20px;width:100%}}.welcome-screen{align-items:center;background:radial-gradient(circle at 20% 80%,#a78bfa08 0,#0000 50%),radial-gradient(circle at 80% 20%,#ec489905 0,#0000 50%),#0000;display:flex;flex-direction:column;height:100%;justify-content:center;padding:60px 48px 100px;text-align:center}.welcome-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-family:Inter,sans-serif;font-size:36px;font-weight:800;letter-spacing:-.02em;margin-bottom:48px}.welcome-screen-subtitle{color:#64748b;font-family:Inter,sans-serif;font-size:18px;font-weight:400;line-height:1.6;margin-bottom:40px;max-width:600px}.welcome-screen-input{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:linear-gradient(135deg,#ffffffe6,#fffc);border:2px solid #94a3b833;border-radius:16px;border-radius:var(--border-radius-lg,16px);box-shadow:0 2px 8px #0000000a;font-family:Inter,sans-serif;font-size:16px;margin-bottom:24px;max-width:600px;min-height:120px;padding:20px 24px;resize:vertical;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.welcome-screen-input:focus{background:#fffffff2;border-color:#a78bfa80;box-shadow:0 0 0 3px #a78bfa1a,0 4px 16px #00000014;outline:none;transform:translateY(-1px)}.welcome-screen-input::placeholder{color:#94a3b8;font-weight:400}.welcome-screen-start-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:16px;border-radius:var(--border-radius-lg,16px);box-shadow:0 4px 16px #667eea4d,inset 0 0 0 1px #ffffff1a;color:#fff;cursor:pointer;font-family:Inter,sans-serif;font-size:16px;font-weight:600;overflow:hidden;padding:16px 32px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.welcome-screen-start-btn:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.welcome-screen-start-btn:hover:not(:disabled){box-shadow:0 6px 20px #667eea66,inset 0 0 0 1px #fff3;transform:translateY(-2px)}.welcome-screen-start-btn:hover:not(:disabled):before{left:100%}.welcome-screen-start-btn:active{transform:translateY(0)}.welcome-screen-start-btn:disabled{background:#94a3b84d;box-shadow:none;cursor:not-allowed;transform:none}.welcome-screen-start-btn.welcome-screen-loading{background:linear-gradient(135deg,#667eea,#764ba2);cursor:not-allowed}.welcome-screen-loading-content{align-items:center;display:flex;gap:8px;justify-content:center}.welcome-screen-loading-spinner{animation:welcome-screen-spin 1s linear infinite}.welcome-screen-loading-dots{display:inline-flex}.welcome-screen-loading-dots span{animation:welcome-screen-bounce 1.4s ease-in-out infinite both}.welcome-screen-loading-dots span:first-child{animation-delay:-.32s}.welcome-screen-loading-dots span:nth-child(2){animation-delay:-.16s}.welcome-screen-loading-dots span:nth-child(3){animation-delay:0s}@keyframes welcome-screen-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes welcome-screen-bounce{0%,80%,to{opacity:.5;transform:scale(0)}40%{opacity:1;transform:scale(1)}}.welcome-screen-mode-selector{display:flex;gap:16px;justify-content:center;margin-bottom:40px}.welcome-screen-mode-btn{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:linear-gradient(135deg,#ffffffe6,#fffc);border:2px solid #94a3b833;border-radius:16px;border-radius:var(--border-radius-lg,16px);box-shadow:0 2px 8px #0000000a;color:#64748b;cursor:pointer;display:flex;font-family:Inter,sans-serif;font-size:15px;font-weight:600;gap:10px;overflow:hidden;padding:16px 24px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.welcome-screen-mode-btn:before{background:linear-gradient(90deg,#0000,#a78bfa1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.welcome-screen-mode-btn:hover:not(:disabled){border-color:#a78bfa66;box-shadow:0 4px 16px #00000014;color:#667eea;transform:translateY(-2px)}.welcome-screen-mode-btn:hover:not(:disabled):before{left:100%}.welcome-screen-mode-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#a78bfa80;box-shadow:0 4px 16px #667eea4d,inset 0 0 0 1px #ffffff1a;color:#fff}.welcome-screen-mode-btn.active svg{filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.welcome-screen-mode-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.welcome-screen-mode-btn svg{transition:transform .2s ease}.welcome-screen-mode-btn:hover:not(:disabled) svg{transform:scale(1.1)}.welcome-screen-image-mode,.welcome-screen-text-mode{align-items:center;display:flex;flex-direction:column;max-width:600px;width:100%}.welcome-screen-mode-description{color:#6b7280;font-size:16px;margin-bottom:24px;text-align:center}.welcome-screen-image-upload-area{margin-bottom:24px;width:100%}.welcome-screen-upload-label{background-color:#f9fafb;border:2px dashed #d1d5db;border-radius:12px;cursor:pointer;display:block;padding:40px 20px;transition:all .3s ease;width:100%}.welcome-screen-upload-label:hover{background-color:#f0f9ff;border-color:#3b82f6}.welcome-screen-upload-content{align-items:center;display:flex;flex-direction:column;gap:12px}.welcome-screen-upload-icon{color:#9ca3af;font-size:48px}.welcome-screen-upload-text{text-align:center}.welcome-screen-upload-text>div:first-child{color:#374151;font-size:16px;font-weight:500;margin-bottom:4px}.welcome-screen-upload-hint{color:#6b7280;font-size:14px}.welcome-screen-image-preview-area{align-items:center;display:flex;flex-direction:column;gap:24px;width:100%}.welcome-screen-image-preview{border-radius:12px;box-shadow:0 4px 12px #0000001a;max-width:400px;overflow:hidden;position:relative;width:100%}.welcome-screen-image-preview img{display:block;height:auto;width:100%}.welcome-screen-clear-image-btn{align-items:center;background-color:#0009;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;position:absolute;right:8px;top:8px;transition:background-color .2s ease;width:32px}.welcome-screen-clear-image-btn:hover:not(:disabled){background-color:#000c}.welcome-screen-clear-image-btn:disabled{cursor:not-allowed;opacity:.5}.welcome-screen-image-mode-loading{align-items:center;color:#6b7280;display:flex;font-size:16px;gap:12px;justify-content:center;padding:40px}.welcome-screen-image-mode-loading .loading-spinner{animation:spin 1s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:24px;width:24px}.welcome-screen-image-mode-view{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;padding:40px 24px 100px}.welcome-screen-image-mode-header{margin-bottom:32px;text-align:center}.welcome-screen-image-mode-header h2{color:#1f2937;font-size:28px;font-weight:700;margin-bottom:8px}.welcome-screen-image-mode-header p{color:#6b7280;font-size:16px;margin:0}.image-preview-container{margin-bottom:32px;max-width:500px;width:100%}.image-preview-wrapper{background-color:#fff;border-radius:12px;box-shadow:0 8px 25px #00000026;overflow:hidden;padding:8px;position:relative}.uploaded-image-preview{border-radius:8px;display:block;height:auto;max-height:400px;object-fit:contain;width:100%}.image-analysis-status{max-width:500px;text-align:center;width:100%}.status-indicator.completed{align-items:center;background-color:#d1fae5;border:1px solid #a7f3d0;border-radius:8px;display:flex;gap:8px;justify-content:center;margin-bottom:20px;padding:12px 20px}.status-icon{font-size:18px}.status-text{color:#065f46;font-size:16px;font-weight:600}.analysis-info{margin-bottom:24px}.analysis-info p{color:#6b7280;font-size:15px;line-height:1.6;margin-bottom:12px}.analysis-info p:last-child{margin-bottom:0}.enter-canvas-btn{align-items:center;background-color:#3b82f6;border:none;border-radius:12px;color:#fff;cursor:pointer;display:inline-flex;font-size:16px;font-weight:600;gap:8px;padding:16px 32px;transition:all .3s ease}.enter-canvas-btn:hover{background-color:#2563eb;box-shadow:0 4px 12px #3b82f64d;transform:translateY(-1px)}.enter-canvas-btn:disabled{background-color:#9ca3af;box-shadow:none;cursor:not-allowed;transform:none}.fixed-action-section{bottom:20px;display:flex;justify-content:center;left:260px;left:var(--sidebar-width,260px);pointer-events:none;position:fixed;right:20px;z-index:1000}.fixed-action-btn{align-items:center;border:none;border-radius:50px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;padding:16px 32px;pointer-events:auto;transition:all .3s ease;white-space:nowrap}.fixed-action-btn.text-mode-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 6px 20px #3b82f666}.fixed-action-btn.text-mode-btn:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 8px 25px #3b82f699;transform:translateY(-3px)}.fixed-action-btn.text-mode-btn:active{box-shadow:0 4px 15px #3b82f680;transform:translateY(-1px)}.fixed-action-btn.welcome-screen-image-mode-btn{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 6px 20px #10b98166}.fixed-action-btn.welcome-screen-image-mode-btn:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 8px 25px #10b98199;transform:translateY(-3px)}.fixed-action-btn.welcome-screen-image-mode-btn:active{box-shadow:0 4px 15px #10b98180;transform:translateY(-1px)}.fixed-action-btn:disabled{box-shadow:0 3px 10px #0003!important;cursor:not-allowed;opacity:.7;transform:none!important}@media (max-width:768px){.welcome-screen{padding:24px 24px 100px}.welcome-screen-image-mode-view{padding:24px 16px 100px}.fixed-action-section{left:20px;right:20px}.fixed-action-btn{font-size:14px;padding:14px 28px}.welcome-screen-image-mode-header h2{font-size:24px}.image-preview-container{max-width:100%}.uploaded-image-preview{max-height:300px}.analysis-info p{font-size:14px}.enter-canvas-btn{font-size:15px;padding:14px 28px}}.welcome-screen-analysis-mode{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffc;border:1px solid #94a3b833;border-radius:12px;margin:16px 0;padding:16px}.welcome-screen-mode-options{display:flex;gap:32px;justify-content:center}.welcome-screen-mode-option{align-items:center;color:#374151;cursor:pointer;display:flex;font-family:Inter,sans-serif;font-size:15px;font-weight:500;justify-content:flex-start;min-width:140px}.welcome-screen-mode-option input[type=radio]{display:none}.welcome-screen-mode-checkmark{background:#ffffffe6;border:2px solid #94a3b866;border-radius:50%;box-shadow:0 1px 3px #0000001a;height:20px;margin-right:10px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:20px}.welcome-screen-mode-option input[type=radio]:checked+.welcome-screen-mode-checkmark{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea;box-shadow:0 2px 8px #667eea4d}.welcome-screen-mode-option input[type=radio]:checked+.welcome-screen-mode-checkmark:after{background:#fff;border-radius:50%;content:"";height:8px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:8px}.welcome-screen-mode-option:hover .welcome-screen-mode-checkmark{border-color:#667eea80;box-shadow:0 2px 8px #00000026;transform:translateY(-1px)}.welcome-screen-mode-option input[type=radio]:disabled+.welcome-screen-mode-checkmark{cursor:not-allowed;opacity:.5}.welcome-screen-mode-option:has(input:disabled){cursor:not-allowed;opacity:.6}@media (max-width:768px){.welcome-screen-analysis-mode{margin:12px 0;padding:12px}.welcome-screen-mode-options{align-items:center;flex-direction:column;gap:16px}.welcome-screen-mode-option{font-size:14px}}.message-list-message{animation:messageListSlideIn .3s cubic-bezier(.4,0,.2,1);display:flex;gap:16px;margin-bottom:3px;max-width:80%}@keyframes messageListSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-list-message-avatar{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:2px solid #fff3;border-radius:50%;box-shadow:var(--shadow-sm);display:flex;flex-shrink:0;font-size:14px;font-weight:600;height:36px;justify-content:center;width:36px}.message-list-user-avatar{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.message-list-ai-avatar{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.message-list-message-content{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffffb3;border:1px solid #fff3;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);color:var(--text-primary);flex:1 1;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.6;padding:16px 20px}.message-list-message-content p{font-size:15px;margin:0 0 6px}.message-list-message-content p:last-child{margin-bottom:0}.message-list-message-content p:first-child{margin-top:0}.message-list-questionnaire-history{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#fffc;border:1px solid #ffffff4d;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;margin:12px 0;padding:16px}.message-list-questionnaire-header{align-items:center;color:var(--text-primary);display:flex;font-size:14px;font-weight:600;gap:8px;margin-bottom:12px}.message-list-questionnaire-icon{color:var(--primary-color);flex-shrink:0;height:18px;width:18px}.message-list-questionnaire-qa{background:#ffffff80;border:1px solid #fff3;border-radius:var(--border-radius-md);margin-bottom:6px;padding:8px}.message-list-questionnaire-qa:last-child{margin-bottom:0}.message-list-questionnaire-question{color:var(--text-primary);font-size:13px;font-weight:500;margin-bottom:4px}.message-list-questionnaire-answer{color:var(--text-secondary);font-size:13px;font-style:italic;margin-left:10px;opacity:.8}.message-list-questionnaire-message{animation:messageListSlideIn .4s cubic-bezier(.4,0,.2,1);display:block;margin:12px 0;max-width:none!important;width:100%}.message-list-questionnaire-message .message-list-questionnaire-history{margin:0}.message-list-typing-indicator{align-items:center;color:var(--text-secondary);display:flex;font-size:14px;font-style:italic;gap:8px}.message-list-typing-dots{display:flex;gap:4px}.message-list-typing-dot{animation:messageListTypingPulse 1.4s ease-in-out infinite;background:var(--primary-color);border-radius:50%;height:6px;width:6px}.message-list-typing-dot:first-child{animation-delay:-.32s}.message-list-typing-dot:nth-child(2){animation-delay:-.16s}@keyframes messageListTypingPulse{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.question-section-container{animation:questionSectionSlideIn .3s cubic-bezier(.4,0,.2,1);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#fffc;border:1px solid #ffffff4d;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-md);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;margin:12px 0;padding:20px}@keyframes questionSectionSlideIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.question-section-title{color:#1f2937;font-size:16px;font-weight:600;margin-bottom:16px;position:relative;text-shadow:0 1px 2px #0000001a}.question-section-title:before{background:linear-gradient(135deg,var(--primary-color) 0,var(--secondary-color) 100%);border-radius:2px;bottom:-4px;content:"";height:3px;left:0;position:absolute;width:40px}.question-section-item{animation:questionItemFadeIn .4s cubic-bezier(.4,0,.2,1);margin-bottom:14px}.question-section-item:last-child{margin-bottom:0}@keyframes questionItemFadeIn{0%{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:translateX(0)}}.question-section-text{color:var(--text-primary);font-size:14px;font-weight:500;line-height:1.5;margin-bottom:8px}.question-section-input{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#fff9;border:2px solid #ffffff4d;border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);box-sizing:border-box;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:15px;min-height:48px;overflow:hidden;padding:14px 16px;resize:vertical;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.question-section-input::placeholder{color:var(--text-secondary);opacity:.7}.question-section-input:focus{background:#fffc;border-color:#c4b5fd;box-shadow:0 0 0 4px #c4b5fd0d,var(--shadow-md);outline:none;transform:translateY(-1px)}.question-section-input:hover:not(:focus){background:#ffffffb3;border-color:#c4b5fd33}.question-section-input:disabled{background:#f8fafccc;border-color:#cbd5e180;color:var(--text-secondary);cursor:not-allowed;opacity:.6}.question-section-input:focus-visible{outline:none}.question-section-input{transition:height .2s ease-out,border-color .3s cubic-bezier(.4,0,.2,1),background-color .3s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1)}.question-input-area{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#fff9;border-top:1px solid #ffffff4d;box-shadow:0 -4px 20px #0000000d;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;padding:24px}.question-input-container{animation:inputAreaSlideUp .3s cubic-bezier(.4,0,.2,1);margin:0 auto;max-width:768px;position:relative}@keyframes inputAreaSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.question-input-message-input{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#fffc;border:2px solid #ffffff4d;border-radius:var(--border-radius-lg);box-shadow:var(--shadow-sm);box-sizing:border-box;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:16px;line-height:1.5;max-height:200px;min-height:48px;outline:none;padding:14px 54px 14px 18px;resize:none;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.question-input-message-input::placeholder{color:var(--text-secondary);opacity:.7}.question-input-message-input:focus{background:#fffffff2;border-color:#c4b5fd;box-shadow:0 0 0 4px #c4b5fd0d,var(--shadow-md);transform:translateY(-1px)}.question-input-message-input:hover:not(:focus){background:#ffffffe6;border-color:#c4b5fd33}.question-input-message-input:disabled{background:#f8fafccc;border-color:#cbd5e180;color:var(--text-secondary);cursor:not-allowed;opacity:.6}.question-input-send-btn{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#8b5cf6cc;border:1px solid #fff3;border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;position:absolute;right:8px;top:50%;transform:translateY(-50%);transition:all .3s cubic-bezier(.4,0,.2,1);width:40px}.question-input-send-btn svg{height:18px;transition:transform .2s cubic-bezier(.4,0,.2,1);width:18px}.question-input-send-btn:hover:not(:disabled){background:linear-gradient(135deg,#8b5cf6,#7c3aed);border-color:#ffffff4d;box-shadow:var(--shadow-md);transform:translateY(-50%) scale(1.05)}.question-input-send-btn:hover:not(:disabled) svg{transform:scale(1.1)}.question-input-send-btn:active:not(:disabled){transform:translateY(-50%) scale(.95)}.question-input-send-btn:disabled{background:#9ca3af99;border-color:#ffffff1a;cursor:not-allowed;opacity:.6;transform:translateY(-50%) scale(1)}.question-input-send-btn:disabled svg{opacity:.7}.question-input-send-btn:focus-visible{outline:2px solid var(--primary-color);outline-offset:2px}@media (max-width:768px){.question-input-area{padding:16px}.question-input-message-input{box-sizing:border-box;font-size:16px;padding:12px 48px 12px 16px}.question-input-send-btn{height:36px;right:6px;width:36px}.question-input-send-btn svg{height:16px;width:16px}}.design-cs-design-clarification-step{background:#0000;display:flex;flex-direction:column;height:100%;position:relative}.design-cs-step-content{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.design-cs-chat-messages-container{background:radial-gradient(circle at 25% 75%,#a78bfa05 0,#0000 50%),radial-gradient(circle at 75% 25%,rgba(236,72,153,.015) 0,#0000 50%),#0000;display:flex;flex:1 1;flex-direction:column;gap:24px;overflow-y:auto;padding:24px 24px 120px}.design-cs-input-area-container{backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background:linear-gradient(135deg,#fffffff2,#ffffffe6);border-top:1px solid #94a3b81a;bottom:0;box-shadow:0 -4px 20px #00000014;left:0;position:absolute;right:0;z-index:10}.design-cs-image-mode-loading{align-items:center;color:#64748b;display:flex;font-family:Inter,sans-serif;font-size:16px;font-weight:500;gap:16px;justify-content:center;padding:48px}.design-cs-loading-spinner{animation:elegant-spin 1.2s linear infinite;border:3px solid #a78bfa33;border-radius:50%;border-top-color:#a78bfa;filter:drop-shadow(0 2px 4px rgba(167,139,250,.2));height:28px;width:28px}@keyframes elegant-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.design-cs-image-mode-view{background:radial-gradient(circle at 20% 80%,#a78bfa08 0,#0000 50%),radial-gradient(circle at 80% 20%,#ec489905 0,#0000 50%),#0000;display:flex;flex-direction:column;height:100%}.design-cs-image-mode-header{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:linear-gradient(135deg,#fffc,#fff9);border-bottom:1px solid #94a3b81a;padding:32px 24px;text-align:center}.design-cs-image-mode-header h2{-webkit-text-fill-color:#0000;align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;display:flex;font-family:Inter,sans-serif;font-size:28px;font-weight:800;gap:12px;justify-content:center;letter-spacing:-.02em;margin:0 0 12px}.design-cs-image-mode-header p{color:#64748b;font-family:Inter,sans-serif;font-size:16px;font-weight:400;line-height:1.6;margin:0}.design-cs-image-preview-container{align-items:center;display:flex;flex:1 1;justify-content:center;padding:24px}.design-cs-image-preview-wrapper{border-radius:8px;box-shadow:0 4px 12px #0000001a;max-height:100%;max-width:100%;overflow:hidden}.design-cs-uploaded-image-preview{border-radius:8px;display:block;height:auto;max-height:60vh;max-width:100%;width:auto}.design-cs-image-analysis-status{border-top:1px solid #e5e7eb;padding:24px}.design-cs-status-indicator{align-items:center;border-radius:8px;display:flex;gap:12px;margin-bottom:16px;padding:12px 16px}.design-cs-status-indicator.design-cs-completed{background-color:#f0fdf4;border:1px solid #bbf7d0}.design-cs-status-icon{font-size:18px}.design-cs-status-text{color:#065f46;font-weight:500}.design-cs-analysis-info{color:#6b7280;line-height:1.6}.design-cs-analysis-info p{margin:8px 0}.design-cs-generating-questions{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffffff2,#f8fafce6);border:1px solid #a78bfa33;border-radius:16px;box-shadow:0 8px 32px #a78bfa1a,0 4px 16px #0000000d,inset 0 1px 0 #fffc;margin:20px 0;overflow:hidden;padding:24px 32px;position:relative;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1)}.design-cs-generating-questions:before{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#a78bfa1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;width:100%}@keyframes shimmer{0%{left:-100%}to{left:100%}}.design-cs-generating-questions .design-cs-typing-indicator{color:#4c1d95;font-family:Inter,sans-serif;font-size:16px;font-weight:500;justify-content:center;letter-spacing:.025em;position:relative;z-index:1}.design-cs-generating-questions .design-cs-typing-indicator span{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-weight:600}.design-cs-typing-indicator{align-items:center;display:flex;gap:8px}.design-cs-typing-dots{display:flex;gap:4px}.design-cs-typing-dot{animation:typing-pulse 1.4s ease-in-out infinite both;background-color:currentColor;border-radius:50%;height:6px;width:6px}.design-cs-typing-dot:first-child{animation-delay:-.32s}.design-cs-typing-dot:nth-child(2){animation-delay:-.16s}@keyframes typing-pulse{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.design-cs-generate-section{background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin:16px 0;padding:24px;text-align:center}.design-cs-generate-section h3{color:#1f2937;font-size:18px;font-weight:600;margin:0 0 8px}.design-cs-generate-section p{color:#6b7280;line-height:1.5;margin:0 0 24px}.design-cs-generate-overview-btn{background-color:#3b82f6;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:500;min-width:200px;padding:12px 24px;transition:all .2s ease}.design-cs-generate-overview-btn:hover{background-color:#2563eb;transform:translateY(-1px)}.design-cs-generate-overview-btn:disabled{background-color:#9ca3af;cursor:not-allowed;transform:none}.design-cs-generating-indicator{align-items:center;color:#6b7280;display:flex;font-style:italic;gap:12px;justify-content:center;padding:20px}.design-cs-generating-indicator .design-cs-typing-dot{animation:typing-pulse 1.4s ease-in-out infinite;background-color:#10b981;border-radius:50%;height:8px;width:8px}.design-cs-generating-indicator .design-cs-typing-dot:first-child{animation-delay:-.32s}.design-cs-generating-indicator .design-cs-typing-dot:nth-child(2){animation-delay:-.16s}.design-cs-generating-indicator .design-cs-typing-dot:nth-child(3){animation-delay:0s}@media (max-width:768px){.design-cs-design-clarification-step{padding-bottom:80px}.design-cs-chat-messages-container{gap:16px;padding:16px}.design-cs-image-mode-header,.design-cs-image-preview-container{padding:16px}.design-cs-uploaded-image-preview{max-height:50vh}}.canvas-size-modal-overlay{align-items:center;animation:fadeIn .3s cubic-bezier(.4,0,.2,1);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:#0006;bottom:40px;display:flex;justify-content:center;left:0;position:fixed;right:0;top:300px;z-index:1000000}.canvas-size-modal{animation:slideIn .3s cubic-bezier(.4,0,.2,1);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffffff2,#f8fafce6);border:1px solid #94a3b833;border-radius:12px;border-radius:var(--border-radius-lg,12px);box-shadow:0 20px 64px #00000026,inset 0 0 0 1px #ffffff1a;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;max-height:90vh;max-width:90vw;overflow:hidden;width:480px}@keyframes slideIn{0%{opacity:0;transform:scale(.95) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}.canvas-size-modal-header{align-items:center;background:#f8fafc80;border-bottom:1px solid #94a3b826;display:flex;justify-content:space-between;padding:20px 24px}.canvas-size-modal-header h3{color:#1e293b;font-size:18px;font-weight:600;letter-spacing:.025em;margin:0}.canvas-size-modal-close{align-items:center;background:#94a3b81a;border:1px solid #94a3b833;border-radius:6px;border-radius:var(--border-radius-sm,6px);color:#64748b;cursor:pointer;display:flex;font-size:16px;height:32px;justify-content:center;padding:8px;transition:all .3s cubic-bezier(.4,0,.2,1);width:32px}.canvas-size-modal-close:hover{background:#ef44441a;border-color:#ef444433;color:#dc2626;transform:scale(1.05)}.canvas-size-modal-content{padding:24px}.canvas-size-current{align-items:center;background:#a78bfa14;border:1px solid #a78bfa33;border-radius:8px;border-radius:var(--border-radius-md,8px);display:flex;justify-content:space-between;margin-bottom:24px;padding:16px 20px}.canvas-size-label{color:#475569;font-size:14px;font-weight:500}.canvas-size-value{color:#6366f1;font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:16px;font-weight:600}.canvas-size-inputs-section{align-items:end;display:flex;gap:16px;margin-bottom:20px}.canvas-size-input-group{display:flex;flex:1 1;flex-direction:column;gap:8px}.canvas-size-input-group label{color:#475569;font-size:13px;font-weight:600;letter-spacing:.025em}.canvas-size-modal-input{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffc;border:1px solid #94a3b833;border-radius:8px;border-radius:var(--border-radius-md,8px);color:#1e293b;font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:16px;font-weight:500;padding:12px 16px;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1)}.canvas-size-modal-input:focus{background:#fffffff2;border-color:#6366f166;box-shadow:0 0 0 3px #6366f11a,0 4px 12px #0000001a;outline:none;transform:translateY(-1px)}.canvas-size-multiply{align-items:center;color:#64748b;display:flex;font-size:20px;font-weight:600;justify-content:center;min-width:24px;padding-bottom:12px}.canvas-size-info{background:#f8fafc99;border:1px solid #94a3b826;border-radius:8px;border-radius:var(--border-radius-md,8px);margin-bottom:20px;padding:16px}.canvas-size-info-item{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.canvas-size-info-label{color:#64748b;font-size:13px;font-weight:500}.canvas-size-info-value{color:#334155;font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:14px;font-weight:600}.canvas-size-info-note{color:#64748b;font-size:12px;font-style:italic;margin-top:4px}.canvas-size-error{align-items:flex-start;background:linear-gradient(135deg,#fef3c7e6,#fde68acc);border:1px solid #f59e0b4d;border-radius:8px;border-radius:var(--border-radius-md,8px);box-shadow:0 4px 16px #f59e0b26;display:flex;gap:12px;margin-bottom:20px;padding:16px}.canvas-size-error svg{color:#d97706;flex-shrink:0;margin-top:2px}.canvas-size-error span{color:#92400e;font-size:13px;font-weight:500;line-height:1.5;white-space:pre-line}.canvas-size-modal-actions{background:#f8fafc80;border-top:1px solid #94a3b826;display:flex;gap:12px;padding:20px 24px}.canvas-size-modal-btn{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid;border-radius:8px;border-radius:var(--border-radius-md,8px);cursor:pointer;flex:1 1;font-family:Inter,sans-serif;font-size:14px;font-weight:600;letter-spacing:.025em;padding:12px 20px;transition:all .3s cubic-bezier(.4,0,.2,1)}.canvas-size-modal-btn-cancel{background:#fffc;border-color:#94a3b833;box-shadow:0 2px 8px #0000000f,inset 0 0 0 1px #ffffff1a;color:#475569}.canvas-size-modal-btn-cancel:hover{background:#fffffff2;border-color:#94a3b84d;box-shadow:0 8px 24px #0000001f,inset 0 0 0 1px #fff3;color:#334155;transform:translateY(-2px)}.canvas-size-modal-btn-confirm{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-color:#6366f14d;box-shadow:0 2px 8px #6366f140,inset 0 0 0 1px #ffffff1a;color:#fff}.canvas-size-modal-btn-confirm:hover{background:linear-gradient(135deg,#5b21b6,#7c3aed);border-color:#6366f166;box-shadow:0 8px 24px #6366f14d,inset 0 0 0 1px #fff3;transform:translateY(-2px)}.canvas-size-modal-btn:active{transform:translateY(-1px)}@media (max-width:768px){.canvas-size-modal{margin:20px;width:95vw}.canvas-size-modal-actions,.canvas-size-modal-content,.canvas-size-modal-header{padding-left:16px;padding-right:16px}.canvas-size-inputs-section{flex-direction:column;gap:12px}.canvas-size-multiply{padding:8px 0;transform:rotate(90deg)}.canvas-size-modal-actions{flex-direction:column}}@media (max-width:480px){.canvas-size-modal-header h3{font-size:16px}.canvas-size-modal-input{font-size:14px;padding:10px 12px}.canvas-size-error span{font-size:12px}}.canvas-toolbar{align-items:center;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffffff2,#f8fafce6);border-bottom:1px solid #94a3b833;box-shadow:0 4px 32px #00000014,inset 0 0 0 1px #ffffff0d;display:flex;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;height:56px;justify-content:space-between;padding:0 20px;position:relative;z-index:999998}.canvas-toolbar-left{gap:24px}.canvas-config,.canvas-toolbar-left,.canvas-toolbar-right{align-items:center;display:flex}.canvas-config{gap:12px}.canvas-config label{color:#475569;font-size:13px;font-weight:600;letter-spacing:.025em;white-space:nowrap}.canvas-page-name-input{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffc;border:1px solid #94a3b833;border-radius:8px;border-radius:var(--border-radius-md,8px);color:#1e293b;font-family:Inter,sans-serif;font-size:13px;font-weight:500;padding:10px 14px;transition:all .3s cubic-bezier(.4,0,.2,1);width:140px}.canvas-page-name-input:focus{background:#fffffff2;border-color:#6366f166;box-shadow:0 0 0 3px #6366f11a,0 4px 12px #0000001a;outline:none;transform:translateY(-1px)}.canvas-size-inputs{align-items:center;display:flex;gap:8px}.canvas-size-input{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffc;border:1px solid #94a3b833;border-radius:8px;border-radius:var(--border-radius-md,8px);color:#1e293b;font-family:Inter,sans-serif;font-size:13px;font-weight:500;padding:10px 12px;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1);width:70px}.canvas-size-input:focus{background:#fffffff2;border-color:#6366f166;box-shadow:0 0 0 3px #6366f11a,0 4px 12px #0000001a;outline:none;transform:translateY(-1px)}.canvas-size-inputs span{color:#64748b;font-size:14px;font-weight:600}.canvas-size-button{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffc;border:1px solid #94a3b833;border-radius:8px;border-radius:var(--border-radius-md,8px);color:#1e293b;cursor:pointer;display:flex;font-family:Inter,sans-serif;font-size:13px;font-weight:500;gap:8px;justify-content:center;min-width:120px;padding:10px 14px;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap}.canvas-size-button:hover{background:#fffffff2;border-color:#6366f14d;box-shadow:0 4px 12px #0000001a,0 0 0 3px #6366f11a;color:#6366f1;transform:translateY(-1px)}.canvas-size-button:active{transform:translateY(0)}.canvas-size-button svg{transition:all .2s ease}.canvas-size-button:hover svg{color:#6366f1;transform:scale(1.1)}.canvas-action-buttons{align-items:center;flex-direction:row!important;gap:12px}.canvas-toolbar-btn{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffc;border:1px solid #94a3b833;border-radius:6px;border-radius:var(--border-radius-sm,6px);box-shadow:0 2px 8px #0000000f,inset 0 0 0 1px #ffffff1a;box-sizing:border-box;color:#475569;cursor:pointer;display:flex;font-family:Inter,sans-serif;font-size:12px;font-weight:500;gap:6px;height:36px;justify-content:center;letter-spacing:.025em;min-height:36px;padding:8px 12px;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap}.canvas-toolbar-btn:hover{background:#fffffff2;border-color:#94a3b84d;box-shadow:0 8px 24px #0000001f,inset 0 0 0 1px #fff3;color:#334155;transform:translateY(-2px)}.canvas-toolbar-btn:active{transform:translateY(-1px)}.canvas-toolbar-btn svg{transition:all .2s ease}.canvas-toolbar-btn.canvas-btn-primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-color:#6366f14d;color:#fff}.canvas-toolbar-btn.canvas-btn-primary:hover{background:linear-gradient(135deg,#5b21b6,#7c3aed);border-color:#6366f166;box-shadow:0 8px 24px #6366f14d,inset 0 0 0 1px #fff3}.canvas-toolbar-btn.canvas-btn-warning{background:linear-gradient(135deg,#f59e0b,#d97706);border-color:#f59e0b4d;color:#fff}.canvas-toolbar-btn.canvas-btn-warning:hover{background:linear-gradient(135deg,#d97706,#b45309);border-color:#f59e0b66;box-shadow:0 8px 24px #f59e0b4d,inset 0 0 0 1px #fff3}.canvas-toolbar-btn.canvas-btn-success{background:linear-gradient(135deg,#10b981,#059669);border-color:#10b9814d;color:#fff}.canvas-toolbar-btn.canvas-btn-success:hover{background:linear-gradient(135deg,#059669,#047857);border-color:#10b98166;box-shadow:0 8px 24px #10b9814d,inset 0 0 0 1px #fff3}.canvas-toolbar-btn.canvas-btn-info{background:linear-gradient(135deg,#0ea5e9,#0284c7);border-color:#0ea5e94d;color:#fff}.canvas-toolbar-btn.canvas-btn-info:hover{background:linear-gradient(135deg,#0284c7,#0369a1);border-color:#0ea5e966;box-shadow:0 8px 24px #0ea5e94d,inset 0 0 0 1px #fff3}.canvas-toolbar-btn:disabled{background:#94a3b81a;color:#94a3b8;cursor:not-allowed;opacity:.5;transform:none}.canvas-toolbar-btn:disabled:hover{background:#94a3b81a;border-color:#94a3b833;box-shadow:none;color:#94a3b8;transform:none}.canvas-network-error-indicator{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:linear-gradient(135deg,#fef3c7e6,#fde68acc);border:1px solid #f59e0b33;border-radius:8px;border-radius:var(--border-radius-md,8px);box-shadow:0 4px 16px #f59e0b26,inset 0 0 0 1px #ffffff1a;box-sizing:border-box;color:#92400e;display:flex;font-family:Inter,sans-serif;font-size:13px;font-weight:600;gap:8px;height:44px;margin-right:12px;min-height:44px;padding:12px 16px;white-space:nowrap}.canvas-dismiss-btn{align-items:center;background:#ef44441a;border:1px solid #ef444433;border-radius:6px;border-radius:var(--border-radius-sm,6px);color:#dc2626;cursor:pointer;display:flex;height:24px;justify-content:center;margin-left:8px;padding:4px;transition:all .3s cubic-bezier(.4,0,.2,1);width:24px}.canvas-dismiss-btn:hover{background:#dc2626;box-shadow:0 4px 12px #dc26264d;color:#fff;transform:scale(1.05)}@media (max-width:1200px){.canvas-toolbar{padding:0 15px}.canvas-toolbar-left{gap:15px}.canvas-page-name-input{width:100px}.canvas-size-input{width:50px}}@media (max-width:768px){.canvas-toolbar{flex-wrap:nowrap;gap:8px;height:auto;padding:8px}.canvas-toolbar-left{gap:8px}.canvas-config{gap:6px}.canvas-action-buttons{flex-direction:row!important;gap:4px}.canvas-toolbar-btn{font-size:10px;height:32px;min-height:32px;padding:4px 6px}}@media (max-width:480px){.canvas-toolbar-btn{font-size:9px;height:28px;min-height:28px;padding:3px 5px}.canvas-toolbar-btn span{font-size:10px}.canvas-size-inputs{gap:2px}.canvas-size-input{width:40px}.canvas-page-name-input{width:60px}}.canvas-element-toolbar{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffffff2,#f8fafce6);border-right:1px solid #94a3b833;box-shadow:0 4px 32px #00000014,inset 0 0 0 1px #ffffff0d;box-sizing:border-box;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;height:100%;overflow-y:auto;padding:18px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:180px}.canvas-element-toolbar.canvas-collapsed{overflow:hidden;padding:12px 6px;width:40px}.canvas-collapse-toggle{align-items:center;background:#0000;border:none;border-radius:50%;color:#334155;cursor:pointer;display:flex;height:32px;justify-content:center;position:absolute;right:8px;top:16px;transition:all .3s cubic-bezier(.4,0,.2,1);width:32px;z-index:10}.canvas-collapse-toggle:hover{background:#6366f126;color:#6366f1;transform:scale(1.1)}.canvas-collapse-toggle:active{transform:scale(1.05)}.canvas-element-toolbar.canvas-collapsed .canvas-collapse-toggle{right:8px;top:50%;transform:translateY(-50%)}.canvas-element-toolbar.canvas-collapsed .canvas-collapse-toggle:hover{transform:translateY(-50%) scale(1.1)}.canvas-toolbar-content{opacity:1;transition:all .3s cubic-bezier(.4,0,.2,1)}.canvas-element-toolbar.canvas-collapsed .canvas-toolbar-content{opacity:0;pointer-events:none}.canvas-element-toolbar h3{color:#1e293b;font-size:16px;font-weight:700;letter-spacing:-.025em;margin:0 0 20px;padding-right:32px}.canvas-element-category{margin-bottom:20px}.canvas-element-category:last-child{margin-bottom:0}.canvas-element-category h4{border-bottom:1px solid #94a3b833;color:#475569;font-size:11px;font-weight:600;letter-spacing:.025em;margin:0 0 12px;padding-bottom:6px;text-transform:uppercase}.canvas-element-list{display:flex;flex-direction:column;gap:8px}.canvas-element-item{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid #fff3;border-radius:4px;box-shadow:0 4px 16px #0000001a,inset 0 0 0 1px #ffffff1a;color:#fff;cursor:grab;font-size:12px;font-weight:600;letter-spacing:.025em;overflow:hidden;padding:12px 10px;position:relative;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none}.canvas-element-item:hover{box-shadow:0 8px 24px #00000026,inset 0 0 0 1px #fff3;transform:translateY(-3px)}.canvas-element-item:active{cursor:grabbing;transform:translateY(-1px)}.canvas-element-item:before{background:linear-gradient(135deg,#ffffff40,#ffffff0d);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.canvas-element-label{display:block;font-size:12px;font-weight:600;position:relative;z-index:1}.canvas-element-item.canvas-dragging{opacity:.6;transform:scale(.95)}@media (max-width:768px){.canvas-element-toolbar{padding:15px;width:150px}.canvas-element-toolbar.canvas-collapsed{padding:10px 3px;width:35px}.canvas-collapse-toggle{font-size:10px;height:20px;width:20px}.canvas-element-item{padding:12px 8px}.canvas-element-label{font-size:12px}}.canvas-viewport{background:linear-gradient(135deg,#f8fafc99,#f1f5f966);flex:1 1;max-height:90vh;min-height:300px;overflow:auto;padding:20px}.canvas-viewport,.canvas-wrapper{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);position:relative}.canvas-wrapper{background:linear-gradient(135deg,#fffffffa,#fffffff2);border:1px solid #94a3b81f;border-radius:12px;border-radius:var(--border-radius-lg,12px);box-shadow:0 4px 24px #0000000f,inset 0 0 0 1px #fff3;display:inline-block;height:-webkit-fit-content;height:fit-content;min-height:-webkit-fit-content;min-height:fit-content;min-width:-webkit-fit-content;min-width:fit-content;padding:24px;transition:all .3s cubic-bezier(.4,0,.2,1);width:-webkit-fit-content;width:fit-content}.canvas-wrapper:hover{box-shadow:0 8px 32px #00000014,inset 0 0 0 1px #ffffff40;transform:translateY(-1px)}canvas{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;border:1px solid #94a3b826;border-radius:8px;border-radius:var(--border-radius-md,8px);box-shadow:0 2px 8px #0000000a;cursor:default;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;position:relative;text-rendering:optimizeLegibility;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:1}canvas:focus{border-color:#8b5cf64d;box-shadow:0 0 0 3px #8b5cf614,0 4px 16px #8b5cf61f;outline:none}.canvas-viewport.canvas-drag-over{background:linear-gradient(135deg,#ecfeffe6,#cffafecc)}.canvas-viewport.canvas-drag-over .canvas-wrapper{background:linear-gradient(135deg,#ecfefff2,#cffafee6);border:2px dashed #06b6d499;box-shadow:0 8px 32px #06b6d433,inset 0 0 0 1px #06b6d41a}@media (max-width:1200px){.canvas-viewport,.canvas-wrapper{padding:15px}}@media (max-width:768px){.canvas-viewport,.canvas-wrapper{padding:10px}canvas{height:auto;max-width:100%}}.canvas-viewport::-webkit-scrollbar{height:8px;width:8px}.canvas-viewport::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.canvas-viewport::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.canvas-viewport::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.canvas-zoom-control-panel{align-items:center;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:linear-gradient(135deg,#ffffffe6,#f8fafcd9);border:1px solid #94a3b826;border-radius:12px;border-radius:var(--border-radius-lg,12px);bottom:40px;box-shadow:0 4px 20px #00000014,inset 0 0 0 1px #fff3;display:flex;font-family:Inter,sans-serif;pointer-events:auto;position:absolute;right:40px;transition:all .3s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none;z-index:100}.canvas-zoom-control-panel:hover{box-shadow:0 8px 28px #0000001a,inset 0 0 0 1px #ffffff40;transform:translateY(-1px)}.canvas-zoom-btn{align-items:center;background:#0000;border:none;border-radius:8px;border-radius:var(--border-radius-md,8px);color:#475569;cursor:pointer;display:flex;font-size:18px;font-weight:600;height:36px;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);width:36px}.canvas-zoom-btn:hover{background:#8b5cf614;color:#8b5cf6;transform:scale(1.05)}.canvas-zoom-btn:active{transform:scale(.95)}.canvas-zoom-display{align-items:center;border-radius:8px;border-radius:var(--border-radius-md,8px);color:#8b5cf6;cursor:pointer;display:flex;font-size:13px;font-weight:600;height:36px;justify-content:center;letter-spacing:.025em;min-width:60px;padding:0 12px;transition:all .3s cubic-bezier(.4,0,.2,1)}.canvas-zoom-display:hover{background:#8b5cf614;transform:scale(1.05)}@media (max-width:768px){.canvas-zoom-control-panel{bottom:25px;right:25px;scale:.9}.canvas-zoom-btn{font-size:16px;height:28px;width:28px}.canvas-zoom-display{font-size:11px;height:28px;min-width:45px}}@media (max-width:480px){.canvas-zoom-control-panel{bottom:20px;right:20px;scale:.8}}.canvas-tab-component{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;width:100%}.canvas-tab-header{background:#f8fafc80;border-bottom:1px solid #94a3b833;display:flex}.canvas-tab-button{background:#0000;border:none;border-bottom:2px solid #0000;color:#64748b;cursor:pointer;font-size:13px;font-weight:600;letter-spacing:.025em;padding:12px 18px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.canvas-tab-button:hover{background:#6366f10d;color:#475569}.canvas-tab-button.canvas-active{border-bottom-color:#6366f1;color:#6366f1}.canvas-tab-button.canvas-active,.canvas-tab-content{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffc}.canvas-tab-content{padding:16px}.canvas-properties-panel-backdrop{bottom:40px;pointer-events:none;position:fixed;right:16px;top:80px;width:300px;z-index:1000}.canvas-properties-panel-modal{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffffff2,#f8fafce6);border:1px solid #94a3b833;border-radius:8px;box-shadow:0 12px 40px #00000026,inset 0 0 0 1px #ffffff1a;display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;height:100%;overflow:hidden;pointer-events:auto;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.canvas-properties-panel-modal:hover{box-shadow:0 16px 48px #0003,inset 0 0 0 1px #ffffff26;transform:translateY(-2px)}.canvas-properties-panel-header{align-items:center;background:#f8fafc80;border-bottom:1px solid #94a3b826;display:flex;justify-content:space-between;padding:16px 20px 12px}.canvas-properties-panel-header h3{color:#1e293b;font-size:16px;font-weight:700;letter-spacing:-.025em;margin:0}.canvas-close-button{align-items:center;background:#ef44441a;border:1px solid #ef444433;border-radius:4px;color:#dc2626;cursor:pointer;display:flex;font-size:18px;height:28px;justify-content:center;padding:0;transition:all .3s cubic-bezier(.4,0,.2,1);width:28px}.canvas-close-button:hover{background:#dc2626;box-shadow:0 4px 12px #dc26264d;color:#fff;transform:scale(1.05)}.canvas-actions-tab,.canvas-properties-tab{display:flex;flex-direction:column;gap:16px}.canvas-property-item{display:flex;flex-direction:column;gap:8px}.canvas-property-item label{color:#475569;font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.canvas-property-value{background:#f8fafccc;border:1px solid #94a3b833;border-radius:4px;color:#64748b;display:inline-block;font-family:JetBrains Mono,Fira Code,monospace;font-size:13px;font-weight:500;padding:8px 12px}.canvas-property-item input,.canvas-property-item textarea{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffc;border:1px solid #94a3b833;border-radius:4px;box-sizing:border-box;color:#1e293b;font-family:Inter,sans-serif;font-size:13px;font-weight:500;padding:10px 12px;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.canvas-property-item input:focus,.canvas-property-item textarea:focus{background:#fffffff2;border-color:#6366f166;box-shadow:0 0 0 3px #6366f11a,0 4px 12px #0000001a;outline:none;transform:translateY(-1px)}.canvas-property-item textarea{line-height:1.5;min-height:100px;resize:vertical}.canvas-action-buttons{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;width:100%}.canvas-btn{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid #94a3b833;border-radius:4px;box-shadow:0 2px 8px #0000000f,inset 0 0 0 1px #ffffff1a;box-sizing:border-box;cursor:pointer;display:flex;flex-shrink:0;font-family:Inter,sans-serif;font-size:13px;font-weight:600;height:40px;justify-content:center;letter-spacing:.025em;min-height:40px;padding:10px 14px;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1);width:calc(50% - 4px)}.canvas-btn:hover{box-shadow:0 8px 24px #0000001f,inset 0 0 0 1px #fff3;transform:translateY(-2px)}.canvas-btn:active{transform:translateY(-1px)}.canvas-btn-primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-color:#6366f14d;color:#fff}.canvas-btn-primary:hover{background:linear-gradient(135deg,#5b21b6,#7c3aed);box-shadow:0 8px 24px #6366f14d,inset 0 0 0 1px #fff3}.canvas-btn-secondary{background:#64748b1a;border-color:#64748b33;color:#475569}.canvas-btn-secondary:hover{background:#64748b33;box-shadow:0 8px 24px #64748b33,inset 0 0 0 1px #fff3;color:#334155}.canvas-btn-danger{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:linear-gradient(135deg,#ef44441a,#dc262626);border-color:#ef444433;color:#dc2626}.canvas-btn-danger:hover{background:linear-gradient(135deg,#ef444433,#dc262640);border-color:#ef44444d;box-shadow:0 8px 24px #ef444426,inset 0 0 0 1px #fff3;color:#b91c1c}.canvas-shortcuts-section{border-top:1px solid #eee;margin-top:20px;padding-top:20px}.canvas-shortcuts-section h4{color:#333;font-size:16px;font-weight:600;margin:0 0 12px}.canvas-shortcuts-section ul{list-style:none;margin:0;padding-left:0}.canvas-shortcuts-section li{align-items:center;color:#666;display:flex;font-size:14px;gap:8px;margin-bottom:8px}.canvas-shortcuts-section kbd{background-color:#f8f9fa;border:1px solid #dee2e6;border-radius:4px;color:#495057;font-family:monospace;font-size:12px;min-width:60px;padding:3px 6px;text-align:center}@media (max-width:768px){.canvas-properties-panel-backdrop{bottom:40px;right:10px;top:80px;width:280px}.canvas-properties-panel-header{padding:16px 20px 12px}.canvas-properties-panel-header h3{font-size:16px}}@media (max-width:480px){.canvas-properties-panel-backdrop{bottom:20px;right:5px;top:60px;width:260px}}.canvas-edit-step{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:linear-gradient(135deg,#f8fafcf2,#f1f5f9e6);display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;height:100%;overflow:hidden;position:relative;width:100%}.layout-app-content .canvas-edit-step{height:100vh}.chat-area-step-content-area .canvas-edit-step{height:100%}.canvas-edit-content{display:flex;flex:1 1;gap:4px;min-height:0;min-width:0;overflow:hidden;padding:4px;position:relative}.canvas-edit-content>*{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffffff2,#ffffffd9);border:1px solid #94a3b826;border-radius:12px;border-radius:var(--border-radius-lg,12px);box-shadow:0 4px 32px #00000014,inset 0 0 0 1px #ffffff0d;flex-shrink:1;min-width:0;transition:all .3s cubic-bezier(.4,0,.2,1)}.canvas-edit-content>:hover{box-shadow:0 8px 40px #0000001f,inset 0 0 0 1px #ffffff1a;transform:translateY(-1px)}@media (max-width:1200px){.canvas-edit-content{flex-direction:column;gap:12px}}@media (max-width:768px){.canvas-edit-content{gap:8px;padding:12px}}.reference-selection-step{background:radial-gradient(circle at 25% 75%,#a78bfa05 0,#0000 50%),radial-gradient(circle at 75% 25%,rgba(236,72,153,.015) 0,#0000 50%),#fff;display:flex;flex-direction:column;height:100%}.reference-selection-step-content{flex:1 1;overflow-y:auto;padding:20px}.reference-selection-step-session-info{margin-bottom:32px;text-align:center}.reference-selection-step-session-info h3{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-family:Inter,sans-serif;font-size:32px;font-weight:800;letter-spacing:-.02em;margin:0 0 12px}.reference-selection-step-session-info p{color:#64748b;font-family:Inter,sans-serif;font-size:16px;font-weight:500;margin:0}.reference-selection-step-main-tabs{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;margin-bottom:24px;padding:4px}.reference-selection-step-main-tab{background:none;border:none;border-radius:8px;color:#64748b;cursor:pointer;flex:1 1;font-family:Inter,sans-serif;font-size:15px;font-weight:600;padding:12px 20px;transition:all .2s ease}.reference-selection-step-main-tab:hover{background:#f8fafc;color:#3b82f6}.reference-selection-step-main-tab.active{background:#3b82f6;box-shadow:0 2px 8px #3b82f64d;color:#fff}.reference-selection-step-style-content{animation:fadeIn .4s cubic-bezier(.4,0,.2,1)}.reference-selection-step-style-section{background:#fff;border:1px solid #e2e8f0;border-radius:15px;box-shadow:0 4px 12px #00000014;padding:24px}.reference-selection-step-style-preset-group{margin-bottom:28px}.reference-selection-step-style-preset-group label{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;display:block;font-family:Inter,sans-serif;font-size:18px;font-weight:700;letter-spacing:-.01em;margin-bottom:12px}.reference-selection-step-style-select{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffc;border:2px solid #a78bfa33;border-radius:12px;box-sizing:border-box;color:#1f2937;cursor:pointer;font-family:Inter,sans-serif;font-size:15px;font-weight:500;padding:16px 20px;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.reference-selection-step-style-select:focus{border-color:#667eea;box-shadow:0 0 0 4px #667eea1a,0 8px 24px #667eea26;outline:none;transform:translateY(-2px)}.reference-selection-step-style-select:hover{border-color:#667eea66;box-shadow:0 4px 12px #667eea1a;transform:translateY(-1px)}.reference-selection-step-custom-style-group{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#f8fafccc;border:2px solid #a78bfa26;border-radius:16px;margin-bottom:28px;padding:24px;transition:all .3s ease}.reference-selection-step-custom-style-group:hover{border-color:#a78bfa40;box-shadow:0 4px 16px #a78bfa1a}.reference-selection-step-custom-style-group label{color:#4c1d95;display:block;font-family:Inter,sans-serif;font-size:16px;font-weight:600;margin-bottom:12px}.reference-selection-step-custom-style-textarea{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffffe6;border:2px solid #a78bfa33;border-radius:12px;box-sizing:border-box;font-family:Inter,sans-serif;font-size:15px;line-height:1.6;margin-bottom:16px;min-height:120px;padding:16px 20px;resize:vertical;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.reference-selection-step-custom-style-textarea:focus{border-color:#667eea;box-shadow:0 0 0 4px #667eea1a,0 8px 24px #667eea26;outline:none;transform:translateY(-2px)}.reference-selection-step-custom-style-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;font-family:Inter,sans-serif;font-size:16px;font-weight:600;padding:14px 28px;transition:all .3s cubic-bezier(.4,0,.2,1)}.reference-selection-step-custom-style-btn:hover:not(:disabled){background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 8px 24px #667eea66;transform:translateY(-2px)}.reference-selection-step-custom-style-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.reference-selection-step-additional-info-group{margin-bottom:28px}.reference-selection-step-additional-info-group label{color:#64748b;display:block;font-family:Inter,sans-serif;font-size:15px;font-weight:600;margin-bottom:12px}.reference-selection-step-additional-info-textarea{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffc;border:2px solid #a78bfa26;border-radius:12px;box-sizing:border-box;font-family:Inter,sans-serif;font-size:15px;line-height:1.6;min-height:100px;padding:16px 20px;resize:vertical;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.reference-selection-step-additional-info-textarea:focus{border-color:#667eea;box-shadow:0 0 0 4px #667eea1a,0 4px 16px #667eea26;outline:none;transform:translateY(-1px)}.reference-selection-step-style-preview{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ecfdf5cc;border:2px solid #10b9814d;border-radius:16px;box-shadow:0 4px 16px #10b9811a;overflow:hidden;padding:24px;position:relative}.reference-selection-step-style-preview:before{background:linear-gradient(135deg,#10b9810d,#22c55e0d);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.reference-selection-step-style-preview>*{position:relative;z-index:1}.reference-selection-step-style-preview h4{align-items:center;color:#065f46;display:flex;font-family:Inter,sans-serif;font-size:18px;font-weight:700;gap:8px;margin:0 0 16px}.reference-selection-step-style-summary p{color:#374151;font-family:Inter,sans-serif;font-size:15px;line-height:1.6;margin:0 0 12px}.reference-selection-step-style-summary p:last-child{margin-bottom:0}.reference-selection-step-style-summary strong{color:#1f2937;font-weight:600}.reference-selection-step-website-content{animation:fadeIn .4s cubic-bezier(.4,0,.2,1)}.reference-selection-step-input-section{background:#fff;border:1px solid #e2e8f0;border-radius:15px;box-shadow:0 4px 12px #00000014;margin-bottom:24px;padding:24px}.reference-selection-step-url-input-group{display:flex;gap:12px;margin-bottom:16px}.reference-selection-step-url-input{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffc;border:2px solid #a78bfa33;border-radius:12px;box-sizing:border-box;color:#1f2937;flex:1 1;font-family:Inter,sans-serif;font-size:15px;font-weight:500;padding:16px 20px;transition:all .3s cubic-bezier(.4,0,.2,1)}.reference-selection-step-url-input:focus{border-color:#667eea;box-shadow:0 0 0 4px #667eea1a,0 8px 24px #667eea26;outline:none;transform:translateY(-2px)}.reference-selection-step-analyze-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 12px #667eea4d;color:#fff;cursor:pointer;display:flex;font-family:Inter,sans-serif;font-size:16px;font-weight:600;gap:8px;padding:16px 28px;transition:all .3s cubic-bezier(.4,0,.2,1);white-space:nowrap}.reference-selection-step-analyze-btn:hover:not(:disabled){background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 8px 24px #667eea66;transform:translateY(-2px)}.reference-selection-step-analyze-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.reference-selection-step-cookie-section{border-top:1px solid #e5e7eb;padding-top:16px}.reference-selection-step-cookie-toggle{align-items:center;background:none;border:none;color:#6b7280;cursor:pointer;display:flex;font-size:14px;justify-content:space-between;padding:8px 0;width:100%}.reference-selection-step-toggle-arrow{transition:transform .2s ease}.reference-selection-step-toggle-arrow.active{transform:rotate(180deg)}.reference-selection-step-cookie-input-container{margin-top:12px}.reference-selection-step-cookie-text{border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;font-size:14px;min-height:80px;padding:12px 16px;resize:vertical;width:100%}.reference-selection-step-analysis-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:48px}.reference-selection-step-analysis-loading,.reference-selection-step-analysis-results{background:#fff;border:1px solid #e2e8f0;border-radius:15px;box-shadow:0 4px 12px #00000014}.reference-selection-step-analysis-results{overflow:hidden}.reference-selection-step-analysis-tabs{background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex}.reference-selection-step-analysis-tab-btn{background:none;border:none;border-bottom:3px solid #0000;color:#64748b;cursor:pointer;flex:1 1;font-family:Inter,sans-serif;font-size:15px;font-weight:600;padding:16px;transition:all .2s ease}.reference-selection-step-analysis-tab-btn:hover{background:#f1f5f9;color:#3b82f6}.reference-selection-step-analysis-tab-btn.active{background:#fff;border-bottom-color:#3b82f6;color:#3b82f6}.reference-selection-step-tab-content{padding:24px}.reference-selection-step-screenshot-container{text-align:center}.reference-selection-step-website-screenshot{border:1px solid #e5e7eb;border-radius:8px;box-shadow:0 4px 6px #0000001a;height:auto;max-width:100%}.reference-selection-step-screenshot-placeholder{border:2px dashed #d1d5db;border-radius:8px;color:#9ca3af;padding:48px}.reference-selection-step-placeholder-content span{display:block;font-size:48px;margin-bottom:16px}.reference-selection-step-list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.reference-selection-step-list-header h4{color:#1f2937;font-size:18px;font-weight:600;margin:0}.reference-selection-step-copy-btn{background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:14px;padding:8px 16px;transition:all .2s ease}.reference-selection-step-copy-btn:hover{background:#e5e7eb}.reference-selection-step-colors-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.reference-selection-step-color-item{text-align:center}.reference-selection-step-color-preview{border:1px solid #e5e7eb;border-radius:8px;height:60px;margin-bottom:8px;width:100%}.reference-selection-step-color-code{color:#6b7280;font-family:monospace;font-size:12px}.reference-selection-step-fonts-list{display:flex;flex-direction:column;gap:16px}.reference-selection-step-font-item{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.reference-selection-step-font-name{color:#1f2937;font-size:16px;font-weight:600;margin-bottom:8px}.reference-selection-step-font-preview{color:#6b7280;font-size:14px}.reference-selection-step-no-results{background:#fff;border:1px solid #e2e8f0;border-radius:15px;box-shadow:0 4px 12px #00000014;color:#9ca3af;font-family:Inter,sans-serif;font-size:16px;font-weight:500;padding:48px;text-align:center}.reference-selection-step-project-content{animation:fadeIn .4s cubic-bezier(.4,0,.2,1)}.reference-selection-step-project-tabs{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;margin-bottom:24px;padding:4px}.reference-selection-step-project-tab{background:none;border:none;border-radius:8px;color:#64748b;cursor:pointer;flex:1 1;font-family:Inter,sans-serif;font-size:15px;font-weight:600;padding:12px 20px;transition:all .2s ease}.reference-selection-step-project-tab:hover{background:#f8fafc;color:#3b82f6}.reference-selection-step-project-tab.active{background:#3b82f6;box-shadow:0 2px 8px #3b82f64d;color:#fff}.reference-selection-step-search-container{margin-bottom:24px}.reference-selection-step-search-input{background:#fff;border:2px solid #e2e8f0;border-radius:12px;box-sizing:border-box;color:#1f2937;font-family:Inter,sans-serif;font-size:15px;font-weight:500;padding:16px 20px;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.reference-selection-step-search-input:focus{border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61a,0 4px 12px #3b82f626;outline:none;transform:translateY(-1px)}.reference-selection-step-search-input:hover{border-color:#3b82f666}.reference-selection-step-selected-project{background:#ecfdf5;border:1px solid #10b981;border-radius:8px;margin-bottom:24px;padding:16px}.reference-selection-step-selected-project h4{color:#065f46;font-size:16px;font-weight:600;margin:0 0 12px}.reference-selection-step-selected-project-readonly{background:#fff;border:2px solid #10b981;border-radius:15px;box-shadow:0 4px 12px #00000014;padding:24px}.reference-selection-step-selected-project-readonly h4{align-items:center;color:#065f46;display:flex;font-size:18px;font-weight:600;gap:8px;margin:0 0 20px}.reference-selection-step-project-card-large{align-items:flex-start;display:flex;gap:20px}.reference-selection-step-project-card-large img{border:1px solid #e5e7eb;border-radius:8px;flex-shrink:0;height:150px;object-fit:cover;width:200px}.reference-selection-step-project-details{flex:1 1}.reference-selection-step-project-details h3{color:#1f2937;font-size:24px;font-weight:700;margin:0 0 8px}.reference-selection-step-project-author{color:#6b7280;font-size:16px;font-weight:500;margin:0 0 16px}.reference-selection-step-project-stats{display:flex;gap:20px;margin-bottom:16px}.reference-selection-step-stat-item{align-items:center;color:#6b7280;display:flex;font-size:14px;gap:6px}.reference-selection-step-stat-item svg{color:#9ca3af}.reference-selection-step-project-description{background:#f9fafb;border-left:4px solid #3b82f6;border-radius:8px;color:#6b7280;font-size:14px;line-height:1.5;margin:0;padding:12px 16px}@media (max-width:768px){.reference-selection-step-project-card-large{flex-direction:column}.reference-selection-step-project-card-large img{height:200px;width:100%}}.reference-selection-step-projects-loading{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:15px;box-shadow:0 4px 12px #00000014;display:flex;flex-direction:column;justify-content:center;padding:48px}.reference-selection-step-projects-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-bottom:24px}.reference-selection-step-project-card{background:#fff;border:2px solid #e2e8f0;border-radius:15px;box-shadow:0 2px 8px #0000000f;cursor:pointer;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.reference-selection-step-project-card:hover{border-color:#3b82f6;box-shadow:0 8px 24px #3b82f626;transform:translateY(-4px)}.reference-selection-step-project-card.selected{background:#f0fdf4;border-color:#10b981;box-shadow:0 8px 24px #10b98126}.reference-selection-step-project-card img{height:160px;object-fit:cover;width:100%}.reference-selection-step-project-info{padding:20px}.reference-selection-step-project-info h5{color:#1f2937;font-family:Inter,sans-serif;font-size:17px;font-weight:700;line-height:1.3;margin:0 0 8px}.reference-selection-step-project-info p{color:#64748b;font-family:Inter,sans-serif;font-size:15px;font-weight:500;margin:0}.reference-selection-step-pagination{display:flex;gap:12px;justify-content:center;margin-top:32px}.reference-selection-step-page-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:10px;color:#64748b;cursor:pointer;display:flex;font-family:Inter,sans-serif;font-size:15px;font-weight:600;justify-content:center;min-width:44px;padding:12px 16px;transition:all .3s cubic-bezier(.4,0,.2,1)}.reference-selection-step-page-btn:hover{background:#f8fafc;border-color:#3b82f6;box-shadow:0 4px 12px #3b82f626;color:#3b82f6;transform:translateY(-2px)}.reference-selection-step-page-btn.active{background:#3b82f6;border-color:#3b82f6;box-shadow:0 4px 12px #3b82f64d;color:#fff}.reference-selection-step-loading-spinner-small{animation:spin 1s linear infinite;display:inline-block}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#dc2626;font-size:14px;margin-top:16px;padding:12px 16px}.reference-selection-step-confirm-btn{margin:0 24px 24px}@media (max-width:768px){.reference-selection-step-content{padding:16px}.reference-selection-step-url-input-group{flex-direction:column}.reference-selection-step-projects-grid{grid-template-columns:1fr}.reference-selection-step-colors-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}.ai-coding-step{background:#f5f5f5;display:flex;flex-direction:column;height:100%;overflow:hidden}.ai-coding-step .step-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;flex:1 1;flex-direction:column;margin:20px;padding:24px}.ai-coding-step .session-info{border-bottom:1px solid #e5e7eb;margin-bottom:24px;padding-bottom:16px}.ai-coding-step .session-info h3{color:#1f2937;font-size:24px;font-weight:600;margin:0 0 8px}.ai-coding-step .session-info p{color:#6b7280;font-size:14px;margin:0}.ai-coding-step .ai-coding-input-section{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:20px;padding:20px}.ai-coding-step .ai-coding-project-name-group{margin-bottom:24px}.ai-coding-step .ai-coding-project-name-group label{color:#333;display:block;font-size:16px;font-weight:600;margin-bottom:8px}.ai-coding-step .ai-coding-project-name-input{background:#fff;border:2px solid #e1e5e9;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:16px;font-weight:500;padding:14px 16px;transition:all .2s ease;width:100%}.ai-coding-step .ai-coding-project-name-input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none;transform:translateY(-1px)}.ai-coding-step .ai-coding-project-name-input:disabled{background-color:#f8f9fa;cursor:not-allowed;opacity:.7}.ai-coding-step .ai-coding-project-name-input::placeholder{color:#6c757d;font-weight:400}.ai-coding-step .instructions-group{margin-bottom:20px}.ai-coding-step .instructions-group label{color:#333;display:block;font-size:16px;font-weight:600;margin-bottom:8px}.ai-coding-step .instructions-textarea{border:2px solid #e1e5e9;border-radius:6px;box-sizing:border-box;font-family:inherit;font-size:14px;min-height:100px;padding:12px;resize:vertical;transition:border-color .2s ease;width:100%}.ai-coding-step .instructions-textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.ai-coding-step .instructions-textarea:disabled{background-color:#f8f9fa;cursor:not-allowed}.ai-coding-step .generate-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;padding:12px 24px;transition:all .2s ease}.ai-coding-step .generate-btn:hover:not(:disabled){background:linear-gradient(135deg,#5a67d8,#667eea);box-shadow:0 4px 8px #667eea4d;transform:translateY(-1px)}.ai-coding-step .generate-btn:disabled{background:#6c757d;box-shadow:none;cursor:not-allowed;transform:none}.ai-coding-step .ai-coding-step-loading-spinner-small{animation:ai-coding-spin 1s linear infinite}.ai-coding-step .ai-coding-error-message{background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24;margin-bottom:20px;padding:12px 16px}.ai-coding-step .ai-coding-no-results{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#6c757d;padding:40px;text-align:center}.ai-coding-step .ai-coding-no-results p{font-size:16px;margin:0 0 10px}.ai-coding-step .ai-coding-no-results small{color:#868e96;font-size:14px}.ai-coding-step.ai-coding-dual-pane{background:#f5f5f5;display:flex;flex-direction:row;margin:0;overflow:hidden;padding:0}.ai-coding-step.ai-coding-dual-pane.ai-coding-whole-progress-mode{height:100%;position:relative;width:100%}.ai-coding-step.ai-coding-dual-pane.ai-coding-project-mode{height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:100}.ai-coding-step .chat-section{background:#fff;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;flex-shrink:0;height:100%;max-width:600px;min-width:200px;position:relative}.ai-coding-step .chat-header{align-items:center;background:#fff;border-bottom:1px solid #e0e0e0;display:flex;flex-shrink:0;justify-content:space-between;padding:20px}.ai-coding-step .chat-header h2{color:#333;font-size:20px;margin:0}.ai-coding-step .reset-btn{align-items:center;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ef44441a;border:1px solid #ef444433;border-radius:8px;color:#ef4444;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;padding:8px 16px;transition:all .3s cubic-bezier(.4,0,.2,1)}.ai-coding-step .reset-btn:hover{background:#ef444426;border-color:#ef44444d;box-shadow:0 4px 12px #ef444433;color:#dc2626;transform:translateY(-1px)}.ai-coding-step .reset-btn:active{box-shadow:0 2px 6px #ef444426;transform:translateY(0)}.ai-coding-step .reset-btn svg{height:16px;transition:transform .2s ease;width:16px}.ai-coding-step .reset-btn:hover svg{transform:scale(1.1)}.ai-coding-step .messages-container{background:#fff;flex:1 1;overflow-y:auto;padding:20px}.ai-coding-step .ai-coding-step-message{animation:ai-coding-fadeIn .3s ease;margin-bottom:20px}@keyframes ai-coding-fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ai-coding-step .ai-coding-step-message.user{display:flex;justify-content:flex-end}.ai-coding-step .ai-coding-step-message.user .ai-coding-step-message-content{word-wrap:break-word;background:#667eea;border-radius:18px 18px 4px 18px;color:#fff;max-width:70%;padding:12px 16px}.ai-coding-step .ai-coding-step-message.assistant .ai-coding-step-message-content{word-wrap:break-word;background:#f1f1f1;border-radius:18px 18px 18px 4px;color:#333;max-width:90%;padding:12px 16px;white-space:pre-wrap}.ai-coding-step .ai-coding-step-message.system .ai-coding-step-message-content{background:#f3f4f6;border-radius:12px;color:#6b7280;font-size:14px;margin:0 auto;max-width:90%;padding:8px 12px;text-align:center}.ai-coding-step .ai-coding-step-message.generating{align-items:center;display:flex}.ai-coding-step .typing-indicator{background:#f1f1f1;border-radius:18px;display:flex;gap:4px;padding:12px 16px}.ai-coding-step .typing-indicator span{animation:ai-coding-typing 1.4s infinite;background:#999;border-radius:50%;height:8px;width:8px}.ai-coding-step .typing-indicator span:nth-child(2){animation-delay:.2s}.ai-coding-step .typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes ai-coding-typing{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-10px)}}.ai-coding-step .ai-coding-chat-input-section{background:#fff;border-top:1px solid #e0e0e0;flex-shrink:0;padding:20px}.ai-coding-step .ai-coding-input-container{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffffff2;border:2px solid #667eea26;border-radius:24px;box-shadow:0 4px 20px #00000014;max-width:100%;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.ai-coding-step .ai-coding-input-container:hover{border-color:#667eea40;box-shadow:0 6px 25px #0000001f;transform:translateY(-1px)}.ai-coding-step .ai-coding-input-container:focus-within{border-color:#667eea66;box-shadow:0 0 0 4px #667eea1a,0 8px 30px #00000026;transform:translateY(-2px)}.ai-coding-step .ai-coding-step-message-input{background:#0000;border:none;box-sizing:border-box;color:#333;font-family:inherit;font-size:15px;line-height:1.5;max-height:120px;min-height:24px;outline:none;padding:16px 70px 16px 20px;resize:none;transition:all .2s ease;width:100%}.ai-coding-step .ai-coding-step-message-input::placeholder{color:#6b7280b3;font-weight:400}.ai-coding-step .ai-coding-step-message-input:disabled{color:#6b728080;cursor:not-allowed}.ai-coding-step .ai-coding-step-send-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50%;box-shadow:0 2px 8px #667eea4d;color:#fff;cursor:pointer;display:flex;height:44px;justify-content:center;position:absolute;right:8px;top:50%;transform:translateY(-50%);transition:all .3s cubic-bezier(.4,0,.2,1);width:44px}.ai-coding-step .ai-coding-step-send-button:hover:not(:disabled){background:linear-gradient(135deg,#5a67d8,#6b46c1);box-shadow:0 4px 15px #667eea66;transform:translateY(-50%) scale(1.1)}.ai-coding-step .ai-coding-step-send-button:active:not(:disabled){box-shadow:0 2px 8px #667eea4d;transform:translateY(-50%) scale(1.05)}.ai-coding-step .ai-coding-step-send-button:disabled{background:linear-gradient(135deg,#d1d5db,#9ca3af);box-shadow:0 1px 4px #0000001a;cursor:not-allowed;opacity:.6;transform:translateY(-50%)}.ai-coding-step .ai-coding-step-send-button svg{transition:transform .2s ease}.ai-coding-step .ai-coding-step-send-button:hover:not(:disabled) svg{transform:scale(1.1)}.ai-coding-step .ai-coding-step-send-button:disabled svg{opacity:.7}.ai-coding-step .ai-coding-step-resizer{background:#e0e0e0;cursor:col-resize;flex-shrink:0;height:100%;position:relative;transition:background .2s;width:4px}.ai-coding-step .ai-coding-step-resizer:hover{background:#667eea}.ai-coding-step .preview-section{background:#f8f8f8;display:flex;flex:1 1;flex-direction:column;height:100%;min-width:200px;position:relative}.ai-coding-step .preview-tabs{align-items:center;background:#fff;border-bottom:2px solid #e0e0e0;display:flex;flex-shrink:0;height:50px;padding:0 20px}.ai-coding-step .ai-coding-step-tab-button{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;height:100%;padding:12px 20px;position:relative;transition:color .2s}.ai-coding-step .ai-coding-step-tab-button:hover{color:#333}.ai-coding-step .ai-coding-step-tab-button.active{color:#667eea}.ai-coding-step .ai-coding-step-tab-button.active:after{background:#667eea;bottom:-2px;content:"";height:2px;left:0;position:absolute;right:0}.ai-coding-step .fullscreen-btn{align-items:center;background:none;border:none;color:#666;cursor:pointer;display:flex;font-size:14px;gap:8px;height:100%;margin-left:auto;padding:12px 16px;position:relative;transition:color .2s}.ai-coding-step .fullscreen-btn:hover{background:#f0f0f0;color:#333}.ai-coding-step .ai-coding-step-tab-content{background:#f8f8f8;flex:1 1;overflow:hidden;position:relative}.ai-coding-step .ai-coding-step-tab-panel{height:100%;left:0;position:absolute;top:0;width:100%}.ai-coding-step .ai-coding-step-tab-panel[data-tab=preview]{align-items:center;display:flex;justify-content:center;padding:10px}.ai-coding-step .preview-container{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;height:0;overflow:hidden;padding-bottom:56.25%;position:relative;width:100%}.ai-coding-step .preview-container>*{height:100%!important;left:0!important;position:absolute!important;top:0!important;width:100%!important}.ai-coding-step .ai-coding-step-tab-panel[data-tab=code]{padding:0}.ai-coding-step .preview-placeholder{align-items:center;background:#fff;color:#999;display:flex;flex-direction:column;height:100%;justify-content:center;padding:40px 20px;text-align:center}.ai-coding-step .preview-placeholder .ai-coding-step-loading-spinner.large{margin-bottom:20px}.ai-coding-step .preview-placeholder h3{color:#667eea;font-size:20px;font-weight:600;margin:0 0 12px}.ai-coding-step .preview-placeholder p{color:#6b7280;font-size:14px;line-height:1.5;margin:0;max-width:300px}.ai-coding-step .sp-layout,.ai-coding-step .sp-wrapper{height:100%!important;max-height:100%!important;min-height:600px!important}.ai-coding-step .sp-editor,.ai-coding-step .sp-preview-container{height:100%!important;max-height:100%!important;min-height:300px!important}.ai-coding-step .sp-stack{height:100%!important;max-height:100%!important;min-height:600px!important}.ai-coding-step .sp-code-editor,.ai-coding-step .sp-preview,.ai-coding-step .sp-preview-iframe{height:100%!important;max-height:100%!important;min-height:300px!important}.ai-coding-step .fullscreen-overlay{align-items:center;background:#000000e6;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.ai-coding-step .fullscreen-container{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;height:100%;max-height:1080px;max-width:1920px;overflow:hidden;position:relative;width:100%}.ai-coding-step .fullscreen-close-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:2px solid #0000001a;border-radius:50%;box-shadow:0 4px 12px #00000026;color:#333;cursor:pointer;display:flex;height:44px;justify-content:center;position:absolute;right:20px;top:20px;transition:all .3s ease;width:44px;z-index:1001}.ai-coding-step .fullscreen-close-btn:hover{background:#fff;border-color:#0003;box-shadow:0 6px 20px #00000040;color:#000;transform:scale(1.1)}.ai-coding-step .fullscreen-close-btn:active{transform:scale(.95)}.ai-coding-step .fullscreen-preview,.ai-coding-step .fullscreen-preview-container{border-radius:12px;height:100%;overflow:hidden;position:relative;width:100%}.ai-coding-step .fullscreen-preview-container{background:#fff}.ai-coding-step .fullscreen-preview-container>*{height:100%!important;left:0!important;position:absolute!important;top:0!important;width:100%!important}.ai-coding-step .fullscreen-preview .sp-wrapper{border-radius:12px!important}.ai-coding-step .fullscreen-preview .sp-layout,.ai-coding-step .fullscreen-preview .sp-wrapper{height:100%!important;min-height:100vh!important}.ai-coding-step .fullscreen-preview .sp-preview-container{border-radius:12px!important;height:100%!important;min-height:100vh!important}.ai-coding-step .fullscreen-preview .sp-stack{height:100%!important;min-height:100vh!important}.ai-coding-step .fullscreen-preview .sp-code-editor,.ai-coding-step .fullscreen-preview .sp-preview,.ai-coding-step .fullscreen-preview .sp-preview-iframe{height:100%!important;min-height:50vh!important}.ai-coding-step .preview-loading-overlay{align-items:center;background:#ffffffe6;border-radius:8px;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:100}.ai-coding-step .preview-loading-overlay.fullscreen-loading{background:#fffffff2;border-radius:12px}.ai-coding-step .ai-coding-step-loading-spinner{animation:ai-coding-spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:40px;width:40px}.ai-coding-step .ai-coding-step-loading-spinner.large{border-width:6px;height:60px;width:60px}@keyframes ai-coding-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:1200px){.ai-coding-step .chat-section{max-width:350px}}@media (max-width:1024px){.ai-coding-step.ai-coding-dual-pane{flex-direction:column}.ai-coding-step .chat-section{border-bottom:1px solid #e0e0e0;border-right:none;height:40%;max-width:none;width:100%!important}.ai-coding-step .ai-coding-step-resizer{cursor:row-resize;height:4px;width:100%}.ai-coding-step .preview-section{height:60%;width:100%!important}}@media (max-width:768px){.ai-coding-step .chat-section{height:35%}.ai-coding-step .preview-section{height:65%}.ai-coding-step .step-content{margin:12px;padding:15px}}@media (max-width:480px){.ai-coding-step .chat-section{height:30%}.ai-coding-step .preview-section{height:70%}.ai-coding-step .step-content{margin:8px}}.chat-area-main-content{background:radial-gradient(circle at 85% 15%,#a78bfa05 0,#0000 50%),radial-gradient(circle at 15% 85%,rgba(236,72,153,.015) 0,#0000 50%),#fff;display:flex;flex:1 1;flex-direction:column;min-width:0;overflow:hidden}.chat-area-chat-header{color:#1e293b;font-family:Inter,sans-serif}.chat-area-chat-title{font-weight:600;letter-spacing:-.025em}.chat-area-progress-section{background:#0000}.chat-area-step-content-area{--canvas-height-mode:flex-fill;flex:1 1;height:0;min-height:0;overflow:hidden}.chat-area-step-content{height:100%;overflow:auto;width:100%}.chat-area-step-content:has(.ai-coding-step){overflow:hidden}.chat-area-step-content.chat-area-ai-coding-mode{overflow:hidden}.chat-area-step-content-area::-webkit-scrollbar{width:6px}.chat-area-step-content-area::-webkit-scrollbar-track{background:#94a3b80d;border-radius:3px}.chat-area-step-content-area::-webkit-scrollbar-thumb{background:#94a3b833;border-radius:3px;-webkit-transition:background .2s ease;transition:background .2s ease}.chat-area-step-content-area::-webkit-scrollbar-thumb:hover{background:#94a3b866}.chat-area-step-content-area{position:relative;scroll-behavior:smooth}.chat-area-step-initializing-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fffffff2;bottom:0;display:flex;justify-content:center;left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:100}.chat-area-step-initializing-overlay>*{pointer-events:auto}.chat-area-step-initializing-spinner{align-items:center;display:flex;flex-direction:column;gap:16px}.chat-area-spinner{animation:chat-area-spin 1.2s linear infinite;border:3px solid #a78bfa33;border-radius:50%;border-top-color:#a78bfa;filter:drop-shadow(0 4px 8px rgba(167,139,250,.2));height:40px;width:40px}@keyframes chat-area-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.chat-area-initializing-text{color:#64748b;font-family:Inter,sans-serif;font-size:14px;font-weight:500;letter-spacing:.025em}.chat-area-step-content.chat-area-initializing{filter:blur(1px);opacity:.6;pointer-events:none;transition:opacity .3s ease,filter .3s ease}.chat-area-no-session{align-items:center;color:#64748b;display:flex;flex-direction:column;font-family:Inter,sans-serif;gap:20px;height:100%;justify-content:center;min-height:400px}.chat-area-no-session .loading-spinner{animation:chat-area-spin 1.2s linear infinite;border:3px solid #a78bfa33;border-radius:50%;border-top-color:#a78bfa;filter:drop-shadow(0 4px 8px rgba(167,139,250,.2));height:40px;width:40px}.chat-area-no-session p{color:#64748b;font-size:16px;font-weight:500;letter-spacing:.025em;margin:0}.edit-title-model-modal-overlay{align-items:center;animation:modal-fade-in .3s cubic-bezier(.4,0,.2,1);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:radial-gradient(circle at 30% 70%,#a78bfa26 0,#0000 50%),radial-gradient(circle at 70% 30%,#ec48991a 0,#0000 50%),#0f172acc;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}@keyframes modal-fade-in{0%{backdrop-filter:blur(0);-webkit-backdrop-filter:blur(0);opacity:0}to{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);opacity:1}}.edit-title-model-modal-content{animation:modal-scale-in .3s cubic-bezier(.34,1.56,.64,1);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:linear-gradient(135deg,#fffffff2,#ffffffe6);border:1px solid #fff3;border-radius:24px;border-radius:var(--border-radius-xl,24px);box-shadow:0 0 0 1px #ffffff1a,0 8px 32px #0000001f,0 24px 64px #00000014;max-height:80vh;max-width:480px;overflow-y:auto;padding:32px;position:relative;width:90%}@keyframes modal-scale-in{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.edit-title-model-modal-header{align-items:center;border-bottom:1px solid #94a3b826;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.edit-title-model-modal-title{color:#1e293b;font-family:Inter,sans-serif;font-size:20px;font-weight:700;letter-spacing:-.025em;margin:0}.edit-title-model-modal-content input[type=text]{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#fffc;border:2px solid #94a3b833;border-radius:12px;border-radius:var(--border-radius-md,12px);box-shadow:0 2px 8px #0000000a;color:#1e293b;font-family:Inter,sans-serif;font-size:16px;font-weight:500;margin-bottom:24px;padding:16px 20px;transition:all .3s cubic-bezier(.4,0,.2,1);width:100%}.edit-title-model-modal-content input[type=text]:focus{background:#fffffff2;border-color:#a78bfa80;box-shadow:0 0 0 3px #a78bfa1a,0 4px 16px #00000014;outline:none;transform:translateY(-1px)}.edit-title-model-modal-content input[type=text]:disabled{background:#94a3b81a;color:#94a3b8;cursor:not-allowed}.edit-title-model-modal-content input[type=text]::placeholder{color:#94a3b8;font-weight:400}.edit-title-model-modal-content>div:last-child{align-items:center;display:flex;gap:12px;justify-content:flex-end}.edit-title-model-modal-content button{border:none;border-radius:12px;border-radius:var(--border-radius-md,12px);cursor:pointer;font-family:Inter,sans-serif;font-size:14px;font-weight:600;overflow:hidden;padding:12px 24px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.edit-title-model-modal-content button:first-of-type{background:#94a3b81a;border:1px solid #94a3b833;color:#64748b}.edit-title-model-modal-content button:first-of-type:hover:not(:disabled){background:#94a3b826;box-shadow:0 4px 12px #0000001a;color:#475569;transform:translateY(-1px)}.edit-title-model-modal-content button:last-of-type{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 2px 8px #667eea4d,inset 0 0 0 1px #ffffff1a;color:#fff}.edit-title-model-modal-content button:last-of-type:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.edit-title-model-modal-content button:last-of-type:hover:not(:disabled){box-shadow:0 4px 16px #667eea66,inset 0 0 0 1px #fff3;transform:translateY(-1px)}.edit-title-model-modal-content button:last-of-type:hover:not(:disabled):before{left:100%}.edit-title-model-modal-content button:disabled{cursor:not-allowed;opacity:.6;transform:none!important}.edit-title-model-modal-content button:active:not(:disabled){transform:translateY(0)}.main-app-container{background:#0000;display:flex;height:100vh;overflow:hidden;position:relative;width:100vw}.main-app-resize-handle{background:linear-gradient(180deg,#0000 0,#a78bfa4d 20%,#a78bfa80 50%,#a78bfa4d 80%,#0000);cursor:col-resize;flex-shrink:0;opacity:0;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);width:2px}.main-app-resize-handle:hover{background:linear-gradient(180deg,#0000 0,#a78bfa80 20%,#a78bfacc 50%,#a78bfa80 80%,#0000);filter:drop-shadow(0 0 8px rgba(167,139,250,.4));opacity:1;width:3px}.main-app-resize-handle.main-app-resizing{background:linear-gradient(180deg,#0000 0,#a78bfa99 20%,#a78bfa 50%,#a78bfa99 80%,#0000);filter:drop-shadow(0 0 12px rgba(167,139,250,.6));opacity:1;width:3px}.main-app-resize-handle:after{background-color:initial;bottom:0;content:"";left:-8px;position:absolute;right:-8px;top:0}.main-app-container:hover .main-app-resize-handle{opacity:.6}.main-app-container *{transition:all .2s cubic-bezier(.4,0,.2,1)}.layout-app{--primary-color:#667eea;--text-primary:#1e293b;--text-secondary:#64748b;--border-radius-sm:8px;--border-radius-md:12px;--border-radius-lg:16px;--shadow-sm:0 2px 8px #0000000a;--shadow-md:0 4px 16px #00000014;--shadow-lg:0 8px 25px #00000026;background:#fff;display:flex;flex-direction:column;height:100vh;overflow:hidden;width:100%}.layout-app-header{left:30px;position:fixed;top:8px;z-index:1000}.layout-app-back-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50px;box-shadow:0 8px 25px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:16px 24px;text-decoration:none;transition:all .3s ease}.layout-app-back-btn:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190);box-shadow:0 12px 35px #667eea66;color:#fff;text-decoration:none;transform:translateY(-2px)}.layout-app-back-btn:active{box-shadow:0 6px 20px #667eea4d;transform:translateY(0)}.layout-app-back-btn svg{height:16px;width:16px}.layout-app-content{--sidebar-width:0px;--canvas-height-mode:fullscreen;display:flex;flex:1 1;flex-direction:column;height:100%;overflow:hidden;padding:0;width:100%}.layout-app-step-content-area{flex:1 1;overflow:hidden;position:relative}.layout-app-step-initializing-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fffffff2;bottom:0;display:flex;justify-content:center;left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:1000}.layout-app-step-initializing-overlay>*{pointer-events:auto}.layout-app-step-initializing-spinner{align-items:center;display:flex;flex-direction:column;gap:16px}.layout-app-spinner{animation:layout-app-spin 1.2s linear infinite;border:3px solid #a78bfa33;border-radius:50%;border-top-color:#a78bfa;filter:drop-shadow(0 4px 8px rgba(167,139,250,.2));height:40px;width:40px}@keyframes layout-app-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.layout-app-initializing-text{color:#64748b;font-family:Inter,sans-serif;font-size:14px;font-weight:500;letter-spacing:.025em}.layout-app-step-content.layout-app-initializing{filter:blur(1px);opacity:.6;pointer-events:none;transition:opacity .3s ease,filter .3s ease}.layout-app-loading{align-items:center;color:#fff;display:flex;flex-direction:column;font-size:16px;height:100vh;justify-content:center}.layout-app-loading .loading-spinner{animation:spin 1s linear infinite;border:4px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:40px;margin-bottom:20px;width:40px}.layout-app-login-container{align-items:center;display:flex;flex:1 1;justify-content:center;padding:20px}.layout-app-login-backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000080;border-radius:12px;padding:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.layout-app-header{left:20px;top:20px}.layout-app-back-btn{font-size:13px;padding:14px 20px}.layout-app-content{padding:0}.layout-app-login-backdrop{margin:10px;padding:20px}}.project-app{background:#fff;height:100vh;overflow:hidden;width:100%}.project-app,.project-app-loading{display:flex;flex-direction:column}.project-app-loading{align-items:center;color:#fff;gap:1rem;justify-content:center;min-height:100vh}.project-app-header{left:30px;position:fixed;top:15px;z-index:1000}.project-app-back-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:50px;box-shadow:0 8px 25px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:16px 24px;text-decoration:none;transition:all .3s ease}.project-app-back-btn:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190);box-shadow:0 12px 35px #667eea66;color:#fff;text-decoration:none;transform:translateY(-2px)}.project-app-back-btn:active{box-shadow:0 6px 20px #667eea4d;transform:translateY(0)}.project-app-back-btn svg{height:16px;width:16px}.project-app-content{--sidebar-width:0px;display:flex;flex:1 1;flex-direction:column;height:100%;min-height:0;overflow:hidden;padding:0;width:100%}.project-app-step-content-area{flex:1 1;height:100%;min-height:0;overflow:hidden;position:relative}.project-app-step-content{height:100%;min-height:0;overflow:hidden;width:100%}.project-app-step-content .project-layout-selection,.project-app-step-content .reference-selection-step{box-sizing:border-box;height:100%;overflow-y:auto;padding:20px;width:100%}@media (max-width:768px){.project-app-step-content .ai-coding-step.dual-pane{height:100vh;width:100vw}.project-app-step-content .project-layout-selection,.project-app-step-content .reference-selection-step{padding:15px}}.project-app-step-initializing-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fffffff2;bottom:0;display:flex;justify-content:center;left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:1000}.project-app-step-initializing-overlay>*{pointer-events:auto}.project-app-step-initializing-spinner{align-items:center;display:flex;flex-direction:column;gap:16px}.project-app-spinner{animation:project-app-spin 1.2s linear infinite;border:3px solid #a78bfa33;border-radius:50%;border-top-color:#a78bfa;filter:drop-shadow(0 4px 8px rgba(167,139,250,.2));height:40px;width:40px}@keyframes project-app-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.project-app-initializing-text{color:#64748b;font-family:Inter,sans-serif;font-size:14px;font-weight:500;letter-spacing:.025em}.project-app-step-content.project-app-initializing{filter:blur(1px);opacity:.6;pointer-events:none;transition:opacity .3s ease,filter .3s ease}.project-app-login-container{align-items:center;display:flex;flex:1 1;justify-content:center;padding:2rem}.project-app-login-backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:1rem;box-shadow:0 20px 40px #0000001a;padding:2rem}@media (max-width:768px){.project-app-header{left:20px;top:20px}.project-app-back-btn{font-size:13px;padding:14px 20px}.project-app-content{padding:0}.project-app-login-backdrop,.project-app-login-container{padding:1rem}}.project-layout-selection{margin:0 auto;max-width:1200px;padding:2rem}.project-layout-selection-header{margin-bottom:2rem;text-align:center}.project-layout-selection-header h2{color:#1f2937;font-size:2rem;font-weight:600;margin-bottom:.5rem}.project-layout-selection-header p{color:#6b7280;font-size:1.1rem;margin:0 auto;max-width:600px}.project-layout-selection-loading{align-items:center;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:400px}.project-layout-selection-error{background-color:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;color:#dc2626;margin-bottom:1rem;padding:1rem}.project-layout-selection-actions{display:flex;justify-content:center;margin-bottom:2rem}.project-layout-selection-create-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:.5rem;color:#fff;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s}.project-layout-selection-create-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.project-layout-selection-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(3,1fr);margin-bottom:2rem}@media (max-width:1200px){.project-layout-selection-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.project-layout-selection-grid{grid-template-columns:1fr}}.project-layout-selection-card{background:#fff;border:2px solid #e5e7eb;border-radius:.75rem;cursor:pointer;overflow:hidden;position:relative;transition:all .2s}.project-layout-selection-card:hover{border-color:#d1d5db;box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.project-layout-selection-card.selected{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.project-layout-selection-preview{height:200px;object-fit:cover;width:100%}.project-layout-selection-placeholder{align-items:center;background-color:#f9fafb;color:#9ca3af;display:flex;flex-direction:column;height:200px;justify-content:center}.project-layout-selection-placeholder svg{margin-bottom:.5rem}.project-layout-selection-info{padding:1rem}.project-layout-selection-info h3{color:#1f2937;font-size:1.125rem;font-weight:600;margin-bottom:.5rem}.project-layout-selection-meta{color:#6b7280;font-size:.875rem;margin-bottom:.25rem}.project-layout-selection-date{color:#9ca3af;font-size:.75rem}.project-layout-selection-selected-indicator{align-items:center;background:#667eea;border-radius:50%;color:#fff;display:flex;height:32px;justify-content:center;position:absolute;right:.75rem;top:.75rem;width:32px}.project-layout-selection-confirm{display:flex;justify-content:center;margin-top:2rem}.project-layout-selection-confirm-btn{background:#10b981;border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.875rem 2rem;transition:all .2s}.project-layout-selection-confirm-btn:hover:not(:disabled){background:#059669;box-shadow:0 4px 12px #10b98166;transform:translateY(-1px)}.project-layout-selection-confirm-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.project-layout-selection-confirm-btn.importing{background:#059669}.project-layout-selection-confirm-btn .project-layout-selection-importing-spinner{animation:project-layout-selection-spin 1s linear infinite;display:inline-block;margin-right:.5rem}@keyframes project-layout-selection-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.project-layout-selection-empty{align-items:center;display:flex;justify-content:center;min-height:400px}.project-layout-selection-empty-content{max-width:400px;text-align:center}.project-layout-selection-empty-content svg{color:#d1d5db;margin-bottom:1rem}.project-layout-selection-empty-content h3{color:#374151;font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.project-layout-selection-empty-content p{color:#6b7280;margin-bottom:1.5rem}.project-layout-selection-create-first-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.project-layout-selection-create-first-btn:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}@media (max-width:768px){.project-layout-selection{padding:1rem}.project-layout-selection-header h2{font-size:1.5rem}.project-layout-selection-card{min-height:auto}.project-layout-selection-preview{height:150px}}.pricing-page{min-height:100vh;padding:2rem 0;position:relative}.pricing-container{margin:0 auto;max-width:1200px;padding:0 2rem}.pricing-header{margin-bottom:2rem;text-align:center}.pricing-title{-webkit-text-fill-color:#0000;animation:gradientShift 4s ease-in-out infinite;background:linear-gradient(135deg,#667eea,#764ba2 50%,#f093fb);-webkit-background-clip:text;background-clip:text;background-size:200% 200%;font-size:3rem;font-weight:800;letter-spacing:-.02em;margin-bottom:1rem}@keyframes gradientShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.pricing-beta-badge{display:inline-block;margin-bottom:1.5rem}.pricing-beta-text{backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--border-radius-sm);color:#ffffffe6;font-size:.875rem;font-weight:600;padding:.5rem 1rem}.pricing-beta-notification{margin:0 auto 3rem;max-width:600px;padding:0 2rem}.pricing-beta-notification-content{align-items:center;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#141428b3;border:1px solid #fff3;border-radius:var(--border-radius-sm);box-shadow:0 4px 16px #0003;display:flex;gap:.75rem;padding:1rem 1.5rem}.pricing-beta-notification-icon{color:#fffc;flex-shrink:0}.pricing-beta-notification-text{color:#fff;font-size:.95rem;font-weight:500;line-height:1.5}.pricing-content{grid-gap:2rem;display:grid;gap:2rem}.pricing-referral-card,.pricing-status-card{backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px);background:#14142899;border:1px solid #fff3;border-radius:var(--border-radius-lg);box-shadow:0 8px 32px #0000004d,0 0 0 1px #ffffff1a;padding:2rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.pricing-referral-card:hover,.pricing-status-card:hover{background:#141428a6;border-color:#ffffff4d;box-shadow:0 12px 48px #0000004d,0 0 0 1px #ffffff26;transform:translateY(-2px)}.pricing-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.pricing-card-title,.pricing-referral-card-title{color:#fff;font-size:1.5rem;font-weight:700;margin:0}.pricing-reward-badges{align-items:flex-end;display:flex;flex-direction:column;gap:6px}.pricing-reward-badge{border-radius:var(--border-radius-sm);color:#fff;font-size:.875rem;font-weight:600;padding:.375rem .75rem;white-space:nowrap}.pricing-reward-badge-base{background:linear-gradient(135deg,#667eea,#764ba2)}.pricing-reward-badge-milestone{animation:pricing-milestone-pulse 2s ease-in-out infinite;background:linear-gradient(135deg,#f093fb,#f5576c);font-size:.8rem}@keyframes pricing-milestone-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.pricing-credits-stats{display:flex;justify-content:center;margin-bottom:1.5rem}.pricing-credits-stat{backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background:#00000026;border:1px solid #fff3;border-radius:var(--border-radius-sm);min-width:200px;padding:1.5rem;text-align:center}.pricing-credits-stat-value{color:#fff;display:block;font-size:2rem;font-weight:800;margin-bottom:.5rem}.pricing-credits-stat-label{color:#ffffffb3;font-size:.875rem;font-weight:500}.pricing-credits-note{margin-top:1rem;text-align:center}.pricing-credits-note p{color:#fff9;font-size:.875rem;margin:0}.pricing-referral-section{margin-top:2rem}.pricing-section-title{color:#fff;font-size:2rem;font-weight:700;margin-bottom:2rem;text-align:center}.pricing-referral-description{color:#fffc;line-height:1.6;margin-bottom:2rem}.pricing-referral-stats{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-bottom:2rem}.pricing-stat{backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background:#00000026;border:1px solid #fff3;border-radius:var(--border-radius-sm);padding:1.5rem;text-align:center}.pricing-stat-value{color:#fff;display:block;font-size:2rem;font-weight:800;margin-bottom:.5rem}.pricing-stat-label{color:#ffffffb3;font-size:.875rem;font-weight:500}.pricing-milestone-progress{backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background:#00000026;border:1px solid #fff3;border-radius:var(--border-radius-sm);margin:2rem 0;padding:1.5rem}.pricing-milestone-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.pricing-milestone-title{color:#ffffffe6;font-size:1rem;font-weight:600}.pricing-milestone-status{color:#ffffffb3;font-size:.875rem;font-weight:500}.pricing-milestone-bar{background:#ffffff1a;border-radius:4px;height:8px;margin-bottom:.5rem;overflow:hidden;width:100%}.pricing-milestone-fill{background:linear-gradient(90deg,#667eea,#764ba2 50%,#f093fb);border-radius:4px;height:100%;position:relative;transition:width .3s ease}.pricing-milestone-fill:after{animation:pricing-milestone-shimmer 2s ease-in-out infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);bottom:0;content:"";left:0;position:absolute;right:0;top:0}@keyframes pricing-milestone-shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.pricing-milestone-labels{align-items:center;color:#fff9;display:flex;font-size:.75rem;justify-content:space-between}.pricing-milestone-target{color:#f093fb;font-weight:600}.pricing-referral-items{grid-gap:1.5rem;display:grid;gap:1.5rem;margin-bottom:2rem}.pricing-referral-item{grid-gap:.5rem;display:grid;gap:.5rem}.pricing-referral-item-label{color:#fffc;display:block;font-size:.9rem;font-weight:600}.pricing-referral-item-display{align-items:center;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background:#0000001f;border:1px solid #fff3;border-radius:var(--border-radius-sm);display:flex;gap:.5rem;padding:1rem}.pricing-referral-item-text{color:#fff;flex:1 1;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:1rem;font-weight:600;letter-spacing:.05em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pricing-referral-link-text{font-size:.875rem;letter-spacing:0}.pricing-referral-copy-btn{align-items:center;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background:#0003;border:1px solid #ffffff4d;border-radius:var(--border-radius-sm);color:#ffffffe6;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:.5rem;transition:all .2s ease}.pricing-referral-copy-btn:hover{background:#00000059;border-color:#fff6;color:#fff;transform:scale(1.05)}.pricing-btn{align-items:center;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background:#0000002e;border:1px solid #ffffff4d;border-radius:var(--border-radius-sm);color:#fff;cursor:pointer;display:flex;font-size:.9rem;font-weight:600;gap:.5rem;justify-content:center;overflow:hidden;padding:.875rem 1.5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.pricing-btn:before{background:linear-gradient(90deg,#0000,#ffffff1a,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.pricing-btn:hover:before{left:100%}.pricing-btn:hover{background:#0000004d;border-color:#fff6;box-shadow:0 8px 32px #00000040;transform:translateY(-2px)}.pricing-btn:disabled{cursor:not-allowed;opacity:.5;transform:none}.pricing-btn-primary{background:var(--primary-gradient);border:none}.pricing-btn-primary:hover{background:var(--primary-gradient);filter:brightness(1.1)}.pricing-btn-secondary{background:#00000026;border:1px solid #fff6}.pricing-btn-secondary:hover{background:#00000040;border-color:#ffffff80}.pricing-referral-form{margin-top:1rem}.pricing-input-group{display:flex;gap:1rem}.pricing-input{backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background:#00000026;border:1px solid #fff3;border-radius:var(--border-radius-sm);color:#fff;flex:1 1;font-size:.9rem;padding:.875rem 1rem;transition:all .2s ease}.pricing-input:focus{background:#00000040;border-color:#667eea99;box-shadow:0 0 0 3px #667eea33;outline:none}.pricing-input::placeholder{color:#ffffff80}.pricing-login-prompt{backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);background:#0003;border:1px solid #fff3;border-radius:var(--border-radius-sm);padding:2rem;text-align:center}.pricing-login-prompt p{color:#fffc;margin-bottom:1.5rem}.pricing-coming-soon{margin-top:3rem}.pricing-feature-list{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.pricing-feature-item{align-items:center;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);background:#00000040;border:1px solid #fff3;border-radius:var(--border-radius-sm);display:flex;gap:1rem;padding:1.5rem;transition:all .3s ease}.pricing-feature-item:hover{background:#0000004d;border-color:#ffffff4d;box-shadow:0 4px 16px #0003;transform:translateY(-2px)}.pricing-feature-icon{align-items:center;background:var(--primary-gradient);border-radius:50%;color:#fff;display:flex;height:40px;justify-content:center;width:40px}.pricing-feature-text{color:#ffffffe6;font-weight:500}.pricing-message{animation:slideInRight .3s ease;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border-radius:var(--border-radius-sm);box-shadow:0 8px 32px #0006;max-width:400px;position:fixed;right:2rem;top:2rem;z-index:1000}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}.pricing-message-content{align-items:center;display:flex;gap:.75rem;padding:1rem 1.5rem}.pricing-message-text{font-weight:500}.pricing-message-success{background:#43e97b1a;border:1px solid #43e97b4d;color:#43e97b}.pricing-message-error{background:#f5576c1a;border:1px solid #f5576c4d;color:#f5576c}.pricing-message-info{background:#4facfe1a;border:1px solid #4facfe4d;color:#4facfe}@media (max-width:768px){.pricing-container{padding:0 1rem}.pricing-title{font-size:2rem}.pricing-referral-card,.pricing-status-card{padding:1.5rem}.pricing-input-group{flex-direction:column}.pricing-feature-list,.pricing-referral-stats{grid-template-columns:1fr}.pricing-message{left:1rem;max-width:none;right:1rem;top:1rem}}@media (max-width:480px){.pricing-page{padding:1rem 0}.pricing-header{margin-bottom:2rem}.pricing-title{font-size:1.75rem}.pricing-referral-card,.pricing-status-card{padding:1rem}.pricing-card-header{align-items:flex-start;flex-direction:column;gap:1rem}}.legal-document-container{background:linear-gradient(135deg,#667eea,#764ba2);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;min-height:100vh;padding:2rem 0}.legal-document-header{margin:0 auto 2rem;max-width:800px;padding:0 2rem}.legal-document-back-link{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3;border-radius:6px;color:#ffffffe6;display:inline-flex;font-size:.9rem;margin-bottom:1.5rem;padding:.5rem 1rem;text-decoration:none;transition:all .3s ease}.legal-document-back-link:hover{background:#fff3;color:#fff;transform:translateX(-2px)}.legal-document-title{color:#fff;font-size:2.5rem;font-weight:700;margin:0 0 .5rem;text-shadow:0 2px 4px #0000004d}.legal-document-last-updated{color:#fffc;font-size:.9rem;font-style:italic;margin:0}.legal-document-content{background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000001a;margin:0 auto 2rem;max-width:800px;overflow:hidden}.legal-document-section{border-bottom:1px solid #f0f0f0;padding:2rem}.legal-document-section:last-child{border-bottom:none}.legal-document-section-title{border-bottom:2px solid #667eea;color:#2d3748;font-size:1.5rem;font-weight:600;margin:0 0 1rem;padding-bottom:.5rem}.legal-document-subsection-title{color:#4a5568;font-size:1.25rem;font-weight:600;margin:1.5rem 0 .75rem}.legal-document-subsubsection-title{color:#4a5568;font-size:1.1rem;font-weight:600;margin:1rem 0 .5rem}.legal-document-section p{color:#4a5568;font-size:.95rem;line-height:1.7;margin:0 0 1rem}.legal-document-section p:last-child{margin-bottom:0}.legal-document-list{color:#4a5568;font-size:.95rem;line-height:1.7;margin:0 0 1rem;padding-left:1.5rem}.legal-document-list li{margin-bottom:.5rem}.legal-document-list li:last-child{margin-bottom:0}.legal-document-cookie-types{margin:1.5rem 0}.legal-document-cookie-type{background:#f8f9fa;border-left:4px solid #667eea;border-radius:8px;margin-bottom:1rem;padding:1.5rem}.legal-document-cookie-type:last-child{margin-bottom:0}.legal-document-cookie-type p{font-size:.9rem;margin-bottom:.5rem}.legal-document-cookie-type p:last-child{margin-bottom:0}.legal-document-content a{color:#667eea;font-weight:500;text-decoration:none;transition:color .2s ease}.legal-document-content a:hover{color:#764ba2;text-decoration:underline}.legal-document-inline-link{color:#667eea!important;font-weight:500;text-decoration:none;transition:color .2s ease}.legal-document-inline-link:hover{color:#764ba2!important;text-decoration:underline}.legal-document-content strong{color:#2d3748;font-weight:600}@media (max-width:768px){.legal-document-container{padding:1rem 0}.legal-document-header{margin-bottom:1rem;padding:0 1rem}.legal-document-title{font-size:2rem}.legal-document-content{border-radius:8px;margin:0 1rem 1rem}.legal-document-section{padding:1.5rem}.legal-document-section-title{font-size:1.3rem}.legal-document-subsection-title{font-size:1.15rem}.legal-document-cookie-type{padding:1rem}}@media (max-width:480px){.legal-document-header{padding:0 .5rem}.legal-document-title{font-size:1.75rem}.legal-document-content{margin:0 .5rem .5rem}.legal-document-section{padding:1rem}.legal-document-list{padding-left:1rem}}@media print{.legal-document-container{background:#fff;padding:0}.legal-document-back-link{display:none}.legal-document-header{background:none;color:#000;padding:0}.legal-document-title{color:#000;text-shadow:none}.legal-document-last-updated{color:#666}.legal-document-content{border:1px solid #ddd;box-shadow:none}.legal-document-content strong,.legal-document-list,.legal-document-section p,.legal-document-section-title,.legal-document-subsection-title,.legal-document-subsubsection-title{color:#000}}
/*# sourceMappingURL=main.006698b6.css.map*/