.mode-selector-fixed-bar{position:fixed;top:0;left:0;width:100vw;z-index:1000;background:rgba(10,10,15,.98);border-bottom:1px solid rgba(255,255,255,.12);box-shadow:0 2px 8px rgba(0,0,0,.12);padding:10px 0}.mode-selector-fixed-bar .second-layer-container{display:flex;justify-content:center;align-items:center;gap:20px}.mode-selector-second-layer{position:fixed;top:0;left:350px;right:0;width:calc(100vw - 350px);z-index:10001;box-shadow:none;padding:15px 25px 18px;transition:all .3s cubic-bezier(.4,0,.2,1);animation:slideDown .4s cubic-bezier(.4,0,.2,1)}.mode-selector-second-layer,.mode-selector-second-layer.tool-selected{background:transparent;border-bottom:none}.app-container.panel-collapsed .mode-selector-second-layer{left:60px;width:calc(100vw - 60px)}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.second-layer-container{width:100%}.second-layer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:10px;border-bottom:1px solid #3a3a3a}.second-layer-header h3{color:#ffffff;font-family:Poppins,sans-serif;font-size:18px;font-weight:600;margin:0}.close-button{background:none;color:#a0a0c0;font-size:18px;padding:5px;border-radius:4px;transition:color .2s ease}.close-button:hover{color:#e0e0e0}.close-mode-selector-button{background:none;border:none;color:#666;font-size:14px;cursor:pointer;padding:4px 6px;border-radius:4px;transition:all .2s ease;opacity:.7}.close-mode-selector-button:hover{color:#ffffff;background:rgba(255,255,255,.1);opacity:1}.second-layer-categories{gap:.00001em;flex-wrap:nowrap;overflow-x:auto;width:100%;margin-right:-.5px}.second-category-button,.second-layer-categories{display:flex;justify-content:center;align-items:center}.second-category-button{flex-direction:column;padding:12px 16px;background:transparent;border:none;border-radius:0;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);color:#ffffff;font-family:Poppins,sans-serif;min-width:100px;position:relative}.second-category-button:hover{background:transparent;transform:translateY(-2px)}.category-icon-large,.second-category-button.active{background:transparent;box-shadow:none}.category-icon-large{width:120px;height:120px;border-radius:0;margin-bottom:6px;display:flex;align-items:center;justify-content:center;font-size:20px;overflow:hidden;border:none}.category-icon-large,.category-logo{transition:all .4s cubic-bezier(.4,0,.2,1)}.category-logo{width:100%;height:100%;object-fit:contain;filter:brightness(1.1) contrast(1.1)}.category-icon-large.define-icon,.category-icon-large.detail-icon,.category-icon-large.develop-icon,.category-icon-large.discover-icon,.category-icon-large.imagine-icon,.category-icon-large.present-icon,.category-icon-large.sketch-icon,.category-icon-large.visualize-icon{background:transparent}.second-category-button:hover .category-icon-large{transform:translateY(-2px) scale(1.05);box-shadow:0 4px 20px rgba(100,108,255,.3);filter:brightness(1.2) contrast(1.1)}.second-category-button:hover .category-name{color:#646cff;font-weight:100!important;opacity:1}.second-category-button.dimmed{opacity:.6;transition:all .4s ease}.second-category-button.dimmed:hover{opacity:.85;transform:translateY(-1px)}.second-category-button.dimmed .category-icon-large{filter:brightness(.65) contrast(.85) grayscale(.3);transition:all .4s ease}.second-category-button.dimmed .category-name{opacity:.7;transition:all .4s ease;color:#b0b0b0;font-weight:100!important}.second-category-button.active{opacity:1;transform:translateY(-2px)}.second-category-button.active .category-icon-large{filter:brightness(1.3) contrast(1.15) saturate(1.1);transform:scale(1.08);box-shadow:0 6px 25px rgba(100,108,255,.35)}.second-category-button.active .category-name{opacity:1;color:#646cff;font-weight:600!important}.category-name{font-size:13px;font-weight:400!important;font-style:normal;text-transform:capitalize;letter-spacing:.5px;opacity:1;margin-top:4px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#e0e0e0;visibility:visible;display:block}.mode-selector-third-layer-overlay{position:fixed;top:160px;left:350px;right:0;bottom:0;background:rgba(0,0,0,.4);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px}.app-container.panel-collapsed .mode-selector-third-layer-overlay{left:60px}.third-layer-modal{background:#0f0f13;border:1px solid #2a2a3a;border-radius:16px;max-width:1400px;width:90%;max-height:calc(100vh - 200px);height:auto;overflow:hidden;box-shadow:0 8px 32px rgba(0,0,0,.5);animation:modalSlideIn .3s cubic-bezier(.4,0,.2,1)}@keyframes modalSlideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}.third-layer-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:1px solid #2a2a3a;background:#1e1e2a}.third-layer-header h3{color:#e0e0e0;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:18px;font-weight:600;margin:0}.third-layer-content{padding:25px 0;max-height:calc(100vh - 280px);overflow-y:auto;display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.third-layer-content::-webkit-scrollbar{width:6px}.third-layer-content::-webkit-scrollbar-track{background:#1a1a24}.third-layer-content::-webkit-scrollbar-thumb{background-color:#3a3a4a;border-radius:3px}.third-layer-content::-webkit-scrollbar-thumb:hover{background-color:#4a4a5a}.selected-tool-preview{display:flex;gap:20px;padding:20px;margin:0 25px 25px;background:rgba(100,108,255,.05);border:2px solid rgba(100,108,255,.2);border-radius:12px;align-items:flex-start;box-shadow:0 4px 16px rgba(100,108,255,.1);animation:fadeIn .3s ease-in-out}.preview-image-container{flex-shrink:0;width:280px;height:280px;border-radius:8px;background:#222;overflow:hidden;display:flex;align-items:center;justify-content:center}.selected-tool-preview-image{width:100%;height:100%;object-fit:contain;display:block}.preview-info{flex:1;display:flex;flex-direction:column;gap:12px;min-width:0;padding-top:8px}.preview-tool-name{color:#e0e0e0;font-size:24px;font-weight:600;margin:0;line-height:1.3}.preview-tool-description{color:#a0a0c0;font-size:15px;line-height:1.6;margin:0}.error-state,.loading-state,.no-tools-state{text-align:center;padding:40px 20px;color:#a0a0c0;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif}.error-state{color:#ff6b6b}.tools-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;max-width:none;padding:0 20px}.tool-card,.tools-grid{width:100%;box-sizing:border-box;align-items:stretch}.tool-card{background:#1a1a24;border:1px solid #2a2a3a;border-radius:12px;padding:16px;cursor:pointer;transition:all .3s ease;text-align:center;min-height:420px;min-width:0;display:flex;flex-direction:column;justify-content:flex-start;overflow:hidden;position:relative}.tool-card.cost-free{border-color:#4ade80;border-width:3px}.tool-card.cost-bronze{border-color:#cd7f32;border-width:3px}.tool-card.cost-silver{border-color:#c0c0c0;border-width:3px}.tool-card.cost-gold{border-color:#ffd700;border-width:3px}.tool-card.cost-plantium,.tool-card.cost-platinum{border-color:#e5e4e2;border-width:3px}.tool-card:hover{background:#1e1e2a;border-color:#646cff;transform:translateY(-2px);box-shadow:0 8px 32px rgba(100,108,255,.2)}.tool-card.cost-free:hover{border-color:#4ade80;box-shadow:0 8px 32px rgba(74,222,128,.3)}.tool-card.cost-bronze:hover{border-color:#cd7f32;box-shadow:0 8px 32px rgba(205,127,50,.3)}.tool-card.cost-silver:hover{border-color:#c0c0c0;box-shadow:0 8px 32px rgba(192,192,192,.3)}.tool-card.cost-gold:hover{border-color:#ffd700;box-shadow:0 8px 32px rgba(255,215,0,.3)}.tool-card.cost-plantium:hover,.tool-card.cost-platinum:hover{border-color:#e5e4e2;box-shadow:0 8px 32px rgba(229,228,226,.3)}.tool-card.disabled{opacity:.4!important;filter:blur(1px) grayscale(50%)!important;cursor:not-allowed!important;pointer-events:none!important;transform:scale(.98)!important}.tool-card.disabled:hover{transform:scale(.98)!important;box-shadow:none!important;border-color:inherit!important}.disabled-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.2);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:15;border-radius:inherit}.disabled-text{background:rgba(255,255,255,.9);padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.tool-icon{display:none}.tool-title{color:#e0e0e0;font-size:16px;font-weight:600;margin:0 0 8px;padding:0;flex-shrink:0}.tool-description{color:#a0a0c0;font-size:13px;margin:0 0 12px;padding:0;flex-grow:0;flex-shrink:1;min-height:54px;max-height:54px;display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.tool-preview-image-wrapper{width:100%;padding:0;margin:0 0 auto;box-sizing:border-box;flex-shrink:0}.tool-preview-image{width:100%!important;max-height:240px!important;object-fit:contain!important;margin:0!important;border-radius:8px!important;background:#222!important;display:block}.tool-agent-mode{display:flex;align-items:center;justify-content:center;gap:6px;flex-shrink:0;padding:8px 12px;margin:12px 0 0;background:rgba(100,108,255,.1);border-radius:6px;border:1px solid rgba(100,108,255,.3);transition:all .3s ease}.mode-label{color:#a0a0c0;font-size:10px;font-weight:400}.mode-value{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;transition:all .3s ease}.click-hint{font-size:10px;opacity:.7;transition:all .3s ease}.mode-value.mode-aichitect{color:#4a9eff}.mode-value.mode-artifex{color:#ff6b6b}.mode-value.mode-modifai{color:#4ecdc4}.mode-value.mode-weaveo{color:#ffb347}.mode-value.mode-mass{color:#9b59b6}.tool-card:hover .tool-agent-mode{background:rgba(100,108,255,.2);border-color:rgba(100,108,255,.5);transform:scale(1.05)}.tool-card:hover .click-hint{opacity:1;transform:rotate(180deg)}@media (max-width:768px){.mode-selector-second-layer{min-width:auto;width:95vw;padding:12px 15px 15px}.selected-tool-preview{flex-direction:column;align-items:center;margin:0 10px 20px;padding:15px}.preview-image-container{width:100%;max-width:280px;height:auto;aspect-ratio:1}.preview-info{padding-top:0;text-align:center}.preview-tool-name{font-size:20px}.preview-tool-description{font-size:14px}.second-layer-categories{gap:8px;flex-wrap:wrap;justify-content:center}.second-category-button{min-width:80px;padding:8px 12px}.category-icon-large{width:60px;height:60px;font-size:16px}.category-logo{width:100%;height:100%;object-fit:contain}.category-name{font-size:6px;color:#e0e0e0;font-weight:100!important}.chat-container.mode-selector-active{padding-top:75px}.mode-selector-third-layer-overlay{top:100px;left:0;padding:10px}.third-layer-modal{width:95%;max-height:calc(100vh - 120px)}.tool-icon{display:flex;align-items:center;justify-content:center;width:320px;height:320px;margin:0 auto 24px}.tool-icon img{width:320px!important;height:320px!important;object-fit:contain;border-radius:32px;display:block;margin:0 auto}}.mask-editor-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0,0,0,.85);display:flex;align-items:center;justify-content:center;z-index:10000;backdrop-filter:blur(4px)}.mask-editor-modal{background:#1a1a24;border-radius:16px;box-shadow:0 8px 32px rgba(0,0,0,.5);max-width:95vw;max-height:65vh;width:auto;display:flex;flex-direction:column;border:2px solid #2a2a3a;overflow:hidden;position:relative}.mask-editor-header{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-bottom:1px solid #2a2a3a;flex-shrink:0;position:relative;z-index:1}.mask-editor-header h2{margin:0;font-size:1.1rem;font-weight:600;color:#ffffff}.mask-editor-header .btn-secondary{padding:6px 12px;font-size:.85rem;background:#2a2a3a;color:#ccc;border:1px solid #3a3a4a;border-radius:6px;cursor:pointer;transition:all .2s}.mask-editor-header .btn-secondary:hover{background:#3a3a4a;color:white;transform:translateY(-1px)}.close-button{background:transparent;border:none;color:#888;font-size:2rem;cursor:pointer;line-height:1;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s;position:relative;z-index:1}.close-button:hover{background:rgba(255,255,255,.1);color:#fff}.mask-editor-content{padding:12px;display:flex;flex-direction:row;gap:12px;overflow:hidden;flex:1;min-height:0}.draw-controls{gap:12px;flex-shrink:0}.draw-controls,.tool-icons-grid{display:flex;flex-direction:column}.tool-icons-grid{gap:16px}.tool-icon-section{display:flex;flex-direction:column;gap:8px}.tool-section-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#888;padding:0 4px}.tool-icons-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(42px,1fr));gap:6px}.tool-icon-btn{width:100%;aspect-ratio:1;min-width:42px;min-height:42px;padding:8px;background:linear-gradient(135deg,#2a2a3a,#1f1f2a);border:1.5px solid #3a3a4a;border-radius:10px;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.tool-icon-btn:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(100,108,255,.1),transparent);opacity:0;transition:opacity .25s ease}.tool-icon-btn:hover:before{opacity:1}.tool-icon-btn svg{width:20px;height:20px;color:#aaa;transition:all .25s ease;position:relative;z-index:1}.tool-icon-btn:hover{background:linear-gradient(135deg,#3a3a4a,#2a2a3a);border-color:#646cff;transform:translateY(-2px);box-shadow:0 4px 12px rgba(100,108,255,.2)}.tool-icon-btn:hover svg{color:#fff;transform:scale(1.1)}.tool-icon-btn:active{transform:translateY(0);box-shadow:0 2px 6px rgba(100,108,255,.3)}.tool-icon-btn.active{background:linear-gradient(135deg,#646cff,#535bf2);border-color:#747bff;box-shadow:0 4px 16px rgba(100,108,255,.4),inset 0 1px 0 rgba(255,255,255,.1)}.tool-icon-btn.active:before{opacity:0}.tool-icon-btn.active svg{color:#fff;transform:scale(1.05);filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.tool-icon-btn.active:hover{background:linear-gradient(135deg,#747bff,#646cff);transform:translateY(-2px)}.tool-icon-btn[title*=Bezier] svg circle[fill=none]{stroke:currentColor}.draw-controls .control-group{display:flex;flex-direction:column;gap:6px}.draw-controls label{color:#ccc;font-size:.85rem;font-weight:600}.draw-controls input[type=color],.draw-controls select{width:100%;padding:8px;background:#1a1a24;border:1px solid #2a2a3a;border-radius:6px;color:white;font-size:.9rem;cursor:pointer}.draw-controls select{cursor:pointer}.draw-controls input[type=color]:focus,.draw-controls select:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 2px rgba(100,108,255,.2)}.draw-controls optgroup{background:#1a1a24;color:#888;font-weight:700;font-size:.8rem}.draw-controls option{background:#1a1a24;color:white;padding:6px}.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;padding:8px;background:rgba(100,108,255,.1);border:1px solid rgba(100,108,255,.3);border-radius:6px;transition:all .2s}.checkbox-label:hover{background:rgba(100,108,255,.15);border-color:rgba(100,108,255,.4)}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#646cff}.checkbox-label span{color:#ccc;font-size:.9rem;font-weight:500}.button-group-horizontal{display:flex;gap:6px}.button-group-horizontal button{padding:8px 12px;font-size:.85rem}.button-group-horizontal button:disabled{opacity:.4;cursor:not-allowed}.mask-editor-sidebar{display:flex;flex-direction:column;gap:10px;padding:12px;background:#0f0f15;border-radius:12px;border:1px solid #2a2a3a;overflow-y:auto;overflow-x:hidden;flex-shrink:0;position:relative;z-index:10}.left-sidebar{width:240px}.right-sidebar{width:200px}.mask-editor-main{flex:1;display:flex;flex-direction:column;gap:10px;min-width:0;overflow:hidden;position:relative;z-index:5}.sidebar-title{margin:0 0 6px;font-size:.85rem;font-weight:600;color:#aaa;text-transform:uppercase;letter-spacing:.5px}.mode-selector{display:flex;flex-direction:column;gap:6px;flex-shrink:0}.mode-button{padding:8px 14px;border-radius:8px;font-size:.85rem;font-weight:600;border:2px solid #2a2a3a;cursor:pointer;transition:all .2s;background:#1a1a24;color:#ccc;text-align:center}.mode-button:hover{background:#2a2a3a;color:white;border-color:#3a3a4a}.mode-button.active{background:#646cff;color:white;border-color:#646cff;box-shadow:0 4px 12px rgba(100,108,255,.3)}.mode-description{text-align:center;color:#aaa;font-size:.8rem;padding:8px;background:rgba(255,255,255,.05);border-radius:6px;flex-shrink:0;line-height:1.3}.mode-description p{margin:0}.tool-info-panel{background:rgba(255,255,255,.05);border-radius:8px;padding:12px;margin-top:12px;border:1px solid rgba(255,255,255,.1);flex-shrink:0}.tool-info-panel .sidebar-title{margin:0 0 12px;font-size:.85rem;color:#888;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.tool-info-content{display:flex;gap:12px;align-items:flex-start}.tool-info-icon{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;padding:8px;box-shadow:0 4px 12px rgba(102,126,234,.3)}.tool-info-icon svg{width:100%;height:100%;color:white;stroke-width:2}.tool-info-details{flex:1;min-width:0}.tool-info-name{margin:0 0 6px;font-size:1rem;color:#fff;font-weight:600}.tool-info-description{margin:0 0 8px;font-size:.85rem;color:#bbb;line-height:1.4}.tool-info-tips{margin:0;font-size:.8rem;color:#88d498;background:rgba(136,212,152,.1);padding:6px 8px;border-radius:4px;border-left:2px solid #88d498;line-height:1.4}.expansion-controls{display:flex;flex-direction:column;gap:8px;flex-shrink:0}.expansion-control{display:flex;flex-direction:column;gap:4px}.expansion-inputs{display:flex;align-items:center;gap:4px}.expansion-label{color:#aaa;font-size:.85rem;font-weight:600;min-width:50px}.expansion-control input[type=number]{flex:1;padding:6px 8px;background:#1a1a24;border:1px solid #2a2a3a;border-radius:6px;color:white;font-size:.9rem;text-align:center}.expansion-control input[type=number]:focus{outline:none;border-color:#646cff;box-shadow:0 0 0 2px rgba(100,108,255,.2)}.expand-button{width:32px;height:32px;border-radius:6px;background:#2a2a3a;border:1px solid #3a3a4a;color:white;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;flex-shrink:0}.expand-button:hover{background:#646cff;border-color:#646cff;transform:scale(1.05)}.expand-button:active{transform:scale(.95)}.apply-expansion-button{padding:10px 16px;background:#646cff;border:none;border-radius:8px;color:white;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s;margin-top:4px}.apply-expansion-button:hover{background:#747bff;transform:translateY(-1px);box-shadow:0 4px 12px rgba(100,108,255,.4)}.canvas-wrapper{width:100%;flex-direction:column;gap:12px}.canvas-wrapper,.zoom-controls{display:flex;align-items:center}.zoom-controls{gap:6px;padding:6px 12px;background:#1a1a24;border-radius:8px;border:1px solid #2a2a3a;position:relative;z-index:10}.zoom-button{width:32px;height:32px;border-radius:6px;background:#2a2a3a;border:1px solid #3a3a4a;color:white;font-size:.95rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.zoom-button:hover{background:#646cff;border-color:#646cff;transform:scale(1.05)}.zoom-button:active{transform:scale(.95)}.zoom-level{color:#aaa;font-size:.85rem;font-weight:600;min-width:45px;text-align:center}.canvas-container{display:flex;justify-content:center;align-items:center;background:#0f0f15;border-radius:12px;padding:10px;border:2px solid #2a2a3a;overflow:auto;position:relative;flex:1;min-height:0}.display-canvas{cursor:crosshair;border-radius:8px;box-shadow:0 4px 16px rgba(0,0,0,.3)}.display-canvas.bezier-mode{cursor:pointer}.display-canvas.outpaint-mode{cursor:default}.mask-canvas{display:none}.mask-editor-controls{display:flex;flex-direction:column;gap:12px;flex-shrink:0}.info-message{padding:10px;background:rgba(100,108,255,.1);border:1px solid rgba(100,108,255,.3);border-radius:8px;flex-shrink:0}.info-title{color:#646cff;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.info-value{color:#fff;font-size:.9rem;font-weight:600;margin-bottom:3px}.info-detail{color:#aaa;font-size:.75rem}.mask-editor-sidebar .action-buttons{margin-top:auto;position:relative}.control-group,.mask-editor-sidebar .action-buttons{display:flex;flex-direction:column;gap:8px}.control-group label{color:#ccc;font-size:.9rem;font-weight:500}.control-group input[type=range]{width:100%;height:8px;border-radius:4px;background:#2a2a3a;outline:none;-webkit-appearance:none;appearance:none}.control-group input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#646cff;cursor:pointer;transition:all .2s}.control-group input[type=range]::-webkit-slider-thumb:hover{background:#747bff;transform:scale(1.1)}.control-group input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#646cff;cursor:pointer;border:none;transition:all .2s}.control-group input[type=range]::-moz-range-thumb:hover{background:#747bff;transform:scale(1.1)}.button-group{display:flex;gap:12px;justify-content:flex-end}.mask-editor-sidebar .btn-primary,.mask-editor-sidebar .btn-secondary{padding:9px 14px;border-radius:8px;font-size:.9rem;font-weight:600;border:none;cursor:pointer;transition:all .2s;width:100%;text-align:center;position:relative}.mask-editor-sidebar .btn-primary{background:#646cff;color:white}.mask-editor-sidebar .btn-primary:hover:not(:disabled){background:#747bff;transform:translateY(-1px);box-shadow:0 4px 12px rgba(100,108,255,.4)}.mask-editor-sidebar .btn-primary:disabled{background:#444;color:#888;cursor:not-allowed}.mask-editor-sidebar .btn-secondary{background:#2a2a3a;color:#ccc;border:1px solid #3a3a4a}.mask-editor-sidebar .btn-secondary:hover{background:#3a3a4a;color:white;transform:translateY(-1px)}.custom-tool-modal-overlay{position:fixed;top:100px;left:0;right:0;bottom:0;background:transparent;z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;pointer-events:none}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.custom-tool-modal-container{background:#0f0f13;border:1px solid rgba(100,108,255,.3);border-radius:16px;width:90%;height:90vh;max-width:1600px;max-height:1100px;display:flex;flex-direction:column;box-shadow:0 8px 32px rgba(0,0,0,.5);animation:slideUp .3s ease;overflow:hidden;pointer-events:auto}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.custom-tool-modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:rgba(24,24,28,.95);border-bottom:1px solid rgba(100,108,255,.2);flex-shrink:0}.custom-tool-modal-header h2{margin:0;color:#ededed;font-size:20px;font-weight:600;font-family:Montserrat,Poppins,sans-serif}.custom-tool-modal-close{background:rgba(255,59,48,.1);border:1px solid rgba(255,59,48,.3);color:#ff3b30;width:36px;height:36px;border-radius:50%;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.custom-tool-modal-close:hover{background:rgba(255,59,48,.2);border-color:rgba(255,59,48,.5);transform:scale(1.1)}.custom-tool-modal-close:active{transform:scale(.95)}.custom-tool-modal-content{flex:1;overflow:auto;position:relative;scrollbar-width:thin;scrollbar-color:rgba(100,108,255,.5) rgba(24,24,28,.5)}.custom-tool-modal-content::-webkit-scrollbar{width:12px}.custom-tool-modal-content::-webkit-scrollbar-track{background:rgba(24,24,28,.5);border-radius:6px}.custom-tool-modal-content::-webkit-scrollbar-thumb{background:rgba(100,108,255,.5);border-radius:6px;border:2px solid rgba(24,24,28,.5)}.custom-tool-modal-content::-webkit-scrollbar-thumb:hover{background:rgba(100,108,255,.7)}.custom-tool-iframe{width:100%;min-height:100%;height:auto;border:none;background:#0f0f13;display:block}@media (max-width:768px){.custom-tool-modal-overlay{top:80px;padding:10px}.custom-tool-modal-container{width:95%;height:85vh;max-height:850px;border-radius:12px}.custom-tool-modal-header{padding:12px 16px}.custom-tool-modal-header h2{font-size:18px}}.gh-control-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:10000;backdrop-filter:blur(4px)}.gh-control-container{background:#1a1a24;border-radius:12px;width:90%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 8px 32px rgba(0,0,0,.4);border:1px solid #2a2a3a}.gh-control-header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 24px;border-bottom:1px solid #2a2a3a;background:#1e1e2e;border-radius:12px 12px 0 0}.gh-control-header h2{margin:0;font-size:18px;font-weight:600;color:#e0e0e0}.gh-filename{margin:4px 0 0;font-size:12px;color:#8a8a9e;font-family:monospace}.gh-control-close{background:transparent;border:none;color:#8a8a9e;font-size:24px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.gh-control-close:hover{background:rgba(255,255,255,.1);color:#e0e0e0}.gh-control-content{flex:1;overflow-y:auto;padding:20px 24px;min-height:200px}.gh-control-empty,.gh-control-error,.gh-control-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;color:#8a8a9e;text-align:center}.loading-spinner{width:40px;height:40px;border:3px solid #2a2a3a;border-top-color:#646cff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}@keyframes spin{to{transform:rotate(1turn)}}.gh-control-error p{margin:8px 0;color:#ff6b6b}.error-hint{font-size:12px;color:#8a8a9e}.gh-control-error code{display:inline-block;margin-top:8px;padding:8px 12px;background:#0d0d14;border:1px solid #2a2a3a;border-radius:6px;font-size:11px;color:#646cff;font-family:monospace}.gh-params-list{display:flex;flex-direction:column;gap:20px}.gh-param-item{background:#0d0d14;border:1px solid #2a2a3a;border-radius:8px;padding:16px;transition:all .2s ease}.gh-param-item:hover{border-color:#3a3a4a;background:#12121c}.param-header{justify-content:space-between;margin-bottom:12px}.param-header,.param-label{display:flex;align-items:center}.param-label{font-size:13px;font-weight:600;color:#b0b0c0;font-family:monospace;gap:8px}.param-type-badge{font-size:9px;font-weight:700;color:#646cff;background:rgba(100,108,255,.15);padding:2px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.param-value{font-size:14px;font-weight:700;color:#646cff;font-family:monospace;padding:4px 10px;background:rgba(100,108,255,.1);border-radius:6px;min-width:50px;text-align:center}.param-slider-container{display:flex;align-items:center;gap:12px}.param-max,.param-min{font-size:11px;color:#6a6a7e;font-family:monospace;min-width:40px;text-align:center}.param-slider{flex:1;-webkit-appearance:none;appearance:none;height:6px;background:#2a2a3a;border-radius:3px;outline:none;transition:all .2s ease}.param-slider:hover{background:#3a3a4a}.param-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;background:#646cff;border-radius:50%;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px rgba(100,108,255,.4)}.param-slider::-webkit-slider-thumb:hover{background:#535bf2;transform:scale(1.1);box-shadow:0 2px 12px rgba(100,108,255,.6)}.param-slider::-moz-range-thumb{width:18px;height:18px;background:#646cff;border-radius:50%;cursor:pointer;border:none;transition:all .2s ease;box-shadow:0 2px 8px rgba(100,108,255,.4)}.param-slider::-moz-range-thumb:hover{background:#535bf2;transform:scale(1.1);box-shadow:0 2px 12px rgba(100,108,255,.6)}.gh-control-footer{justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid #2a2a3a;background:#1e1e2e;border-radius:0 0 12px 12px}.gh-control-footer,.gh-control-footer-right{display:flex;gap:12px}.gh-control-cancel,.gh-control-reset,.gh-control-send{padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:none}.gh-control-reset{background:transparent;color:#ff9966;border:1px solid #ff9966}.gh-control-reset:hover{background:rgba(255,153,102,.1);color:#ffaa77;border-color:#ffaa77;transform:translateY(-1px)}.gh-control-cancel{background:transparent;color:#8a8a9e;border:1px solid #2a2a3a}.gh-control-cancel:hover{background:rgba(255,255,255,.05);color:#b0b0c0;border-color:#3a3a4a}.gh-control-send{background:#646cff;color:white;border:1px solid #646cff}.gh-control-send:hover{background:#535bf2;border-color:#535bf2;transform:translateY(-1px);box-shadow:0 4px 12px rgba(100,108,255,.4)}.gh-control-send:active{transform:translateY(0)}.gh-control-content::-webkit-scrollbar{width:8px}.gh-control-content::-webkit-scrollbar-track{background:#1a1a24}.gh-control-content::-webkit-scrollbar-thumb{background:#3a3a4a;border-radius:4px}.gh-control-content::-webkit-scrollbar-thumb:hover{background:#4a4a5a}@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700;800&display=swap");@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap");.room-category-container{padding:2rem;background:linear-gradient(135deg,#1a1a20,#2d2d35 50%,#3a3a45);min-height:100vh;font-family:Poppins,sans-serif;color:#c0c0c0}.room-category-header{text-align:center;margin-bottom:3rem}.room-category-header h2{font-family:Montserrat,sans-serif;font-size:2.5rem;font-weight:700;color:#ffffff;margin-bottom:1rem;text-shadow:0 2px 10px rgba(0,0,0,.5)}.stats-summary{font-size:1rem;color:#a8a8a8;font-weight:400}.room-category-error,.room-category-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;text-align:center}.error-message,.loading-spinner{font-size:1.5rem;font-weight:600;margin-bottom:1rem}.error-suggestion,.loading-details{font-size:1rem;color:#a8a8a8}.error-message{color:#ff6b6b}.room-categories-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;margin-bottom:3rem}.room-category-card{background:rgba(45,45,55,.9);border:2px solid rgba(80,80,90,.3);border-radius:1.5rem;padding:2rem;cursor:pointer;transition:all .4s cubic-bezier(.175,.885,.32,1.275);text-align:center;position:relative;overflow:hidden;backdrop-filter:blur(10px);box-shadow:0 10px 25px rgba(0,0,0,.3)}.room-category-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,var(--category-color,#4a9eff),transparent);opacity:0;transition:opacity .4s ease}.room-category-card:hover{transform:translateY(-8px) scale(1.03);border-color:var(--category-color,#4a9eff);box-shadow:0 20px 40px rgba(0,0,0,.6),0 0 0 1px var(--category-color,#4a9eff)}.room-category-card:hover:before{opacity:.1}.room-category-card.selected{border-color:var(--category-color,#4a9eff);box-shadow:0 15px 35px rgba(0,0,0,.5),0 0 0 2px var(--category-color,#4a9eff);transform:translateY(-4px)}.room-category-card.selected:before{opacity:.2}.category-icon{font-size:3rem;margin-bottom:1rem;position:relative;z-index:2}.category-name{font-family:Montserrat,sans-serif;font-size:1.8rem;font-weight:700;color:#ffffff;margin-bottom:.5rem;position:relative;z-index:2}.category-description{font-size:1rem;color:#c0c0c0;margin-bottom:1rem;position:relative;z-index:2}.category-tool-count{font-size:.9rem;color:var(--category-color,#4a9eff);font-weight:600;position:relative;z-index:2}.function-modes-section{margin-bottom:3rem}.function-modes-section h3{font-family:Montserrat,sans-serif;font-size:2rem;font-weight:600;color:#ffffff;text-align:center;margin-bottom:2rem}.function-modes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.function-mode-card{background:rgba(45,45,55,.8);border:2px solid rgba(80,80,90,.3);border-radius:1rem;padding:1.5rem;cursor:pointer;transition:all .3s ease;text-align:center;position:relative;backdrop-filter:blur(5px);box-shadow:0 5px 15px rgba(0,0,0,.2)}.function-mode-card:hover:not(.disabled){transform:translateY(-4px);border-color:#4a9eff;box-shadow:0 10px 25px rgba(0,0,0,.4)}.function-mode-card.selected{border-color:#4a9eff;background:rgba(74,158,255,.1);box-shadow:0 8px 20px rgba(74,158,255,.3)}.function-mode-card.disabled{opacity:.5;cursor:not-allowed}.mode-icon{font-size:2rem;margin-bottom:.5rem}.mode-name{font-family:Montserrat,sans-serif;font-size:1.3rem;font-weight:600;color:#ffffff;margin-bottom:.5rem}.mode-description{font-size:.9rem;color:#a8a8a8;margin-bottom:.5rem;line-height:1.4}.mode-tool-count{font-size:.8rem;color:#4a9eff;font-weight:500}.individual-tools-section{margin-bottom:2rem}.individual-tools-section h3{font-family:Montserrat,sans-serif;font-size:1.8rem;font-weight:600;color:#ffffff;text-align:center;margin-bottom:2rem}.individual-tools-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.individual-tool-card{background:rgba(45,45,55,.9);border:2px solid rgba(80,80,90,.3);border-radius:1rem;padding:1.5rem;cursor:pointer;transition:all .3s ease;position:relative;backdrop-filter:blur(10px);box-shadow:0 5px 15px rgba(0,0,0,.2);overflow:hidden}.individual-tool-card.cost-free{border-color:#4ade80;border-width:3px}.individual-tool-card.cost-bronze{border-color:#cd7f32;border-width:3px}.individual-tool-card.cost-silver{border-color:#c0c0c0;border-width:3px}.individual-tool-card.cost-gold{border-color:#ffd700;border-width:3px}.individual-tool-card.cost-plantium,.individual-tool-card.cost-platinum{border-color:#e5e4e2;border-width:3px}.individual-tool-card:hover{transform:translateY(-4px);border-color:#4a9eff;box-shadow:0 10px 25px rgba(0,0,0,.4)}.individual-tool-card.cost-free:hover{border-color:#4ade80;box-shadow:0 10px 25px rgba(74,222,128,.3)}.individual-tool-card.cost-bronze:hover{border-color:#cd7f32;box-shadow:0 10px 25px rgba(205,127,50,.3)}.individual-tool-card.cost-silver:hover{border-color:#c0c0c0;box-shadow:0 10px 25px rgba(192,192,192,.3)}.individual-tool-card.cost-gold:hover{border-color:#ffd700;box-shadow:0 10px 25px rgba(255,215,0,.3)}.individual-tool-card.cost-plantium:hover,.individual-tool-card.cost-platinum:hover{border-color:#e5e4e2;box-shadow:0 10px 25px rgba(229,228,226,.3)}.tool-icon-container{text-align:center;margin-bottom:1rem}.tool-icon{width:48px;height:48px;object-fit:contain;border-radius:8px}.tool-name{font-family:Montserrat,sans-serif;font-size:1.2rem;font-weight:600;color:#ffffff;text-align:center;margin-bottom:.5rem}.tool-category-badge{display:inline-block;background:rgba(74,158,255,.2);color:#4a9eff;font-size:.8rem;font-weight:500;padding:.25rem .75rem;border-radius:1rem;margin-bottom:.5rem}.tool-category-badge:before{content:"Mode: ";font-weight:600}.tool-cost{font-size:1rem;font-weight:600;color:#6bb6ff;text-align:center;margin-bottom:.5rem}.tool-description{font-size:.9rem;color:#a8a8a8;text-align:center;line-height:1.4}.corner-ribbon{position:absolute;top:0;left:0;width:0;height:0;border-style:solid;border-width:70px 70px 0 0;z-index:10;overflow:visible}.corner-ribbon:after{content:attr(data-text);position:absolute;top:-60px;left:5px;transform:rotate(-45deg);transform-origin:center;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#ffffff;text-shadow:0 1px 3px rgba(0,0,0,.8);white-space:nowrap;pointer-events:none}.corner-ribbon.new{border-color:#8B5CF6 transparent transparent}.corner-ribbon.beta{border-color:#EF4444 transparent transparent}.corner-ribbon.soon{border-color:#06B6D4 transparent transparent}.corner-ribbon.limited{border-color:#F59E0B transparent transparent}@media (max-width:768px){.room-category-container{padding:1rem}.room-category-header h2{font-size:2rem}.room-categories-grid{grid-template-columns:1fr;gap:1.5rem}.function-modes-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.individual-tools-grid{grid-template-columns:1fr;gap:1rem}}@media (max-width:480px){.category-name,.room-category-header h2{font-size:1.5rem}.function-modes-grid{grid-template-columns:1fr}}