*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--game-background: #020617;--game-surface: #0f172a;--game-surface-elevated: #1e293b;--game-border: #334155;--game-text-main: #f1f5f9;--game-text-muted: #94a3b8;--game-text-dimmed: #64748b;--game-primary: #3b82f6;--game-primary-hover: #2563eb;--game-accent: #8b5cf6;--game-success: #10b981;--game-warning: #f59e0b;--game-error: #ef4444;--game-background-secondary: #1e293b;--game-control-bar: #1e293b;--game-active: #1e40af;--game-hover: #1e3a8a;--game-purple: #7c3aed;--game-pink: #db2777}[data-theme=light]{--game-background: #f8fafc;--game-surface: #ffffff;--game-surface-elevated: #f1f5f9;--game-border: #e2e8f0;--game-text-main: #1e293b;--game-text-muted: #64748b;--game-text-dimmed: #94a3b8;--game-primary: #3b82f6;--game-primary-hover: #2563eb;--game-accent: #8b5cf6;--game-success: #10b981;--game-warning: #f59e0b;--game-error: #ef4444;--game-background-secondary: #f8fafc;--game-control-bar: #f8fafc;--game-active: #dbeafe;--game-hover: #eff6ff;--game-purple: #c7d2fe;--game-pink: #fbcfe8}html,body,#root{height:100%;width:100%;overflow:hidden}#root{display:flex;flex-direction:column}::-webkit-scrollbar-track{background:var(--background)}::-webkit-scrollbar-thumb{background:var(--surface-elevated);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border)}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.animate-slide-in{animation:slideIn .3s ease-out}.fade-in{animation:fadeIn .3s ease-in-out}.slide-in-right{animation:slideInRight .3s ease-out}.slide-in-left{animation:slideInLeft .3s ease-out}.slide-in-up{animation:slideInUp .3s ease-out}.pulse{animation:pulse 2s infinite}.property-editor{display:flex;flex-direction:column;gap:8px}.property-editor-empty{color:var(--text-muted, #888);font-size:13px;padding:8px 0}.property-row{display:flex;gap:8px;align-items:center}.property-input{background:var(--input-bg, #1e1e2e);border:1px solid var(--border-color, #333);border-radius:4px;padding:6px 10px;font-size:13px;color:var(--text-main, #e0e0e0);outline:none;transition:border-color .2s}.property-input:focus{border-color:var(--accent-color, #8b5cf6)}.property-input:disabled{opacity:.6;cursor:not-allowed}.property-name{flex:1;min-width:100px}.property-desc{flex:2;min-width:120px}.property-value{flex:1;min-width:80px}.property-remove-btn{background:transparent;border:none;color:var(--danger-color, #ef4444);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background .2s}.property-remove-btn:hover{background:#ef44441a}.property-add-btn{display:flex;align-items:center;gap:6px;background:transparent;border:1px dashed var(--border-color, #333);border-radius:4px;padding:8px 12px;color:var(--text-muted, #888);cursor:pointer;font-size:13px;transition:all .2s}.property-add-btn:hover{border-color:var(--accent-color, #8b5cf6);color:var(--accent-color, #8b5cf6)}.world-outliner{height:100%;display:flex;flex-direction:column;background:var(--game-surface);transition:all .3s ease}.world-outliner.collapsed{opacity:0;pointer-events:none}.outliner-header{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid var(--game-border)}.outliner-header h3{margin:0;font-size:15px;font-weight:600;color:var(--game-text-main);text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.refresh-entities-btn{display:flex;align-items:center;justify-content:center;padding:6px;background:transparent;border:none;border-radius:6px;color:var(--game-text-dimmed);cursor:pointer;transition:all .2s ease}.refresh-entities-btn:hover{background:var(--game-border);color:var(--game-text-main)}.refresh-entities-btn:disabled{opacity:.5;cursor:not-allowed}.outliner-content{flex:1;overflow-y:auto;padding:8px}.outliner-section{margin-bottom:8px}.section-header{width:100%;padding:8px 12px;background:transparent;border:none;color:var(--game-text-muted);cursor:pointer;display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;transition:all .2s ease;border-radius:4px}.section-header:hover{background:var(--game-border);color:var(--game-text-main)}.section-content{margin-left:20px;overflow:hidden}.outliner-item{padding:8px 12px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:12px;border-radius:4px;transition:all .2s ease;position:relative}.outliner-item:hover{background:var(--game-border)}.outliner-item.selected{background:var(--game-active);color:var(--game-accent)}.item-icon{flex-shrink:0;color:var(--game-text-dimmed)}.outliner-item.selected .item-icon{color:var(--game-accent)}.item-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-level{font-size:10px;background:var(--game-surface-elevated);padding:2px 6px;border-radius:10px;color:var(--game-text-muted)}.item-auto-start-paused{display:flex;align-items:center;justify-content:center;padding:2px;background:#fbbf2433;border-radius:4px;color:#fbbf24}.item-auto-start-paused:hover{background:#fbbf244d}.item-runtime-status{font-size:10px;padding:2px 6px;border-radius:4px;white-space:nowrap}.item-runtime-status.status-thinking{background:#3b82f626;color:#3b82f6}.item-runtime-status.status-running{background:#10b98126;color:#10b981}.item-runtime-status.status-waiting{background:#f59e0b26;color:#f59e0b}.item-runtime-status.status-error{background:#ef444426;color:#ef4444}@keyframes pulse-status{0%,to{opacity:1}50%{opacity:.5}}.item-status{width:8px;height:8px;border-radius:50%;background:currentColor;flex-shrink:0}.empty-state{padding:20px 12px;text-align:center;color:var(--game-text-dimmed);font-size:12px;font-style:italic}.add-entity-button{width:100%;padding:8px 12px;margin-top:8px;background:transparent;border:1px dashed var(--game-border);color:var(--game-text-dimmed);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;border-radius:4px;transition:all .2s ease}.add-entity-button:hover{background:var(--game-active);border-color:var(--game-accent);color:var(--game-accent)}.git-config-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.git-config-modal{background:var(--game-surface);border-radius:12px;width:90%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}.git-config-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--game-border)}.git-config-header h2{font-size:18px;font-weight:600;color:var(--game-text-main);margin:0}.close-button{background:none;border:none;color:var(--game-text-muted);cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s}.close-button:hover{background:var(--game-surface-elevated);color:var(--game-text-main)}.git-config-body{padding:24px;overflow-y:auto;flex:1}.form-group{margin-bottom:20px}.form-label{display:block;font-size:14px;font-weight:500;color:var(--game-text-main);margin-bottom:8px}.required{color:#ef4444;margin-left:2px}.form-input{width:100%;padding:10px 14px;background:var(--game-surface-elevated);border:1px solid var(--game-border);border-radius:8px;color:var(--game-text-main);font-size:14px;transition:all .2s}.form-input:focus{outline:none;border-color:var(--game-primary)}.form-input::placeholder{color:var(--game-text-dimmed)}.form-hint{font-size:12px;color:var(--game-text-dimmed);margin-top:6px}.platform-selector{display:flex;gap:12px}.platform-option{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;background:var(--game-surface-elevated);border:2px solid var(--game-border);border-radius:8px;color:var(--game-text-muted);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.platform-option:hover{border-color:var(--game-primary);color:var(--game-text-main)}.platform-option.active{border-color:var(--game-primary);background:#3b82f61a;color:var(--game-primary)}.input-with-action{display:flex;gap:8px;align-items:stretch}.input-with-action .form-input{flex:1}.icon-button,.action-button{padding:10px 12px;background:#f1f5f9;border:1px solid var(--game-border);border-radius:8px;color:var(--game-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;min-width:42px;height:42px}[data-theme=dark] .icon-button{background:#1e293b}.action-button{background:#f1f5f9!important;color:var(--game-text-muted)}[data-theme=dark] .action-button{background:#e2e8f0!important;color:#475569}.icon-button:hover,.action-button:hover{background:var(--game-border);color:var(--game-text-main);border-color:var(--game-text-muted)}.validation-result{padding:14px 16px;border-radius:8px;margin-top:16px;display:flex;align-items:flex-start;gap:10px;font-size:14px}.validation-result.success{background:#10b9811a;border:1px solid rgba(16,185,129,.3);color:#10b981}.validation-result.error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444}.validation-details{flex:1;font-size:13px;line-height:1.6}.assets-detected{margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.1)}.error-message{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#ef4444;font-size:14px;margin-top:16px}.git-config-footer{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-top:1px solid var(--game-border);gap:16px}.footer-actions{display:flex;gap:12px}.btn-primary,.btn-secondary{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;white-space:nowrap;overflow:visible;color:#000!important}.btn-primary{background:var(--game-primary);color:#fff;border:none}.btn-primary:hover:not(:disabled){background:var(--game-primary-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:#f1f5f9;color:#1e293b;border:1px solid var(--game-border)}[data-theme=dark] .btn-secondary{background:#1e293b;color:#f1f5f9}.btn-secondary:hover:not(:disabled){background:#e2e8f0;border-color:var(--game-text-muted)}[data-theme=dark] .btn-secondary:hover:not(:disabled){background:#334155}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.asset-card{position:relative;display:flex;flex-direction:column;background:var(--game-surface, #1e1e1e);border:1px solid var(--game-border, #2a2a2a);border-radius:8px;padding:14px;cursor:grab;transition:all .2s ease;min-height:140px}.asset-card:hover{border-color:var(--game-active, #3b82f6);transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.asset-card:active{cursor:grabbing}.asset-card.public{border-left:3px solid #3b82f6}.asset-card.git{border-left:3px solid #10b981}.asset-delete-button{position:absolute;top:6px;right:6px;width:20px;height:20px;background:var(--game-border, #2a2a2a);border:none;border-radius:4px;display:flex;align-items:center;justify-content:center;color:var(--game-text-dimmed, #888);cursor:pointer;opacity:0;transition:all .2s ease;z-index:10}.asset-card:hover .asset-delete-button{opacity:1}.asset-delete-button:hover{background:#ef4444;color:#fff}.asset-source{position:absolute;top:8px;left:8px}.asset-source-tag{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:4px;font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.asset-source-tag.public{background:#3b82f626;color:#3b82f6}.asset-source-tag.git{background:#10b98126;color:#10b981}.asset-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--game-surface-elevated, #252525);border-radius:8px;margin-top:4px;margin-bottom:10px;color:var(--game-text-secondary, #888)}.asset-card.public .asset-icon{color:#3b82f6}.asset-card.git .asset-icon{color:#10b981}.asset-info{flex:1;display:flex;flex-direction:column;gap:4px}.asset-name{font-size:13px;font-weight:500;color:var(--game-text-main, #ffffff);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asset-description{font-size:11px;color:var(--game-text-dimmed, #888);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:28px}.asset-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.tag{font-size:10px;color:var(--game-text-secondary, #888);background:var(--game-surface-elevated, #252525);padding:2px 6px;border-radius:3px}.tag-more{font-size:10px;color:var(--game-text-dimmed, #666);padding:2px 4px}.asset-meta{display:flex;align-items:center;gap:8px;margin-top:auto;padding-top:8px}.version,.updated{font-size:10px;color:var(--game-text-dimmed, #666)}.version{font-family:SF Mono,Monaco,Consolas,monospace;background:var(--game-surface-elevated, #252525);padding:2px 6px;border-radius:3px}.asset-actions{position:absolute;bottom:8px;right:8px;display:flex;gap:4px;opacity:0;transition:opacity .2s ease}.asset-card:hover .asset-actions{opacity:1}.action-button{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--game-surface-elevated, #252525);border:1px solid var(--game-border, #2a2a2a);border-radius:6px;color:var(--game-text-secondary, #888);cursor:pointer;transition:all .2s ease;text-decoration:none}.action-button:hover{background:var(--game-hover, #2a2a2a);color:var(--game-text-main, #ffffff);border-color:var(--game-active, #3b82f6)}.action-button.github:hover{color:#3b82f6}.asset-card.empty{border-style:dashed;opacity:.7;cursor:default}.asset-card.empty:hover{transform:none;border-color:var(--game-border, #2a2a2a)}.asset-card.empty .asset-icon{opacity:.5}.asset-card.loading{opacity:.6;pointer-events:none}.asset-card.loading:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.05),transparent);animation:loading 1.5s infinite}@keyframes loading{0%{transform:translate(-100%)}to{transform:translate(100%)}}.asset-preview-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.asset-preview-modal{background:var(--surface-color, #1e1e1e);border-radius:12px;width:90%;max-width:700px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.asset-preview-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-color, #2a2a2a)}.header-info{display:flex;align-items:center;gap:16px}.asset-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--input-bg, #121212);border:1px solid var(--border-color, #2a2a2a);border-radius:10px;color:var(--primary-color, #3b82f6)}.asset-title{font-size:18px;font-weight:600;color:var(--text-primary, #ffffff);margin:0 0 6px}.asset-meta{display:flex;align-items:center;gap:12px;font-size:13px}.version{font-family:SF Mono,Monaco,Consolas,monospace;background:var(--input-bg, #121212);padding:2px 8px;border-radius:4px;color:var(--text-secondary, #888)}.category{color:var(--text-secondary, #888)}.author{color:var(--text-tertiary, #666)}.close-button{background:none;border:none;color:var(--text-secondary, #888);cursor:pointer;padding:4px;border-radius:6px;transition:all .2s}.close-button:hover{background:var(--hover-color, #2a2a2a);color:var(--text-primary, #ffffff)}.asset-preview-body{flex:1;overflow-y:auto;padding:24px}.preview-tabs{display:flex;gap:8px;margin-bottom:20px;border-bottom:1px solid var(--border-color, #2a2a2a)}.tab-button{padding:10px 16px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-secondary, #888);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.tab-button:hover:not(:disabled){color:var(--text-primary, #ffffff)}.tab-button.active{color:var(--primary-color, #3b82f6);border-bottom-color:var(--primary-color, #3b82f6)}.tab-button:disabled{opacity:.4;cursor:not-allowed}.preview-content{min-height:300px}.details-tab{display:flex;flex-direction:column;gap:24px}.detail-section h3{font-size:14px;font-weight:500;color:var(--text-primary, #ffffff);margin:0 0 12px}.detail-section p{font-size:14px;color:var(--text-secondary, #888);line-height:1.6;margin:0}.tags-list{display:flex;flex-wrap:wrap;gap:8px}.tags-list .tag{font-size:13px;color:var(--primary-color, #3b82f6);background:#3b82f61a;padding:4px 10px;border-radius:6px}.github-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--primary-color, #3b82f6);text-decoration:none;transition:opacity .2s}.github-link:hover{opacity:.8}.metadata-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.metadata-item{display:flex;flex-direction:column;gap:4px}.metadata-item .key{font-size:12px;color:var(--text-tertiary, #666)}.metadata-item .value{font-size:13px;color:var(--text-secondary, #888)}.metadata-item .value.mono{font-family:SF Mono,Monaco,Consolas,monospace}.yaml-tab{display:flex;flex-direction:column;gap:12px}.yaml-header{display:flex;align-items:center;justify-content:space-between}.yaml-title{font-size:13px;color:var(--text-secondary, #888)}.copy-button{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--input-bg, #121212);border:1px solid var(--border-color, #2a2a2a);border-radius:6px;color:var(--text-secondary, #888);font-size:12px;cursor:pointer;transition:all .2s}.copy-button:hover{background:var(--hover-color, #2a2a2a);color:var(--text-primary, #ffffff)}.yaml-loading{display:flex;align-items:center;justify-content:center;padding:40px;color:var(--text-secondary, #888)}.yaml-content{background:var(--input-bg, #121212);border:1px solid var(--border-color, #2a2a2a);border-radius:8px;padding:16px;font-size:13px;font-family:SF Mono,Monaco,Consolas,monospace;color:var(--text-secondary, #888);line-height:1.6;overflow-x:auto;max-height:400px;overflow-y:auto;margin:0}.example-tab{display:flex;flex-direction:column;gap:24px}.example-section h3{font-size:14px;font-weight:500;color:var(--text-primary, #ffffff);margin:0 0 16px}.example-code{background:var(--input-bg, #121212);border:1px solid var(--border-color, #2a2a2a);border-radius:8px;overflow:hidden}.code-header{padding:8px 12px;background:#ffffff05;border-bottom:1px solid var(--border-color, #2a2a2a);font-size:12px;color:var(--text-tertiary, #666)}.example-code pre{padding:12px;font-size:13px;font-family:SF Mono,Monaco,Consolas,monospace;color:var(--text-secondary, #888);line-height:1.6;margin:0;overflow-x:auto}.asset-preview-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:20px 24px;border-top:1px solid var(--border-color, #2a2a2a)}.btn-primary,.btn-secondary{display:flex;align-items:center;gap:8px;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;text-decoration:none}.btn-primary{background:var(--primary-color, #3b82f6);color:#fff;border:none}.btn-primary:hover{background:var(--primary-hover, #2563eb)}.btn-secondary{background:var(--input-bg, #121212);color:var(--text-primary, #ffffff);border:1px solid var(--border-color, #2a2a2a)}.btn-secondary:hover{background:var(--hover-color, #2a2a2a)}.marketplace-dock{height:100%;display:flex;flex-direction:column;background:var(--game-surface)}.dock-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--game-border);background:var(--game-surface-elevated)}.dock-tabs{display:flex;gap:4px}.dock-tab{display:flex;align-items:center;gap:6px;padding:8px 12px;background:transparent;border:none;color:var(--game-text-dimmed);cursor:pointer;font-size:12px;font-weight:500;border-radius:4px 4px 0 0;transition:all .2s ease}.dock-tab:hover{background:var(--game-border);color:var(--game-text-muted)}.dock-tab.active{background:var(--game-background);color:var(--game-text-main)}.dock-controls{display:flex;align-items:center;gap:8px}.create-law-button{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--game-surface-elevated);border:1px solid var(--game-border);border-radius:6px;color:var(--game-text-main);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.create-law-button:hover{background:var(--game-active);border-color:var(--game-accent);color:var(--game-accent)}.search-container{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:8px;color:var(--game-text-dimmed);pointer-events:none}.search-input{padding:6px 8px 6px 32px;background:var(--game-border);border:1px solid var(--game-border);border-radius:4px;color:var(--game-text-main);font-size:12px;width:200px;transition:all .2s ease}.search-input:focus{outline:none;border-color:var(--game-primary);background:var(--game-surface)}.search-input::placeholder{color:var(--game-text-dimmed)}.filter-button{padding:6px 8px;background:var(--game-border);border:1px solid var(--game-border);border-radius:4px;color:var(--game-text-dimmed);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.filter-button:hover{background:var(--game-surface);color:var(--game-text-muted)}.dock-content{flex:1;overflow-y:auto;padding:16px}.custom-laws-section{margin-bottom:16px}.custom-laws-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:0 4px}.custom-laws-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.custom-law-item{display:flex;flex-direction:column;padding:12px;background:var(--game-surface-elevated);border:1px solid var(--game-border);border-radius:8px;cursor:grab;transition:all .2s ease;position:relative;overflow:hidden}.custom-law-item:hover{background:var(--game-border);transform:translateY(-2px)}.custom-law-item .law-icon{width:40px;height:40px;background:linear-gradient(135deg,#a855f7,#ec4899);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:8px}.custom-law-item .law-info{margin-bottom:8px}.custom-law-item .law-name{font-size:13px;font-weight:500;color:var(--game-text-main);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.custom-law-item .law-description{font-size:11px;color:var(--game-text-dimmed);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.custom-law-item .law-rarity.custom{position:absolute;top:8px;right:8px;background:linear-gradient(135deg,#a855f7,#ec4899);color:#fff;font-size:10px;padding:2px 6px;border-radius:10px;font-weight:500;text-transform:uppercase}.law-delete-button{position:absolute;top:6px;right:6px;width:20px;height:20px;background:var(--game-border);border:none;border-radius:4px;display:flex;align-items:center;justify-content:center;color:var(--game-text-dimmed);cursor:pointer;opacity:0;transition:all .2s ease;z-index:10}.custom-law-item:hover .law-delete-button{opacity:1}.law-delete-button:hover{background:#ef4444;color:#fff}.items-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.marketplace-item{background:var(--game-surface-elevated);border:1px solid var(--game-border);border-radius:8px;padding:12px;cursor:grab;transition:all .2s ease;position:relative;overflow:visible}.item-delete-button{position:absolute;top:6px;right:6px;width:20px;height:20px;background:var(--game-border);border:none;border-radius:4px;display:flex;align-items:center;justify-content:center;color:var(--game-text-dimmed);cursor:pointer;opacity:0;transition:all .2s ease;z-index:10}.marketplace-item:hover .item-delete-button{opacity:1}.item-delete-button:hover{background:#ef4444;color:#fff}.marketplace-item:hover{background:var(--game-border);border-color:var(--game-border);transform:translateY(-2px)}.marketplace-item:active{cursor:grabbing;transform:scale(.98)}.item-icon{width:40px;height:40px;background:var(--game-border);border-radius:8px;display:flex;align-items:center;justify-content:center;margin-bottom:8px;color:var(--game-text-dimmed)}.item-info{margin-bottom:8px}.item-name{font-size:13px;font-weight:500;color:var(--game-text-main);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-description{font-size:11px;color:var(--game-text-dimmed);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.item-rarity{position:absolute;top:8px;right:8px;font-size:10px;padding:2px 6px;border-radius:10px;font-weight:500;text-transform:uppercase}.item-rarity.common{background:var(--game-text-dimmed);color:#fff}.item-rarity.rare{background:var(--game-active);color:var(--game-accent)}.item-rarity.epic{background:var(--game-purple);color:#fff}.item-rarity.legendary{background:var(--game-warning);color:var(--game-accent)}.git-config-button{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#3b82f61a;border:1px solid rgba(59,130,246,.3);border-radius:6px;color:#3b82f6;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.git-config-button:hover{background:#3b82f633;border-color:#3b82f6}.git-config-button.configured{background:#10b9811a;border-color:#10b9814d;color:#10b981}.git-config-button.configured:hover{background:#10b98133;border-color:#10b981}.asset-source-filter{display:flex;gap:4px;background:var(--game-input-bg);border:1px solid var(--game-border);border-radius:6px;padding:2px}.filter-option{padding:4px 10px;border:none;background:transparent;color:var(--game-text-dimmed);font-size:11px;font-weight:500;border-radius:4px;cursor:pointer;transition:all .2s ease}.filter-option:hover{color:var(--game-text-main)}.filter-option.active{background:var(--game-active);color:var(--game-accent)}.git-not-configured-notice{background:#3b82f60d;border:1px solid rgba(59,130,246,.2);border-radius:8px;padding:16px;margin-bottom:16px}.notice-content{display:flex;align-items:flex-start;gap:12px}.notice-content svg{color:#3b82f6;flex-shrink:0;margin-top:2px}.notice-text h3{font-size:14px;font-weight:500;color:var(--game-text-main);margin:0 0 4px}.notice-text p{font-size:12px;color:var(--game-text-dimmed);margin:0}.btn-configure-git{display:flex;align-items:center;gap:6px;padding:8px 14px;background:#3b82f6;border:none;border-radius:6px;color:#fff;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;margin-left:auto}.btn-configure-git:hover{background:#2563eb}.notice-footer{margin-top:12px;padding-top:12px;border-top:1px solid rgba(59,130,246,.1)}.notice-footer span{font-size:11px;color:var(--game-text-dimmed)}.git-status-indicator{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#10b9810d;border:1px solid rgba(16,185,129,.2);border-radius:6px;margin-bottom:12px}.status-dot{width:8px;height:8px;border-radius:50%;animation:pulse 2s ease-in-out infinite}.status-dot.connected{background:#10b981}.status-text{font-size:12px;color:var(--game-text-main);font-weight:500}.asset-source-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:4px;font-size:10px;font-weight:500;margin-bottom:4px}.asset-source-tag.public{background:#3b82f61a;color:#3b82f6}.asset-source-tag.git{background:#10b9811a;color:#10b981}.refresh-assets-button{padding:4px 8px;background:transparent;border:1px solid var(--game-border, #2a2a2a);border-radius:4px;color:var(--game-text-dimmed, #888);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.refresh-assets-button:hover:not(:disabled){background:var(--game-hover, #2a2a2a);color:var(--game-text-main, #ffffff);border-color:var(--game-active, #3b82f6)}.refresh-assets-button:disabled{opacity:.5;cursor:not-allowed}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px;color:var(--game-text-dimmed, #888);grid-column:1 / -1}.spinner{width:24px;height:24px;border:2px solid var(--game-border, #2a2a2a);border-top-color:var(--game-active, #3b82f6);border-radius:50%;animation:spin .8s linear infinite}.empty-assets-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:40px;color:var(--game-text-dimmed, #888);grid-column:1 / -1;text-align:center}.empty-assets-state p{margin:0;font-size:14px}.btn-retry{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:var(--game-input-bg, #121212);border:1px solid var(--game-border, #2a2a2a);border-radius:6px;color:var(--game-text-main, #ffffff);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-retry:hover{background:var(--game-hover, #2a2a2a);border-color:var(--game-active, #3b82f6)}.items-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}color: white; } .agent-message-markdown{line-height:1.6}.agent-message-markdown p{margin:0 0 .75em}.agent-message-markdown p:last-child{margin-bottom:0}.agent-message-markdown h1,.agent-message-markdown h2,.agent-message-markdown h3,.agent-message-markdown h4,.agent-message-markdown h5,.agent-message-markdown h6{margin:.75em 0 .5em;font-weight:600;line-height:1.3}.agent-message-markdown h1{font-size:1.4em}.agent-message-markdown h2{font-size:1.25em}.agent-message-markdown h3{font-size:1.1em}.agent-message-markdown ul,.agent-message-markdown ol{margin:.5em 0;padding-left:1.5em}.agent-message-markdown ul{list-style-type:disc}.agent-message-markdown ol{list-style-type:decimal}.agent-message-markdown li{margin:.25em 0}.agent-message-markdown code{background:#0003;border-radius:3px;padding:.1em .4em;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:.9em}.agent-message-markdown pre{background:#00000040;border-radius:6px;padding:.75em 1em;margin:.75em 0;overflow-x:auto}.agent-message-markdown pre code{background:none;padding:0;font-size:.85em}.agent-message-markdown blockquote{border-left:3px solid var(--primary, #8b5cf6);margin:.75em 0;padding:.25em 0 .25em 1em;color:var(--text-muted, #888)}.agent-message-markdown a{color:var(--primary, #8b5cf6);text-decoration:none}.agent-message-markdown a:hover{text-decoration:underline}.agent-message-markdown hr{border:none;border-top:1px solid var(--border-color, #333);margin:1em 0}.agent-message-markdown table{border-collapse:collapse;margin:.75em 0;width:100%}.agent-message-markdown th,.agent-message-markdown td{border:1px solid var(--border-color, #333);padding:.4em .8em;text-align:left}.agent-message-markdown th{background:#00000026;font-weight:600}.agent-message-markdown img{max-width:100%;border-radius:6px}.dark .agent-message-markdown code{background:#ffffff1a}.dark .agent-message-markdown pre{background:#0006}.inspector-panel{height:100%;display:flex;flex-direction:column;background:var(--game-surface)}.inspector-panel.empty{justify-content:center;align-items:center}.empty-state{text-align:center;color:var(--game-text-dimmed)}.empty-state svg{margin-bottom:12px;opacity:.3}.empty-state p{margin:0 0 4px;font-size:14px;font-weight:500}.empty-state .hint{font-size:12px;color:var(--game-text-dimmed)}.inspector-header{padding:16px;border-bottom:1px solid var(--game-border);display:flex;align-items:center;justify-content:space-between}.inspector-header .flex{display:flex;align-items:center;gap:8px}.entity-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--game-surface-elevated);border-radius:6px;color:var(--game-text-muted)}.inspector-header h3{margin:0;font-size:16px;font-weight:600;color:var(--game-text-main);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inspector-type{font-size:11px;color:var(--game-text-dimmed);text-transform:uppercase;font-weight:500;letter-spacing:.5px}.badge{display:inline-block;padding:4px 8px;background:var(--game-surface-elevated);border:1px solid var(--game-border);border-radius:4px;font-size:11px;color:var(--game-text-muted);margin-right:4px;margin-bottom:4px}.inspector-tabs{display:flex;border-bottom:1px solid var(--game-border);background:var(--game-surface-elevated)}.tab{flex:1;padding:12px;background:transparent;border:none;color:var(--game-text-dimmed);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;font-weight:500;transition:all .2s ease}.tab:hover{background:var(--game-border);color:var(--game-text-muted)}.tab.active{background:var(--game-surface);color:var(--game-text-main);border-bottom:2px solid var(--game-primary)}.inspector-content{flex:1;overflow-y:auto}.tab-content{padding:16px}.property-group{margin-bottom:24px}.property-group h4{margin:0 0 12px;font-size:12px;font-weight:600;color:var(--game-text-muted);text-transform:uppercase;letter-spacing:.5px}.property{display:flex;align-items:center;margin-bottom:8px;gap:12px}.property label{flex:0 0 80px;font-size:12px;color:var(--game-text-muted)}.property input,.property textarea{flex:1;padding:6px 8px;background:var(--game-border);border:1px solid var(--game-border);border-radius:4px;color:var(--game-text-main);font-size:12px;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace}.property input:focus,.property textarea:focus{outline:none;border-color:var(--game-primary);background:var(--game-surface)}.property input:disabled{background:var(--game-surface-elevated);color:var(--game-text-dimmed);cursor:not-allowed}.property span{font-size:12px;color:var(--game-text-main)}.config-preview{background:var(--game-surface-elevated);border:1px solid var(--game-border);border-radius:4px;padding:12px;font-size:11px;line-height:1.4;color:var(--game-text-muted);overflow-x:auto}.status-badge{padding:2px 8px;border-radius:10px;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.status-badge.running,.status-badge.active{background:var(--game-success);color:#fff}.status-badge.stopped,.status-badge.inactive{background:var(--game-text-dimmed);color:var(--game-text-muted)}.status-badge.error{background:var(--game-error);color:#fff}.status-badge.idle{background:var(--game-warning);color:#fff}.level-badge{background:linear-gradient(135deg,var(--game-purple),var(--game-accent));color:#fff;padding:4px 8px;border-radius:12px;font-size:11px;font-weight:600}.progress-bar{flex:1;position:relative;height:20px;background:var(--game-border);border-radius:10px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--game-primary),var(--game-accent));transition:width .3s ease}.progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:10px;font-weight:500;color:var(--game-text-main);text-shadow:0 1px 2px rgba(0,0,0,.5)}.history-log{font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:11px}.log-entry{display:flex;align-items:center;gap:8px;padding:8px;border-bottom:1px solid var(--game-border)}.log-entry:last-child{border-bottom:none}.log-timestamp{color:var(--game-text-dimmed);flex:0 0 80px}.log-level{font-weight:600;flex:0 0 60px}.log-level.info{color:var(--game-primary)}.log-level.warn{color:#f59e0b}.log-level.error{color:#ef4444}.log-level.debug{color:#8b5cf6}.log-message{color:var(--game-text-muted);flex:1}.logs-tab{display:flex;flex-direction:column;height:100%;padding:0;overflow:hidden}.logs-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--game-border);background:var(--game-surface-elevated)}.logs-status{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--game-text-muted)}.status-indicator{width:8px;height:8px;border-radius:50%;background:var(--game-text-dimmed);transition:all .2s ease}.status-indicator.connected{background:#10b981;box-shadow:0 0 8px #10b98180;animation:pulse 2s ease-in-out infinite}.status-indicator.disconnected{background:var(--game-text-dimmed)}.clear-logs-button{padding:4px 12px;background:transparent;border:1px solid var(--game-border);border-radius:4px;color:var(--game-text-muted);font-size:11px;cursor:pointer;transition:all .2s ease}.clear-logs-button:hover{background:var(--game-border);color:var(--game-text-main)}.refresh-button{padding:4px 12px;background:transparent;border:1px solid var(--game-border);border-radius:4px;color:var(--game-text-muted);font-size:11px;cursor:pointer;transition:all .2s ease}.refresh-button:hover:not(:disabled){background:var(--game-border);color:var(--game-text-main)}.status-indicator.loading{background:#f59e0b;animation:spin 1s linear infinite}.logs-container{flex:1;overflow-y:auto;background:var(--game-background)}.logs-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--game-text-dimmed);padding:32px;text-align:center}.logs-empty svg{margin-bottom:16px;opacity:.3}.logs-empty p{margin:0 0 8px;font-size:14px;font-weight:500}.logs-empty .hint{font-size:12px;color:var(--game-text-dimmed)}.logs-list{font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:11px;line-height:1.6;padding:8px}.log-item{display:flex;align-items:flex-start;gap:8px;padding:6px 8px;border-radius:4px;transition:background .1s ease}.log-item:hover{background:var(--game-surface-elevated)}.log-time{flex:0 0 auto;color:var(--game-text-dimmed);font-size:10px;margin-right:8px}.log-level-badge{flex:0 0 auto;padding:2px 8px;border-radius:3px;font-size:9px;font-weight:600;color:#fff;text-align:center;text-transform:uppercase;margin-right:8px}.log-text{flex:1;color:var(--game-text-muted);word-break:break-all;white-space:pre-wrap}.react-flow{direction:ltr}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;cursor:-webkit-grab;cursor:grab}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow .react-flow__edges{pointer-events:none;overflow:visible}.react-flow__edge-path,.react-flow__connection-path{stroke:#b1b1b7;stroke-width:1;fill:none}.react-flow__edge{pointer-events:visibleStroke;cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;-webkit-animation:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:#555}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge-textbg{fill:#fff}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__connectionline{z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:-webkit-grab;cursor:grab}.react-flow__node.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:-webkit-grab;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background:#1a192b;border:1px solid white;border-radius:100%}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:-4px;transform:translate(-50%)}.react-flow__handle-top{left:50%;top:-4px;transform:translate(-50%)}.react-flow__handle-left{top:50%;left:-4px;transform:translateY(-50%)}.react-flow__handle-right{right:-4px;top:50%;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translate(-50%)}.react-flow__attribution{font-size:10px;background:#ffffff80;padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@-webkit-keyframes dashdraw{0%{stroke-dashoffset:10}}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-default,.react-flow__node-input,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:3px;width:150px;font-size:12px;color:#222;text-align:center;border-width:1px;border-style:solid;border-color:#1a192b;background-color:#fff}.react-flow__node-default.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted rgba(0,89,220,.8)}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls{box-shadow:0 0 2px 1px #00000014}.react-flow__controls-button{border:none;background:#fefefe;border-bottom:1px solid #eee;box-sizing:content-box;display:flex;justify-content:center;align-items:center;width:16px;height:16px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:5px}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__minimap{background-color:#fff}.react-flow__minimap svg{display:block}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:4px;height:4px;border:1px solid #fff;border-radius:1px;background-color:#3367d9;transform:translate(-50%,-50%)}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:#3367d9;border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.environment-node{background:var(--game-surface);border:2px solid var(--game-border);border-radius:12px;padding:12px 16px;min-width:180px;max-width:240px;box-shadow:0 4px 12px #0000001a;transition:all .2s ease}.environment-node:hover{border-color:var(--game-primary);box-shadow:0 6px 16px #3b82f633}.environment-node.status-active{border-color:#3b82f6}.environment-node.status-error{border-color:#ef4444}.environment-node .node-header{display:flex;align-items:center;gap:8px;margin-bottom:4px}.environment-node .node-icon{color:#3b82f6;flex-shrink:0}.environment-node .node-title{font-weight:600;font-size:14px;color:var(--game-text-main);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.environment-node .status-active{color:#10b981}.environment-node .status-error{color:#ef4444}.environment-node .status-inactive{color:var(--game-text-dimmed)}.environment-node .node-description{font-size:12px;color:var(--game-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.environment-node .react-flow__handle{width:8px;height:8px;background:var(--game-border);border:2px solid var(--game-surface)}.environment-node .react-flow__handle-connecting{background:#3b82f6}.agent-node{background:var(--game-surface);border:2px solid var(--game-border);border-radius:10px;padding:10px 14px;min-width:160px;max-width:200px;box-shadow:0 3px 10px #0000001a;transition:all .2s ease}.agent-node:hover{border-color:var(--game-accent);box-shadow:0 5px 14px #8b5cf633}.agent-node.status-running{border-color:#10b981}.agent-node.status-error{border-color:#ef4444}.agent-node.online{background:linear-gradient(135deg,var(--game-surface) 0%,rgba(16,185,129,.05) 100%)}.agent-node.offline{opacity:.7}.agent-node.paused{background:linear-gradient(135deg,var(--game-surface) 0%,rgba(245,158,11,.1) 100%);border-color:#f59e0b}.agent-node.paused .node-icon{color:#f59e0b}.agent-node .node-header{display:flex;align-items:center;gap:6px;margin-bottom:4px}.agent-node .node-icon{color:#8b5cf6;flex-shrink:0}.agent-node .node-title{font-weight:600;font-size:13px;color:var(--game-text-main);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agent-node .status-running{color:#10b981}.agent-node .status-error{color:#ef4444}.agent-node .status-idle,.agent-node .status-stopped{color:var(--game-text-dimmed)}.agent-node .node-footer{display:flex;align-items:center;justify-content:space-between;margin-top:6px;padding-top:6px;border-top:1px solid var(--game-border)}.agent-node .connection-status{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--game-text-dimmed)}.agent-node.online .connection-status{color:#10b981}.agent-node.offline .connection-status{color:var(--game-text-dimmed)}.agent-node .status-text{font-size:11px;color:var(--game-text-muted);text-transform:capitalize}.agent-node .react-flow__handle{width:8px;height:8px;background:var(--game-border);border:2px solid var(--game-surface)}.agent-node .react-flow__handle-connecting{background:#8b5cf6}.agent-node.drag-over{border-color:#8b5cf6;box-shadow:0 0 0 2px #8b5cf64d;transform:scale(1.05)}.agent-node .drop-hint{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px;margin:8px 0;background:#8b5cf61a;border:1px dashed #8b5cf6;border-radius:6px;color:#8b5cf6;font-size:12px;font-weight:500;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.entity-graph-view{width:100%;height:100%;background:var(--game-background);position:relative;min-height:400px}.entity-graph-view>div{width:100%!important;height:100%!important}.graph-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--game-text-dimmed);gap:1rem}.graph-empty h3{font-size:1.25rem;color:var(--game-text-muted);margin:0}.graph-empty p{color:var(--game-text-dimmed);margin:0}.graph-controls{background:var(--game-surface)!important;border:1px solid var(--game-border)!important;border-radius:8px!important}.graph-controls button{background:var(--game-surface)!important;border-color:var(--game-border)!important;color:var(--game-text-main)!important}.graph-controls button:hover{background:var(--game-surface-elevated)!important}.graph-minimap{background:var(--game-surface)!important;border:1px solid var(--game-border)!important;border-radius:8px!important}.react-flow__edge-path{stroke:var(--game-border)}.react-flow__edge.selected .react-flow__edge-path{stroke:var(--game-primary)}.react-flow__handle{background:var(--game-border);border:2px solid var(--game-border)}.react-flow__handle-connecting{background:var(--game-primary)}.react-flow__attribution{display:none}.react-flow__node{background:var(--game-surface)!important;border:2px solid var(--game-primary)!important;min-width:150px!important;min-height:60px!important}.react-flow__node.selected{box-shadow:0 0 0 2px var(--game-primary)!important}.react-flow__edge path{stroke-width:2!important}.workbench-empty,.workbench-welcome,.workbench-entity,.workbench-graph{height:100%;display:flex;flex-direction:column}.workbench-empty,.workbench-welcome,.workbench-entity{align-items:center;justify-content:center;padding:40px}.workbench-graph{padding:0;position:relative}.empty-content{text-align:center;max-width:500px}.empty-icon{margin-bottom:24px;color:var(--game-text-dimmed)}.empty-content h2{margin:0 0 12px;font-size:24px;font-weight:600;color:var(--game-text-main)}.empty-content p{margin:0 0 32px;font-size:16px;color:var(--game-text-muted);line-height:1.5}.empty-actions{display:flex;gap:16px;justify-content:center}.primary-button,.secondary-button{padding:12px 24px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.primary-button{background:var(--game-primary);color:#fff;border:none}.primary-button:hover{background:var(--game-primary-hover);transform:translateY(-1px)}.secondary-button{background:transparent;color:var(--game-text-muted);border:1px solid var(--game-border)}.secondary-button:hover{background:var(--game-border);color:var(--game-text-main);border-color:var(--game-border)}.welcome-content{text-align:center;max-width:600px}.welcome-content h2{margin:0 0 12px;font-size:28px;font-weight:600;color:var(--game-text-main)}.welcome-content p{margin:0 0 32px;font-size:16px;color:var(--game-text-muted)}.quick-actions{display:flex;gap:24px;justify-content:center}.action-card{padding:24px;background:var(--game-surface-elevated);border:1px solid var(--game-border);border-radius:12px;cursor:pointer;transition:all .3s ease;text-align:center;max-width:200px}.action-card:hover{background:var(--game-border);border-color:var(--game-border);transform:translateY(-4px)}.action-card svg{margin-bottom:12px;color:var(--game-text-dimmed)}.action-card h3{margin:0 0 8px;font-size:16px;font-weight:600;color:var(--game-text-main)}.action-card p{margin:0;font-size:13px;color:var(--game-text-muted);line-height:1.4}.entity-placeholder{text-align:center;max-width:500px}.placeholder-icon{margin-bottom:24px;color:var(--game-text-dimmed)}.entity-placeholder h2{margin:0 0 8px;font-size:24px;font-weight:600;color:var(--game-text-main)}.entity-placeholder p{font-size:14px;color:var(--game-text-muted);line-height:1.5;max-width:400px;margin:0 auto 32px}.placeholder-actions{display:flex;gap:16px;justify-content:center}.workbench-graph{flex:1;overflow:hidden}.workbench-graph .entity-graph-view{flex:1}.graph-breadcrumb,.entity-breadcrumb{position:absolute;top:16px;left:16px;z-index:10;display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--game-surface);border:1px solid var(--game-border);border-radius:8px;font-size:14px}.graph-breadcrumb .breadcrumb-item,.entity-breadcrumb .breadcrumb-item{display:flex;align-items:center;gap:4px;color:var(--game-text-muted);cursor:pointer;transition:color .2s ease}.graph-breadcrumb .breadcrumb-item:hover,.entity-breadcrumb .breadcrumb-item:hover{color:var(--game-primary)}.graph-breadcrumb .breadcrumb-item:last-child,.entity-breadcrumb .breadcrumb-item:last-child{color:var(--game-text-main);cursor:default}.graph-breadcrumb .breadcrumb-separator,.entity-breadcrumb .breadcrumb-separator{color:var(--game-text-dimmed)}.entity-breadcrumb{position:static;margin-bottom:16px;align-self:flex-start}.workbench-entity{align-items:stretch;padding:0}.workbench-entity>*{flex:1}.time-control-bar{height:60px;background:var(--game-control-bar);border-bottom:1px solid var(--game-border);display:flex;align-items:center;justify-content:space-between;padding:0 20px;position:relative;z-index:10}.status-light-container{display:flex;align-items:center;gap:10px;padding:8px 16px;background:var(--game-surface-elevated);border:1px solid var(--game-border);border-radius:8px;margin-right:16px}.status-light{width:12px;height:12px;border-radius:50%;transition:all .3s ease;animation:pulse-glow 2s ease-in-out infinite}.status-light.stopped{animation:none}@keyframes pulse-glow{0%,to{opacity:1}50%{opacity:.7}}.status-label{font-size:12px;font-weight:500;color:var(--game-text-main);text-transform:uppercase;letter-spacing:.5px}.time-controls{display:flex;align-items:center;gap:24px;flex:1}.playback-controls{display:flex;align-items:center;gap:4px;background:var(--game-surface-elevated);padding:4px;border-radius:8px;border:1px solid var(--game-border)}.control-button{width:36px;height:36px;background:transparent;border:none;color:var(--game-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:all .2s ease}.control-button:hover{background:var(--game-border);color:var(--game-text-main)}.control-button:disabled{opacity:.3;cursor:not-allowed}.control-button:disabled:hover{background:transparent;color:var(--game-text-muted)}.control-button.primary{background:var(--game-primary);color:#fff}.control-button.primary:hover{background:var(--game-primary-hover)}.control-button svg{pointer-events:none}.interval-control{display:flex;align-items:center;gap:6px}.interval-icon{color:var(--game-text-dimmed)}.interval-control label{font-size:12px;color:var(--game-text-muted);font-weight:500}.interval-selector{display:flex;align-items:center;background:var(--game-surface-elevated);border:1px solid var(--game-border);border-radius:6px;overflow:hidden}.interval-button{width:24px;height:24px;background:transparent;border:none;color:var(--game-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;transition:all .2s ease}.interval-button:hover:not(:disabled){background:var(--game-border);color:var(--game-text-main)}.interval-button:disabled{opacity:.3;cursor:not-allowed}.interval-value{padding:0 10px;font-size:12px;font-weight:600;color:var(--game-accent);min-width:36px;text-align:center;background:#8b5cf61a}.interval-input{width:40px;padding:2px 4px;font-size:12px;font-weight:600;color:var(--game-accent);text-align:center;background:#8b5cf61a;border:none;outline:none;font-family:inherit}.interval-input::-webkit-inner-spin-button,.interval-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.interval-input[type=number]{-moz-appearance:textfield}.interval-input:focus{background:#8b5cf633}.interval-input:disabled{opacity:.5;cursor:not-allowed}.interval-unit{font-size:11px;color:var(--game-text-muted);font-weight:500;margin-right:2px}.speed-control{display:flex;align-items:center;gap:8px}.speed-control label{font-size:12px;color:var(--game-text-muted);font-weight:500}.speed-selector{display:flex;align-items:center;background:var(--game-surface-elevated);border:1px solid var(--game-border);border-radius:6px;overflow:hidden}.speed-button{width:24px;height:24px;background:transparent;border:none;color:var(--game-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;transition:all .2s ease}.speed-button:hover:not(:disabled){background:var(--game-border);color:var(--game-text-main)}.speed-button:disabled{opacity:.3;cursor:not-allowed}.speed-value{padding:0 12px;font-size:12px;font-weight:600;color:var(--game-text-main);min-width:32px;text-align:center;background:var(--game-border)}.time-display{display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--game-surface-elevated);border:1px solid var(--game-border);border-radius:6px}.time-display svg{color:var(--game-text-dimmed)}.time-value{font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-size:13px;font-weight:500;color:var(--game-text-main);letter-spacing:.5px}.bar-controls{display:flex;align-items:center;gap:8px}.icon-button{width:32px;height:32px;background:transparent;border:1px solid var(--game-border);color:var(--game-text-dimmed);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.icon-button:hover{background:var(--game-border);color:var(--game-text-main);border-color:var(--game-border)}.icon-button.start-project-button{background:var(--game-primary);color:#fff;border-color:var(--game-primary);padding:0 12px;width:auto;gap:6px}.icon-button.start-project-button:hover:not(:disabled){background:var(--game-primary-hover);border-color:var(--game-primary-hover)}.icon-button.start-project-button:disabled{opacity:.5;cursor:not-allowed}.icon-button.stop-project-button{background:#ef4444;color:#fff;border-color:#ef4444;padding:0 12px;width:auto;gap:6px}.icon-button.stop-project-button:hover:not(:disabled){background:#dc2626;border-color:#dc2626}.icon-button.stop-project-button:disabled{opacity:.5;cursor:not-allowed}.icon-button .button-text{font-size:12px;font-weight:500}.icon-button .spinning{animation:spin 1s linear infinite}.progress-bar{position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--game-surface-elevated);overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--game-primary),var(--game-accent));position:relative}.progress-fill:after{content:"";position:absolute;top:0;right:0;bottom:0;width:20px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2));animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-20px)}to{transform:translate(20px)}}.batch-apply-button{background:transparent;border:1px solid var(--game-border);padding:0 10px;height:24px;border-radius:6px;font-size:11px;font-weight:500;color:var(--game-text-dimmed);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:4px}.batch-apply-button:hover:not(:disabled){background:var(--game-surface-elevated);border-color:var(--game-accent);color:var(--game-accent)}.batch-apply-button:disabled{opacity:.3;cursor:not-allowed}.game-engine-layout{position:relative;width:100vw;height:100vh;display:flex;flex-direction:column;background:var(--game-background);color:var(--game-text-main);font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;overflow:hidden}.engine-main{flex:1;display:flex;overflow:hidden;position:relative;width:100%;height:100%}.sidebar-panel{background:var(--game-surface);border-right:1px solid var(--game-border);overflow:hidden}.sidebar-panel:last-child{border-right:none;border-left:1px solid var(--game-border)}.center-panel,.workbench-panel{background:var(--game-background);overflow:hidden}.resize-handle{position:absolute;background:transparent;transition:all .2s ease;z-index:10}.resize-handle.vertical{top:0;bottom:0;width:4px;cursor:col-resize}.resize-handle.horizontal{left:0;right:0;height:4px;cursor:row-resize}.resize-handle.vertical{background:var(--game-border);width:2px}.resize-handle.vertical:hover{background:var(--game-primary);width:6px}.resize-handle:hover{background:var(--game-primary)}.resize-handle.vertical:hover{background:linear-gradient(90deg,transparent,var(--game-primary),transparent)}.resize-handle.horizontal:hover{background:linear-gradient(180deg,transparent,var(--game-primary),transparent)}.resize-handle.dragging{background:var(--game-primary)!important;opacity:.8}.resizable-layout>.resize-handle.horizontal{background:var(--game-border);transition:all .2s ease}.resizable-layout>.resize-handle.horizontal:hover{background:var(--game-primary);height:6px}.resizable-layout>.resize-handle.horizontal:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;height:2px;background:repeating-linear-gradient(90deg,var(--game-text-muted),var(--game-text-muted) 3px,transparent 3px,transparent 6px);opacity:0;transition:opacity .2s ease}.resizable-layout>.resize-handle.horizontal:hover:after{opacity:.6}.resizable-layout{width:100%;height:100%;overflow:hidden}.resizable-layout>div{position:relative;overflow:hidden}.sidebar-toggle{position:absolute;right:-20px;top:50%;transform:translateY(-50%);width:40px;height:40px;background:var(--game-surface);border:1px solid var(--game-border);border-left:none;border-radius:0 8px 8px 0;color:var(--game-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:20}.sidebar-toggle:hover{background:var(--game-surface-elevated);color:var(--game-text-main)}.dock-toggle{position:absolute;right:20px;width:40px;height:40px;background:var(--game-surface);border:1px solid var(--game-border);border-top:none;border-radius:8px 8px 0 0;color:var(--game-text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:20}.dock-toggle:hover{background:var(--game-surface-elevated);color:var(--game-text-main)}.notification-container{position:fixed;top:80px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:10px;pointer-events:none}.notification{background:var(--game-surface);border:1px solid var(--game-border);border-radius:8px;padding:16px;min-width:300px;max-width:400px;box-shadow:0 10px 40px #0000004d;pointer-events:all;cursor:pointer;position:relative;overflow:hidden}[data-theme=light] .notification{box-shadow:0 10px 40px #0000001a}.notification:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%}.notification-success:before{background:var(--game-success)}.notification-error:before{background:var(--game-error)}.notification-warning:before{background:var(--game-warning)}.notification-info:before{background:var(--game-primary)}.notification-title{font-weight:600;margin-bottom:4px;color:var(--game-text-main)}.notification-message{font-size:14px;color:var(--game-text-muted);line-height:1.4}.notification-close{position:absolute;top:12px;right:12px;background:none;border:none;color:var(--game-text-muted);cursor:pointer;padding:4px;border-radius:4px;transition:all .2s ease;z-index:10}.notification-close:hover{background:var(--game-hover);color:var(--game-text-main)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--game-surface)}::-webkit-scrollbar-thumb{background:var(--game-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--game-text-dimmed)}@media(max-width:1024px){.sidebar-right{width:250px}}@media(max-width:768px){.sidebar-left{position:absolute;height:100%;z-index:100;box-shadow:2px 0 10px #00000080}.sidebar-right{width:200px}.marketplace-dock{height:150px!important}}@media(max-width:480px){.sidebar-right{display:none}.notification-container{right:10px;left:10px}.notification{min-width:auto;max-width:none}}.recharge-page{max-width:600px;margin:0 auto;padding:24px;color:var(--text-main)}.recharge-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.recharge-header h1{display:flex;align-items:center;gap:12px;font-size:24px;font-weight:600;margin:0}.back-button{display:flex;align-items:center;gap:8px;padding:8px 16px;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--text-muted);cursor:pointer;transition:all .2s}.back-button:hover{background:var(--surface);color:var(--text-main)}.refresh-button{padding:8px;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--text-muted);cursor:pointer;transition:all .2s}.refresh-button:hover:not(:disabled){background:var(--surface);color:var(--text-main)}.refresh-button:disabled{opacity:.5;cursor:not-allowed}.spinning{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.balance-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:24px;border-radius:16px;margin-bottom:32px;box-shadow:0 8px 24px #667eea4d}.balance-label{font-size:14px;opacity:.9;margin-bottom:8px}.balance-value{font-size:36px;font-weight:700;margin-bottom:4px}.balance-yuan{font-size:14px;opacity:.8}.recharge-form{background:var(--surface);border-radius:16px;padding:24px;box-shadow:0 2px 8px #0000001a}.recharge-form h2{margin:0 0 20px;font-size:18px;font-weight:600}.quick-amounts{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px}.quick-amount-button{padding:12px;background:var(--background);border:2px solid var(--border);border-radius:12px;font-size:16px;font-weight:600;color:var(--text-main);cursor:pointer;transition:all .2s}.quick-amount-button:hover{border-color:#667eea;color:#667eea}.custom-amount{margin-bottom:20px}.custom-amount label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:var(--text-muted)}.custom-amount input{width:100%;padding:12px 16px;background:var(--background);border:2px solid var(--border);border-radius:12px;font-size:16px;color:var(--text-main);transition:all .2s}.custom-amount input:focus{outline:none;border-color:#667eea}.credits-preview{padding:16px;background:var(--background);border-radius:12px;margin-bottom:20px;text-align:center;font-size:14px}.credits-preview strong{color:#667eea;font-size:20px;font-weight:700}.recharge-button{width:100%;padding:16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:18px;font-weight:600;cursor:pointer;transition:all .2s}.recharge-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.recharge-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.recharge-tips{margin-top:24px;padding:16px;background:var(--background);border-radius:12px;border:1px solid var(--border)}.recharge-tips p{margin:4px 0;font-size:13px;color:var(--text-muted)}.recharge-tips p:before{content:"• ";color:#667eea}.notification{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px;margin-bottom:16px;display:flex;align-items:flex-start;gap:12px;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.notification-success{border-left:4px solid #22c55e}.notification-error{border-left:4px solid #ef4444}.notification-warning{border-left:4px solid #f59e0b}.notification-content{flex:1}.notification-title{font-weight:600;margin-bottom:4px;color:var(--text-main)}.notification-message{font-size:14px;color:var(--text-muted)}.notification-close{padding:4px 8px;background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:18px;line-height:1}.notification-close:hover{color:var(--text-main)}.payment-methods{margin-bottom:24px}.payment-methods h2{margin:0 0 16px;font-size:18px;font-weight:600}.payment-method-list{display:flex;flex-direction:column;gap:12px}.payment-method{display:flex;align-items:center;padding:16px;background:var(--surface);border:2px solid var(--border);border-radius:12px;cursor:pointer;transition:all .2s}.payment-method:hover{border-color:#1677ff}.payment-method.selected{border-color:#1677ff;background:#1677ff0d}.payment-method-icon{position:relative;width:48px;height:48px;display:flex;align-items:center;justify-content:center;margin-right:16px}.payment-method-icon svg{position:absolute;opacity:0}.alipay-logo{width:32px;height:32px;object-fit:contain}.payment-method-info{flex:1}.payment-method-name{font-size:16px;font-weight:600;margin-bottom:4px}.payment-method-desc{font-size:13px;color:var(--text-muted)}.payment-method-check{width:24px;height:24px;border-radius:50%;background:#1677ff;color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700}.recharge-button.alipay{background:linear-gradient(135deg,#1677ff,#00a6ff)}.recharge-button.alipay:hover:not(:disabled){box-shadow:0 4px 16px #1677ff66}.quick-amount-button.selected{border-color:#1677ff;background:#1677ff1a;color:#1677ff}.membership-status-card{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:20px;margin-bottom:16px}.membership-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.membership-plan-info{display:flex;align-items:center;gap:12px}.membership-plan-name{font-size:18px;font-weight:600;color:var(--text-main)}.membership-plan-desc{font-size:13px;color:var(--text-muted);margin-top:2px}.upgrade-button{display:flex;align-items:center;gap:6px;padding:8px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.upgrade-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #667eea66}.membership-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.membership-stat{padding:12px;background:var(--background);border-radius:10px}.stat-label{display:block;font-size:12px;color:var(--text-muted);margin-bottom:4px}.stat-value{display:block;font-size:16px;font-weight:600;color:var(--text-main);margin-bottom:8px}.stat-bar{width:100%;height:4px;background:var(--border);border-radius:2px;overflow:hidden}.stat-bar-fill{height:100%;border-radius:2px;transition:width .3s ease}.sync-notification{position:fixed;bottom:100px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--surface-elevated, #1e1e1e);border:1px solid var(--border-color, #2a2a2a);border-radius:8px;box-shadow:0 4px 12px #0000004d;z-index:1000;animation:slideUp .3s ease;min-width:320px;max-width:500px}@keyframes slideUp{0%{transform:translate(-50%) translateY(20px);opacity:0}to{transform:translate(-50%) translateY(0);opacity:1}}.sync-notification.syncing{border-color:var(--primary-color, #3b82f6);background:#3b82f60d}.sync-notification.success{border-color:#10b981;background:#10b9810d}.sync-notification.failed{border-color:#ef4444;background:#ef44440d}.sync-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.syncing .sync-icon{color:var(--primary-color, #3b82f6)}.success .sync-icon{color:#10b981}.failed .sync-icon{color:#ef4444}.sync-content{flex:1;min-width:0}.sync-message{font-size:14px;font-weight:500;color:var(--text-primary, #ffffff);margin-bottom:2px}.sync-progress{font-size:12px;color:var(--text-secondary, #888)}.sync-trigger{display:flex;align-items:center;gap:4px;padding:4px 8px;background:var(--input-bg, #121212);border-radius:4px;font-size:11px;font-weight:500;color:var(--text-tertiary, #666);text-transform:uppercase;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}
