:root{--color-text:#1a1a1a;--color-text-secondary:#6b7280;--color-text-muted:#9ca3af;--color-bg:#ffffff;--color-bg-subtle:#f9fafb;--color-bg-muted:#f3f4f6;--color-border:#e5e7eb;--color-border-light:#f3f4f6;--color-accent:#f97316;--color-accent-light:#fff7ed;--color-accent-dark:#ea580c;--color-info:#3b82f6;--color-info-bg:#eff6ff;--color-success:#10b981;--color-success-bg:#ecfdf5;--color-warning:#f59e0b;--color-warning-bg:#fffbeb;--color-error:#ef4444;--color-error-bg:#fef2f2;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-mono:"JetBrains Mono","Fira Code",monospace;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px}.dark{--color-text:#f3f4f6;--color-text-secondary:#9ca3af;--color-text-muted:#6b7280;--color-bg:#1a1a1a;--color-bg-subtle:#232627;--color-bg-muted:#2a2d2e;--color-border:#3a3d3e;--color-border-light:#2a2d2e;--color-accent-light:rgba(249,115,22,0.15);--color-info-bg:rgba(59,130,246,0.15);--color-success-bg:rgba(16,185,129,0.15);--color-warning-bg:rgba(245,158,11,0.15);--color-error-bg:rgba(239,68,68,0.15)}.message-content{font-family:var(--font-sans);font-size:15px;line-height:1.7;color:var(--color-text);overflow-x:hidden;max-width:100%;contain:layout style;isolation:isolate}.message-content p{margin-bottom:var(--space-md);color:var(--color-text)}.message-content p:last-child{margin-bottom:0}.message-content strong{font-weight:600;color:var(--color-text)}.message-content em{font-style:italic}.message-content h2{font-size:20px;font-weight:700;margin:var(--space-lg) 0 var(--space-md) 0;color:var(--color-text);letter-spacing:-.3px}.message-content h2:first-child{margin-top:0}.message-content h3{font-size:16px;font-weight:600;margin:var(--space-lg) 0 var(--space-sm) 0;color:var(--color-text)}.message-content h3:first-child{margin-top:0}.message-content ol.list,.message-content ul.list{margin:var(--space-md) 0;padding-left:var(--space-lg)}.message-content ul.list{list-style-type:disc}.message-content ol.list{list-style-type:decimal}.message-content .list li{margin-bottom:var(--space-sm);padding-left:var(--space-xs)}.message-content .list li:last-child{margin-bottom:0}.message-content .list li::marker{color:var(--color-accent)}.message-content code{font-family:var(--font-mono);font-size:13px;padding:2px 6px;background:var(--color-bg-muted);border-radius:4px;color:var(--color-accent-dark)}.message-content .code-block{margin:var(--space-md) 0;border-radius:var(--radius-md);border:1px solid var(--color-border);overflow:hidden;background:#fafafa}.dark .message-content .code-block{background:#1e1e1e}.message-content .code-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);background:#f5f5f5;border-bottom:1px solid var(--color-border)}.dark .message-content .code-header{background:#2a2d2e}.message-content .code-header-left{display:flex;align-items:center;gap:var(--space-sm)}.message-content .code-lang{font-size:11px;font-weight:600;text-transform:uppercase;color:#6b7280;letter-spacing:.5px}.message-content .code-file{font-size:12px;color:#9ca3af;font-family:var(--font-mono)}.message-content .code-copy{display:flex;align-items:center;gap:4px;padding:4px 10px;font-size:12px;font-weight:500;color:#6b7280;background:transparent;border:1px solid var(--color-border);border-radius:4px;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s;font-family:var(--font-sans)}.message-content .code-copy:hover{background:#e5e7eb;color:#374151}.message-content .code-copy.copied{background:var(--color-success);border-color:var(--color-success);color:white}.message-content .code-copy svg{width:14px;height:14px}.message-content .code-block pre{margin:0;padding:var(--space-md);overflow-x:auto;scrollbar-width:thin;scrollbar-color:#d1d5db transparent}.message-content .code-block pre::-webkit-scrollbar{height:6px}.message-content .code-block pre::-webkit-scrollbar-track{background:transparent}.message-content .code-block pre::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}.message-content .code-block code{font-family:var(--font-mono);font-size:13px;line-height:1.6;color:#1f2937;background:transparent;padding:0;border-radius:0}.dark .message-content .code-block code{color:#e5e7eb}.message-content .code-block-container code.hljs,.message-content .code-block-container pre code,.message-content pre code{color:#1f2937!important;background:transparent!important;font-family:var(--font-mono);font-size:13px;line-height:1.7;padding:0!important;border:none!important;border-radius:0!important}.message-content .code-block-container pre,.message-content .code-block-content{background-color:#fafafa!important}.dark .message-content .code-block-container pre,.dark .message-content .code-block-content{background-color:#1e1e1e!important}.dark .message-content .code-block-container code.hljs,.dark .message-content .code-block-container pre code,.dark .message-content pre code{color:#e5e7eb!important}.message-content .code-block .keyword{color:#a855f7}.message-content .code-block .string{color:#16a34a}.message-content .code-block .function{color:#2563eb}.message-content .code-block .comment{color:#6b7280}.message-content .code-block .number{color:#ea580c}.message-content .code-block .variable{color:#0891b2}.message-content .callout{margin:var(--space-md) 0;padding:var(--space-md);border-radius:var(--radius-md);border-left:3px solid}.message-content .callout-title{font-size:13px;font-weight:600;margin-bottom:var(--space-xs);display:flex;align-items:center;gap:var(--space-sm)}.message-content .callout-content{font-size:14px;color:var(--color-text-secondary)}.message-content .callout.info{background:var(--color-info-bg);border-color:var(--color-info)}.message-content .callout.info .callout-title{color:var(--color-info)}.message-content .callout.success{background:var(--color-success-bg);border-color:var(--color-success)}.message-content .callout.success .callout-title{color:var(--color-success)}.message-content .callout.warning{background:var(--color-warning-bg);border-color:var(--color-warning)}.message-content .callout.warning .callout-title{color:var(--color-warning)}.message-content .callout.error{background:var(--color-error-bg);border-color:var(--color-error)}.message-content .callout.error .callout-title{color:var(--color-error)}.message-content .table{width:100%;margin:var(--space-md) 0;border-collapse:separate;border-spacing:0;font-size:14px;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.message-content .table td,.message-content .table th{padding:var(--space-sm) var(--space-md);text-align:left;border-bottom:1px solid var(--color-border);border-right:1px solid var(--color-border)}.message-content .table td:last-child,.message-content .table th:last-child{border-right:none}.message-content .table tr:last-child td{border-bottom:none}.message-content .table th{font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.3px;color:var(--color-text-secondary)}.message-content .table th,.message-content .table tr:hover td{background:var(--color-bg-subtle)}.message-content .card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--space-md);margin:var(--space-md) 0}.message-content .card{padding:var(--space-md);background:var(--color-bg-subtle);border-radius:var(--radius-md);border:1px solid var(--color-border);transition:border-color .2s}.message-content .card:hover{border-color:var(--color-accent)}.message-content .card-icon{font-size:24px;margin-bottom:var(--space-sm)}.message-content .card-title{font-size:14px;font-weight:600;margin-bottom:var(--space-xs);color:var(--color-text)}.message-content .card-content{font-size:13px;color:var(--color-text-secondary);line-height:1.5}.message-content .quote,.message-content blockquote{margin:var(--space-md) 0;padding:var(--space-md) var(--space-lg);background:var(--color-bg-subtle);border-left:3px solid var(--color-accent);border-radius:0 var(--radius-md) var(--radius-md) 0}.message-content .quote p,.message-content blockquote p{font-size:15px;font-style:italic;color:var(--color-text);margin-bottom:var(--space-sm)}.message-content .quote p:last-child,.message-content blockquote p:last-child{margin-bottom:0}.message-content .quote cite,.message-content blockquote cite{font-size:13px;color:var(--color-text-secondary);font-style:normal}.message-content .steps{margin:var(--space-md) 0;padding-left:0;list-style:none;counter-reset:step}.message-content .steps li{position:relative;padding-left:48px;padding-bottom:var(--space-md);border-left:2px solid var(--color-border);margin-left:15px}.message-content .steps li:last-child{border-left-color:transparent;padding-bottom:0}.message-content .steps li:before{counter-increment:step;content:counter(step);position:absolute;left:-17px;top:0;width:32px;height:32px;background:var(--color-accent);color:white;font-size:14px;font-weight:600;border-radius:50%;display:flex;align-items:center;justify-content:center}.message-content .steps .step-title{font-weight:600;margin-bottom:var(--space-xs)}.message-content .steps .step-content{font-size:14px;color:var(--color-text-secondary)}.message-content .badge{display:inline-block;font-size:11px;font-weight:600;padding:2px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.message-content .badge.primary{background:var(--color-accent-light);color:var(--color-accent-dark)}.message-content .badge.secondary{background:var(--color-bg-muted);color:var(--color-text-secondary)}.message-content .image{margin:var(--space-md) 0}.message-content .image img{max-width:100%;border-radius:var(--radius-md);border:1px solid var(--color-border)}.message-content .image figcaption{margin-top:var(--space-sm);font-size:13px;color:var(--color-text-secondary);text-align:center}.message-content hr.divider{border:none;height:1px;background:var(--color-border);margin:var(--space-lg) 0}.message-content a{color:var(--color-accent);text-decoration:none;font-weight:500;border-bottom:1px solid transparent;transition:border-color .2s}.message-content a:hover{border-bottom-color:var(--color-accent)}@media (max-width:640px){.message-content{font-size:14px}.message-content h2{font-size:18px}.message-content h3{font-size:15px}.message-content .card-grid{grid-template-columns:1fr}.message-content .steps li{padding-left:40px}.message-content .steps li:before{width:28px;height:28px;font-size:12px;left:-15px}}