:root{--color-text:#1a1a1a;--color-text-secondary:#4b5563;--color-text-muted:#9ca3af;--color-bg:#ffffff;--color-bg-subtle:#f9fafb;--color-bg-muted:#f3f4f6;--color-bg-surface:#ffffff;--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;--code-bg:#ffffff;--code-header-bg:#f8fafc;--code-border:#e2e8f0;--code-text:#24292e;--code-lang-color:#64748b;--code-shadow:0 10px 30px -10px rgba(0,0,0,0.08);--syntax-keyword:#d73a49;--syntax-string:#032f62;--syntax-function:#6f42c1;--syntax-comment:#6a737d;--syntax-number:#005cc5;--syntax-variable:#24292e;--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-bg-surface:#232627;--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);--code-bg:#0d1117;--code-header-bg:#161b22;--code-border:#30363d;--code-text:#c9d1d9;--code-lang-color:#8b949e;--code-shadow:0 10px 30px -10px rgba(0,0,0,0.5);--syntax-keyword:#ff7b72;--syntax-string:#a5d6ff;--syntax-function:#d2a8ff;--syntax-comment:#8b949e;--syntax-number:#79c0ff;--syntax-variable:#ffa657}.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);animation:contentFadeIn .15s ease-out}@keyframes contentFadeIn{0%{opacity:.7}to{opacity:1}}.message-content li{animation:contentFadeIn .15s ease-out}.message-content p:last-child{margin-bottom:0}.message-content strong{font-weight:600;color:var(--color-text)}.message-content em{font-style:italic;color:var(--color-text)}.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);color:var(--color-text)}.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 ul.list li::marker{color:var(--color-accent)}.message-content ol.list li::marker{color:var(--color-accent);font-weight:700;font-family:var(--font-mono)}.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)}.message-content .code-block{margin:var(--space-lg) 0;border-radius:var(--radius-lg);overflow:hidden;background:var(--code-bg);border:1px solid var(--code-border);box-shadow:var(--code-shadow);transition:all .3s ease}.message-content .code-header{display:grid;grid-template-columns:60px 1fr 60px;align-items:center;height:44px;padding:0 16px;background:var(--code-header-bg);border-bottom:1px solid var(--code-border);-webkit-user-select:none;-moz-user-select:none;user-select:none}.message-content .code-controls{display:flex;gap:8px}.message-content .code-dot{width:12px;height:12px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1)}.message-content .code-dot.red{background:#ff5f56}.message-content .code-dot.yellow{background:#ffbd2e}.message-content .code-dot.green{background:#27c93f}.message-content .code-title{font-family:var(--font-sans);font-size:13px;font-weight:500;color:var(--code-lang-color);text-align:center;opacity:.9}.message-content .code-actions{display:flex;justify-content:flex-end}.message-content .code-copy{display:flex;align-items:center;justify-content:center;width:28px;height:28px;color:var(--code-lang-color);background:transparent;border:1px solid transparent;border-radius:6px;cursor:pointer;transition:all .2s}.message-content .code-copy:hover{background:rgba(0,0,0,.05);color:var(--color-text)}.dark .message-content .code-copy:hover{background:rgba(255,255,255,.1);color:#fff}.message-content .code-copy.copied{color:var(--color-success);background:var(--color-success-bg)}.message-content .code-copy svg{width:16px;height:16px}.message-content .code-block pre{margin:0;padding:var(--space-lg);overflow-x:auto;color:var(--code-text);font-size:13px;line-height:1.7;font-family:var(--font-mono);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:inherit;color:inherit;background:transparent;padding:0}.message-content .code-block .keyword{color:var(--syntax-keyword);font-weight:500}.message-content .code-block .string{color:var(--syntax-string)}.message-content .code-block .function{color:var(--syntax-function)}.message-content .code-block .comment{color:var(--syntax-comment);font-style:italic}.message-content .code-block .number{color:var(--syntax-number)}.message-content .code-block-container pre,.message-content .code-block-content{background-color:var(--code-bg)!important}.message-content .code-block-container code.hljs,.message-content .code-block-container pre code,.message-content pre code{color:var(--code-text)!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 .callout{margin:var(--space-md) 0;padding:var(--space-md);border-radius:var(--radius-md);display:flex;align-items:flex-start;gap:var(--space-md);border:1px solid transparent}.message-content .callout-icon{flex-shrink:0;width:20px;height:20px;margin-top:2px}.message-content .callout-icon svg{width:100%;height:100%}.message-content .callout-body{flex:1}.message-content .callout-title{font-size:14px;font-weight:600;margin-bottom:4px;line-height:1.4}.message-content .callout-content{font-size:14px;color:var(--color-text-secondary);line-height:1.6}.message-content .callout.info{background:var(--color-info-bg);border-color:rgba(59,130,246,.15)}.message-content .callout.info .callout-icon,.message-content .callout.info .callout-title{color:var(--color-info)}.message-content .callout.success{background:var(--color-success-bg);border-color:rgba(16,185,129,.15)}.message-content .callout.success .callout-icon,.message-content .callout.success .callout-title{color:var(--color-success)}.message-content .callout.warning{background:var(--color-warning-bg);border-color:rgba(245,158,11,.15)}.message-content .callout.warning .callout-icon,.message-content .callout.warning .callout-title{color:var(--color-warning)}.message-content .callout.error{background:var(--color-error-bg);border-color:rgba(239,68,68,.15)}.message-content .callout.error .callout-icon,.message-content .callout.error .callout-title{color:var(--color-error)}.message-content .table,.message-content table{width:100%;margin:var(--space-md) 0;border-collapse:collapse;font-size:14px;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--color-border);background:var(--color-bg);table-layout:fixed}.message-content .table td,.message-content .table th,.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);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;word-wrap:break-word;min-width:60px}.message-content .table th,.message-content table th{background:var(--color-bg-subtle);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.3px;color:var(--color-text-secondary)}.message-content .table tr:last-child td,.message-content table tr:last-child td{border-bottom:none}.message-content .table tr:hover td,.message-content table tr:hover td{background:var(--color-bg-subtle)}.message-content table tr{animation:tableRowFadeIn .15s ease-out}@keyframes tableRowFadeIn{0%{opacity:.3}to{opacity:1}}.message-content .card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-md);margin:var(--space-md) 0}.message-content .card{padding:var(--space-lg);background:var(--color-bg-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;display:flex;flex-direction:column;height:100%}.message-content .card:hover{transform:translateY(-2px);border-color:var(--color-accent);box-shadow:0 10px 20px -5px rgba(0,0,0,.05)}.dark .message-content .card:hover{box-shadow:0 10px 20px -5px rgba(0,0,0,.3);background:linear-gradient(to bottom right,var(--color-bg-subtle),var(--color-bg))}.message-content .card-icon{font-size:24px;margin-bottom:var(--space-md);width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-subtle);border-radius:var(--radius-md);color:var(--color-text)}.message-content .card-title{font-size:15px;font-weight:600;margin-bottom:var(--space-sm);color:var(--color-text)}.message-content .card-content{font-size:13px;color:var(--color-text-secondary);line-height:1.6;flex-grow:1}.message-content .quote{position:relative;margin:var(--space-lg) 0;padding:0;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;display:flex}.message-content .quote:before{content:"";width:4px;background:var(--color-accent);flex-shrink:0}.message-content .quote-inner{padding:24px 32px;flex:1}.message-content .quote-icon{margin-bottom:16px;color:var(--color-accent)}.message-content .quote-icon svg{width:24px;height:24px}.message-content .quote p{font-family:var(--font-sans);font-size:16px;font-weight:500;color:var(--color-text);line-height:1.6;margin-bottom:16px;font-style:normal}.message-content .quote cite{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:var(--color-text-secondary);font-style:normal}.message-content .quote cite:before{content:"—";color:var(--color-accent)}.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 blockquote p{font-size:15px;font-style:italic;color:var(--color-text);margin-bottom:var(--space-sm)}.message-content blockquote p:last-child{margin-bottom:0}.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)}.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;box-shadow:0 0 0 4px var(--color-bg)}.message-content .steps .step-title{font-weight:600;margin-bottom:var(--space-xs);color:var(--color-text)}.message-content .steps .step-content{font-size:14px;color:var(--color-text-secondary)}.message-content .badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;padding:4px 8px;border-radius:6px;text-transform:uppercase;letter-spacing:.5px;line-height:1;transition:all .2s;white-space:nowrap}.message-content .badge.pill{border-radius:100px;padding-left:10px;padding-right:10px}.message-content .badge-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.message-content .badge.primary{background:var(--color-accent-light);color:var(--color-accent-dark);border:1px solid rgba(249,115,22,.15)}.message-content .badge.secondary{background:var(--color-bg-muted);color:var(--color-text-secondary);border:1px solid var(--color-border)}.message-content .badge.success{background:var(--color-success-bg);color:var(--color-success);border:1px solid rgba(16,185,129,.15)}.message-content .badge.warning{background:var(--color-warning-bg);color:var(--color-warning);border:1px solid rgba(245,158,11,.15)}.message-content .badge.error{background:var(--color-error-bg);color:var(--color-error);border:1px solid rgba(239,68,68,.15)}@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}.message-content .code-header{grid-template-columns:50px 1fr 40px;height:40px;padding:0 12px}.message-content .code-controls{gap:6px}.message-content .code-dot{width:10px;height:10px}.message-content .code-title{font-size:12px}}.hljs{color:#1f1f1f;background:transparent}.hljs .hljs-comment,.hljs .hljs-quote{color:#008000;font-style:italic}.hljs .hljs-built_in,.hljs .hljs-keyword,.hljs .hljs-name,.hljs .hljs-selector-tag,.hljs .hljs-tag{color:#0000ff}.hljs .hljs-addition,.hljs .hljs-attribute,.hljs .hljs-literal,.hljs .hljs-section,.hljs .hljs-string,.hljs .hljs-template-tag,.hljs .hljs-template-variable,.hljs .hljs-title,.hljs .hljs-type{color:#a31515}.hljs .hljs-bullet,.hljs .hljs-link,.hljs .hljs-number,.hljs .hljs-symbol{color:#098658}.hljs .hljs-params,.hljs .hljs-variable{color:#001080}.hljs .hljs-class .hljs-title,.hljs .hljs-title.class_{color:#267f99}.hljs .hljs-function .hljs-title,.hljs .hljs-title.function_{color:#795e26}.hljs .hljs-operator,.hljs .hljs-punctuation{color:#1f1f1f}.hljs .hljs-property{color:#001080}.hljs .hljs-regexp{color:#811f3f}.hljs .hljs-deletion{color:#a31515;background:rgba(163,21,21,.1)}.hljs .hljs-meta{color:#0000ff}.hljs ::-moz-selection{background:#add6ff}.hljs ::selection{background:#add6ff}.dark .hljs{color:#d4d4d4}.dark .hljs .hljs-comment,.dark .hljs .hljs-quote{color:#6a9955;font-style:italic}.dark .hljs .hljs-built_in,.dark .hljs .hljs-keyword,.dark .hljs .hljs-name,.dark .hljs .hljs-selector-tag,.dark .hljs .hljs-tag{color:#569cd6}.dark .hljs .hljs-addition,.dark .hljs .hljs-attribute,.dark .hljs .hljs-literal,.dark .hljs .hljs-section,.dark .hljs .hljs-string,.dark .hljs .hljs-template-tag,.dark .hljs .hljs-template-variable,.dark .hljs .hljs-title,.dark .hljs .hljs-type{color:#ce9178}.dark .hljs .hljs-bullet,.dark .hljs .hljs-link,.dark .hljs .hljs-number,.dark .hljs .hljs-symbol{color:#b5cea8}.dark .hljs .hljs-params,.dark .hljs .hljs-variable{color:#9cdcfe}.dark .hljs .hljs-class .hljs-title,.dark .hljs .hljs-title.class_{color:#4ec9b0}.dark .hljs .hljs-function .hljs-title,.dark .hljs .hljs-title.function_{color:#dcdcaa}.dark .hljs .hljs-operator,.dark .hljs .hljs-punctuation{color:#d4d4d4}.dark .hljs .hljs-property{color:#9cdcfe}.dark .hljs .hljs-regexp{color:#d16969}.dark .hljs .hljs-deletion{color:#ce9178;background:rgba(206,145,120,.1)}.dark .hljs .hljs-meta{color:#569cd6}.dark .hljs ::-moz-selection{background:#264f78}.dark .hljs ::selection{background:#264f78}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.scrollbar-hide::-webkit-scrollbar{display:none}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}