.canvas-container{background:var(--bg-card);border-left:1px solid var(--border-color);box-shadow:var(--shadow-large);animation:canvasSlideIn .3s ease-out;z-index:50;position:relative}@keyframes canvasSlideIn{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.canvas-resize-handle{background:transparent;transition:background .2s}.canvas-resize-handle:before{content:"";position:absolute;left:2px;top:50%;transform:translateY(-50%);width:3px;height:40px;background:var(--border-color);border-radius:2px;opacity:0;transition:opacity .2s}.canvas-resize-handle.dragging:before,.canvas-resize-handle:hover:before{opacity:1;background:var(--primary-500)}.canvas-resize-indicator{position:fixed;left:50%;transform:translate(-50%,-50%);padding:6px 12px;font-size:12px;font-weight:500;color:var(--text-secondary);box-shadow:var(--shadow-medium);z-index:9999}.canvas-resize-indicator,.canvas-width-presets{top:50%;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-medium)}.canvas-width-presets{position:absolute;left:-48px;transform:translateY(-50%);display:flex;flex-direction:column;gap:4px;padding:6px;box-shadow:var(--shadow-small);opacity:0;transition:opacity .2s;z-index:10}.canvas-container:hover .canvas-width-presets{opacity:1}.canvas-preset-btn{width:28px;height:24px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;color:var(--text-tertiary);background:transparent;border:1px solid transparent;border-radius:var(--radius-small);cursor:pointer;transition:all .15s}.canvas-preset-btn:hover{background:var(--bg-hover);color:var(--text-secondary)}.canvas-preset-btn.active{background:var(--primary-500);color:white;border-color:var(--primary-500)}.canvas-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-color);background:var(--bg-secondary)}.canvas-header-left{display:flex;align-items:center;gap:12px}.canvas-title{font-size:14px;font-weight:600;color:var(--text-primary)}.canvas-mode-badge{font-size:10px;font-weight:500;padding:2px 8px;background:var(--bg-tertiary);color:var(--text-secondary);border-radius:10px;text-transform:uppercase;letter-spacing:.5px}.canvas-tabs{display:flex;gap:2px;padding:4px;background:var(--bg-tertiary);border-radius:var(--radius-medium)}.canvas-tab{padding:6px 14px;font-size:12px;font-weight:500;color:var(--text-tertiary);background:transparent;border:none;border-radius:var(--radius-small);cursor:pointer;transition:all .15s}.canvas-tab:hover{color:var(--text-secondary);background:var(--bg-hover)}.canvas-tab.active{color:var(--text-primary);background:var(--bg-card);box-shadow:var(--shadow-small)}.canvas-close-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);background:transparent;border:none;border-radius:var(--radius-small);cursor:pointer;transition:all .15s}.canvas-close-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.canvas-content{flex:1;overflow:auto;position:relative;background:var(--bg-card);min-height:0;display:flex;flex-direction:column}.canvas-code-view{min-height:100%;background:var(--bg-card)}.canvas-code-toolbar{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:5}.canvas-code-lang{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;color:var(--text-secondary)}.canvas-code-lang-dot{width:6px;height:6px;background:var(--primary-500);border-radius:50%}.canvas-code-toolbar-actions{display:flex;gap:4px}.canvas-code-tool-btn{display:flex;align-items:center;gap:6px;padding:6px 10px;background:transparent;border:1px solid var(--border-color);border-radius:var(--radius-small);font-size:11px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .15s}.canvas-code-tool-btn:hover{background:var(--primary-500);border-color:var(--primary-500);color:white}.canvas-code-editor{padding:16px 20px;font-family:JetBrains Mono,Fira Code,monospace;font-size:13px;line-height:1.6;overflow-y:auto;max-height:calc(100vh - 180px)}.canvas-code-line{display:flex;min-height:22px;transition:background .15s}.canvas-code-line:hover{background:var(--bg-hover)}.canvas-line-num{width:40px;color:var(--text-tertiary);text-align:right;padding-right:16px;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:.5}.canvas-code-line:hover .canvas-line-num{opacity:.8}.canvas-line-code{flex:1;color:var(--text-primary);white-space:pre}.canvas-code-line.ai-edit{background:var(--bg-active);border-left:2px solid var(--primary-500);margin-left:-2px;padding-left:2px}.canvas-version-bar{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:12px;padding:8px 16px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:100px;box-shadow:var(--shadow-medium);z-index:10}.canvas-version-indicator{display:flex;align-items:center;gap:8px}.canvas-version-dot{width:6px;height:6px;background:var(--primary-500);border-radius:50%}.canvas-version-text{font-size:12px;font-weight:500;color:var(--text-secondary)}.canvas-version-divider{width:1px;height:16px;background:var(--border-color)}.canvas-version-nav{display:flex;gap:4px}.canvas-version-nav-btn{width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-small);color:var(--text-tertiary);cursor:pointer;transition:all .15s}.canvas-version-nav-btn:hover:not(:disabled){background:var(--primary-500);border-color:var(--primary-500);color:white}.canvas-version-nav-btn:disabled{opacity:.3;cursor:not-allowed}.canvas-minimap{position:absolute;right:8px;top:56px;width:48px;height:120px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-small);overflow:hidden;opacity:0;transition:opacity .2s;z-index:10}.canvas-code-view:hover .canvas-minimap{opacity:.6}.canvas-minimap:hover{opacity:1!important}.canvas-minimap-viewport{position:absolute;top:4px;left:2px;right:2px;height:30px;background:var(--bg-active);border:1px solid var(--primary-500);border-radius:2px}.canvas-minimap-lines{padding:4px}.canvas-minimap-line{height:2px;background:var(--text-tertiary);margin-bottom:2px;border-radius:1px;opacity:.2}.canvas-minimap-line.highlight{background:var(--primary-500);opacity:.6}.canvas-preview-view{flex:1;display:flex;flex-direction:column;padding:16px;background:var(--bg-card);height:100%;min-height:0}.canvas-preview-header{padding:8px 0;border-bottom:1px solid var(--border-color);margin-bottom:12px}.canvas-preview-filename{font-size:13px;font-weight:600;color:var(--text-secondary)}.canvas-preview-content{flex:1;overflow:auto}.canvas-preview-code{font-family:JetBrains Mono,monospace;font-size:13px;line-height:1.6;color:var(--text-primary);white-space:pre-wrap;margin:0}.canvas-preview-empty{display:flex;align-items:center;justify-content:center;flex:1;color:var(--text-tertiary);text-align:center;padding:40px 16px}.canvas-preview-html{padding:0;height:100%}.canvas-preview-html .canvas-preview-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;margin-bottom:0;background:var(--bg-secondary)}.canvas-preview-badge{font-size:10px;font-weight:500;padding:3px 8px;background:var(--bg-active);color:var(--primary-500);border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.canvas-preview-iframe-container{flex:1;background:#ffffff;border-radius:0 0 var(--radius-medium) var(--radius-medium);overflow:hidden;min-height:0;height:100%}.canvas-preview-iframe-container iframe{width:100%;height:100%;min-height:300px;border:none;display:block}.canvas-history-view{flex:1;display:flex;flex-direction:column;padding:12px;background:var(--bg-card);min-height:400px}.canvas-history-list{display:flex;flex-direction:column;gap:6px}.canvas-history-item{display:flex;flex-direction:column;gap:4px;padding:10px 14px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-small);cursor:pointer;transition:all .15s;text-align:left;width:100%}.canvas-history-item:hover{border-color:var(--primary-500);background:var(--bg-hover)}.canvas-history-item.active{border-color:var(--primary-500);background:var(--bg-active)}.canvas-history-item-header{display:flex;align-items:center;gap:8px}.canvas-history-version{font-size:13px;font-weight:600;color:var(--text-primary)}.canvas-history-badge{font-size:9px;font-weight:600;padding:2px 6px;background:var(--primary-500);color:white;border-radius:4px}.canvas-history-item-meta{display:flex;flex-direction:column;gap:2px}.canvas-history-time{font-size:11px;color:var(--text-tertiary)}.canvas-history-message{font-size:12px;color:var(--text-secondary)}.canvas-history-empty{display:flex;align-items:center;justify-content:center;flex:1;color:var(--text-tertiary);text-align:center;padding:40px 16px}.canvas-content::-webkit-scrollbar{width:6px}.canvas-content::-webkit-scrollbar-track{background:transparent}.canvas-content::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.canvas-content::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.canvas-mermaid-preview,.canvas-preview-mermaid .canvas-preview-iframe-container{background:var(--bg-card)}.canvas-mermaid-preview{padding:16px;border-radius:0 0 var(--radius-medium) var(--radius-medium);min-height:300px;display:flex;align-items:center;justify-content:center}.canvas-mermaid-container{width:100%;overflow:auto}.canvas-mermaid-container svg{max-width:100%;height:auto;display:block;margin:0 auto}.canvas-preview-loading{display:flex;align-items:center;justify-content:center;min-height:200px;color:var(--text-secondary);font-size:13px}.canvas-preview-error{padding:16px;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-medium);margin:16px}.canvas-error-title{font-size:14px;font-weight:600;color:#ef4444;margin:0 0 8px}.canvas-error-message{font-family:JetBrains Mono,monospace;font-size:12px;color:var(--text-secondary);background:var(--bg-tertiary);padding:10px;border-radius:var(--radius-small);overflow-x:auto;margin:0;white-space:pre-wrap;word-break:break-word}.canvas-preview-svg .canvas-preview-iframe-container,.canvas-svg-preview{background:var(--bg-card)}.canvas-svg-preview{padding:16px;border-radius:0 0 var(--radius-medium) var(--radius-medium);min-height:300px}.canvas-svg-container{display:flex;align-items:center;justify-content:center;min-height:250px}.canvas-svg-container svg{max-width:100%;max-height:800px;height:auto}.canvas-preview-react .canvas-preview-iframe-container{background:var(--bg-card);padding:0}.canvas-react-preview{min-height:300px;border-radius:0 0 var(--radius-medium) var(--radius-medium);overflow:hidden}.canvas-sandpack-preview{width:100%;min-height:300px}.canvas-sandpack-preview .sp-layout{border:none!important;border-radius:0!important;background:transparent!important}.canvas-sandpack-preview .sp-stack{height:100%!important;min-height:300px!important}.canvas-sandpack-preview .sp-preview-container{background:var(--bg-card)!important}.canvas-sandpack-preview .sp-preview{border-radius:0!important}.canvas-sandpack-preview .sp-button{color:var(--text-secondary)!important}.canvas-sandpack-preview .sp-button:hover{color:var(--primary-500)!important}.canvas-sandpack-preview .sp-code-editor{background:var(--bg-card)!important}.canvas-sandpack-error{padding:14px;background:rgba(239,68,68,.1);border:1px solid rgba(239,68,68,.2);border-radius:var(--radius-small);margin:12px}.canvas-sandpack-error .canvas-error-title{color:#ef4444;font-weight:600;margin-bottom:8px}.canvas-sandpack-error .canvas-error-message{color:#fca5a5;font-size:12px;font-family:monospace;white-space:pre-wrap;word-break:break-word}.canvas-progress{padding:10px 14px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-medium);margin:8px 0}.canvas-progress-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.canvas-progress-icon{font-size:14px}.canvas-progress-title{font-size:13px;font-weight:500;color:var(--text-primary)}.canvas-progress-subtitle{font-size:11px;color:var(--text-tertiary);margin-left:auto}.canvas-progress-steps{display:flex;flex-direction:column;gap:4px;margin-left:8px}.canvas-progress-step{display:flex;align-items:center;gap:8px;padding:3px 0;font-size:12px;color:var(--text-secondary)}.canvas-progress-step--active,.canvas-progress-step--done{color:var(--primary-500)}.canvas-progress-step--pending{opacity:.5}.canvas-progress-step-icon{width:14px;height:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.canvas-progress-step-icon--active,.canvas-progress-step-icon--done{color:var(--primary-500)}.canvas-progress-step-icon--pending{color:var(--text-tertiary)}.canvas-progress-spinner{width:12px;height:12px;border:2px solid;border-right:2px solid transparent;border-radius:50%;animation:canvas-progress-spin .7s linear infinite}.canvas-progress-dot{width:5px;height:5px;background:currentColor;border-radius:50%}.canvas-progress-step-label{flex:1}.canvas-progress-step-detail,.canvas-progress-step-duration{font-size:10px;color:var(--text-tertiary)}.canvas-progress-step-duration{font-family:monospace}.canvas-progress-footer{margin-top:8px;padding-top:8px;border-top:1px solid var(--border-color)}.canvas-progress-count{font-size:10px;color:var(--text-tertiary)}@keyframes canvas-progress-spin{to{transform:rotate(1turn)}}.canvas-streaming-cursor{color:var(--primary-500);animation:cursorBlink .8s step-end infinite}@keyframes cursorBlink{0%,50%{opacity:1}51%,to{opacity:0}}.canvas-card{display:inline-flex;align-items:center;gap:10px;padding:8px 12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-medium);cursor:pointer;transition:all .15s;margin:8px 0;width:-moz-fit-content;width:fit-content;max-width:100%}.canvas-card:hover{background:var(--bg-hover);border-color:var(--primary-500)}.canvas-card-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--bg-active);border-radius:var(--radius-small);color:var(--primary-500);flex-shrink:0}.canvas-card-content{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.canvas-card-title{font-size:13px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.canvas-card-language{font-size:11px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px}.canvas-card-action{font-size:11px;font-weight:500;color:var(--primary-500);padding:4px 8px;background:var(--bg-active);border-radius:var(--radius-small);flex-shrink:0}.canvas-card:hover .canvas-card-action{background:var(--primary-500);color:white}@media (prefers-reduced-motion:reduce){.canvas-container,.canvas-progress-spinner,.streaming-cursor{animation:none!important}.streaming-cursor{opacity:1}}.streaming-text-container{white-space:pre-wrap;word-break:break-word;font-size:inherit;line-height:1.75;font-weight:450;letter-spacing:-.01em;color:var(--text-primary)}.streaming-cursor{display:inline-block;width:2px;height:1.2em;margin-left:2px;background:var(--primary-600,#10b981);border-radius:1px;vertical-align:text-bottom;animation:streamingCursorBlink .8s step-end infinite}@keyframes streamingCursorBlink{0%,50%{opacity:1}51%,to{opacity:0}}.dark .streaming-cursor,[data-theme=dark] .streaming-cursor{background:var(--primary-400,#34d399)}@media (prefers-reduced-motion:reduce){.streaming-cursor{animation:none;opacity:1}}body.theme-ocean{--primary-50:#f0f9ff;--primary-100:#e0f2fe;--primary-200:#bae6fd;--primary-300:#7dd3fc;--primary-400:#38bdf8;--primary-500:#0ea5e9;--primary-600:#0284c7;--primary-700:#0369a1;--primary-800:#075985;--primary-900:#0c4a6e;--primary-rgb:14,165,233;--gradient-main:linear-gradient(135deg,#f0f9ff,#e0f2fe);--gradient-sidebar:linear-gradient(180deg,#075985,#0369a1);--gradient-button:linear-gradient(135deg,#0ea5e9,#0284c7);--bg-main:var(--gradient-main);--bg-sidebar:var(--gradient-sidebar);--bg-chat:#ffffff;--bg-card:#ffffff;--bg-input:rgba(240,249,255,0.7);--bg-hover:rgba(14,165,233,0.05);--bg-active:rgba(14,165,233,0.1);--text-primary:#075985;--text-secondary:#64748b;--border-color:#bae6fd;--shadow-sidebar:4px 0 20px rgba(7,89,133,0.15)}body.theme-ocean.dark{--primary-50:#082f49;--primary-100:#0c4a6e;--primary-200:#075985;--gradient-main:linear-gradient(135deg,#0a0e1a,#000000);--gradient-sidebar:linear-gradient(180deg,#0a0e1a,#000000);--bg-main:linear-gradient(135deg,#0a0e1a,#000000);--bg-sidebar:linear-gradient(180deg,#0a0e1a,#000000);--bg-chat:#0a0e1a;--bg-card:#1a1f2e;--bg-input:#0c4a6e;--bg-hover:rgba(255,255,255,0.05);--bg-active:rgba(255,255,255,0.1);--text-primary:#38bdf8;--text-secondary:#94a3b8;--text-sidebar:#ffffff;--text-sidebar-secondary:rgba(255,255,255,0.6);--border-color:#1e293b;--border-sidebar:rgba(255,255,255,0.08);--shadow-sidebar:4px 0 20px rgba(0,0,0,0.5)}body.theme-purple{--primary-50:#faf5ff;--primary-100:#f3e8ff;--primary-200:#e9d5ff;--primary-300:#d8b4fe;--primary-400:#c084fc;--primary-500:#a855f7;--primary-600:#9333ea;--primary-700:#7e22ce;--primary-800:#6b21a8;--primary-900:#581c87;--primary-rgb:168,85,247;--gradient-main:linear-gradient(135deg,#faf5ff,#f3e8ff);--gradient-sidebar:linear-gradient(180deg,#6b21a8,#7e22ce);--gradient-button:linear-gradient(135deg,#a855f7,#9333ea);--bg-main:var(--gradient-main);--bg-sidebar:var(--gradient-sidebar);--bg-chat:#ffffff;--bg-card:#ffffff;--bg-input:rgba(250,245,255,0.7);--bg-hover:rgba(168,85,247,0.05);--bg-active:rgba(168,85,247,0.1);--text-primary:#6b21a8;--text-secondary:#6b7280;--border-color:#e9d5ff;--shadow-sidebar:4px 0 20px rgba(107,33,168,0.15)}body.theme-purple.dark{--primary-50:#3b0764;--primary-100:#581c87;--primary-200:#6b21a8;--gradient-main:linear-gradient(135deg,#0d0612,#000000);--gradient-sidebar:linear-gradient(180deg,#0d0612,#000000);--bg-main:linear-gradient(135deg,#0d0612,#000000);--bg-sidebar:linear-gradient(180deg,#0d0612,#000000);--bg-chat:#0d0612;--bg-card:#1e1025;--bg-input:#581c87;--bg-hover:rgba(255,255,255,0.05);--bg-active:rgba(255,255,255,0.1);--text-primary:#c084fc;--text-secondary:#a1a1aa;--text-sidebar:#ffffff;--text-sidebar-secondary:rgba(255,255,255,0.6);--border-color:#1e1b4b;--border-sidebar:rgba(255,255,255,0.08);--shadow-sidebar:4px 0 20px rgba(0,0,0,0.5)}body.theme-orange{--primary-50:#fff7ed;--primary-100:#ffedd5;--primary-200:#fed7aa;--primary-300:#fdba74;--primary-400:#fb923c;--primary-500:#f97316;--primary-600:#ea580c;--primary-700:#c2410c;--primary-800:#9a3412;--primary-900:#7c2d12;--primary-rgb:249,115,22;--gradient-main:linear-gradient(135deg,#fff7ed,#ffedd5);--gradient-sidebar:linear-gradient(180deg,#9a3412,#c2410c);--gradient-button:linear-gradient(135deg,#f97316,#ea580c);--bg-main:var(--gradient-main);--bg-sidebar:var(--gradient-sidebar);--bg-chat:#ffffff;--bg-card:#ffffff;--bg-input:rgba(255,247,237,0.7);--bg-hover:rgba(249,115,22,0.05);--bg-active:rgba(249,115,22,0.1);--text-primary:#9a3412;--text-secondary:#78716c;--border-color:#fed7aa;--shadow-sidebar:4px 0 20px rgba(154,52,18,0.15)}body.theme-orange.dark{--primary-50:#431407;--primary-100:#7c2d12;--primary-200:#9a3412;--gradient-main:linear-gradient(135deg,#0f0604,#000000);--gradient-sidebar:linear-gradient(180deg,#0f0604,#000000);--bg-main:linear-gradient(135deg,#0f0604,#000000);--bg-sidebar:linear-gradient(180deg,#0f0604,#000000);--bg-chat:#0f0604;--bg-card:#1c0f08;--bg-input:#7c2d12;--bg-hover:rgba(255,255,255,0.05);--bg-active:rgba(255,255,255,0.1);--text-primary:#fb923c;--text-secondary:#a8a29e;--text-sidebar:#ffffff;--text-sidebar-secondary:rgba(255,255,255,0.6);--border-color:#1c1917;--border-sidebar:rgba(255,255,255,0.08);--shadow-sidebar:4px 0 20px rgba(0,0,0,0.5)}body.theme-rose{--primary-50:#fff1f2;--primary-100:#ffe4e6;--primary-200:#fecdd3;--primary-300:#fda4af;--primary-400:#fb7185;--primary-500:#f43f5e;--primary-600:#e11d48;--primary-700:#be123c;--primary-800:#9f1239;--primary-900:#881337;--primary-rgb:244,63,94;--gradient-main:linear-gradient(135deg,#fff1f2,#ffe4e6);--gradient-sidebar:linear-gradient(180deg,#9f1239,#be123c);--gradient-button:linear-gradient(135deg,#f43f5e,#e11d48);--bg-main:var(--gradient-main);--bg-sidebar:var(--gradient-sidebar);--bg-chat:#ffffff;--bg-card:#ffffff;--bg-input:rgba(255,241,242,0.7);--bg-hover:rgba(244,63,94,0.05);--bg-active:rgba(244,63,94,0.1);--text-primary:#9f1239;--text-secondary:#737373;--border-color:#fecdd3;--shadow-sidebar:4px 0 20px rgba(159,18,57,0.15)}body.theme-rose.dark{--primary-50:#4c0519;--primary-100:#881337;--primary-200:#9f1239;--gradient-main:linear-gradient(135deg,#0c0305,#000000);--gradient-sidebar:linear-gradient(180deg,#0c0305,#000000);--bg-main:linear-gradient(135deg,#0c0305,#000000);--bg-sidebar:linear-gradient(180deg,#0c0305,#000000);--bg-chat:#0c0305;--bg-card:#1c0a0e;--bg-input:#881337;--bg-hover:rgba(255,255,255,0.05);--bg-active:rgba(255,255,255,0.1);--text-primary:#fb7185;--text-secondary:#a1a1aa;--text-sidebar:#ffffff;--text-sidebar-secondary:rgba(255,255,255,0.6);--border-color:#1c1917;--border-sidebar:rgba(255,255,255,0.08);--shadow-sidebar:4px 0 20px rgba(0,0,0,0.5)}body.theme-coral{--primary-50:#fef2f2;--primary-100:#fee2e2;--primary-200:#fecaca;--primary-300:#fca5a5;--primary-400:#f87171;--primary-500:#ef4444;--primary-600:#dc2626;--primary-700:#b91c1c;--primary-800:#991b1b;--primary-900:#7f1d1d;--primary-rgb:239,68,68;--gradient-main:linear-gradient(135deg,#fef2f2,#fee2e2);--gradient-sidebar:linear-gradient(180deg,#991b1b,#b91c1c);--gradient-button:linear-gradient(135deg,#ef4444,#dc2626);--bg-main:var(--gradient-main);--bg-sidebar:var(--gradient-sidebar);--bg-chat:#ffffff;--bg-card:#ffffff;--bg-input:rgba(254,242,242,0.7);--bg-hover:rgba(239,68,68,0.05);--bg-active:rgba(239,68,68,0.1);--text-primary:#991b1b;--text-secondary:#718096;--border-color:#fecaca;--shadow-sidebar:4px 0 20px rgba(153,27,27,0.15)}body.theme-coral.dark{--primary-50:#450a0a;--primary-100:#7f1d1d;--primary-200:#991b1b;--gradient-main:linear-gradient(135deg,#0f0505,#000000);--gradient-sidebar:linear-gradient(180deg,#0f0505,#000000);--bg-main:linear-gradient(135deg,#0f0505,#000000);--bg-sidebar:linear-gradient(180deg,#0f0505,#000000);--bg-chat:#0f0505;--bg-card:#1c0a0a;--bg-input:#7f1d1d;--bg-hover:rgba(255,255,255,0.05);--bg-active:rgba(255,255,255,0.1);--text-primary:#fc8181;--text-secondary:#a8a29e;--text-sidebar:#ffffff;--text-sidebar-secondary:rgba(255,255,255,0.6);--border-color:#1c1917;--border-sidebar:rgba(255,255,255,0.08);--shadow-sidebar:4px 0 20px rgba(0,0,0,0.5)}body.theme-lavender{--primary-50:#f5f3ff;--primary-100:#ede9fe;--primary-200:#ddd6fe;--primary-300:#c4b5fd;--primary-400:#a78bfa;--primary-500:#8b5cf6;--primary-600:#7c3aed;--primary-700:#6d28d9;--primary-800:#5b21b6;--primary-900:#4c1d95;--primary-rgb:139,92,246;--gradient-main:linear-gradient(135deg,#f5f3ff,#ede9fe);--gradient-sidebar:linear-gradient(180deg,#5b21b6,#6d28d9);--gradient-button:linear-gradient(135deg,#8b5cf6,#7c3aed);--bg-main:var(--gradient-main);--bg-sidebar:var(--gradient-sidebar);--bg-chat:#ffffff;--bg-card:#ffffff;--bg-input:rgba(245,243,255,0.7);--bg-hover:rgba(139,92,246,0.05);--bg-active:rgba(139,92,246,0.1);--text-primary:#5b21b6;--text-secondary:#737373;--border-color:#ddd6fe;--shadow-sidebar:4px 0 20px rgba(91,33,182,0.15)}body.theme-lavender.dark{--primary-50:#2e1065;--primary-100:#4c1d95;--primary-200:#5b21b6;--gradient-main:linear-gradient(135deg,#0d0612,#000000);--gradient-sidebar:linear-gradient(180deg,#0d0612,#000000);--bg-main:linear-gradient(135deg,#0d0612,#000000);--bg-sidebar:linear-gradient(180deg,#0d0612,#000000);--bg-chat:#0d0612;--bg-card:#1a0f2e;--bg-input:#4c1d95;--bg-hover:rgba(255,255,255,0.05);--bg-active:rgba(255,255,255,0.1);--text-primary:#a78bfa;--text-secondary:#a1a1aa;--text-sidebar:#ffffff;--text-sidebar-secondary:rgba(255,255,255,0.6);--border-color:#3b1a6b;--border-sidebar:rgba(255,255,255,0.08);--shadow-sidebar:4px 0 20px rgba(0,0,0,0.5)}body.theme-mint{--primary-50:#f0fdfa;--primary-100:#ccfbf1;--primary-200:#99f6e4;--primary-300:#5eead4;--primary-400:#2dd4bf;--primary-500:#14b8a6;--primary-600:#0d9488;--primary-700:#0f766e;--primary-800:#115e59;--primary-900:#134e4a;--primary-rgb:20,184,166;--gradient-main:linear-gradient(135deg,#f0fdfa,#ccfbf1);--gradient-sidebar:linear-gradient(180deg,#115e59,#0f766e);--gradient-button:linear-gradient(135deg,#14b8a6,#0d9488);--bg-main:var(--gradient-main);--bg-sidebar:var(--gradient-sidebar);--bg-chat:#ffffff;--bg-card:#ffffff;--bg-input:rgba(240,253,250,0.7);--bg-hover:rgba(20,184,166,0.05);--bg-active:rgba(20,184,166,0.1);--text-primary:#115e59;--text-secondary:#64748b;--border-color:#99f6e4;--shadow-sidebar:4px 0 20px rgba(17,94,89,0.15)}body.theme-mint.dark{--primary-50:#042f2e;--primary-100:#134e4a;--primary-200:#115e59;--gradient-main:linear-gradient(135deg,#0a0e0e,#000000);--gradient-sidebar:linear-gradient(180deg,#0a0e0e,#000000);--bg-main:linear-gradient(135deg,#0a0e0e,#000000);--bg-sidebar:linear-gradient(180deg,#0a0e0e,#000000);--bg-chat:#0a0e0e;--bg-card:#1a2020;--bg-input:#134e4a;--bg-hover:rgba(255,255,255,0.05);--bg-active:rgba(255,255,255,0.1);--text-primary:#5eead4;--text-secondary:#94a3b8;--text-sidebar:#ffffff;--text-sidebar-secondary:rgba(255,255,255,0.6);--border-color:#1c1917;--border-sidebar:rgba(255,255,255,0.08);--shadow-sidebar:4px 0 20px rgba(0,0,0,0.5)}body.theme-white{--primary-50:#ffffff;--primary-100:#fafafa;--primary-200:#f5f5f5;--primary-300:#e5e5e5;--primary-400:#d4d4d4;--primary-500:#a3a3a3;--primary-600:#737373;--primary-700:#525252;--primary-800:#404040;--primary-900:#262626;--primary-rgb:163,163,163;--gradient-main:linear-gradient(135deg,#ffffff,#fafafa);--gradient-sidebar:linear-gradient(180deg,#f5f5f5,#e5e5e5);--gradient-button:linear-gradient(135deg,#a3a3a3,#737373);--bg-main:linear-gradient(135deg,#ffffff,#fafafa);--bg-sidebar:linear-gradient(180deg,#f5f5f5,#e5e5e5);--bg-chat:#ffffff;--bg-card:#fafafa;--bg-input:rgba(255,255,255,0.7);--bg-hover:rgba(163,163,163,0.05);--bg-active:rgba(163,163,163,0.1);--text-primary:#000000;--text-secondary:#404040;--text-sidebar:#000000;--text-sidebar-secondary:rgba(0,0,0,0.7);--border-color:#e5e5e5;--border-sidebar:rgba(38,38,38,0.12);--shadow-sidebar:4px 0 20px rgba(0,0,0,0.05)}body.theme-white.dark{--primary-50:#262626;--primary-100:#404040;--primary-200:#525252;--gradient-main:linear-gradient(135deg,#0a0a0a,#000000);--gradient-sidebar:linear-gradient(180deg,#0a0a0a,#000000);--bg-main:linear-gradient(135deg,#0a0a0a,#000000);--bg-sidebar:linear-gradient(180deg,#0a0a0a,#000000);--bg-chat:#0a0a0a;--bg-card:#171717;--bg-input:#404040;--bg-hover:rgba(255,255,255,0.05);--bg-active:rgba(255,255,255,0.1);--text-primary:#fafafa;--text-secondary:#a3a3a3;--text-sidebar:#ffffff;--text-sidebar-secondary:rgba(255,255,255,0.6);--border-color:#262626;--border-sidebar:rgba(255,255,255,0.08);--shadow-sidebar:4px 0 20px rgba(0,0,0,0.5)}body.theme-black{--primary-50:#fafafa;--primary-100:#f4f4f5;--primary-200:#e4e4e7;--primary-300:#d4d4d8;--primary-400:#a1a1aa;--primary-500:#71717a;--primary-600:#52525b;--primary-700:#3f3f46;--primary-800:#27272a;--primary-900:#18181b;--primary-rgb:113,113,122;--gradient-main:linear-gradient(135deg,#000000,#0a0a0a);--gradient-sidebar:linear-gradient(180deg,#27272a,#18181b);--gradient-button:linear-gradient(135deg,#71717a,#52525b);--bg-main:linear-gradient(135deg,#000000,#0a0a0a);--bg-sidebar:linear-gradient(180deg,#27272a,#18181b);--bg-chat:#000000;--bg-card:#0a0a0a;--bg-input:#1a1a1a;--bg-hover:rgba(255,255,255,0.05);--bg-active:rgba(255,255,255,0.1);--text-primary:#ffffff;--text-secondary:#a1a1aa;--text-sidebar:#ffffff;--text-sidebar-secondary:rgba(255,255,255,0.8);--border-color:#e4e4e7;--border-sidebar:rgba(255,255,255,0.12);--shadow-sidebar:4px 0 20px rgba(0,0,0,0.3)}body.theme-black.dark{--primary-50:#0a0a0a;--primary-100:#18181b;--primary-200:#27272a;--gradient-main:linear-gradient(135deg,#000000,#0a0a0a);--gradient-sidebar:linear-gradient(180deg,#000000,#0a0a0a);--bg-main:linear-gradient(135deg,#000000,#0a0a0a);--bg-sidebar:linear-gradient(180deg,#000000,#0a0a0a);--bg-chat:#000000;--bg-card:#0a0a0a;--bg-input:#18181b;--bg-hover:rgba(255,255,255,0.05);--bg-active:rgba(255,255,255,0.1);--text-primary:#fafafa;--text-secondary:#a1a1aa;--text-sidebar:#ffffff;--text-sidebar-secondary:rgba(255,255,255,0.6);--border-color:#18181b;--border-sidebar:rgba(255,255,255,0.08);--shadow-sidebar:4px 0 20px rgba(0,0,0,0.8)}.markdown-content{font-size:16px;line-height:1.75;color:var(--text-primary);font-weight:450;letter-spacing:-.01em}.markdown-h1{font-size:1.5rem;font-weight:700;margin:1.5rem 0 1rem;color:var(--text-primary);border-bottom:1px solid var(--border-color);padding-bottom:.5rem}.markdown-h2{font-size:1.25rem;margin:1.25rem 0 .75rem}.markdown-h2,.markdown-h3{font-weight:600;color:var(--text-primary)}.markdown-h3{font-size:1.1rem;margin:1rem 0 .5rem}.markdown-h4{font-size:1rem;font-weight:600;margin:.75rem 0 .5rem;color:var(--text-primary)}.markdown-p{margin:.75rem 0}.markdown-p:first-child{margin-top:0}.markdown-p:last-child{margin-bottom:0}.markdown-strong{font-weight:600;color:var(--text-primary)}.markdown-em{font-style:italic}.markdown-ul{list-style-type:disc}.markdown-ol,.markdown-ul{margin:.75rem 0;padding-left:1.5rem}.markdown-ol{list-style-type:decimal}.markdown-li,.markdown-li>.markdown-ol,.markdown-li>.markdown-ul{margin:.25rem 0}.markdown-link{color:var(--primary-600);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .15s ease}.markdown-link:hover{border-bottom-color:var(--primary-600)}.markdown-blockquote{margin:1rem 0;padding:.75rem 1rem;border-left:3px solid var(--primary-500);background:var(--bg-hover);border-radius:0 var(--radius-small) var(--radius-small) 0;color:var(--text-secondary)}.markdown-blockquote>.markdown-p:first-child{margin-top:0}.markdown-blockquote>.markdown-p:last-child{margin-bottom:0}.markdown-table-wrapper{margin:1rem 0;overflow-x:auto;border-radius:var(--radius-medium);border:1px solid var(--border-color)}.markdown-table{width:100%;border-collapse:collapse;font-size:.875rem}.markdown-thead{background:var(--bg-hover)}.markdown-th{text-align:left;font-weight:600;color:var(--text-primary)}.markdown-td,.markdown-th{padding:.75rem 1rem;border-bottom:1px solid var(--border-color)}.markdown-tr:last-child .markdown-td{border-bottom:none}.markdown-hr{margin:1.5rem 0;border:none;border-top:1px solid var(--border-color)}.markdown-img{max-width:100%;height:auto;border-radius:var(--radius-medium);margin:1rem 0}.inline-code{font-family:Fira Code,Monaco,Consolas,monospace;font-size:.875em;padding:.2em .4em;border-radius:4px;background:rgba(0,0,0,.06);color:var(--primary-700)}.dark .inline-code{background:rgba(255,255,255,.1);color:var(--primary-400)}.code-block-wrapper{margin:1rem 0;border-radius:var(--radius-medium);overflow:hidden;background:#1e1e1e;border:1px solid rgba(255,255,255,.1)}.code-block-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;background:#2d2d2d;border-bottom:1px solid rgba(255,255,255,.1)}.code-block-language{text-transform:uppercase;letter-spacing:.05em;color:rgba(255,255,255,.5)}.code-block-copy,.code-block-language{font-family:Inter,sans-serif;font-size:.75rem;font-weight:500}.code-block-copy{display:flex;align-items:center;gap:.375rem;padding:.375rem .625rem;color:rgba(255,255,255,.6);background:transparent;border:1px solid rgba(255,255,255,.15);border-radius:6px;cursor:pointer;transition:all .15s ease}.code-block-copy:hover{color:rgba(255,255,255,.9);background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.25)}.code-block-pre{margin:0;padding:1rem;overflow-x:auto;background:transparent}.code-block-pre code{font-family:Fira Code,Monaco,Consolas,monospace;font-size:.875rem;line-height:1.6;color:#d4d4d4}.hljs{background:transparent;color:#d4d4d4}.hljs-comment,.hljs-quote{color:#6a9955;font-style:italic}.hljs-addition,.hljs-keyword,.hljs-selector-tag{color:#569cd6}.hljs-doctag,.hljs-literal,.hljs-meta .hljs-meta-string,.hljs-number,.hljs-regexp,.hljs-string{color:#ce9178}.hljs-name,.hljs-section,.hljs-selector-class,.hljs-selector-id,.hljs-title{color:#dcdcaa}.hljs-attr,.hljs-attribute,.hljs-class .hljs-title,.hljs-template-variable,.hljs-type,.hljs-variable{color:#4ec9b0}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-meta .hljs-keyword,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-subst,.hljs-symbol{color:#d7ba7d}.hljs-built_in,.hljs-deletion{color:#c586c0}.hljs-formula{background:#3c3c3c}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}