.process-box {
    display: none; 
}

/* 2. 唯独当它是“正在生成的内容”（即最后一个子元素）时：显示为加载条 */
.process-box:last-child {
    display: block; /* 激活显示 */
    
    /* 下面是加载条的样式 */
    height: 40px;
    background: #f0f2f5;
    border: 1px dashed #ccc;
    border-radius: 4px;
    margin: 10px 0;
    position: relative;
    overflow: hidden;
    
    /* 关键：强制隐藏容器内部实际生成的文字 */
    font-size: 0 !important;
    color: transparent !important;
}

/* 3. 加载条上的文字和动画（通过伪元素实现） */
.process-box:last-child::before {
    content: "⏳ 魔法构筑中... (完成后自动折叠)";
    
    /* 文字样式 */
    font-size: 14px;
    color: #555;
    font-weight: bold;
    font-family: sans-serif;
    
    /* 居中定位 */
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
}

/* 4. 扫光动画效果 */
.process-box:last-child::after {
    content: "";
    position: absolute;
    top: 0; left: -100%;
    width: 100%; height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.8), transparent);
    animation: loading-scan 1.5s infinite;
}

@keyframes loading-scan {
    0% { left: -100%; }
    100% { left: 100%; }
}

:root {
  /* 边框色：青色能量流 */
  --scifi-border: #00f3ff; 
  /* 背景色：半透明深空黑，带一点蓝调 */
  --scifi-bg: rgba(5, 20, 35, 0.95);
  /* 标题文字色：高亮全息白 */
  --scifi-summary-text: #e0f7ff;
  /* 内容文字色：柔和蓝白，适合阅读 */
  --scifi-content-text: #b8d0e8;
  /* 强调色：警告红/激活橙 */
  --scifi-accent: #ffaa00;
  /* 辉光效果 */
  --scifi-glow: 0 0 10px rgba(0, 243, 255, 0.3);
}

/* --- Global Code Block Styles: Classical Parchment --- */
.rili-markdown-renderer pre {
  background-color: #fdf6e3 !important; /* Parchment paper background */
  border: 1px solid #d3c0a5 !important;
  border-radius: 4px;
  box-shadow: 2px 2px 8px rgba(133, 101, 62, 0.15);
  margin-top: 1em !important;
  margin-bottom: 1em !important;
  overflow: hidden;
  padding: 16px !important;
  position: relative;
}

/* --- Code Content Area: Parchment & Sepia Text --- */
.rili-markdown-renderer pre code {
  font-family: 'Courier New', Courier, monospace;
  font-size: 14px;
  white-space: pre-wrap !important;
  word-break: break-all;
  color: #5d5145 !important; /* Softer sepia */
  line-height: 1.6;
}

/* --- Header & Copy Button Compatibility --- */
.rili-markdown-renderer div:has(&gt; pre) {
  background-color: #f5e5c5 !important;
  border-radius: 6px;
}
.rili-markdown-renderer div:has(&gt; pre) button {
  color: #654321 !important;
}
.rili-markdown-renderer div:has(&gt; pre) button:hover {
  background-color: #e9d8b8 !important;
}

/* === Specific Block Themes & Icons === */

/* --- [Time] Block: Sunstone Border --- */
.rili-markdown-renderer pre:has(code.language-Time) { border-color: #fabd2f !important; }
.rili-markdown-renderer pre:has(code.language-Time)::after {
  content: '📜'; position: absolute; top: 12px; right: 16px; font-size: 20px; opacity: 0.8; pointer-events: none;
}

/* --- [Voice] Block: Inkwell Border --- */
.rili-markdown-renderer pre:has(code.language-Voice) { border-color: #458588 !important; }
.rili-markdown-renderer pre:has(code.language-Voice)::after {
  content: '✒️'; position: absolute; top: 12px; right: 16px; font-size: 20px; opacity: 0.8; pointer-events: none;
}

/* --- [Status] Block: Heraldry Border --- */
.rili-markdown-renderer pre:has(code.language-status) { border-color: #b8bb26 !important; }
.rili-markdown-renderer pre:has(code.language-status)::after {
  content: '⚜️'; position: absolute; top: 12px; right: 16px; font-size: 20px; opacity: 0.8; pointer-events: none;
}

/* --- [Python] Memory Blocks: Library Border --- */
.rili-markdown-renderer pre:has(code.language-python) { border-color: #fe8019 !important; }
.rili-markdown-renderer pre:has(code.language-python)::after {
  content: '📚'; position: absolute; top: 12px; right: 16px; font-size: 20px; opacity: 0.8; pointer-events: none;
}

/* --- [Markdown] Plot Branch Block: Cartography Border --- */
.rili-markdown-renderer pre:has(code.language-markdown) { border-color: #d3869b !important; }
.rili-markdown-renderer pre:has(code.language-markdown)::after {
  content: '🗺️'; position: absolute; top: 12px; right: 16px; font-size: 20px; opacity: 0.8; pointer-events: none;
}

/* === Syntax Highlighting: Classical Tones === */
.rili-markdown-renderer pre code.language-status span.hljs-section,
.rili-markdown-renderer pre code.language-python span.hljs-comment {
  color: #9d0006 !important; /* Burgundy for titles */
  font-weight: bold;
}
.rili-markdown-renderer pre code.language-status span.hljs-symbol {
  color: #b58900 !important; /* Old Gold for names */
  font-weight: bold;
}
.rili-markdown-renderer pre code.language-python span.hljs-string {
  color: #076678 !important; /* Deep Teal for strings */
}
.rili-markdown-renderer pre code.language-python span.hljs-number {
  color: #af3a03 !important; /* Terracotta for numbers */
}
.rili-markdown-renderer pre code.language-markdown span.hljs-strong {
  color: #9d0006 !important; /* Burgundy for options */
  font-weight: bold;
}
.rili-markdown-renderer pre code.language-markdown span.hljs-emphasis {
  color: #79740e !important; /* Olive for emphasis */
  font-style: italic;
}

/* --- Collapsible Details/Summary Styling --- */
.rili-markdown-renderer details {
  background-color: #fdf6e3; /* Parchment paper background */
  border: 1px solid #d3c0a5;
  border-radius: 4px;
  margin: 1em 0;
  box-shadow: 2px 2px 8px rgba(133, 101, 62, 0.15);
  overflow: hidden; /* Important for child border-radius */
}

.rili-markdown-renderer summary {
  background-color: #f5e5c5; /* Header background, slightly darker parchment */
  padding: 10px 16px;
  cursor: pointer;
  font-family: Georgia, 'Times New Roman', serif;
  color: #654321; /* Dark brown (Sepia) */
  font-weight: 600;
  font-size: 16px;
  list-style: none; /* Hide default marker */
  outline: none; /* Hide focus ring */
  transition: background-color 0.2s;
  border-bottom: 1px solid transparent; /* Placeholder for open state */
}

.rili-markdown-renderer summary::-webkit-details-marker {
  display: none; /* Hide default marker in WebKit */
}

.rili-markdown-renderer summary:hover {
  background-color: #e9d8b8;
}

/* Custom Marker */
.rili-markdown-renderer summary::before {
  content: '▸';
  color: #8f7a5e;
  margin-right: 8px;
  display: inline-block;
  transition: transform 0.2s ease-in-out;
}

.rili-markdown-renderer details[open] &gt; summary::before {
  transform: rotate(90deg);
}

.rili-markdown-renderer details[open] &gt; summary {
  border-bottom: 1px solid #d3c0a5; /* Separator when open */
}

/* --- Integration for Code Blocks inside Details --- */
.rili-markdown-renderer details &gt; pre {
  margin: 0 !important;
  border: none !important;
  border-radius: 0;
  box-shadow: none !important;
}
.rili-markdown-renderer details &gt; div:has(&gt; pre) {
  margin: 0 !important;
  border: none !important;
  border-radius: 0;
  box-shadow: none !important;
}

/* --- 西方古典暖色调美化方案 (适配黑夜/白天模式) --- */

/* === 全局字体设定: 衬线字体，营造古典书籍感 === */
.is-user,
.is-assistant,
.rili-markdown-renderer,
.rili-markdown-renderer p,
textarea,
input,
button,
.text-sm,
.text-xs {
    font-family: "Georgia", "Palatino Linotype", "Book Antiqua", Palatino, serif !important;
}

/* --- 浅色/默认模式 --- */
:root {
    --classical-bg: #f5efdc; /* 羊皮卷背景 */
    --classical-primary: #8c6d52; /* 主古典棕 */
    --classical-secondary: #c8b5a6; /* 次要灰褐色 */
    --classical-text: #5a3a22; /* 深棕文字 */
    --classical-accent: #b48c62; /* 点缀亮棕 */
    --classical-border: #dcd0b9; /* 边框色 */
    --classical-hover-bg: #e9e2ce; /* 悬停背景 */
}

/* --- 黑夜模式变量 --- */
@media (prefers-color-scheme: dark) {
    :root {
        --classical-bg: #2c251e; /* 深胡桃木背景 */
        --classical-primary: #d4af37; /* 黄铜/金色 */
        --classical-secondary: #5a4a3a; /* 暗棕褐色 */
        --classical-text: #e0d6c5; /* 灰白/羊皮纸文字 */
        --classical-accent: #e8c772; /* 亮金色 */
        --classical-border: #4a4032; /* 暗边框 */
        --classical-hover-bg: #3c342b; /* 悬停深色背景 */
    }
}