/* ==================== 全局容器 ==================== */
.round-container {
    max-width: 700px;
    margin: 0 auto;
    font-family: 'Helvetica Neue', 'PingFang SC', 'Hiragino Sans GB', sans-serif;
    color: #333;
}

think { display: none !important; }

/* ==================== 顶部信息条 ==================== */
.round-info {
    display: block;
    max-width: 700px;
    margin: 0 auto 20px;
    padding: 8px 14px;
    font-size: 0.85rem;
    color: #999;
    background: #f9f9f9;
    border-left: 3px solid #ddd;
    border-radius: 3px;
}

.round-info p {
    margin: 0;
}

/* ==================== 正文区域 ==================== */
text {
    display: block;
    max-width: 700px;
    margin: 0 auto 24px;
    font-size: 0.98rem;
    line-height: 1.8;
    color: #3a3a3a;
}

text p {
    margin-bottom: 1em;
}

/* ==================== 对话颜色 ==================== */
user-talk      { color: #2E5C8A; font-weight: 500; }
chizuru-talk   { color: #C04870; font-weight: 500; }
mami-talk      { color: #D4890A; font-weight: 500; }
ruka-talk      { color: #38A169; font-weight: 500; }
sumi-talk      { color: #805AD5; font-weight: 500; }
mini-talk      { color: #2D3A5C; font-weight: 500; }
kazuyas-talk   { color: #718096; font-weight: 500; }

user-think     { color: #888; font-style: italic; }
chizuru-think  { color: #B8808A; font-style: italic; }
mami-think     { color: #B8935A; font-style: italic; }
ruka-think     { color: #7AA080; font-style: italic; }
sumi-think     { color: #9A85B8; font-style: italic; }
mini-think     { color: #6B7A9C; font-style: italic; }
kazuyas-think  { color: #999; font-style: italic; }

/* ==================== 折叠卡片通用 ==================== */
details {
    max-width: 700px;
    margin: 0 auto 12px;
    border: 1px solid #eee;
    border-radius: 6px;
    background: #fff;
    overflow: hidden;
}

details[open] {
    border-color: #ddd;
}

details summary {
    list-style: none;
    cursor: pointer;
    padding: 12px 16px;
    font-size: 0.9rem;
    font-weight: 600;
    color: #555;
    background: #fafafa;
    border-bottom: 1px solid transparent;
    transition: all 0.2s;
}

details[open] summary {
    border-bottom-color: #eee;
    color: #333;
}

details summary::-webkit-details-marker {
    display: none;
}

details summary::before {
    content: '›';
    display: inline-block;
    margin-right: 8px;
    font-size: 1rem;
    color: #bbb;
    transition: transform 0.2s;
}

details[open] summary::before {
    transform: rotate(90deg);
    color: #666;
}

details summary:hover {
    background: #f5f5f5;
}

/* ==================== 卡片内容区 ==================== */
details p {
    margin: 6px 0;
    padding: 2px 16px;
    font-size: 0.88rem;
    line-height: 1.6;
    color: #555;
}

details p[style*="margin:4px 0"] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
}

details p span[style*="background:#e0e0e0"] {
    background: #eee !important;
}

/* ==================== 表格 ==================== */
details table {
    width: 100%;
    margin: 8px 16px;
    border-collapse: collapse;
    font-size: 0.84rem;
}

details th {
    padding: 8px 10px;
    background: #f8f8f8;
    color: #666;
    font-weight: 600;
    font-size: 0.8rem;
    text-align: left;
    border-bottom: 1px solid #e8e8e8;
}

details td {
    padding: 8px 10px;
    border-bottom: 1px solid #f0f0f0;
    color: #555;
}

details tr:last-child td {
    border-bottom: none;
}

/* ==================== 记忆区 ==================== */
details summary ~ p {
    padding: 4px 16px;
}

details summary ~ p[style*="font-weight:bold"] {
    padding: 10px 16px 4px;
    font-size: 0.82rem;
    letter-spacing: 0.3px;
}

details summary ~ p[style*="color:#c04141"] {
    color: #c05555 !important;
    border-bottom: 1px dotted #f0e0e0;
    margin: 0 16px;
    padding: 10px 0 6px 0;
}

details summary ~ p[style*="color:#b8860b"] {
    color: #b8860b !important;
    border-bottom: 1px dotted #f0e8d0;
    margin: 0 16px;
    padding: 10px 0 6px 0;
}

details summary ~ p[style*="color:#3a7d3a"] {
    color: #4a8d4a !important;
    border-bottom: 1px dotted #e0f0e0;
    margin: 0 16px;
    padding: 10px 0 6px 0;
}

details summary ~ p[style*="color:#888"] {
    font-size: 0.8rem;
    color: #aaa !important;
    padding: 8px 16px;
    border-top: 1px solid #f5f5f5;
    margin-top: 8px;
}

/* ==================== 行动选项 ==================== */
options {
    display: block;
    max-width: 700px;
    margin: 0 auto;
    padding: 0;
}

options p {
    margin: 4px 0;
    padding: 12px 16px;
    background: #fafafa;
    border: 1px solid #eee;
    border-radius: 6px;
    font-size: 0.9rem;
    color: #555;
    cursor: pointer;
    transition: all 0.2s;
}

options p:hover {
    background: #f0f4f8;
    border-color: #c0d0e0;
    color: #333;
    transform: translateX(2px);
}

options p:nth-child(1) { border-left: 3px solid #e08080; }
options p:nth-child(2) { border-left: 3px solid #80b0c0; }
options p:nth-child(3) { border-left: 3px solid #80c090; }
options p:nth-child(4) { border-left: 3px solid #b0a0d0; }