@charset "UTF-8";.keyboard-shortcuts-overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0;backdrop-filter:blur(0)}to{opacity:1;backdrop-filter:blur(8px)}}.keyboard-shortcuts-modal{background:#111111;border:1px solid rgba(255,255,255,.08);border-radius:12px;width:90%;max-width:720px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px #0009;animation:slideUp .3s cubic-bezier(.4,0,.2,1)}.keyboard-shortcuts-header{padding:20px 24px;border-bottom:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:space-between}.keyboard-shortcuts-header h2{margin:0;font-size:20px;font-weight:600;color:#fff;letter-spacing:-.02em}.keyboard-shortcuts-header .close-button{width:32px;height:32px;border:none;background:transparent;color:#ffffff80;border-radius:6px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;font-size:18px}.keyboard-shortcuts-header .close-button:hover{background:rgba(255,255,255,.08);color:#fffc}.keyboard-shortcuts-header .close-button:active{transform:scale(.95)}.keyboard-shortcuts-content{padding:24px;overflow-y:auto;flex:1;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.keyboard-shortcuts-content::-webkit-scrollbar{width:6px}.keyboard-shortcuts-content::-webkit-scrollbar-track{background:transparent}.keyboard-shortcuts-content::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:3px}.keyboard-shortcuts-content::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.15)}.shortcut-category{display:flex;flex-direction:column;gap:12px}.shortcut-category .category-title{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#ffffff80;margin-bottom:4px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.06)}.shortcut-category .shortcuts-list{display:flex;flex-direction:column;gap:8px}.shortcut-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:rgba(255,255,255,.02);border-radius:6px;transition:all .15s ease}.shortcut-item:hover{background:rgba(255,255,255,.05)}.shortcut-item .shortcut-keys{display:flex;align-items:center;gap:4px;flex-shrink:0}.shortcut-item .shortcut-keys .key{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:4px;padding:3px 6px;font-size:11px;font-weight:500;color:#fffc;font-family:-apple-system,BlinkMacSystemFont,SF Mono,Monaco,Inconsolata,Fira Code,monospace;box-shadow:0 1px 2px #0003;text-transform:capitalize;min-width:28px;text-align:center}.shortcut-item .shortcut-keys .key:has-text("⌘"),.shortcut-item .shortcut-keys .key:has-text("Ctrl"),.shortcut-item .shortcut-keys .key:has-text("Shift"),.shortcut-item .shortcut-keys .key:has-text("Alt"){background:rgba(99,102,241,.15);border-color:#6366f14d}.shortcut-item .shortcut-keys .key-separator{color:#fff6;font-size:14px;font-weight:300}.shortcut-item .shortcut-description{color:#ffffffb3;font-size:13px;flex:1;text-align:right}.keyboard-shortcuts-footer{padding:16px 24px;border-top:1px solid rgba(255,255,255,.06);text-align:center}.keyboard-shortcuts-footer p{margin:0;color:#ffffff80;font-size:12px}.keyboard-shortcuts-footer p kbd{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:3px;padding:2px 4px;font-size:11px;font-weight:500;margin:0 2px;font-family:-apple-system,BlinkMacSystemFont,SF Mono,Monaco,Inconsolata,Fira Code,monospace}@media (max-width: 768px){.keyboard-shortcuts-modal{width:95%;max-height:90vh}.keyboard-shortcuts-header{padding:20px 24px}.keyboard-shortcuts-header h2{font-size:20px}.keyboard-shortcuts-content{padding:24px;grid-template-columns:1fr;gap:24px}.shortcut-item{flex-direction:column;align-items:flex-start;gap:8px}.shortcut-item .shortcut-description{text-align:left}}.help-overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:3000;padding:20px;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0;backdrop-filter:blur(0)}to{opacity:1;backdrop-filter:blur(10px)}}.help-modal{background:#111111;border:1px solid rgba(255,255,255,.08);border-radius:12px;width:100%;max-width:1200px;height:90vh;max-height:800px;display:flex;flex-direction:column;box-shadow:0 8px 32px #0009;animation:slideUp .3s cubic-bezier(.4,0,.2,1);overflow:hidden}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.help-header{padding:20px 24px;border-bottom:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:space-between;background:transparent}.help-header h1{margin:0;font-size:24px;font-weight:600;color:#fff;letter-spacing:-.02em}.help-header .close-button{width:32px;height:32px;border:none;background:transparent;color:#ffffff80;border-radius:6px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;font-size:18px}.help-header .close-button:hover{background:rgba(255,255,255,.08);color:#fffc}.help-header .close-button:active{transform:scale(.95)}.help-container{display:flex;flex:1;overflow:hidden}.help-sidebar{width:240px;background:rgba(255,255,255,.02);border-right:1px solid rgba(255,255,255,.06);padding:16px;overflow-y:auto}.help-sidebar::-webkit-scrollbar{width:4px}.help-sidebar::-webkit-scrollbar-track{background:transparent}.help-sidebar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:2px}.help-sidebar::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.15)}.help-sidebar .nav-item{width:100%;padding:10px 14px;background:transparent;border:none;border-radius:6px;color:#fff9;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;gap:10px;margin-bottom:2px;text-align:left;font-size:13px;font-weight:500;animation:navItemFadeIn .3s ease-out both}.help-sidebar .nav-item:nth-child(1){animation-delay:.05s}.help-sidebar .nav-item:nth-child(2){animation-delay:.1s}.help-sidebar .nav-item:nth-child(3){animation-delay:.15s}.help-sidebar .nav-item:nth-child(4){animation-delay:.2s}.help-sidebar .nav-item:nth-child(5){animation-delay:.25s}.help-sidebar .nav-item:nth-child(6){animation-delay:.3s}.help-sidebar .nav-item:nth-child(7){animation-delay:.35s}.help-sidebar .nav-item:nth-child(8){animation-delay:.4s}.help-sidebar .nav-item:nth-child(9){animation-delay:.45s}.help-sidebar .nav-item:nth-child(10){animation-delay:.5s}@keyframes navItemFadeIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.help-sidebar .nav-item .nav-icon{font-size:16px;flex-shrink:0}.help-sidebar .nav-item .nav-title{flex:1}.help-sidebar .nav-item:hover{background:rgba(255,255,255,.05);color:#fffc}.help-sidebar .nav-item.active{background:rgba(37,99,235,.12);color:#fff}.help-sidebar .nav-item.active:hover{background:rgba(37,99,235,.16)}.help-main{flex:1;overflow-y:auto;padding:24px 32px}.help-main::-webkit-scrollbar{width:6px}.help-main::-webkit-scrollbar-track{background:transparent}.help-main::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:3px}.help-main::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.15)}.help-content{max-width:800px;margin:0 auto;color:#fffc}.help-content h2{font-size:28px;font-weight:600;margin:0 0 16px;color:#fff;letter-spacing:-.02em}.help-content h3{font-size:18px;font-weight:600;margin:28px 0 14px;color:#ffffffe6}.help-content h4{font-size:15px;font-weight:600;margin:16px 0 8px;color:#ffffffd9}.help-content p{line-height:1.6;margin-bottom:14px;color:#ffffffb3;font-size:14px}.help-content p.intro{font-size:16px;line-height:1.7;color:#fffc;margin-bottom:24px}.help-content ul,.help-content ol{margin-bottom:16px;padding-left:24px}.help-content ul li,.help-content ol li{margin-bottom:8px;line-height:1.6;color:#fffc}.help-content ul li strong,.help-content ol li strong{color:#fffffff2}.help-content kbd{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:3px 8px;font-size:13px;font-weight:500;font-family:-apple-system,BlinkMacSystemFont,SF Mono,Monaco,Inconsolata,Fira Code,monospace;box-shadow:0 2px 4px #0003;margin:0 3px}.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-bottom:32px}.feature-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:24px;transition:all .2s ease}.feature-card:hover{background:rgba(255,255,255,.07);border-color:#ffffff26;transform:translateY(-2px)}.feature-card h3{margin-top:0;margin-bottom:16px;color:#60a5fa}.tip-box{background:linear-gradient(135deg,rgba(59,130,246,.1) 0%,rgba(147,51,234,.1) 100%);border:1px solid rgba(59,130,246,.3);border-radius:12px;padding:16px 20px;margin:32px 0;display:flex;align-items:center;gap:12px}.tip-box .tip-icon{font-size:24px;flex-shrink:0}.tip-box p{margin:0;font-weight:500}.tip-box.final{background:linear-gradient(135deg,rgba(16,185,129,.1) 0%,rgba(59,130,246,.1) 100%);border-color:#10b9814d}.tools-list{display:flex;flex-direction:column;gap:20px}.tool-item{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:20px;transition:all .2s ease}.tool-item:hover{background:rgba(255,255,255,.05);border-color:#ffffff1f}.tool-item .tool-header{display:flex;align-items:center;gap:16px;margin-bottom:12px}.tool-item .tool-header .tool-icon{font-size:32px;color:#60a5fa}.tool-item .tool-header h3{margin:0;display:flex;align-items:center;gap:8px}.operation-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:32px}.operation{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:20px}.operation h4{margin-top:0;color:#60a5fa}.visual-guide{margin:32px 0}.visual-guide .feedback-items{display:flex;gap:24px;margin-top:16px}.visual-guide .feedback-item{display:flex;align-items:center;gap:12px}.visual-guide .feedback-item .feedback-visual{width:60px;height:60px;border-radius:8px}.visual-guide .feedback-item .feedback-visual.selected{border:2px solid #3b82f6;box-shadow:0 0 0 3px #3b82f633}.visual-guide .feedback-item .feedback-visual.hover{background:rgba(59,130,246,.1);border:2px solid rgba(59,130,246,.3)}.visual-guide .feedback-item .feedback-visual.multi{border:2px dashed #3b82f6}.font-showcase{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin:24px 0}.font-item{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:20px;text-align:center}.font-item .font-sample{display:block;font-size:28px;margin-bottom:12px;color:#fff}.font-item p{margin:0;font-size:13px}.formatting-options{display:flex;gap:16px;margin:24px 0}.format-option{text-align:center}.format-option .format-button{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:12px 24px;color:#fff;font-size:16px;cursor:pointer;transition:all .2s ease}.format-option .format-button:hover{background:rgba(255,255,255,.15)}.format-option .format-button.bold{font-weight:700}.format-option .format-button.italic{font-style:italic}.format-option p{margin-top:8px;font-size:12px}.style-sections{display:grid;gap:32px;margin:24px 0}.style-section h3{margin-bottom:16px}.color-grid-demo{display:flex;gap:12px;margin-bottom:16px}.color-grid-demo .color-demo{width:40px;height:40px;border-radius:8px;border:2px solid rgba(255,255,255,.2);cursor:pointer;transition:transform .2s ease}.color-grid-demo .color-demo:hover{transform:scale(1.1)}.stroke-examples,.fill-examples{display:flex;gap:16px;margin:16px 0}.stroke-examples .stroke-example,.stroke-examples .fill-example,.fill-examples .stroke-example,.fill-examples .fill-example{flex:1;padding:16px;background:rgba(255,255,255,.05);border:2px solid rgba(255,255,255,.2);border-radius:8px;text-align:center;font-weight:500}.stroke-examples .stroke-example.dashed,.stroke-examples .fill-example.dashed,.fill-examples .stroke-example.dashed,.fill-examples .fill-example.dashed{border-style:dashed}.stroke-examples .stroke-example.dotted,.stroke-examples .fill-example.dotted,.fill-examples .stroke-example.dotted,.fill-examples .fill-example.dotted{border-style:dotted}.stroke-examples .stroke-example.hachure,.stroke-examples .fill-example.hachure,.fill-examples .stroke-example.hachure,.fill-examples .fill-example.hachure{background-image:repeating-linear-gradient(45deg,transparent,transparent 5px,rgba(255,255,255,.1) 5px,rgba(255,255,255,.1) 10px)}.stroke-examples .stroke-example.cross-hatch,.stroke-examples .fill-example.cross-hatch,.fill-examples .stroke-example.cross-hatch,.fill-examples .fill-example.cross-hatch{background-image:repeating-linear-gradient(45deg,transparent,transparent 5px,rgba(255,255,255,.1) 5px,rgba(255,255,255,.1) 10px),repeating-linear-gradient(-45deg,transparent,transparent 5px,rgba(255,255,255,.1) 5px,rgba(255,255,255,.1) 10px)}.mode-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin:24px 0}.mode-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:24px;text-align:center;transition:all .2s ease}.mode-card:hover{background:rgba(255,255,255,.07);transform:translateY(-2px)}.mode-card .mode-icon{font-size:48px;color:#60a5fa;margin-bottom:12px;display:block}.mode-card h4{margin:0 0 8px}.mode-card p{margin:0;font-size:13px}.property-list{display:grid;gap:20px}.property{background:rgba(255,255,255,.03);border-left:3px solid #60a5fa;padding:16px 20px;border-radius:0 8px 8px 0}.property h4{margin-top:0;margin-bottom:4px}.property p{margin:0;font-size:14px}.navigation-methods{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin:24px 0}.method-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:24px}.method-card h3{margin-top:0}.shortcut-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin:24px 0}.shortcut{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:16px;text-align:center}.shortcut p{margin:8px 0 0;font-size:14px}.smart-feature{margin-bottom:48px}.smart-feature .feature-demo{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:32px;margin:16px 0 24px;display:flex;justify-content:center}.smart-feature .feature-demo .snap-demo{position:relative;width:200px;height:120px}.smart-feature .feature-demo .snap-demo .element{position:absolute;width:60px;height:40px;background:rgba(59,130,246,.3);border:2px solid #3b82f6;border-radius:4px}.smart-feature .feature-demo .snap-demo .element:first-child{top:20px;left:20px}.smart-feature .feature-demo .snap-demo .element.snapping{top:20px;right:20px;animation:snapMove 2s ease-in-out infinite}@keyframes snapMove{0%,to{transform:translate(0)}50%{transform:translate(-40px)}}.smart-feature .feature-demo .snap-demo .guide-line{position:absolute;top:0;left:82px;width:2px;height:100%;background:#ff6b6b;opacity:0;animation:guideFade 2s ease-in-out infinite}@keyframes guideFade{0%,to{opacity:0}40%,60%{opacity:1}}.smart-feature .use-cases{background:rgba(255,255,255,.03);border-left:3px solid #60a5fa;padding:16px 20px;margin-top:16px;border-radius:0 8px 8px 0}.smart-feature .use-cases h4{margin-top:0;margin-bottom:8px;color:#60a5fa}.smart-feature .use-cases ul{margin:0;padding-left:20px}.shortcuts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px;margin:24px 0}.shortcut-category{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:24px}.shortcut-category h3{margin-top:0;margin-bottom:20px;color:#60a5fa;font-size:18px}.shortcut-list{display:flex;flex-direction:column;gap:12px}.shortcut-item{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05)}.shortcut-item:last-child{border-bottom:none}.shortcut-item kbd{margin-right:4px}.shortcut-item kbd:last-child{margin-right:0}.shortcut-item span{font-size:14px;color:#ffffffb3}.save-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin:24px 0}.save-features .save-indicator-demo{display:inline-flex;align-items:center;gap:6px;background:rgba(0,0,0,.75);backdrop-filter:blur(10px);padding:6px 12px;border-radius:16px;margin:16px 0}.save-features .save-indicator-demo .save-icon{font-size:14px;animation:pulse 2s ease-in-out infinite}.save-features .save-indicator-demo .save-text{color:#fffc;font-size:12px;font-weight:500}.export-options-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin:24px 0}.export-option-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:24px}.export-option-card .export-icon{font-size:48px;display:block;text-align:center;margin-bottom:16px}.export-option-card h4{text-align:center;margin-bottom:16px;color:#60a5fa}.export-option-card .export-use-case{background:rgba(59,130,246,.1);border:1px solid rgba(59,130,246,.3);border-radius:8px;padding:12px 16px;margin-top:16px;font-size:14px;text-align:center;font-weight:500}.export-steps{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:24px 32px;margin:24px 0}.export-steps li{margin-bottom:12px}.export-steps li strong{color:#60a5fa}.tips-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin:24px 0}.tip-card{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:20px;transition:all .2s ease}.tip-card:hover{background:rgba(255,255,255,.07);transform:translateY(-2px)}.tip-card h3{margin-top:0;font-size:18px;color:#60a5fa}.tip-card p{font-size:14px;margin-bottom:12px}.tip-card ol,.tip-card ul{margin:0;font-size:14px}.workflow-tips{display:flex;flex-direction:column;gap:20px;margin:24px 0}.workflow-tip{display:flex;gap:20px}.workflow-tip .tip-number{flex-shrink:0;width:40px;height:40px;background:linear-gradient(135deg,#3b82f6 0%,#6366f1 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:#fff}.workflow-tip .tip-content{flex:1}.workflow-tip .tip-content h4{margin-top:0;margin-bottom:8px}.workflow-tip .tip-content p{margin:0;font-size:14px}.hidden-features{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:24px;margin:24px 0}.hidden-features li{margin-bottom:12px}.hidden-features li strong{color:#60a5fa}.help-footer{padding:16px 32px;border-top:1px solid rgba(55,65,81,.5);text-align:center;background:rgba(17,24,39,.5)}.help-footer p{margin:0;color:#9ca3afcc;font-size:14px}@media (max-width: 768px){.help-modal{height:100vh;max-height:none;border-radius:0}.help-container{flex-direction:column}.help-sidebar{width:100%;border-right:none;border-bottom:1px solid rgba(55,65,81,.5);padding:12px;overflow-x:auto;overflow-y:hidden;display:flex;gap:8px}.help-sidebar .nav-item{white-space:nowrap;flex-shrink:0}.help-main{padding:24px}.feature-grid,.operation-grid,.navigation-methods,.mode-cards,.shortcuts-grid,.export-options-grid,.tips-grid{grid-template-columns:1fr}}.command-palette-overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;z-index:4000;padding-top:10vh;animation:overlayFadeIn .2s ease-out}.command-palette{background:rgba(17,24,39,.98);backdrop-filter:blur(20px);border:1px solid rgba(55,65,81,.5);border-radius:16px;width:90%;max-width:640px;max-height:70vh;display:flex;flex-direction:column;box-shadow:0 24px 48px #0006,0 0 0 1px #ffffff0d inset;animation:paletteSlideIn .3s cubic-bezier(.34,1.56,.64,1);overflow:hidden}@keyframes paletteSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.command-palette-header{padding:20px;border-bottom:1px solid rgba(55,65,81,.5);position:relative}.command-palette-input{width:100%;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:16px 20px;font-size:18px;color:#fff;outline:none;transition:all .2s ease}.command-palette-input::placeholder{color:#fff6}.command-palette-input:focus{background:rgba(255,255,255,.08);border-color:#3b82f680;box-shadow:0 0 0 3px #3b82f61a,0 0 20px #3b82f633}.command-palette-hint{position:absolute;right:24px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:12px;font-size:12px;color:#9ca3afcc;pointer-events:none}.command-palette-hint kbd{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:4px;padding:2px 6px;font-size:11px;font-weight:500;font-family:-apple-system,BlinkMacSystemFont,SF Mono,Monaco,Inconsolata,monospace;box-shadow:0 1px 2px #0003}.command-palette-results{flex:1;overflow-y:auto;padding:8px}.command-palette-results::-webkit-scrollbar{width:8px}.command-palette-results::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:4px}.command-palette-results::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:4px}.command-palette-results::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3)}.command-category{margin-bottom:8px}.command-category:last-child{margin-bottom:0}.command-category-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#9ca3afcc;padding:8px 12px 4px;user-select:none}.command-item{display:flex;align-items:center;gap:12px;padding:12px 16px;margin:2px 0;background:transparent;border-radius:8px;cursor:pointer;transition:all .15s ease;position:relative;overflow:hidden}.command-item:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(59,130,246,.1),transparent);transform:translate(-100%);transition:transform .5s ease}.command-item:hover{background:rgba(255,255,255,.05)}.command-item:hover:before{transform:translate(100%)}.command-item:hover .command-icon{transform:scale(1.1)}.command-item.selected{background:rgba(59,130,246,.2);border:1px solid rgba(59,130,246,.3);margin:1px 0}.command-item.selected:hover{background:rgba(59,130,246,.25)}.command-item.selected .command-label{color:#fff}.command-item.selected .command-shortcut{background:rgba(59,130,246,.3);border-color:#3b82f680}.command-icon{font-size:20px;width:24px;text-align:center;flex-shrink:0;transition:transform .2s ease}.command-label{flex:1;color:#e5e7ebe6;font-size:14px;font-weight:500}.command-shortcut{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:6px;padding:4px 8px;font-size:12px;font-weight:500;color:#fffc;font-family:-apple-system,BlinkMacSystemFont,SF Mono,Monaco,Inconsolata,monospace;box-shadow:0 1px 2px #0003;transition:all .15s ease}.command-empty{text-align:center;padding:48px 24px;color:#9ca3afcc;font-size:14px}.command-empty:before{content:"🔍";display:block;font-size:48px;margin-bottom:16px;opacity:.5}@media (max-width: 640px){.command-palette{width:95%;max-height:80vh}.command-palette-header{padding:16px}.command-palette-input{font-size:16px;padding:12px 16px}.command-palette-hint{display:none}}.ape-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;animation:fadeIn .2s ease-out}.ape-panel{background:white;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:90%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;animation:slideUp .3s ease-out}.ape-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.ape-header h2{margin:0;font-size:20px;font-weight:600;color:#1f2937}.ape-header .ape-close{background:none;border:none;font-size:28px;color:#6b7280;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.ape-header .ape-close:hover{background:#f3f4f6;color:#374151}.ape-content{flex:1;padding:24px;overflow-y:auto;min-height:400px}.ape-examples-toggle{margin-bottom:20px}.ape-examples-toggle .toggle-btn{background:#f3f4f6;border:2px solid transparent;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.ape-examples-toggle .toggle-btn:hover{background:#e5e7eb}.ape-examples-toggle .toggle-btn.active{background:#8b5cf6;color:#fff}.ape-input-section{margin-bottom:20px}.ape-textarea{width:100%;padding:12px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px;font-family:inherit;resize:vertical;transition:all .2s}.ape-textarea:focus{outline:none;border-color:#8b5cf6;box-shadow:0 0 0 3px #8b5cf61a}.ape-textarea:disabled{background:#f9fafb;cursor:not-allowed}.ape-confidence{margin-top:12px}.ape-confidence .confidence-bar{height:6px;background:#f3f4f6;border-radius:3px;overflow:hidden;margin-bottom:6px}.ape-confidence .confidence-fill{height:100%;background:#6b7280;transition:width .3s ease,background .3s ease}.ape-confidence .confidence-label{font-size:12px;color:#6b7280;font-weight:500}.ape-confidence.confidence-high .confidence-fill{background:#10b981}.ape-confidence.confidence-medium .confidence-fill{background:#f59e0b}.ape-confidence.confidence-low .confidence-fill{background:#ef4444}.ape-suggestions{background:#fef3c7;border:1px solid #fde68a;border-radius:6px;padding:10px 12px;margin-top:10px;font-size:13px;color:#92400e;display:flex;align-items:center;gap:8px}.ape-suggestions .suggestion-icon{font-size:16px}.ape-type-suggestions{margin-top:16px}.ape-type-suggestions .type-label{font-size:13px;color:#6b7280;font-weight:500;display:block;margin-bottom:8px}.ape-type-suggestions .type-chips{display:flex;gap:8px;flex-wrap:wrap}.ape-type-suggestions .type-chip{background:#f3f4f6;border:1px solid #e5e7eb;padding:6px 14px;border-radius:16px;font-size:13px;cursor:pointer;transition:all .2s}.ape-type-suggestions .type-chip:hover{background:#e5e7eb}.ape-type-suggestions .type-chip.active{background:#8b5cf6;color:#fff;border-color:#8b5cf6}.ape-quick-examples{margin-top:20px;padding-top:20px;border-top:1px solid #e5e7eb}.ape-quick-examples .examples-label{font-size:13px;color:#6b7280;font-weight:500;display:block;margin-bottom:10px}.ape-quick-examples .example-pills{display:flex;gap:10px;flex-wrap:wrap}.ape-quick-examples .example-pill{background:#ede9fe;border:1px solid #ddd6fe;color:#5b21b6;padding:8px 16px;border-radius:20px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s}.ape-quick-examples .example-pill:hover{background:#ddd6fe;border-color:#c4b5fd}.diagram-gallery .gallery-search{margin-bottom:16px}.diagram-gallery .gallery-search-input{width:100%;padding:10px 16px;border:2px solid #e5e7eb;border-radius:8px;font-size:14px}.diagram-gallery .gallery-search-input:focus{outline:none;border-color:#8b5cf6}.diagram-gallery .gallery-categories{display:flex;gap:8px;margin-bottom:20px;overflow-x:auto;padding-bottom:4px}.diagram-gallery .category-tab{background:#f3f4f6;border:none;padding:8px 16px;border-radius:6px;font-size:13px;cursor:pointer;display:flex;align-items:center;gap:6px;white-space:nowrap;transition:all .2s}.diagram-gallery .category-tab:hover{background:#e5e7eb}.diagram-gallery .category-tab.active{background:#8b5cf6;color:#fff}.diagram-gallery .category-tab .category-icon{font-size:16px}.diagram-gallery .gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;max-height:400px;overflow-y:auto;padding-right:8px}.diagram-gallery .example-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px;cursor:pointer;transition:all .2s}.diagram-gallery .example-card:hover{background:#f3f4f6;border-color:#d1d5db;transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000001a}.diagram-gallery .example-card .example-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.diagram-gallery .example-card .example-icon{font-size:24px}.diagram-gallery .example-card .example-complexity{font-size:11px;text-transform:uppercase;color:#6b7280;font-weight:500;padding:2px 8px;border-radius:10px;background:#e5e7eb}.diagram-gallery .example-card.complexity-simple .example-complexity{background:#d1fae5;color:#065f46}.diagram-gallery .example-card.complexity-medium .example-complexity{background:#fed7aa;color:#92400e}.diagram-gallery .example-card.complexity-complex .example-complexity{background:#fecaca;color:#991b1b}.diagram-gallery .example-card .example-title{font-size:14px;font-weight:600;margin:0 0 6px;color:#1f2937}.diagram-gallery .example-card .example-description{font-size:12px;color:#6b7280;margin:0 0 10px}.diagram-gallery .example-card .example-prompt{font-size:12px;color:#4b5563;background:white;padding:8px 10px;border-radius:4px;margin-bottom:10px;line-height:1.4}.diagram-gallery .example-card .example-keywords{display:flex;gap:6px}.diagram-gallery .example-card .keyword-tag{font-size:11px;color:#8b5cf6;background:#ede9fe;padding:2px 8px;border-radius:10px}.ape-preview .preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.ape-preview .preview-header h3{margin:0;font-size:18px;font-weight:600}.ape-preview .preview-header .preview-toggle{background:none;border:1px solid #e5e7eb;padding:6px 12px;border-radius:6px;font-size:13px;cursor:pointer}.ape-preview .preview-header .preview-toggle:hover{background:#f3f4f6}.ape-preview .preview-container{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:20px;margin-bottom:16px;min-height:300px}.ape-preview .code-details{margin-top:16px}.ape-preview .code-details summary{cursor:pointer;font-size:13px;color:#6b7280;font-weight:500;padding:8px 0}.ape-preview .code-details .mermaid-code{background:#f3f4f6;padding:16px;border-radius:6px;font-size:12px;overflow-x:auto;margin-top:10px}.mermaid-preview{position:relative}.mermaid-preview .mermaid-loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:40px;color:#6b7280}.mermaid-preview .mermaid-loading .spinner{width:20px;height:20px;border:2px solid #e5e7eb;border-top-color:#8b5cf6;border-radius:50%;animation:spin .6s linear infinite}.mermaid-preview .mermaid-error{background:#fef3c7;border:1px solid #fde68a;border-radius:8px;padding:0;overflow:hidden}.mermaid-preview .mermaid-error .error-header{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#fef9e7;border-bottom:1px solid #fde68a}.mermaid-preview .mermaid-error .error-header .error-icon{font-size:24px;flex-shrink:0}.mermaid-preview .mermaid-error .error-header strong{display:block;color:#92400e;font-size:14px;margin-bottom:4px}.mermaid-preview .mermaid-error .error-header .error-message{margin:0;font-size:13px;color:#78350f;line-height:1.5}.mermaid-preview .mermaid-error .error-code-display{padding:16px;background:white}.mermaid-preview .mermaid-error .error-code-display .code-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid #e5e7eb}.mermaid-preview .mermaid-error .error-code-display .code-header span{font-size:13px;font-weight:600;color:#374151}.mermaid-preview .mermaid-error .error-code-display .code-header .copy-btn{background:#f3f4f6;border:1px solid #d1d5db;padding:4px 10px;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s}.mermaid-preview .mermaid-error .error-code-display .code-header .copy-btn:hover{background:#e5e7eb}.mermaid-preview .mermaid-error .error-code-display .code-header .copy-btn:active{transform:scale(.95)}.mermaid-preview .mermaid-error .error-code-display .code-content{background:#f9fafb;border:1px solid #e5e7eb;border-radius:4px;padding:12px;margin:0;font-size:12px;font-family:Monaco,Menlo,Courier New,monospace;overflow-x:auto;max-height:300px;overflow-y:auto;white-space:pre-wrap;word-wrap:break-word;color:#1f2937;line-height:1.5}.mermaid-preview .mermaid-error .error-details{padding:12px 16px;background:#fef9e7;border-top:1px solid #fde68a}.mermaid-preview .mermaid-error .error-details summary{cursor:pointer;font-size:12px;color:#92400e;font-weight:500;user-select:none;padding:4px 0}.mermaid-preview .mermaid-error .error-details summary:hover{color:#78350f}.mermaid-preview .mermaid-error .error-details .error-detail-content{background:#fff7ed;border:1px solid #fed7aa;border-radius:4px;padding:10px;margin:10px 0 0;font-size:11px;font-family:Monaco,Menlo,Courier New,monospace;overflow-x:auto;color:#9a3412}.mermaid-preview .mermaid-container{text-align:center}.mermaid-preview .mermaid-container svg{max-width:100%;height:auto}.ape-footer{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-top:1px solid #e5e7eb;background:#f9fafb;border-radius:0 0 12px 12px}.ape-footer .ape-credits{display:flex;align-items:center;gap:8px;font-size:13px;color:#6b7280}.ape-footer .ape-credits .user-email{font-weight:500}.ape-footer .ape-credits .credit-balance{font-weight:500;color:#059669}.ape-footer .ape-credits .credit-balance.no-credits,.ape-footer .ape-credits .credit-balance.error{color:#dc2626}.ape-footer .ape-credits .refresh-credits-btn{background:none;border:none;padding:4px 8px;margin-left:8px;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s}.ape-footer .ape-credits .refresh-credits-btn:hover{background:#e5e7eb}.ape-footer .ape-actions{display:flex;gap:12px}.ape-footer button{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none;display:flex;align-items:center;gap:8px}.ape-footer button:disabled{opacity:.5;cursor:not-allowed}.ape-footer .btn-primary{background:#8b5cf6;color:#fff}.ape-footer .btn-primary:hover:not(:disabled){background:#7c3aed}.ape-footer .btn-secondary{background:white;color:#374151;border:1px solid #d1d5db}.ape-footer .btn-secondary:hover:not(:disabled){background:#f3f4f6}.ape-footer .spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.ape-error{background:#fee;border:1px solid #fecaca;color:#dc2626;padding:12px 16px;border-radius:6px;margin-top:12px;display:flex;align-items:center;gap:10px;font-size:13px}.ape-error svg{flex-shrink:0}.ape-warning{background:#fef3c7;border:1px solid #fde68a;color:#92400e;padding:12px 16px;border-radius:6px;margin-top:12px;display:flex;align-items:center;gap:10px;font-size:13px}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@media (max-width: 640px){.ape-panel{width:95%;max-height:95vh}.gallery-grid{grid-template-columns:1fr}.ape-quick-examples .example-pills{flex-direction:column}.ape-quick-examples .example-pills .example-pill{width:100%}}*{box-sizing:border-box}.welcome-container{width:100%;min-height:100vh;background:#ffffff;font-family:-apple-system,BlinkMacSystemFont,Inter,SF Pro Display,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#000;position:relative}.background-elements{display:none}.welcome-header{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(255,255,255,.8);backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(0,0,0,.08)}.welcome-header .header-content{max-width:1200px;margin:0 auto;padding:0 24px;height:64px;display:flex;align-items:center;justify-content:space-between}.welcome-header .logo .logo-text{font-size:20px;font-weight:600;color:#000;letter-spacing:-.02em}.welcome-header .header-nav{display:flex;align-items:center;gap:32px}.welcome-header .header-nav .nav-link{background:none;border:none;color:#666;font-size:14px;font-weight:500;cursor:pointer;transition:color .2s ease;padding:0;position:relative}.welcome-header .header-nav .nav-link:hover{color:#000}.welcome-header .header-nav .header-signin{background:#000;color:#fff;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.welcome-header .header-nav .header-signin:hover{background:#333}.welcome-main{padding-top:64px;min-height:100vh;display:flex;align-items:center;justify-content:center}.hero-section{max-width:1000px;margin:0 auto;padding:48px 24px;text-align:center}.hero-section .hero-badge{display:inline-flex;align-items:center;gap:6px;background:#f5f5f5;color:#666;padding:6px 12px;border-radius:16px;font-size:13px;font-weight:500;margin-bottom:24px}.hero-section .hero-title{font-size:56px;font-weight:700;line-height:1.1;letter-spacing:-.03em;margin:0 0 20px;color:#000}.hero-section .hero-title span{display:block}.hero-section .hero-title .gradient-text{color:#000}.hero-section .hero-title .underline-decoration{position:relative;display:inline-block}.hero-section .hero-title .underline-decoration:after{content:"";position:absolute;bottom:4px;left:0;right:0;height:3px;background:#0070f3;border-radius:2px}.hero-section .hero-subtitle{font-size:20px;color:#666;font-weight:400;line-height:1.5;max-width:600px;margin:0 auto 48px}.hero-section .hero-subtitle br{display:none}.hero-section .hero-subtitle .subtitle-highlight{color:#000;font-weight:500}.interactive-demo{width:100%;max-width:720px;margin:0 auto}.interactive-demo .demo-input-container{display:flex;gap:12px;margin-bottom:32px}.interactive-demo .demo-input-container .demo-input{flex:1;height:48px;padding:0 16px;border:1px solid #e5e5e5;border-radius:8px;font-size:16px;font-weight:400;color:#000;background:#fff;transition:all .15s ease}.interactive-demo .demo-input-container .demo-input::placeholder{color:#999}.interactive-demo .demo-input-container .demo-input:focus{outline:none;border-color:#0070f3;box-shadow:0 0 0 3px #0070f31a}.interactive-demo .demo-input-container .generate-button{height:48px;padding:0 24px;background:#0070f3;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap;display:flex;align-items:center;gap:6px}.interactive-demo .demo-input-container .generate-button:hover:not(:disabled){background:#0051cc}.interactive-demo .demo-input-container .generate-button:active:not(:disabled){transform:scale(.98)}.interactive-demo .demo-input-container .generate-button.ready{box-shadow:0 4px 14px #0070f340}.interactive-demo .demo-input-container .generate-button:disabled{opacity:.5;cursor:not-allowed}.interactive-demo .demo-input-container .generate-button.generating{background:#000}.interactive-demo .demo-input-container .generate-button.generating .generating-icon{display:inline-block}.interactive-demo .demo-input-container .generate-button .arrow-icon{transition:transform .15s ease}.interactive-demo .demo-input-container .generate-button:hover:not(:disabled) .arrow-icon{transform:translate(2px)}.interactive-demo .preview-area{position:relative;width:100%;height:400px;background:#fafafa;border:1px solid #e5e5e5;border-radius:12px;overflow:hidden;transition:all .2s ease}.interactive-demo .preview-area.active{background:#fff;border-color:#0070f3;box-shadow:0 12px 24px -6px #00000014}.interactive-demo .preview-area .generating-overlay{position:absolute;inset:0;background:rgba(255,255,255,.95);display:flex;align-items:center;justify-content:center;z-index:10}.interactive-demo .preview-area .generating-overlay .ai-thinking{text-align:center}.interactive-demo .preview-area .generating-overlay .ai-thinking span{display:block;font-size:14px;color:#666;font-weight:500;margin-bottom:16px}.interactive-demo .preview-area .generating-overlay .ai-thinking .thinking-dots{display:flex;gap:8px;justify-content:center}.interactive-demo .preview-area .generating-overlay .ai-thinking .thinking-dots span{width:8px;height:8px;background:#0070f3;border-radius:50%;opacity:.3;animation:dotPulse 1.5s ease-in-out infinite}.interactive-demo .preview-area .generating-overlay .ai-thinking .thinking-dots span:nth-child(1){animation-delay:0s}.interactive-demo .preview-area .generating-overlay .ai-thinking .thinking-dots span:nth-child(2){animation-delay:.15s}.interactive-demo .preview-area .generating-overlay .ai-thinking .thinking-dots span:nth-child(3){animation-delay:.3s}.interactive-demo .preview-area .diagram-canvas{width:100%;height:100%;transition:opacity .3s ease}.interactive-demo .preview-area .preview-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:32px}.interactive-demo .preview-area .preview-placeholder p{font-size:14px;color:#999;margin:0 0 24px}.interactive-demo .preview-area .preview-placeholder .example-prompts .prompts-label{display:block;font-size:12px;color:#999;font-weight:500;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}.interactive-demo .preview-area .preview-placeholder .example-prompts .prompt-pills{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.interactive-demo .preview-area .preview-placeholder .example-prompts .prompt-pills .prompt-pill{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#fff;border:1px solid #e5e5e5;border-radius:20px;font-size:14px;color:#666;cursor:pointer;transition:all .15s ease}.interactive-demo .preview-area .preview-placeholder .example-prompts .prompt-pills .prompt-pill:hover,.interactive-demo .preview-area .preview-placeholder .example-prompts .prompt-pills .prompt-pill.hovered{background:#f5f5f5;border-color:#ccc;color:#000}.interactive-demo .preview-area .preview-placeholder .example-prompts .prompt-pills .prompt-pill:hover .pill-icon,.interactive-demo .preview-area .preview-placeholder .example-prompts .prompt-pills .prompt-pill.hovered .pill-icon{transform:scale(1.1)}.interactive-demo .preview-area .preview-placeholder .example-prompts .prompt-pills .prompt-pill .pill-icon{font-size:16px;transition:transform .15s ease}.bottom-cta{margin-top:48px;text-align:center}.bottom-cta .trust-badges{display:flex;gap:32px;justify-content:center;margin-bottom:24px;flex-wrap:wrap}.bottom-cta .trust-badges .badge{display:flex;align-items:center;gap:8px;color:#666;font-size:14px;font-weight:400}.bottom-cta .trust-badges .badge .badge-icon{font-size:18px;color:#000}.bottom-cta .try-drawing-link{background:none;border:none;color:#666;font-size:14px;cursor:pointer;text-decoration:none;transition:all .15s ease;display:inline-flex;align-items:center;gap:4px}.bottom-cta .try-drawing-link:hover{color:#000}.bottom-cta .try-drawing-link:hover .link-arrow{transform:translate(2px)}.bottom-cta .try-drawing-link .link-arrow{transition:transform .15s ease}.signup-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.signup-modal{position:relative;background:#fff;border-radius:16px;padding:48px;max-width:480px;width:90%;box-shadow:0 25px 50px -12px #00000040;animation:modalSlideUp .3s ease}.signup-modal .modal-close{position:absolute;top:24px;right:24px;width:32px;height:32px;background:#f5f5f5;border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;color:#666;cursor:pointer;transition:all .15s ease}.signup-modal .modal-close:hover{background:#e5e5e5;color:#000}.signup-modal .modal-content{text-align:center}.signup-modal .modal-content .modal-icon{font-size:48px;margin-bottom:24px}.signup-modal .modal-content h2{font-size:32px;font-weight:700;margin:0 0 12px;color:#000;letter-spacing:-.02em}.signup-modal .modal-content p{font-size:16px;color:#666;margin:0 0 32px;line-height:1.5}.signup-modal .modal-content .modal-features{display:flex;flex-direction:column;gap:12px;margin-bottom:32px;text-align:left}.signup-modal .modal-content .modal-features .feature{display:flex;align-items:center;gap:12px;padding:16px;background:#f8f8f8;border-radius:8px;transition:all .15s ease}.signup-modal .modal-content .modal-features .feature:hover{background:#f0f0f0}.signup-modal .modal-content .modal-features .feature .feature-icon{font-size:20px}.signup-modal .modal-content .modal-features .feature span:last-child{font-size:14px;color:#333;font-weight:500}.signup-modal .modal-content .modal-cta{width:100%;height:48px;background:#0070f3;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .15s ease}.signup-modal .modal-content .modal-cta:hover{background:#0051cc}.signup-modal .modal-content .modal-cta:active{transform:scale(.98)}.signup-modal .modal-content .modal-signin{margin-top:20px;font-size:14px;color:#666}.signup-modal .modal-content .modal-signin button{background:none;border:none;color:#0070f3;font-weight:500;cursor:pointer;text-decoration:none;transition:color .15s ease}.signup-modal .modal-content .modal-signin button:hover{color:#0051cc;text-decoration:underline}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes dotPulse{0%,80%,to{opacity:.3}40%{opacity:1}}@media (max-width: 768px){.welcome-header .header-content{padding:0 16px}.welcome-header .header-nav{gap:16px}.welcome-header .header-nav .nav-link{display:none}.hero-section{padding:32px 16px}.hero-section .hero-title{font-size:40px}.hero-section .hero-title span{display:inline}.hero-section .hero-subtitle{font-size:18px}.interactive-demo .demo-input-container{flex-direction:column}.interactive-demo .demo-input-container .demo-input,.interactive-demo .demo-input-container .generate-button{width:100%}.interactive-demo .preview-area{height:300px}.interactive-demo .preview-area .example-prompts .prompt-pills .prompt-pill{font-size:13px;padding:6px 12px}.bottom-cta .trust-badges{gap:16px}.bottom-cta .trust-badges .badge{font-size:13px}.signup-modal{padding:32px 24px}}.screenshot-import-overlay{position:fixed;inset:0;background:rgba(0,0,0,.85);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:overlayFadeIn .2s ease-out;padding:20px}@media (max-width: 640px){.screenshot-import-overlay{padding:16px}}.screenshot-import-wrapper{position:relative;width:100%;max-width:680px;max-height:85vh;animation:modalSlideIn .3s cubic-bezier(.4,0,.2,1)}.screenshot-import{background:#111111;border:1px solid rgba(255,255,255,.08);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;max-height:85vh;box-shadow:0 8px 32px #0009}.import-header{background:transparent;border-bottom:1px solid rgba(255,255,255,.06);padding:20px 24px}@media (max-width: 640px){.import-header{padding:16px 20px}}.import-header .header-content{display:flex;justify-content:space-between;align-items:center}.import-header .header-title{display:flex;align-items:center;gap:12px}.import-header .header-title .icon-wrapper{width:40px;height:40px;background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);border-radius:10px;display:flex;align-items:center;justify-content:center;position:relative}.import-header .header-title .icon-wrapper svg{width:24px;height:24px;color:#fff}.import-header .header-title .icon-wrapper:after{content:"";position:absolute;inset:-2px;background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);border-radius:12px;opacity:.3;filter:blur(6px);z-index:-1}.import-header .header-title div h2{font-size:18px;font-weight:600;color:#fffffff2;margin:0;letter-spacing:-.02em}@media (max-width: 640px){.import-header .header-title div h2{font-size:16px}}.import-header .header-title div p{font-size:13px;color:#ffffff80;margin:2px 0 0}@media (max-width: 640px){.import-header .header-title div p{display:none}}.import-header .close-btn{width:36px;height:36px;background:transparent;border:1px solid rgba(255,255,255,.08);border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;color:#ffffff80}.import-header .close-btn:hover{background:rgba(255,255,255,.05);border-color:#ffffff1f;color:#fffc}.import-header .close-btn svg{width:18px;height:18px}.import-content{flex:1;padding:24px;overflow-y:auto;overflow-x:hidden}@media (max-width: 640px){.import-content{padding:20px}}.import-content::-webkit-scrollbar{width:6px}.import-content::-webkit-scrollbar-track{background:transparent}.import-content::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:3px}.import-content::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.15)}.model-selection{display:flex;gap:12px;margin-bottom:20px}@media (max-width: 480px){.model-selection{flex-direction:column;gap:8px}}.model-selection .model-option{flex:1;position:relative}.model-selection .model-option input[type=radio]{position:absolute;opacity:0}.model-selection .model-option input[type=radio]:checked+label{background:rgba(59,130,246,.15);border-color:#3b82f6}.model-selection .model-option input[type=radio]:checked+label .model-info strong{color:#3b82f6}.model-selection .model-option input[type=radio]:checked+label:before{content:"";position:absolute;top:8px;right:8px;width:6px;height:6px;background:#3b82f6;border-radius:50%;box-shadow:0 0 0 3px #3b82f633}.model-selection .model-option label{display:block;padding:12px 16px;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.08);border-radius:8px;cursor:pointer;transition:all .15s ease;position:relative}.model-selection .model-option label:hover{background:rgba(255,255,255,.04);border-color:#ffffff1f}.model-selection .model-option label .model-info strong{display:block;font-size:14px;font-weight:600;color:#ffffffe6;margin-bottom:2px}.model-selection .model-option label .model-info span{font-size:12px;color:#ffffff80}.drop-zone{border:2px dashed rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.02);transition:all .2s ease;cursor:pointer;position:relative;overflow:hidden}.drop-zone:hover{border-color:#3b82f666;background:rgba(59,130,246,.05)}.drop-zone.dragging{border-color:#3b82f6;background:rgba(59,130,246,.1);transform:scale(1.01)}.drop-zone .drop-zone-inner{padding:48px 24px;text-align:center}@media (max-width: 480px){.drop-zone .drop-zone-inner{padding:32px 20px}}.drop-zone .drop-zone-content{display:flex;flex-direction:column;align-items:center;gap:16px;max-width:400px;margin:0 auto}.drop-zone .upload-icon svg{width:56px;height:56px;color:#ffffff4d}@media (max-width: 480px){.drop-zone .upload-icon svg{width:48px;height:48px}}.drop-zone h3{font-size:16px;font-weight:600;color:#ffffffe6;margin:0}.drop-zone p{font-size:14px;color:#ffffff80;margin:0;line-height:1.5}.drop-zone .upload-methods{display:flex;align-items:center;gap:16px;margin-top:8px}@media (max-width: 480px){.drop-zone .upload-methods{flex-direction:column;gap:12px}}.drop-zone .upload-btn{padding:10px 20px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .15s ease}.drop-zone .upload-btn:hover{background:#2563eb;transform:translateY(-1px)}.drop-zone .upload-btn:active{transform:translateY(0)}.drop-zone .upload-btn svg{width:18px;height:18px}.drop-zone .divider{color:#ffffff4d;font-size:13px}@media (max-width: 480px){.drop-zone .divider{display:none}}.drop-zone .paste-hint{display:flex;align-items:center;gap:6px;color:#ffffff80;font-size:13px}.drop-zone .paste-hint .shortcut-key{display:flex;align-items:center;gap:3px}.drop-zone .paste-hint kbd{padding:2px 6px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);border-radius:4px;font-family:-apple-system,BlinkMacSystemFont,monospace;font-size:11px;font-weight:500}.drop-zone .supported-formats{display:flex;flex-wrap:wrap;gap:6px;justify-content:center;margin-top:8px}.drop-zone .supported-formats .format-badge{padding:2px 8px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:4px;font-size:11px;color:#fff6}.enhancement-options{margin-top:16px;padding:12px 16px;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.08);border-radius:8px}.enhancement-options .enhancement-toggle{display:flex;align-items:center;gap:12px;cursor:pointer}.enhancement-options .enhancement-toggle input[type=checkbox]{display:none}.enhancement-options .enhancement-toggle input[type=checkbox]:checked+.toggle-slider{background:#3b82f6}.enhancement-options .enhancement-toggle input[type=checkbox]:checked+.toggle-slider:before{transform:translate(20px)}.enhancement-options .enhancement-toggle .toggle-slider{position:relative;width:40px;height:20px;background:rgba(255,255,255,.1);border-radius:10px;transition:all .2s ease}.enhancement-options .enhancement-toggle .toggle-slider:before{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;background:white;border-radius:8px;transition:transform .2s ease;box-shadow:0 1px 3px #0000004d}.enhancement-options .enhancement-toggle .toggle-label{flex:1}.enhancement-options .enhancement-toggle .toggle-label strong{display:block;font-size:13px;color:#ffffffe6;margin-bottom:1px}.enhancement-options .enhancement-toggle .toggle-label span{font-size:12px;color:#ffffff80}.preview-section .preview-container{display:flex;gap:20px}@media (max-width: 640px){.preview-section .preview-container{flex-direction:column}}.image-preview{flex:1;position:relative;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.08);border-radius:8px;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:200px}.image-preview img{max-width:100%;max-height:400px;object-fit:contain}.image-preview .change-image-btn{position:absolute;top:12px;right:12px;padding:6px 12px;background:rgba(0,0,0,.8);backdrop-filter:blur(8px);color:#fffc;border:1px solid rgba(255,255,255,.1);border-radius:6px;font-size:12px;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .15s ease}.image-preview .change-image-btn:hover{background:rgba(0,0,0,.9);color:#fff}.image-preview .change-image-btn svg{width:14px;height:14px}.processing-panel{flex:0 0 280px}@media (max-width: 640px){.processing-panel{flex:1}}.processing-panel h3{font-size:14px;font-weight:600;color:#ffffffe6;margin:0 0 16px}.processing-steps{display:flex;flex-direction:column;gap:12px}.processing-step{display:flex;align-items:flex-start;gap:10px}.processing-step .step-indicator{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center}.processing-step .step-indicator .step-circle{width:100%;height:100%;border:1.5px solid rgba(255,255,255,.15);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:#fff6;background:rgba(255,255,255,.02)}.processing-step .step-indicator .step-spinner{width:100%;height:100%;border:2px solid rgba(255,255,255,.1);border-top-color:#3b82f6;border-radius:50%;animation:spin .8s linear infinite}.processing-step .step-indicator svg{width:20px;height:20px}.processing-step .step-content{flex:1;padding-top:2px}.processing-step .step-content .step-label{font-size:13px;font-weight:500;color:#ffffffb3;line-height:1.3}.processing-step .step-content .step-description{margin-top:2px;font-size:12px;color:#fff6;line-height:1.4}.processing-step.completed .step-indicator svg{color:#10b981}.processing-step.completed .step-label{color:#ffffffe6}.processing-step.active .step-label{color:#3b82f6}.processing-step.error .step-indicator svg{color:#ef4444}.processing-step.error .step-label{color:#ef4444}.analysis-result{padding:16px;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.08);border-radius:8px}.analysis-result .result-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.analysis-result .result-header h4{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#ffffffe6;margin:0}.analysis-result .result-header h4 svg{width:16px;height:16px;color:#3b82f6}.analysis-result .result-header .confidence-badge{padding:3px 10px;background:rgba(59,130,246,.1);color:#3b82f6;border-radius:12px;font-size:12px;font-weight:500}.analysis-result .result-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media (max-width: 480px){.analysis-result .result-grid{grid-template-columns:1fr}}.analysis-result .result-grid .result-item .result-label{font-size:11px;color:#ffffff80;text-transform:uppercase;letter-spacing:.03em}.analysis-result .result-grid .result-item .result-value{font-size:14px;font-weight:500;color:#ffffffe6;margin-top:2px}.analysis-result .code-preview{margin-top:12px}.analysis-result .code-preview summary{cursor:pointer;display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:#fff9;padding:4px 0;user-select:none}.analysis-result .code-preview summary:hover{color:#fffc}.analysis-result .code-preview summary svg{width:12px;height:12px;transition:transform .2s ease}.analysis-result .code-preview[open] summary svg{transform:rotate(180deg)}.analysis-result .code-preview pre{margin-top:8px;padding:12px;background:rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.08);border-radius:6px;font-size:12px;font-family:-apple-system,BlinkMacSystemFont,monospace;color:#ffffffb3;overflow-x:auto;max-height:150px;line-height:1.5}.message{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;border-radius:8px;font-size:13px;margin-top:16px;animation:slideDown .2s ease-out}.message svg{flex-shrink:0;width:16px;height:16px;margin-top:1px}.message.error-message{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.2);color:#f87171}.message.success-message{background:rgba(16,185,129,.1);border:1px solid rgba(16,185,129,.2);color:#34d399}.import-footer{padding:16px 24px;background:transparent;border-top:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:space-between;gap:16px}@media (max-width: 640px){.import-footer{padding:16px 20px;flex-direction:column;align-items:stretch}}.import-footer .footer-left{flex:1;min-width:0}.import-footer .footer-left .credits-display{display:flex;align-items:center;gap:8px;font-size:13px;color:#fff9}.import-footer .footer-left .credits-display .user-email{font-weight:500;color:#ffffffb3}.import-footer .footer-left .credits-display .separator{color:#ffffff4d}.import-footer .footer-left .credits-display .credit-balance{font-weight:500;color:#10b981}.import-footer .footer-left .credits-display .credit-balance.no-credits,.import-footer .footer-left .credits-display .credit-balance.error{color:#ef4444}.import-footer .footer-left .credits-display .refresh-credits-btn{background:none;border:none;padding:4px 8px;margin-left:4px;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s}.import-footer .footer-left .credits-display .refresh-credits-btn:hover{background:rgba(255,255,255,.05)}.import-footer .footer-left .tips,.import-footer .footer-left .file-info{display:flex;align-items:center;gap:6px;font-size:12px;color:#ffffff80}.import-footer .footer-left .tips svg,.import-footer .footer-left .file-info svg{flex-shrink:0;width:14px;height:14px;color:#fff6}.import-footer .footer-actions{display:flex;align-items:center;gap:12px}@media (max-width: 640px){.import-footer .footer-actions{width:100%}.import-footer .footer-actions>*{flex:1}}.import-footer .secondary-btn{padding:8px 16px;background:transparent;border:1px solid rgba(255,255,255,.12);color:#ffffffb3;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .15s ease}.import-footer .secondary-btn:hover:not(:disabled){background:rgba(255,255,255,.05);border-color:#fff3;color:#ffffffe6}.import-footer .secondary-btn:disabled{opacity:.5;cursor:not-allowed}.import-footer .secondary-btn svg{width:16px;height:16px}.import-footer .auth-notice{display:flex;align-items:center;gap:8px;padding:8px 16px;background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.08);border-radius:8px;color:#fff9;font-size:13px}.import-footer .auth-notice svg{width:16px;height:16px}.import-footer .primary-btn{padding:8px 20px;background:#3b82f6;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .15s ease;position:relative;overflow:hidden}.import-footer .primary-btn:hover:not(:disabled){background:#2563eb;transform:translateY(-1px)}.import-footer .primary-btn:disabled{opacity:.5;cursor:not-allowed}.import-footer .primary-btn.loading{color:transparent}.import-footer .primary-btn.success{background:#10b981}.import-footer .primary-btn .btn-spinner{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .6s linear infinite}.import-footer .primary-btn svg{width:18px;height:18px}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{transform:translateY(20px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes slideDown{0%{transform:translateY(-8px);opacity:0}to{transform:translateY(0);opacity:1}}button:focus-visible,input:focus-visible,label:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.screenshot-import *{z-index:1}@media print{.screenshot-import-overlay{display:none}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1)}}@keyframes pulse{0%{transform:scale(1);opacity:.8}50%{transform:scale(1.05);opacity:1}to{transform:scale(1);opacity:.8}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes rotate360{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes glowPulse{0%{box-shadow:0 0 5px #3b82f680}50%{box-shadow:0 0 20px #3b82f6cc,0 0 30px #3b82f666}to{box-shadow:0 0 5px #3b82f680}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}@keyframes slideOutLeft{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-100%)}}@keyframes wave{0%{transform:scale(0);opacity:1}to{transform:scale(1);opacity:0}}.animate-fadeInUp{animation:fadeInUp .3s ease-out}.animate-fadeInRight{animation:fadeInRight .3s ease-out}.animate-scaleFadeIn{animation:scaleFadeIn .3s ease-out}.animate-bounceIn{animation:bounceIn .6s cubic-bezier(.68,-.55,.265,1.55)}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-shimmer{position:relative;overflow:hidden}.animate-shimmer:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:shimmer 1.5s infinite}.animate-rotate{animation:rotate360 1s linear infinite}.animate-shake{animation:shake .3s ease-in-out}.animate-glowPulse{animation:glowPulse 2s ease-in-out infinite}.transition-all{transition:all .3s cubic-bezier(.4,0,.2,1)}.transition-transform{transition:transform .3s cubic-bezier(.4,0,.2,1)}.transition-opacity{transition:opacity .3s ease}.transition-colors{transition:background-color .3s ease,border-color .3s ease,color .3s ease}.hover-scale-sm:hover{transform:scale(1.05)}.hover-scale-md:hover{transform:scale(1.1)}.hover-scale-lg:hover{transform:scale(1.15)}.active-scale-sm:active{transform:scale(.95)}.active-scale-md:active{transform:scale(.9)}.ai-palette-simple-overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:10000;backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}.ai-palette-simple{background:#1a1a1a;border:1px solid #333;border-radius:16px;width:90%;max-width:600px;box-shadow:0 20px 60px #00000080;animation:slideUp .3s ease-out;overflow:hidden}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.aps-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #333}.aps-title{display:flex;align-items:center;gap:12px}.aps-icon{font-size:24px;animation:sparkle 2s ease-in-out infinite}@keyframes sparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}.aps-title h2{margin:0;font-size:18px;font-weight:600;color:#fff}.aps-close{background:none;border:none;color:#999;cursor:pointer;padding:8px;border-radius:8px;transition:all .2s}.aps-close:hover{background:rgba(255,255,255,.1);color:#fff}.aps-content{padding:24px;min-height:300px}.aps-examples{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin-bottom:20px}.aps-example{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:12px 16px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px;font-size:14px;color:#ccc}.aps-example:hover:not(:disabled){background:rgba(139,92,246,.1);border-color:#8b5cf64d;color:#fff;transform:translateY(-1px)}.aps-example:disabled{opacity:.5;cursor:not-allowed}.aps-example span:first-child{font-size:18px}.aps-input{margin-bottom:16px}.aps-input textarea{width:100%;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:16px;color:#fff;font-size:15px;line-height:1.5;resize:none;transition:all .2s;font-family:inherit}.aps-input textarea:focus{outline:none;border-color:#8b5cf680;background:rgba(255,255,255,.07)}.aps-input textarea:disabled{opacity:.5;cursor:not-allowed}.aps-input textarea::placeholder{color:#666}.aps-error{background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.3);border-radius:8px;padding:12px 16px;color:#ef4444;font-size:14px;display:flex;align-items:center;gap:10px}.aps-preview h3{margin:0 0 16px;font-size:16px;color:#fff;font-weight:600}.aps-code{background:rgba(0,0,0,.3);border:1px solid #333;border-radius:10px;padding:16px;overflow:auto;max-height:300px}.aps-code pre{margin:0;color:#8b5cf6;font-family:SF Mono,Monaco,Cascadia Code,monospace;font-size:13px;line-height:1.5;white-space:pre-wrap}.aps-footer{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-top:1px solid #333;background:rgba(0,0,0,.2)}.aps-credits{font-size:13px;color:#999;display:flex;align-items:center;gap:8px}.aps-credit-separator{opacity:.3}.aps-credit-balance{font-weight:500;color:#8b5cf6}.aps-credit-balance.no-credits{color:#ef4444;font-weight:600}.aps-actions{display:flex;gap:12px}.aps-btn-primary,.aps-btn-secondary{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;border:none;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px;font-family:inherit}.aps-btn-primary{background:#8b5cf6;color:#fff}.aps-btn-primary:hover:not(:disabled){background:#7c3aed;transform:translateY(-1px)}.aps-btn-primary:disabled{background:#4c4c4c;color:#999;cursor:not-allowed}.aps-btn-secondary{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.2)}.aps-btn-secondary:hover{background:rgba(255,255,255,.15)}.aps-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@media (max-width: 600px){.ai-palette-simple{width:95%;margin:20px}.aps-examples{grid-template-columns:repeat(2,1fr)}}@media (prefers-color-scheme: light){.ai-palette-simple{background:#fff;border-color:#e0e0e0}.aps-header{border-bottom-color:#e0e0e0}.aps-title h2{color:#000}.aps-close{color:#666}.aps-close:hover{background:rgba(0,0,0,.05);color:#000}.aps-example{background:#f5f5f5;border-color:#e0e0e0;color:#333}.aps-example:hover:not(:disabled){background:rgba(139,92,246,.05);color:#000}.aps-input textarea{background:#f5f5f5;border-color:#e0e0e0;color:#000}.aps-input textarea:focus{background:#fff}.aps-preview h3{color:#000}.aps-code{background:#f5f5f5;border-color:#e0e0e0}.aps-footer{border-top-color:#e0e0e0;background:rgba(0,0,0,.02)}.aps-credits{color:#666}}.ai-button{background:linear-gradient(135deg,#3b82f6 0%,#8b5cf6 100%);color:#fff!important;position:relative;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.ai-button:before{content:"";position:absolute;top:50%;left:50%;width:120%;height:120%;background:radial-gradient(circle,rgba(255,255,255,.2) 0%,transparent 70%);transform:translate(-50%,-50%) scale(0);transition:transform .5s ease}.ai-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 16px #3b82f64d}.ai-button:hover:not(:disabled):before{transform:translate(-50%,-50%) scale(1)}.ai-button:hover:not(:disabled) .action-icon{animation:aiPulse .8s ease-in-out}.ai-button:disabled{background:#6b7280;opacity:.7;cursor:not-allowed}@keyframes aiPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.user-menu{margin-left:auto;padding:0 8px}.user-button{display:flex;align-items:center;gap:8px;padding:6px 12px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:24px;color:var(--text-color);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.user-button:hover{background:rgba(255,255,255,.15);border-color:#ffffff4d;transform:translateY(-1px)}.user-avatar{width:24px;height:24px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.2)}.user-name{max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-button{display:flex;align-items:center;gap:6px;padding:8px 16px;background:#4285f4;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.auth-button:hover{background:#357ae8;transform:translateY(-1px);box-shadow:0 4px 12px #4285f44d}.auth-button .auth-icon{font-size:16px}.toolbar-group:hover .tool-button:not(:hover){opacity:.7}.tool-button{position:relative}.tool-button.active:after{content:"";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:24px;height:3px;background:#3b82f6;border-radius:2px;animation:slideIn .2s ease}@keyframes slideIn{0%{width:0;opacity:0}to{width:24px;opacity:1}}.render-mode-selector .render-mode-options .render-mode-option{position:relative}.render-mode-selector .render-mode-options .render-mode-option:before{content:"";position:absolute;inset:0;background:currentColor;opacity:0;border-radius:8px;transition:opacity .2s ease}.render-mode-selector .render-mode-options .render-mode-option:hover:before{opacity:.1}.render-mode-selector .render-mode-options .render-mode-option.active{color:#3b82f6;font-weight:600}.render-mode-selector .render-mode-options .render-mode-option.active:before{opacity:.15}.notification{animation:notificationSlide .3s cubic-bezier(.68,-.55,.265,1.55);backdrop-filter:blur(12px);background:rgba(30,30,30,.95);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0000004d}@keyframes notificationSlide{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.action-button:active:not(:disabled),.tool-button:active:not(:disabled){transform:scale(.95)}.drawing-canvas[style*=pointer]:after{content:"";position:fixed;pointer-events:none;width:8px;height:8px;background:#3b82f6;border-radius:50%;transform:translate(-50%,-50%);opacity:.5;animation:cursorPulse 1.5s infinite}@keyframes cursorPulse{0%,to{transform:translate(-50%,-50%) scale(1);opacity:.5}50%{transform:translate(-50%,-50%) scale(1.5);opacity:.2}}.drawing-canvas{transition:cursor .15s ease}@keyframes selectionPulse{0%,to{stroke-dashoffset:0}50%{stroke-dashoffset:10}}@keyframes elementCreate{0%{transform:scale(.9);opacity:0}50%{transform:scale(1.05)}to{transform:scale(1);opacity:1}}.toolbar .tool-button.switching{animation:toolSwitch .3s ease}@keyframes toolSwitch{0%{transform:translateY(0)}50%{transform:translateY(-4px)}to{transform:translateY(0)}}.laser-trail{position:fixed;pointer-events:none;z-index:1000}.laser-trail .trail-point{position:absolute;width:4px;height:4px;background:#ef4444;border-radius:50%;animation:fadeOut .5s ease forwards}@keyframes fadeOut{to{opacity:0;transform:scale(.5)}}.emphasis-circle{position:fixed;pointer-events:none;border:2px solid #ef4444;border-radius:50%;animation:emphasisExpand 1s ease forwards}@keyframes emphasisExpand{0%{width:20px;height:20px;opacity:1}to{width:60px;height:60px;opacity:0}}.recognition-hint{position:absolute;background:#10b981;color:#fff;padding:6px 12px;border-radius:6px;font-size:12px;font-weight:500;white-space:nowrap;pointer-events:none;animation:hintSlide .3s ease;box-shadow:0 4px 12px #10b9814d}.recognition-hint:after{content:"";position:absolute;bottom:-4px;left:50%;transform:translate(-50%);width:0;height:0;border-style:solid;border-width:4px 4px 0 4px;border-color:#10b981 transparent transparent transparent}@keyframes hintSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.app-container{transition:grid-template-columns .3s cubic-bezier(.4,0,.2,1)}.app-container.style-panel-collapsed .style-panel{transform:translate(100%)}.style-panel{transition:transform .3s cubic-bezier(.4,0,.2,1)}.save-status{animation:saveStatusFade .3s ease}.save-status .save-icon{animation:saveIconPulse .6s ease}@keyframes saveStatusFade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes saveIconPulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.dragging-element{filter:drop-shadow(0 8px 16px rgba(0,0,0,.3));opacity:.8}.resize-handle{transition:all .2s ease}.resize-handle:hover{transform:scale(1.5);background:#3b82f6}.notification.hiding{animation:notificationHide .3s ease forwards}@keyframes notificationHide{to{transform:translateY(120%);opacity:0}}.loading{position:relative}.loading:after{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid #3b82f6;border-radius:50%;border-top-color:transparent;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.action-button:active:after,.tool-button:active:after{content:"";position:absolute;top:50%;left:50%;width:100%;height:100%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(255,255,255,.2) 0%,transparent 70%);animation:hapticFeedback .3s ease}@keyframes hapticFeedback{0%{transform:translate(-50%,-50%) scale(.8);opacity:1}to{transform:translate(-50%,-50%) scale(1.2);opacity:0}}.dashboard-header{display:flex;align-items:center;justify-content:space-between;gap:16px;font-family:-apple-system,BlinkMacSystemFont,Inter,SF Pro Display,sans-serif;width:100%;height:100%;padding:0 8px}.dashboard-header .header-brand{display:flex;align-items:center;gap:12px}.dashboard-header .header-brand .logo-text{font-size:18px;font-weight:600;color:#fff;letter-spacing:-.5px}.dashboard-header .header-actions{display:flex;align-items:center;gap:8px}.header-left{display:flex;align-items:center;gap:24px}.header-actions{display:flex;align-items:center;gap:16px}.header-center{display:flex;align-items:center;justify-content:center;flex:1}.save-status{display:flex;align-items:center;gap:6px;padding:4px 10px;background:rgba(255,255,255,.04);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:4px;font-size:11px;color:#ffffff80;border:1px solid rgba(255,255,255,.06)}.save-status .status-indicator{width:4px;height:4px;border-radius:50%;background:#10b981;box-shadow:0 0 8px #10b981;animation:statusPulse 2s ease-in-out infinite}.save-status .status-text{font-weight:500;white-space:nowrap}@keyframes statusPulse{0%,to{opacity:.6}50%{opacity:1}}.header-right{display:flex;align-items:center;gap:16px}.action-group{display:flex;align-items:center;gap:2px;padding:2px;background:rgba(255,255,255,.04);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:6px;border:1px solid rgba(255,255,255,.06)}.action-btn{display:flex;align-items:center;gap:6px;padding:6px 10px;background:transparent;border:none;border-radius:4px;font-size:13px;font-weight:500;color:#fff9;cursor:pointer;transition:all .15s ease;white-space:nowrap}.action-btn:hover:not(:disabled){background:rgba(255,255,255,.08);color:#ffffffe6}.action-btn:active:not(:disabled){background:rgba(255,255,255,.05);transform:scale(.96)}.action-btn:disabled{opacity:.3;cursor:not-allowed}.action-btn.primary{background:#7c3aed;color:#fff}.action-btn.primary:hover:not(:disabled){background:#6d28d9}.action-btn .btn-icon{font-size:14px;line-height:1}.user-menu-container{position:relative}.user-button{display:flex;align-items:center;gap:6px;padding:4px 8px;background:rgba(255,255,255,.04);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.06);border-radius:6px;cursor:pointer;transition:all .15s ease;font-size:13px;color:#fffc}.user-button:hover{background:rgba(255,255,255,.08);border-color:#ffffff1a}.user-button .user-avatar{width:20px;height:20px;border-radius:50%;object-fit:cover;border:1px solid rgba(255,255,255,.1)}.user-button .user-name{font-weight:500;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-button .dropdown-arrow{font-size:12px;color:#fff9;transition:transform .15s ease}.user-button:hover .dropdown-arrow{transform:translateY(1px)}.user-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:220px;background:#1a1a1a;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:8px;box-shadow:0 4px 16px #0000004d;padding:6px;z-index:1001;animation:dropdownSlideIn .2s ease}.user-dropdown .user-info{padding:12px;border-radius:8px;background:rgba(255,255,255,.05);margin-bottom:8px}.user-dropdown .user-info .user-details .user-display-name{font-size:14px;font-weight:600;color:#fff;margin-bottom:2px}.user-dropdown .user-info .user-details .user-email{font-size:12px;color:#fff9}.user-dropdown .dropdown-divider{height:1px;background:rgba(255,255,255,.1);margin:8px 0}.user-dropdown .dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:transparent;border:none;border-radius:6px;font-size:14px;color:#fffc;cursor:pointer;transition:all .15s ease;text-align:left}.user-dropdown .dropdown-item:hover{background:rgba(255,255,255,.1);color:#fff}.user-dropdown .dropdown-item.danger{color:#ef4444}.user-dropdown .dropdown-item.danger:hover{background:rgba(239,68,68,.1);color:#ef4444}.user-dropdown .dropdown-item .item-icon{font-size:16px;width:16px;text-align:center}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 768px){.dashboard-header{padding:0 16px}.header-actions{gap:8px}.header-actions .action-btn{padding:8px}.header-actions .action-btn span:not(.btn-icon){display:none}.save-status .status-text,.user-name{display:none}}.welcome-back-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .3s ease}.welcome-back-modal{position:relative;background:#fff;border-radius:16px;padding:40px;max-width:480px;width:90%;box-shadow:0 25px 50px -12px #00000040;animation:slideUpFade .4s ease}.welcome-back-modal .modal-close{position:absolute;top:20px;right:20px;width:32px;height:32px;background:#f5f5f5;border:none;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;color:#666;cursor:pointer;transition:all .15s ease}.welcome-back-modal .modal-close:hover{background:#e5e5e5;color:#000}.welcome-back-modal .modal-content{text-align:center}.welcome-back-modal .modal-content .modal-icon{font-size:48px;margin-bottom:20px;animation:bounce .6s ease}.welcome-back-modal .modal-content h2{font-size:28px;font-weight:700;margin:0 0 12px;color:#000;letter-spacing:-.02em}.welcome-back-modal .modal-content p{font-size:16px;color:#666;margin:0 0 24px;line-height:1.5}.prompt-preview{background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;padding:16px;margin:24px 0;text-align:left}.prompt-preview .prompt-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.prompt-preview .prompt-header .prompt-label{font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.05em}.prompt-preview .prompt-header .prompt-time{font-size:12px;color:#999}.prompt-preview .prompt-text{font-size:14px;color:#333;font-style:italic;line-height:1.5;background:#fff;padding:12px 16px;border-radius:8px;border:1px solid #e5e5e5}.modal-actions{display:flex;gap:12px;margin-bottom:20px}.modal-actions .continue-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;height:48px;background:#0070f3;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .15s ease;box-shadow:0 4px 14px #0070f340}.modal-actions .continue-btn:hover{background:#0051cc;transform:translateY(-1px);box-shadow:0 6px 20px #0070f359}.modal-actions .continue-btn:active{transform:translateY(0)}.modal-actions .continue-btn .btn-icon{font-size:18px}.modal-actions .fresh-btn{flex:1;height:48px;background:transparent;color:#666;border:1px solid #e5e5e5;border-radius:8px;font-size:16px;font-weight:500;cursor:pointer;transition:all .15s ease}.modal-actions .fresh-btn:hover{background:#f5f5f5;border-color:#ccc;color:#333}.modal-actions .fresh-btn:active{transform:scale(.98)}.modal-hint{font-size:13px!important;color:#999!important;margin:0!important}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUpFade{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-8px)}60%{transform:translateY(-4px)}}@media (max-width: 480px){.welcome-back-modal{padding:24px;margin:16px}.welcome-back-modal .modal-actions{flex-direction:column}.welcome-back-modal .modal-actions .continue-btn,.welcome-back-modal .modal-actions .fresh-btn{width:100%}}.properties-panel{padding:0;overflow:hidden;display:flex;flex-direction:column;position:relative;transition:all .3s ease;height:100%;background:#111111}.properties-panel::-webkit-scrollbar{width:4px}.properties-panel::-webkit-scrollbar-track{background:transparent}.properties-panel::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:2px}.properties-panel::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.15)}.style-panel{display:flex;flex-direction:column;height:100%;overflow:hidden}.style-panel-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.style-panel-title{font-size:13px;font-weight:600;color:#ffffffe6;text-transform:uppercase;letter-spacing:.05em;margin:0}.style-panel-title .selected-indicator{font-size:11px;font-weight:500;color:#2563eb;text-transform:none;margin-left:6px}.style-panel-toggle{width:24px;height:24px;border:none;background:transparent;color:#ffffff80;border-radius:4px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;font-size:10px}.style-panel-toggle:hover{background:rgba(255,255,255,.08);color:#fffc}.style-panel-toggle .toggle-icon{display:block;transition:transform .2s ease}.style-panel-content{flex:1;overflow-y:auto;overflow-x:hidden;padding:16px;display:flex;flex-direction:column;gap:20px}.style-panel-content::-webkit-scrollbar{width:4px}.style-panel-content::-webkit-scrollbar-track{background:transparent}.style-panel-content::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:2px}.style-panel-content::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.15)}.style-section{display:flex;flex-direction:column;gap:8px}.style-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#ffffff80;margin-bottom:2px}.color-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px}.color-button{width:100%;aspect-ratio:1;border:2px solid transparent;border-radius:4px;cursor:pointer;transition:all .15s ease;position:relative;overflow:hidden}.color-button:after{content:"";position:absolute;inset:0;border-radius:2px;border:1px solid rgba(0,0,0,.2);pointer-events:none}.color-button:hover{transform:scale(1.1);box-shadow:0 2px 8px #0000004d}.color-button:active{transform:scale(1.05)}.color-button.active{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb4d;transform:scale(1.05)}.color-button.active:hover{transform:scale(1.1);box-shadow:0 0 0 2px #2563eb66,0 2px 8px #2563eb4d}.button-group{display:flex;gap:6px;flex-wrap:wrap}.style-button{flex:1;min-width:45px;padding:6px 10px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);color:#ffffffb3;border-radius:4px;cursor:pointer;transition:all .15s ease;font-size:12px;font-weight:500;text-align:center}.style-button:hover{background:rgba(255,255,255,.08);border-color:#ffffff26;color:#ffffffe6}.style-button:active{transform:scale(.98)}.style-button.active{background:#2563eb;border-color:#2563eb;color:#fff}.style-button.active:hover{background:#1d4ed8;border-color:#1d4ed8}.style-slider{width:100%;height:4px;border-radius:2px;background:rgba(255,255,255,.08);outline:none;-webkit-appearance:none;margin:8px 0}.style-slider::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:#2563eb;cursor:pointer;box-shadow:0 1px 3px #0000004d;transition:all .15s ease}.style-slider::-webkit-slider-thumb:hover{transform:scale(1.1);background:#1d4ed8}.style-slider::-moz-range-thumb{width:12px;height:12px;border-radius:50%;background:#2563eb;cursor:pointer;border:none;box-shadow:0 1px 3px #0000004d;transition:all .15s ease}.style-slider::-moz-range-thumb:hover{transform:scale(1.1);background:#1d4ed8}.font-options{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}.font-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:8px 4px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);color:#ffffffb3;border-radius:4px;cursor:pointer;transition:all .15s ease;min-height:48px}.font-button span:first-child{font-size:18px;line-height:1;color:#fffc}.font-button .font-label{font-size:9px;font-weight:500;opacity:.6;text-transform:uppercase;letter-spacing:.03em}.font-button:hover{background:rgba(255,255,255,.08);border-color:#ffffff26}.font-button:hover span:first-child{color:#fff}.font-button:hover .font-label{opacity:.8}.font-button:active{transform:scale(.98)}.font-button.active{background:#2563eb;border-color:#2563eb}.font-button.active span:first-child{color:#fff}.font-button.active .font-label{color:#fff;opacity:.9}.font-button.active:hover{background:#1d4ed8;border-color:#1d4ed8}.text-align-options{display:flex;gap:4px}.align-button{flex:1;padding:8px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);color:#ffffffb3;border-radius:4px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;font-size:14px}.align-button:hover{background:rgba(255,255,255,.08);border-color:#ffffff26;color:#ffffffe6}.align-button:active{transform:scale(.98)}.align-button.active{background:#2563eb;border-color:#2563eb;color:#fff}.align-button.active:hover{background:#1d4ed8;border-color:#1d4ed8}.right-panel.collapsed .style-panel{display:none}.text-cursor-indicator{position:absolute;pointer-events:none;z-index:10;animation:cursorBlink 1s ease-in-out infinite}.text-cursor-indicator:before{content:"";position:absolute;width:2px;height:24px;background:#3b82f6;border-radius:1px;box-shadow:0 0 8px #3b82f699}.text-cursor-indicator:after{content:"Click to add text";position:absolute;top:28px;left:-60px;width:140px;text-align:center;font-size:11px;font-weight:500;color:#374151;background:rgba(255,255,255,.95);padding:4px 8px;border-radius:4px;border:1px solid rgba(59,130,246,.2);white-space:nowrap;opacity:0;animation:fadeInOut 3s ease-in-out infinite;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 2px 8px #0000001a}@keyframes cursorBlink{0%,50%{opacity:1}51%,to{opacity:0}}@keyframes fadeInOut{0%,70%,to{opacity:0}20%,50%{opacity:1}}.text-editor-textarea{position:absolute;z-index:100;background:rgba(255,255,255,.95)!important;border:2px solid #3b82f6!important;border-radius:8px!important;padding:8px 12px!important;color:#1f2937!important;box-shadow:0 0 0 1px #3b82f633,0 4px 16px #00000026,0 0 24px #3b82f633!important;transition:all .2s ease!important;animation:textEditorFadeIn .2s ease-out;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.text-editor-textarea::placeholder{color:#6b728099;font-style:italic}.text-editor-textarea:focus{border-color:#2563eb!important;background:rgba(255,255,255,.98)!important;box-shadow:0 0 0 3px #2563eb26,0 8px 24px #0003,0 0 32px #2563eb40!important}.text-editor-textarea::selection{background:rgba(59,130,246,.2);color:#1f2937}.text-editor-textarea::-webkit-scrollbar{width:4px}.text-editor-textarea::-webkit-scrollbar-track{background:transparent}.text-editor-textarea::-webkit-scrollbar-thumb{background:rgba(107,114,128,.3);border-radius:2px}.text-editor-textarea::-webkit-scrollbar-thumb:hover{background:rgba(107,114,128,.5)}@keyframes textEditorFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.text-selection-box{position:absolute;border:1px dashed rgba(59,130,246,.5);background:rgba(59,130,246,.08);pointer-events:none;animation:dashAnimation .5s linear infinite}@keyframes dashAnimation{to{stroke-dashoffset:-10}}.text-element-hover{position:absolute;border:1px solid rgba(59,130,246,.4);background:rgba(59,130,246,.08);border-radius:4px;pointer-events:none;transition:all .15s ease}.text-element-hover:before{content:"Double-click to edit";position:absolute;bottom:-24px;left:50%;transform:translate(-50%);font-size:10px;color:#374151;background:rgba(255,255,255,.95);padding:2px 6px;border-radius:3px;border:1px solid rgba(59,130,246,.2);white-space:nowrap;opacity:0;transition:opacity .2s ease;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 2px 8px #0000001a}.text-element-hover:hover:before{opacity:1}.text-preview{position:absolute;pointer-events:none;color:#ffffff4d;white-space:pre-wrap;line-height:1.5;z-index:5}* .old-toolbar,* .vertical-toolbar,* .side-toolbar{display:none!important}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:#0a0a0a;color:#fafafa;overflow:hidden;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.loading-container{width:100vw;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#0a0a0a;color:#fff;gap:1rem;position:relative;z-index:1}.loading-container .loading-spinner{font-size:3rem;animation:spin 2s linear infinite;background:linear-gradient(135deg,#7c3aed 0%,#ec4899 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;filter:drop-shadow(0 0 20px rgba(124,58,237,.5))}.loading-container p{font-size:1rem;color:#ffffffb3}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sketchflow-app{width:100vw;height:100vh;background:#0a0a0a;position:relative;display:flex;flex-direction:column}.app-header{height:48px;background:#111111;border-bottom:1px solid rgba(255,255,255,.08);padding:0 16px;display:flex;align-items:center;z-index:100;position:relative}.app-body{display:flex;flex:1;overflow:hidden;position:relative}.app-body .left-toolbar{width:56px;background:#111111;border-right:1px solid rgba(255,255,255,.08);overflow-y:auto;overflow-x:hidden;z-index:50;display:flex;flex-direction:column;position:relative}.app-body .left-toolbar::-webkit-scrollbar{width:4px}.app-body .left-toolbar::-webkit-scrollbar-track{background:transparent}.app-body .left-toolbar::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:2px}.app-body .left-toolbar::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.15)}.app-body .canvas-area{flex:1;display:flex;align-items:center;justify-content:center;position:relative;padding:8px;background:#0a0a0a}.app-body .right-panel{width:280px;background:#111111;border-left:1px solid rgba(255,255,255,.08);transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden;display:flex;flex-direction:column;height:100%}.app-body .right-panel.collapsed{width:0;border-left:none}@keyframes borderGlow{0%,to{opacity:.5}50%{opacity:1}}.toolbar{display:flex;flex-direction:column;align-items:center;padding:8px 0;font-family:-apple-system,BlinkMacSystemFont,Inter,SF Pro Display,sans-serif;width:100%;flex:1}.toolbar .logo{width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;background:#1a1a1a;color:#fff;border-radius:8px;margin-bottom:16px;letter-spacing:-.5px;border:1px solid rgba(255,255,255,.1)}.toolbar .toolbar-section{display:flex;flex-direction:column;align-items:center;gap:2px;width:100%;padding:0 8px;margin-bottom:12px;position:relative}.toolbar .toolbar-section:not(:last-child):after{content:"";position:absolute;bottom:-6px;left:16px;right:16px;height:1px;background:rgba(255,255,255,.06)}.toolbar .toolbar-section-label{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#fff6;margin-bottom:4px}.toolbar .toolbar-left,.toolbar .toolbar-center,.toolbar .toolbar-right{display:none}.toolbar .toolbar-actions{margin-top:auto;padding-bottom:16px}.toolbar .tool-button,.toolbar .action-button{width:40px;height:40px;border:none;background:transparent;color:#ffffff80;border-radius:6px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0;position:relative;font-weight:400}.toolbar .tool-button:hover:not(:disabled),.toolbar .action-button:hover:not(:disabled){background:rgba(255,255,255,.08);color:#ffffffe6}.toolbar .tool-button:active:not(:disabled),.toolbar .action-button:active:not(:disabled){transform:scale(.95)}.toolbar .tool-button.active,.toolbar .action-button.active{background:#2563eb;color:#fff}.toolbar .tool-button.active:hover,.toolbar .action-button.active:hover{background:#1d4ed8}.toolbar .tool-button:disabled,.toolbar .action-button:disabled{opacity:.3;cursor:not-allowed;color:#fff3}.toolbar .tool-button .tool-icon,.toolbar .tool-button .action-icon,.toolbar .action-button .tool-icon,.toolbar .action-button .action-icon{display:block;font-size:16px;line-height:1}.toolbar .tool-button .tool-shortcut,.toolbar .action-button .tool-shortcut{position:absolute;bottom:-1px;right:-1px;font-size:8px;font-weight:600;color:inherit;opacity:.5;background:rgba(0,0,0,.8);color:#fff;padding:1px 3px;border-radius:3px;pointer-events:none}.toolbar .ai-button{background:#7c3aed!important;color:#fff!important}.toolbar .ai-button:hover:not(:disabled){background:#6d28d9!important}.toolbar .ai-button:disabled{background:transparent!important;color:#fff3!important;opacity:.3}.toolbar .mode-button{width:40px;height:28px;padding:0;border:none;background:transparent;border-radius:4px;font-size:11px;font-weight:600;color:#ffffff80;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.toolbar .mode-button .mode-icon{font-size:14px;line-height:1}.toolbar .mode-button:hover:not(:disabled){background:rgba(255,255,255,.08);color:#ffffffe6}.toolbar .mode-button.active{background:rgba(255,255,255,.12);color:#fff}.toolbar .mode-button.active:hover{background:rgba(255,255,255,.16)}.toolbar .action-button.active:not(.ai-button){background:rgba(255,255,255,.12)!important;color:#fff!important}.toolbar .action-button.active:not(.ai-button):hover{background:rgba(255,255,255,.16)!important}.canvas-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#0f0f0f;border:1px solid rgba(255,255,255,.06);border-radius:8px;box-shadow:0 1px 3px #0000001f,0 1px 2px #0000003d;overflow:hidden;margin:0 auto;position:relative}.canvas-container:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.01) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.01) 1px,transparent 1px);background-size:20px 20px;pointer-events:none}.drawing-canvas{width:100%;height:100%;display:block;cursor:crosshair;border-radius:16px;position:relative;z-index:1}@keyframes aiShimmer{0%,to{transform:translate(-50%,-50%) rotate(0)}50%{transform:translate(-50%,-50%) rotate(180deg)}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(255,255,255,.1);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.15)}.zoom-controls{position:absolute;bottom:16px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;background:#1a1a1a;padding:6px 12px;border-radius:8px;border:1px solid rgba(255,255,255,.08);box-shadow:0 2px 8px #0003;z-index:20;animation:slideUpFade .3s ease-out}@keyframes slideUpFade{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}.zoom-controls:hover{box-shadow:0 2px 12px #0000004d}.zoom-controls .zoom-button{width:28px;height:28px;border:none;background:rgba(255,255,255,.08);color:#fffc;border-radius:4px;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:600;position:relative;overflow:hidden}.zoom-controls .zoom-button:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,rgba(255,255,255,.2) 0%,transparent 70%);opacity:0;transition:opacity .3s ease}.zoom-controls .zoom-button:hover{background:rgba(255,255,255,.12);color:#fff}.zoom-controls .zoom-button:hover:before{opacity:1}.zoom-controls .zoom-button:active{transform:scale(.95);transition-duration:.1s}.zoom-controls .zoom-button.reset{width:auto;padding:0 12px;font-size:12px}.zoom-controls .zoom-level{color:#fffc;font-size:12px;font-weight:500;min-width:48px;text-align:center;transition:all .15s ease}.expand-panel-button{position:fixed;right:8px;top:50%;transform:translateY(-50%);width:32px;height:64px;background:#1a1a1a;border:1px solid rgba(255,255,255,.08);border-radius:8px 0 0 8px;border-right:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:49}.expand-panel-button .expand-icon{font-size:12px;color:#ffffff80;transition:all .2s ease}.expand-panel-button:hover{background:#1f1f1f;width:36px}.expand-panel-button:hover .expand-icon{color:#fffc;transform:translate(-2px)}.expand-panel-button:active{transform:translateY(-50%) scale(.95)}.notification{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:rgba(17,17,17,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px 20px;display:flex;align-items:center;gap:16px;box-shadow:0 4px 24px #00000080;z-index:1000;animation:slideUp .3s ease-out}@keyframes slideUp{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}.notification .notification-message{color:#e5e7ebe6;font-size:14px;font-weight:500}.notification .notification-action{background:linear-gradient(135deg,#7c3aed 0%,#6d28d9 100%);color:#fff;border:none;padding:6px 16px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.notification .notification-action:hover{background:linear-gradient(135deg,#8b5cf6 0%,#7c3aed 100%);transform:translateY(-1px);box-shadow:0 4px 12px #7c3aed4d}.notification .notification-action:active{transform:translateY(0)}.save-status{position:absolute;bottom:20px;right:20px;display:flex;align-items:center;gap:6px;background:rgba(17,17,17,.9);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:6px 12px;border-radius:16px;border:1px solid rgba(255,255,255,.08);box-shadow:0 2px 16px #0006;pointer-events:none;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.save-status .save-icon{font-size:14px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.8}50%{opacity:1}}.save-status .save-text{color:#fffc;font-size:12px;font-weight:500}.snap-indicators{position:absolute;top:20px;right:20px;display:flex;flex-direction:column;gap:8px;pointer-events:none}.snap-indicators .indicator{display:flex;align-items:center;gap:6px;background:rgba(17,17,17,.9);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:6px 12px;border-radius:16px;border:1px solid rgba(255,255,255,.08);box-shadow:0 2px 16px #0006;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translate(10px)}to{opacity:1;transform:translate(0)}}.snap-indicators .indicator .indicator-icon{font-size:14px}.snap-indicators .indicator .indicator-text{color:#fffc;font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.snap-indicators .indicator.grid-indicator .indicator-icon{color:#22d3ee;filter:drop-shadow(0 0 4px #22d3ee)}.snap-indicators .indicator.snap-indicator .indicator-icon{color:#f472b6;filter:drop-shadow(0 0 4px #f472b6)}.snap-indicators .indicator.laser-indicator{background:rgba(255,50,50,.2);border:1px solid rgba(255,50,50,.3);animation:laserPulse 1.5s ease-in-out infinite}.snap-indicators .indicator.laser-indicator .indicator-icon{color:#f33;animation:laserGlow 1.5s ease-in-out infinite}.snap-indicators .indicator.laser-indicator .indicator-text{color:#f66}@keyframes laserPulse{0%,to{background:rgba(255,50,50,.2);box-shadow:0 2px 8px #0003}50%{background:rgba(255,50,50,.3);box-shadow:0 2px 16px #ff323280}}@keyframes laserGlow{0%,to{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.2);filter:brightness(1.5)}}
