/* ============================================================
   【模拟人生】真实中式高中 — CSS美化 v14.2
   修复：图标重复/玩家面板单列布局（每行一种信息）
   ============================================================ */

/* ==================== 全局基础 ==================== */
* { box-sizing: border-box; }
.chat-answer-container, .chat-answer-container * {
    font-family: "Noto Serif SC", "Source Han Serif SC", "Microsoft YaHei", "PingFang SC", serif !important;
}
.chat-answer-container p {
    font-size: 14.5px; line-height: 2; margin: 6px 0;
    letter-spacing: 0.5px; color: #3d3d3d;

/* ===== 生理状态板块样式 ===== */
.sc-dex-phys { border-left: 3px solid #e8a0bf; padding-left: 8px; margin: 6px 0; background: #fdf2f8; border-radius: 4px; }
.sc-phys-detail { font-size: 0.92em; line-height: 1.8; color: #555; padding: 4px 0; }
.sc-phys-detail > div { padding: 1px 0; }
.sc-phys-val { color: #c2185b; font-weight: 600; }
.sc-phys-state { display: inline-block; padding: 1px 8px; border-radius: 10px; background: #fce4ec; color: #c2185b; font-size: 0.9em; font-weight: 500; }
}
.chat-answer-container p[style*="color: #2957a2ff"] { color: #c47a3a !important; font-weight: 500; }
div.sc-ev-body p:first-of-type::first-letter {
    font-size: 2.4em; font-weight: 700; float: left; line-height: 1;
    margin: 4px 8px 0 0; color: #c47a3a;
    text-shadow: 2px 2px 4px rgba(196, 122, 58, 0.2);
}
.chat-answer-container strong, .chat-answer-container b { color: #c47a3a; font-weight: 700; padding: 0 2px; }
.chat-answer-container em, .chat-answer-container i { color: #8b7355; font-style: italic; }
.chat-answer-container blockquote {
    border-left: 3px solid #e8943a;
    background: linear-gradient(90deg, #fff8f0 0%, transparent 100%);
    margin: 12px 0; padding: 10px 16px; color: #8b7355;
    font-style: italic; border-radius: 0 4px 4px 0;
}
.chat-answer-container table {
    width: 100%; border-collapse: collapse; margin: 14px 0;
    font-size: 13px; border-radius: 6px; overflow: hidden;
    box-shadow: 0 2px 8px rgba(140, 160, 180, 0.1);
}
.chat-answer-container th {
    background: linear-gradient(135deg, #e8943a 0%, #f4b860 100%);
    color: #fff; padding: 10px 14px; text-align: left;
    font-weight: 600; letter-spacing: 1px;
}
.chat-answer-container td { padding: 8px 14px; border-bottom: 1px solid #eef3f8; color: #4a4a4a; }
.chat-answer-container tr:nth-child(even) td { background: #f8fafc; }
.chat-answer-container tr:hover td { background: #fff8f0; }
.chat-answer-container ul, .chat-answer-container ol { margin: 10px 0; padding-left: 24px; }
.chat-answer-container li { padding: 4px 0; line-height: 1.8; color: #4a4a4a; }
.chat-answer-container ul li::marker { color: #e8943a; font-size: 1.2em; }
.chat-answer-container ol li::marker { color: #c47a3a; font-weight: 700; }
.chat-answer-container a {
    color: #4a90d9; text-decoration: none;
    border-bottom: 1px dashed #4a90d9; transition: all 0.2s ease;
}
.chat-answer-container a:hover { color: #e8943a; border-bottom-color: #e8943a; }
.chat-answer-container hr {
    border: none; height: 2px;
    background: linear-gradient(90deg, transparent, #e8943a, #f4b860, #e8943a, transparent);
    margin: 20px 0; opacity: 0.6;
}
/* 全局代码块防止爆代码 */
.chat-answer-container pre {
    background: #f5f0e8 !important; border: 1px solid #e0d4c0 !important;
    border-radius: 6px !important; padding: 12px 16px !important;
    font-family: "Courier New", "Consolas", monospace !important;
    font-size: 12.5px !important; color: #5a4a3a !important;
    white-space: pre-wrap !important; word-break: break-all !important;
    line-height: 1.7 !important; margin: 10px 0 !important;
    overflow-x: auto !important;
}
.chat-answer-container code {
    background: #f5ede0 !important; padding: 2px 6px !important;
    border-radius: 3px !important; font-family: "Courier New", monospace !important;
    font-size: 12.5px !important; color: #8b4513 !important;
    border: 1px solid #e8d4b8 !important;
}
.chat-answer-container pre code {
    background: transparent !important; padding: 0 !important;
    border: none !important; font-size: inherit !important;
}
/* 防止蓝色选中高亮 */
.chat-answer-container ::selection {
    background: rgba(232, 148, 58, 0.2) !important;
    color: inherit !important;
}

/* ==================== 平台级美化 ==================== */
.group .bg-gray-100\/90, .chat-answer-container .relative.inline-block {
    background: linear-gradient(180deg, #f5f8fb 0%, #eef3f8 100%) !important;
    border: 1px solid #d4dfe8 !important; border-radius: 6px !important;
    box-shadow: 0 2px 12px rgba(140, 160, 180, 0.1) !important;
    padding: 20px 24px !important; position: relative;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.group .bg-gray-100\/90:hover {
    box-shadow: 0 4px 20px rgba(140, 160, 180, 0.15) !important;
    transform: translateY(-1px) !important;
}
.group .bg-gray-100\/90::before {
    content: ""; position: absolute; top: 0; left: 0;
    width: 24px; height: 24px;
    border-top: 2px solid #e8943a; border-left: 2px solid #e8943a;
    border-radius: 6px 0 0 0;
}
.group .bg-gray-100\/90::after {
    content: ""; position: absolute; bottom: 0; right: 0;
    width: 24px; height: 24px;
    border-bottom: 2px solid #e8943a; border-right: 2px solid #e8943a;
    border-radius: 0 0 6px 0;
}
.relative.inline-block.px-4.py-3.max-w-full.text-gray-900.bg-gray-100\/90 {
    background: linear-gradient(180deg, #fff8f0 0%, #fff1e0 100%) !important;
    border: 1px solid #f0d4a8 !important; border-radius: 6px !important;
    box-shadow: 0 2px 8px rgba(232, 148, 58, 0.12) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}
.relative.inline-block.px-4.py-3.max-w-full.text-gray-900.bg-gray-100\/90:hover {
    box-shadow: 0 4px 16px rgba(232, 148, 58, 0.2) !important;
}
.flex.items-center.gap-2.pb-2 > button {
    background: #fff !important; color: #7a7a7a !important;
    border: 1px solid #d4dfe8 !important; border-radius: 4px !important;
    font-weight: 400 !important; font-size: 12px !important;
    transition: all 0.2s ease !important; padding: 5px 14px !important;
}
.flex.items-center.gap-2.pb-2 > button:hover {
    background: #fff8f0 !important; color: #c47a3a !important;
    border-color: #f0b860 !important; transform: translateY(-1px) !important;
    box-shadow: 0 2px 6px rgba(232, 148, 58, 0.15) !important;
}
#ai-chat-input {
    background: #fbfdff !important; border: 1px solid #d4dfe8 !important;
    border-radius: 4px !important; color: #3d3d3d !important;
    font-size: 14px !important; transition: all 0.2s ease !important;
}
#ai-chat-input:focus {
    border-color: #f4b860 !important;
    box-shadow: 0 0 0 3px rgba(244, 184, 96, 0.15) !important;
}
#ai-chat-input::placeholder { color: #b0bcc8 !important; }
#ai-chat-bottom-input { background: transparent !important; }
.p-\[5\.5px\].max-h-\[150px\].bg-white {
    background: #fbfdff !important; border: 1px solid #d4dfe8 !important;
    border-radius: 6px !important;
}
#ai-send-button {
    background: linear-gradient(135deg, #f4b860 0%, #e8943a 100%) !important;
    border-radius: 4px !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow: 0 2px 8px rgba(232, 148, 58, 0.3) !important;
}
#ai-send-button:hover {
    background: linear-gradient(135deg, #e8943a 0%, #d47a20 100%) !important;
    transform: scale(1.05) !important;
    box-shadow: 0 4px 12px rgba(232, 148, 58, 0.4) !important;
}
.sticky.w-full.top-0 {
    background: linear-gradient(180deg, #f5f8fb 0%, #eef3f8 100%) !important;
    border-bottom: 1px solid #d4dfe8 !important;
}
.relative.overflow-auto.h-full.min-h-\[500px\].min-w-\[240px\].bg-white {
    background: #f5f8fb !important; border-right: 1px solid #d4dfe8 !important;
}
.text-zinc-800.text-xl.font-semibold {
    color: #c47a3a !important; font-weight: 500 !important; letter-spacing: 2px !important;
}
.MuiStack-root.css-v6pit4, .bg-gray-100.bg-gray-100 {
    background: #fff8f0 !important; border-left: 3px solid #e8943a !important;
}
.MuiStack-root.css-hffw0f { transition: all 0.2s ease !important; }
.MuiStack-root.css-hffw0f:hover {
    background: #f5f8fb !important; transform: translateX(4px) !important;
}
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: #eef3f8; }
::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #c8d4e0, #a8b8c8); border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, #f4b860, #e8943a);
}
.style_dot-flashing__8L91Q { display: none !important; }
.flex.items-center.justify-center.w-6.h-5::after {
    content: "笔尖微动…"; font-size: 13px; color: #c47a3a;
    letter-spacing: 2px; animation: blink 1.5s ease-in-out infinite;
}
@keyframes blink { 0%, 100% { opacity: 0.4; } 50% { opacity: 1; } }

/* ==================== 卡片通用 ==================== */
details.sc-panel, div.sc-day, div.sm-panel {
    margin: 18px 0 !important; padding: 0 !important;
    overflow: visible !important; position: relative !important;
    animation: cardIn 0.5s cubic-bezier(0.4, 0, 0.2, 1) !important;
    will-change: transform, opacity;
}
@keyframes cardIn {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}
details.sc-panel + div.sc-day::before,
div.sc-day + details.sc-panel::before,
details.sc-panel + details.sc-panel::before,
div.sc-day + div.sm-panel::before {
    content: "❖"; position: absolute; top: -14px; left: 50%;
    transform: translateX(-50%); color: #d4c8b8; font-size: 12px;
    z-index: 10; background: #f5f8fb; padding: 0 8px;
}

/* ==================== 卡片1：思维链（暖红手账风） ==================== */
details.sc-chain {
    background: #fdf8f0 !important;
    border: 1px solid #d4a574 !important;
    border-left: 4px solid #c0392b !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 12px rgba(192, 57, 43, 0.08) !important;
    padding: 0 !important;
    overflow: hidden !important;
    transition: all 0.3s ease !important;
}
details.sc-chain:hover {
    box-shadow: 0 4px 20px rgba(192, 57, 43, 0.12) !important;
}
details.sc-chain > summary {
    background: linear-gradient(90deg, #f5ede0 0%, #fdf8f0 100%) !important;
    color: #8b4513 !important;
    padding: 12px 18px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    list-style: none !important;
    border: none !important;
    border-bottom: 1px solid #e8d4b8 !important;
    letter-spacing: 1px !important;
}
details.sc-chain > summary::marker,
details.sc-chain > summary::-webkit-details-marker { display: none !important; }
details.sc-chain > *:not(summary) {
    padding: 14px 18px !important;
    font-size: 13px !important;
    color: #5a4a3a !important;
    line-height: 2 !important;
    background: transparent !important;
    display: block !important;
}
details.sc-chain p {
    margin: 8px 0 !important;
    padding: 4px 0 !important;
    line-height: 1.9 !important;
    font-size: 13px !important;
    color: #5a4a3a !important;
}
details.sc-chain p strong:first-child,
details.sc-chain p b:first-child {
    display: inline-block !important;
    background: #f5ede0 !important;
    color: #8b4513 !important;
    padding: 2px 10px !important;
    border-radius: 4px !important;
    font-size: 12px !important;
    margin-right: 6px !important;
    border-left: 3px solid #c0392b !important;
}
details.sc-chain ul, details.sc-chain ol {
    margin: 8px 0 !important;
    padding-left: 28px !important;
}
details.sc-chain li {
    padding: 3px 0 !important;
    line-height: 1.8 !important;
    font-size: 13px !important;
    color: #5a4a3a !important;
}
details.sc-chain pre {
    background: #faf3e6 !important;
    border: 1px solid #e8d4b8 !important;
    border-left: 3px solid #c0392b !important;
    border-radius: 4px !important;
    padding: 10px 14px !important;
    margin: 8px 0 !important;
    font-size: 12px !important;
    color: #5a4a3a !important;
}
details.sc-chain code {
    background: #f5ede0 !important;
    color: #8b4513 !important;
    border: 1px solid #e8d4b8 !important;
}

/* ==================== 卡片2：叙事正文（暖米色杂志风） ==================== */
div.sc-day {
    background: #fdf8f0 !important;
    border: 1px solid #e8d4b8 !important;
    border-radius: 12px !important;
    margin: 20px 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    box-shadow: 0 3px 14px rgba(160, 140, 100, 0.1) !important;
    transition: all 0.3s ease !important;
}
div.sc-seg-h {
    background: linear-gradient(90deg, #f5ede0 0%, #faf3e6 100%) !important;
    color: #8b4513 !important;
    padding: 14px 22px !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    font-weight: 600 !important;
    border-bottom: 1px solid #e8d4b8 !important;
}
div.sc-seg-h .sc-seg-icon { font-size: 20px !important; }
div.sc-seg-h .sc-seg-label { font-size: 18px !important; font-weight: 700 !important; color: #8b4513 !important; letter-spacing: 2px !important; }
div.sc-seg-h .sc-date { margin-left: auto !important; font-size: 13px !important; color: #a0896a !important; }
div.sc-seg-h .sc-weather { font-size: 13px !important; color: #a0896a !important; }
div.sc-event {
    margin: 16px 22px !important;
    background: #fffef8 !important;
    border: 1px solid #f0e4d0 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    transition: all 0.25s ease !important;
}
div.sc-event:hover { box-shadow: 0 2px 10px rgba(160, 140, 100, 0.12) !important; }
div.sc-event::before { display: none !important; }
div.sc-ev-hd {
    background: linear-gradient(90deg, #faf3e6 0%, #fffef8 100%) !important;
    padding: 10px 18px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    border-bottom: 1px solid #f0e4d0 !important;
}
div.sc-ev-subj { font-weight: 700 !important; color: #5a4a3a !important; font-size: 15px !important; }
div.sc-ev-time { font-size: 12px !important; color: #a0896a !important; background: #f5ede0 !important; padding: 2px 10px !important; border-radius: 10px !important; }
div.sc-ev-body { padding: 16px 22px !important; }
div.sc-ev-body p { margin: 10px 0 !important; text-indent: 2em !important; font-size: 14.5px !important; line-height: 2 !important; color: #4a3a2a !important; }
div.sc-day pre, div.sc-ev-body pre {
    background: #faf3e6 !important;
    border: 1px solid #e8d4b8 !important;
    border-left: 3px solid #e8943a !important;
    border-radius: 6px !important;
    padding: 12px 16px !important;
    margin: 12px 0 !important;
    font-family: "Courier New", "Consolas", monospace !important;
    font-size: 12.5px !important;
    color: #5a4a3a !important;
    white-space: pre-wrap !important;
    word-break: break-all !important;
    line-height: 1.7 !important;
    overflow-x: auto !important;
}
div.sc-day code, div.sc-ev-body code {
    background: #f5ede0 !important;
    padding: 2px 6px !important;
    border-radius: 3px !important;
    font-family: "Courier New", monospace !important;
    font-size: 12.5px !important;
    color: #8b4513 !important;
    border: 1px solid #e8d4b8 !important;
}
div.sc-day pre code, div.sc-ev-body pre code {
    background: transparent !important;
    padding: 0 !important;
    border: none !important;
    font-size: inherit !important;
}
.sc-ev-gains {
    margin: 12px 22px !important;
    padding: 8px 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}
.sc-gain {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    padding: 4px 14px !important;
    background: #e8f5e9 !important;
    border: 1px solid #a5d6a7 !important;
    border-radius: 16px !important;
    font-size: 12.5px !important;
    color: #2e7d32 !important;
    font-weight: 600 !important;
}
div.sc-seg-end {
    text-align: center !important;
    padding: 14px !important;
    color: #a0896a !important;
    font-size: 13px !important;
    font-style: italic !important;
    border-top: 1px dashed #e8d4b8 !important;
    margin: 0 22px 16px !important;
    letter-spacing: 2px !important;
}

/* ==================== 卡片3：玩家面板（v15 精修美化版） ==================== */
details.sc-panel.sc-player-panel {
    background: linear-gradient(135deg, #fdf8f0 0%, #faf3e6 100%) !important;
    border: 1px solid #e8d4b8 !important;
    border-radius: 16px !important;
    margin: 20px 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    box-shadow: 
        0 6px 24px rgba(160, 140, 100, 0.15),
        0 2px 6px rgba(160, 140, 100, 0.08) !important;
    position: relative !important;
}
/* 顶部装饰条 */
details.sc-panel.sc-player-panel::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important;
    height: 5px !important;
    background: linear-gradient(90deg, #c0392b 0%, #e8943a 25%, #f4b860 50%, #e8943a 75%, #c0392b 100%) !important;
    z-index: 2 !important;
}
/* 右上角装饰印章 */
details.sc-panel.sc-player-panel::after {
    content: "学籍卡" !important;
    position: absolute !important;
    top: 12px !important;
    right: 16px !important;
    font-size: 10px !important;
    color: rgba(192, 57, 43, 0.35) !important;
    border: 1.5px solid rgba(192, 57, 43, 0.25) !important;
    padding: 2px 8px !important;
    border-radius: 3px !important;
    transform: rotate(-5deg) !important;
    letter-spacing: 2px !important;
    font-weight: 700 !important;
    z-index: 3 !important;
    pointer-events: none !important;
}
/* 标题栏 */
details.sc-panel.sc-player-panel > summary {
    background: linear-gradient(90deg, #f5ede0 0%, #faf3e6 50%, #f5ede0 100%) !important;
    color: #8b4513 !important;
    padding: 16px 24px !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    list-style: none !important;
    border: none !important;
    border-bottom: 2px dashed #e8d4b8 !important;
    letter-spacing: 3px !important;
    position: relative !important;
    text-indent: 0 !important;
}
details.sc-panel.sc-player-panel > summary::marker,
details.sc-panel.sc-player-panel > summary::-webkit-details-marker { display: none !important; }
details.sc-panel.sc-player-panel > summary::before { content: none !important; display: none !important; }
details.sc-panel.sc-player-panel > summary::after {
    content: "▼" !important;
    position: absolute !important;
    right: 24px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    font-size: 11px !important;
    color: #c0392b !important;
    transition: transform 0.3s ease !important;
}
details.sc-panel.sc-player-panel:not([open]) > summary::after { transform: translateY(-50%) rotate(-90deg) !important; }

/* 内容区域 */
details.sc-panel.sc-player-panel > *:not(summary) {
    padding: 20px 24px !important;
    display: block !important;
    background: 
        radial-gradient(ellipse at top left, rgba(232,148,58,0.04) 0%, transparent 60%),
        radial-gradient(ellipse at bottom right, rgba(192,57,43,0.03) 0%, transparent 60%) !important;
}

/* 信息块容器 - 不使用额外卡片 */
details.sc-panel.sc-player-panel > *:not(summary) > div,
details.sc-panel.sc-player-panel > *:not(summary) > section {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
}
details.sc-panel.sc-player-panel > *:not(summary) > div::before,
details.sc-panel.sc-player-panel > *:not(summary) > section::before {
    content: none !important;
    display: none !important;
}

/* 分组标题 - 如"人际关系" */
details.sc-panel.sc-player-panel > *:not(summary) > div > strong:first-child,
details.sc-panel.sc-player-panel > *:not(summary) > section > strong:first-child,
details.sc-panel.sc-player-panel > *:not(summary) > div > b:first-child,
details.sc-panel.sc-player-panel > *:not(summary) > section > b:first-child {
    display: inline-block !important;
    font-size: 13px !important;
    color: #fff !important;
    font-weight: 700 !important;
    margin: 18px 0 10px 0 !important;
    padding: 5px 14px !important;
    background: linear-gradient(135deg, #c0392b 0%, #d4563a 100%) !important;
    letter-spacing: 2px !important;
    border-radius: 4px 12px 12px 4px !important;
    box-shadow: 0 2px 6px rgba(192,57,43,0.25) !important;
    text-indent: 0 !important;
}

/* 每一行信息 */
details.sc-panel.sc-player-panel p,
details.sc-panel.sc-player-panel .sc-player-row {
    display: flex !important;
    align-items: baseline !important;
    padding: 10px 14px !important;
    font-size: 14px !important;
    color: #4a3a2a !important;
    border-bottom: 1px solid rgba(232, 212, 184, 0.5) !important;
    margin: 0 !important;
    text-indent: 0 !important;
    line-height: 1.8 !important;
    background: transparent !important;
    border-radius: 6px !important;
    transition: all 0.25s ease !important;
    position: relative !important;
}
details.sc-panel.sc-player-panel p:hover,
details.sc-panel.sc-player-panel .sc-player-row:hover {
    background: linear-gradient(90deg, rgba(232,148,58,0.08) 0%, transparent 100%) !important;
    padding-left: 18px !important;
}
details.sc-panel.sc-player-panel p:last-child,
details.sc-panel.sc-player-panel .sc-player-row:last-child { border-bottom: none !important; }

/* 首字母不放大 */
details.sc-panel.sc-player-panel p::first-letter,
details.sc-panel.sc-player-panel .sc-player-row::first-letter {
    font-size: inherit !important;
    float: none !important;
    margin: 0 !important;
    font-weight: inherit !important;
    color: inherit !important;
    text-shadow: none !important;
}

/* 标签（性情、相貌等）- 胶囊样式 */
details.sc-panel.sc-player-panel p strong,
details.sc-panel.sc-player-panel p b,
details.sc-panel.sc-player-panel .sc-player-row strong,
details.sc-panel.sc-player-panel .sc-player-row b {
    display: inline-block !important;
    color: #8b4513 !important;
    font-weight: 700 !important;
    margin-right: 10px !important;
    min-width: 72px !important;
    flex-shrink: 0 !important;
    background: linear-gradient(135deg, #f5ede0 0%, #ede0cc 100%) !important;
    padding: 2px 10px !important;
    border-radius: 4px !important;
    font-size: 13px !important;
    border: 1px solid #e0c9a8 !important;
    text-align: center !important;
    letter-spacing: 1px !important;
}
/* ==================== 卡片4：人物图鉴（修复图标重复） ==================== */
details.sc-panel.sc-dex-panel {
    background: linear-gradient(135deg, #fdf8f0 0%, #faf3e6 100%) !important;
    border: 1px solid #e8d4b8 !important;
    border-radius: 14px !important;
    margin: 18px 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    box-shadow: 0 4px 18px rgba(160, 140, 100, 0.12) !important;
    position: relative !important;
}
details.sc-panel.sc-dex-panel::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important;
    height: 4px !important;
    background: linear-gradient(90deg, #8b4513, #c0392b, #e8943a, #f4b860, #e8943a, #c0392b, #8b4513) !important;
    z-index: 1 !important;
}
details.sc-panel.sc-dex-panel > summary {
    background: linear-gradient(90deg, #f5ede0 0%, #faf3e6 50%, #f5ede0 100%) !important;
    color: #8b4513 !important;
    padding: 14px 22px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    list-style: none !important;
    border: none !important;
    border-bottom: 2px solid #e8d4b8 !important;
    letter-spacing: 2px !important;
    position: relative !important;
}
details.sc-panel.sc-dex-panel > summary::marker,
details.sc-panel.sc-dex-panel > summary::-webkit-details-marker { display: none !important; }
/* 不添加任何图标，避免与HTML已有图标重复 */
details.sc-panel.sc-dex-panel > summary::before { content: none !important; display: none !important; }
details.sc-panel.sc-dex-panel > summary::after {
    content: "▼" !important;
    position: absolute !important;
    right: 20px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    font-size: 10px !important;
    color: #c0392b !important;
    transition: transform 0.3s ease !important;
}
details.sc-panel.sc-dex-panel:not([open]) > summary::after { transform: translateY(-50%) rotate(-90deg) !important; }
/* 人物图鉴列表容器 */
details.sc-panel.sc-dex-panel > *:not(summary),
.sc-dex-panel .sc-dex-list {
    padding: 18px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    background: 
        radial-gradient(circle at 30% 70%, rgba(232,148,58,0.02) 0%, transparent 50%),
        radial-gradient(circle at 70% 30%, rgba(139,69,19,0.02) 0%, transparent 50%) !important;
}
/* 单个人物卡片 */
.sc-dex-panel .sc-dex-item,
details.sc-panel.sc-dex-panel > *:not(summary) > div {
    background: #fffef8 !important;
    border: 1px solid #f0e4d0 !important;
    border-radius: 12px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow: 0 2px 10px rgba(160, 140, 100, 0.06) !important;
    position: relative !important;
}
.sc-dex-panel .sc-dex-item:hover,
details.sc-panel.sc-dex-panel > *:not(summary) > div:hover {
    box-shadow: 0 6px 20px rgba(160, 140, 100, 0.14) !important;
    transform: translateY(-2px) !important;
    border-color: #e8d4b8 !important;
}
/* 人物卡片左侧情绪色条 */
.sc-dex-panel .sc-dex-item::before,
details.sc-panel.sc-dex-panel > *:not(summary) > div::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important; top: 0 !important; bottom: 0 !important;
    width: 5px !important;
    background: linear-gradient(180deg, #c0392b, #e8943a, #f4b860) !important;
    border-radius: 12px 0 0 12px !important;
    z-index: 1 !important;
}
/* 人物名称栏 - 不添加任何图标 */
.sc-dex-panel .sc-dex-name,
details.sc-panel.sc-dex-panel > *:not(summary) > div > strong:first-child,
details.sc-panel.sc-dex-panel > *:not(summary) > div > b:first-child {
    padding: 12px 18px 12px 20px !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #5a4a3a !important;
    cursor: pointer !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    background: linear-gradient(90deg, #faf3e6 0%, #fffef8 100%) !important;
    border-bottom: 1px solid #f0e4d0 !important;
    letter-spacing: 1px !important;
    position: relative !important;
    margin: 0 !important;
}
/* 彻底移除名称前的图标，避免重复 */
.sc-dex-panel .sc-dex-name::before,
details.sc-panel.sc-dex-panel > *:not(summary) > div > strong:first-child::before,
details.sc-panel.sc-dex-panel > *:not(summary) > div > b:first-child::before {
    content: none !important;
    display: none !important;
}
.sc-dex-panel .sc-dex-name::after { display: none !important; }
/* 人物详情区域 */
.sc-dex-panel .sc-dex-detail,
details.sc-panel.sc-dex-panel > *:not(summary) > div > *:not(strong):not(b):not(:first-child) {
    display: block !important;
    padding: 14px 18px 14px 20px !important;
    background: #fffef8 !important;
}
/* 人物详情每一行 */
.sc-dex-panel .sc-dex-line,
details.sc-panel.sc-dex-panel p {
    padding: 6px 0 !important;
    font-size: 13px !important;
    color: #5a4a3a !important;
    line-height: 1.9 !important;
    border-bottom: 1px dotted #f0e4d0 !important;
    display: block !important;
    margin: 0 !important;
    text-indent: 0 !important;
}
.sc-dex-panel .sc-dex-line:last-child,
details.sc-panel.sc-dex-panel p:last-child { border-bottom: none !important; }
.sc-dex-panel .sc-dex-line::before,
details.sc-panel.sc-dex-panel p::before { display: none !important; }
.sc-dex-panel .sc-dex-line strong,
.sc-dex-panel .sc-dex-line b,
details.sc-panel.sc-dex-panel p strong,
details.sc-panel.sc-dex-panel p b {
    color: #8b4513 !important;
    font-weight: 700 !important;
    margin-right: 6px !important;
}
/* 人物图鉴首字母不放大 */
details.sc-panel.sc-dex-panel p::first-letter {
    font-size: inherit !important;
    float: none !important;
    margin: 0 !important;
    font-weight: inherit !important;
    color: inherit !important;
    text-shadow: none !important;
}

/* ==================== 卡片5：记忆区（手账便签风） ==================== */
details.sc-panel.sc-mem-panel {
    background: linear-gradient(180deg, #faf6ee 0%, #f2ece0 100%) !important;
    border: 1px solid #d8ccb8 !important; border-radius: 4px !important;
    box-shadow: 0 3px 14px rgba(160, 140, 110, 0.1) !important;
    padding: 16px 12px 12px !important; position: relative;
    transform: rotate(-0.3deg);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}
details.sc-panel.sc-mem-panel:hover {
    transform: rotate(0deg) translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(160, 140, 110, 0.15) !important;
}
details.sc-panel.sc-mem-panel::before {
    content: ""; position: absolute; top: -8px; left: 20px;
    width: 70px; height: 20px;
    background: rgba(232, 148, 58, 0.3);
    border: 1px solid rgba(232, 148, 58, 0.4);
    transform: rotate(-3deg); box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
details.sc-panel.sc-mem-panel::after {
    content: ""; position: absolute; top: -8px; right: 20px;
    width: 70px; height: 20px;
    background: rgba(168, 192, 216, 0.3);
    border: 1px solid rgba(168, 192, 216, 0.4);
    transform: rotate(3deg); box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}
details.sc-panel.sc-mem-panel > summary {
    background: transparent !important; color: #8b7355 !important;
    padding: 8px 16px !important; font-size: 14px !important;
    font-weight: 600 !important; cursor: pointer !important;
    list-style: none !important; border: none !important;
    letter-spacing: 3px !important; text-align: center !important;
    border-bottom: 2px dashed #d8ccb8 !important;
    margin-bottom: 12px !important; transition: all 0.2s ease !important;
}
details.sc-panel.sc-mem-panel > summary:hover { color: #6b5d4f !important; }
details.sc-panel.sc-mem-panel > summary::marker,
details.sc-panel.sc-mem-panel > summary::-webkit-details-marker { display: none !important; }
details.sc-panel.sc-mem-panel > summary::before { content: none !important; display: none !important; }
div.sc-mem-grid {
    display: grid !important; grid-template-columns: 1fr 1fr !important;
    gap: 14px !important; padding: 4px !important;
}
div.sc-mem-col {
    background: rgba(255,252,245,0.95) !important;
    border-radius: 2px !important; padding: 14px 12px !important;
    border: 1px solid #e0d4c0 !important; position: relative;
    box-shadow: 2px 2px 6px rgba(160, 140, 110, 0.1) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}
div.sc-mem-col:hover { box-shadow: 3px 3px 10px rgba(160, 140, 110, 0.18) !important; }
div.sc-mem-col:first-child { transform: rotate(-0.5deg); }
div.sc-mem-col:last-child { transform: rotate(0.5deg); }
div.sc-mem-col::before {
    content: ""; position: absolute; top: -6px; left: 50%;
    transform: translateX(-50%) rotate(-1deg);
    width: 40px; height: 12px;
    background: rgba(232, 148, 58, 0.25);
    border: 1px solid rgba(232, 148, 58, 0.3);
}
div.sc-mem-h {
    font-weight: 700 !important; color: #8b7355 !important;
    font-size: 12px !important; margin-bottom: 10px !important;
    text-align: center !important; letter-spacing: 2px !important;
    padding-bottom: 6px !important;
    border-bottom: 1px dashed #d8ccb8 !important; margin-top: 4px !important;
}
pre.sc-mem-text {
    font-family: "Noto Serif SC", "Microsoft YaHei", serif !important;
    font-size: 11.5px !important; color: #5a5040 !important;
    background: transparent !important; padding: 4px !important;
    margin: 4px 0 !important; white-space: pre-wrap !important;
    word-break: break-all !important; line-height: 1.9 !important;
    border: none !important;
}

/* ==================== 卡片6：行动选项（分组编号风） ==================== */
div.sm-panel.sm-actions {
    background: #fdf8f0 !important;
    border: 1px solid #e8d4b8 !important;
    border-radius: 12px !important;
    box-shadow: 0 3px 14px rgba(160, 140, 100, 0.1) !important;
    padding: 0 !important;
    margin: 18px 0 !important;
    overflow: hidden !important;
}
div.sm-panel.sm-actions::before { display: none !important; }
div.sm-panel-h {
    background: linear-gradient(90deg, #f5e6e0 0%, #faf0eb 100%) !important;
    color: #8b4513 !important;
    padding: 12px 22px !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    letter-spacing: 1px !important;
    border-radius: 0 !important;
    border-bottom: 1px solid #e8d4b8 !important;
}
div.sm-sec {
    padding: 14px 18px !important;
    background: transparent !important;
    border-radius: 0 !important;
}
div.sm-sec pre {
    font-family: "Noto Serif SC", "Microsoft YaHei", serif !important;
    font-size: 14px !important;
    color: #4a3a2a !important;
    background: #fffef8 !important;
    padding: 12px 16px !important;
    border-radius: 8px !important;
    line-height: 2 !important;
    white-space: pre-wrap !important;
    margin: 8px 0 !important;
    border: 1px solid #f0e4d0 !important;
}
span.sm-free {
    display: block !important;
    text-align: center !important;
    margin-top: 12px !important;
    font-size: 13px !important;
    color: #8b7355 !important;
    font-style: italic !important;
    letter-spacing: 1px !important;
}

/* ==================== 通用details ==================== */
details.sc-panel:not(.sc-player-panel):not(.sc-dex-panel):not(.phone-panel):not(.sc-mem-panel):not(.sc-chain) {
    background: #f5f8fb !important; border: 1px solid #d4dfe8 !important;
    border-radius: 8px !important; margin: 16px 0 !important;
    padding: 0 !important; overflow: hidden !important;
}
details.sc-panel:not(.sc-player-panel):not(.sc-dex-panel):not(.phone-panel):not(.sc-mem-panel):not(.sc-chain) > summary {
    background: #eef3f8 !important; color: #5a6a7a !important;
    padding: 10px 18px !important; font-weight: 500 !important;
    cursor: pointer !important; list-style: none !important;
    border: none !important; border-bottom: 1px solid #d4dfe8 !important;
}
details.sc-panel:not(.sc-player-panel):not(.sc-dex-panel):not(.phone-panel):not(.sc-mem-panel):not(.sc-chain) > summary::marker,
details.sc-panel:not(.sc-player-panel):not(.sc-dex-panel):not(.phone-panel):not(.sc-mem-panel):not(.sc-chain) > summary::-webkit-details-marker {
    display: none !important;
}

/* ==================== 响应式 ==================== */
@media (max-width: 768px) {
    div.sc-mem-grid { grid-template-columns: 1fr !important; }
    .chat-answer-container p { font-size: 13.5px !important; }
    div.sc-event { margin: 14px 16px !important; }
    details.sc-panel.sc-mem-panel { transform: none; }
    div.sc-mem-col { transform: none !important; }
    div.sc-ev-body p:first-of-type::first-letter { font-size: 1.8em; }
}


/* ===== 修复：行动选项蓝色字点击跳转 ===== */
.chat-answer-container a {
  color: inherit !important;
  text-decoration: none !important;
  pointer-events: none !important;
  cursor: default !important;
}
.chat-answer-container a:hover {
  color: inherit !important;
  text-decoration: none !important;
}

/* ===== 热点信息 & 微信面板美化 ===== */
.sc-hotnews, .sc-news, .sc-hot-info, .sc-hotnews-panel,
.sc-wechat, .sc-weixin, .sc-msg-panel, .sc-wechat-panel {
  background: linear-gradient(135deg, #fff5f5 0%, #fff0f6 100%);
  border: 1px solid #f0c0d0;
  border-radius: 10px;
  padding: 12px 16px;
  margin: 10px 0;
  box-shadow: 0 2px 8px rgba(200, 100, 150, 0.1);
}
.sc-hotnews h4, .sc-news h4, .sc-hot-info h4,
.sc-wechat h4, .sc-weixin h4, .sc-msg-panel h4 {
  color: #c2185b;
  font-size: 15px;
  margin: 0 0 8px 0;
  border-bottom: 2px solid #f8bbd0;
  padding-bottom: 6px;
}
.sc-news-item, .sc-hotnews-item {
  padding: 6px 0;
  border-bottom: 1px dashed #f0c0d0;
  font-size: 13px;
  color: #555;
  line-height: 1.6;
}
.sc-news-item:last-child, .sc-hotnews-item:last-child { border-bottom: none; }
.sc-news-tag, .sc-hotnews-tag {
  display: inline-block;
  padding: 1px 6px;
  border-radius: 8px;
  background: #fce4ec;
  color: #c2185b;
  font-size: 11px;
  margin-right: 6px;
  font-weight: 500;
}
.sc-wechat-msg, .sc-weixin-msg {
  padding: 8px 10px;
  background: #fff;
  border-radius: 8px;
  margin: 6px 0;
  border-left: 3px solid #e8a0bf;
  font-size: 13px;
  color: #555;
}
.sc-wechat-empty, .sc-weixin-empty {
  text-align: center;
  color: #999;
  font-size: 13px;
  padding: 12px 0;
}

/* ===== 真实微信风格（覆盖之前粉色主题） ===== */
.sc-wechat, .sc-weixin, .sc-wechat-panel, .sc-weixin-panel {
  background: #ededed !important;
  border: 1px solid #d0d0d0 !important;
  border-radius: 12px !important;
  padding: 0 !important;
  margin: 10px 0 !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15) !important;
  overflow: hidden !important;
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Helvetica Neue", sans-serif !important;
}
.sc-wechat > h4:first-child, .sc-weixin > h4:first-child,
.sc-wechat-panel > h4:first-child, .sc-weixin-panel > h4:first-child,
.sc-wechat-header, .sc-weixin-header {
  background: #2e2e2e !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  text-align: center !important;
  padding: 12px 0 !important;
  margin: 0 !important;
  border-bottom: none !important;
}
.sc-wechat-body, .sc-weixin-body, .sc-wechat-content, .sc-weixin-content {
  background: #ededed !important;
  padding: 12px !important;
}
.sc-wechat-msg.other, .sc-weixin-msg.other,
.sc-wechat-msg-left, .sc-weixin-msg-left {
  background: #fff !important;
  color: #000 !important;
  border-radius: 4px !important;
  padding: 8px 12px !important;
  margin: 6px 0 !important;
  border-left: none !important;
  max-width: 70% !important;
  display: inline-block !important;
}
.sc-wechat-msg.self, .sc-weixin-msg.self,
.sc-wechat-msg.me, .sc-weixin-msg.me,
.sc-wechat-msg-right, .sc-weixin-msg-right {
  background: #95ec69 !important;
  color: #000 !important;
  border-radius: 4px !important;
  padding: 8px 12px !important;
  margin: 6px 0 6px auto !important;
  border-left: none !important;
  max-width: 70% !important;
  display: block !important;
  text-align: right !important;
}
.sc-wechat-contact, .sc-weixin-contact,
.sc-wechat-list-item, .sc-weixin-list-item {
  display: flex !important;
  align-items: center !important;
  padding: 10px 12px !important;
  border-bottom: 1px solid #e5e5e5 !important;
  background: #fff !important;
}
.sc-wechat-avatar, .sc-weixin-avatar {
  width: 40px !important;
  height: 40px !important;
  border-radius: 6px !important;
  margin-right: 10px !important;
  background: #ddd !important;
  flex-shrink: 0 !important;
}
.sc-wechat-empty, .sc-weixin-empty {
  background: #ededed !important;
  color: #999 !important;
  text-align: center !important;
  padding: 30px 0 !important;
  font-size: 14px !important;
}


/* ===== 热点信息美化 ===== */
.sc-hot-info, .sc-hotnews, .sc-trending {
  background: #fff !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.08) !important;
}
.sc-hot-info .title, .sc-hotnews .title, .sc-trending .title {
  background: linear-gradient(135deg, #ff6b35, #f7931e) !important;
  color: #fff !important;
  padding: 12px 16px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
.sc-hot-info .title::before, .sc-hotnews .title::before, .sc-trending .title::before {
  content: "🔥" !important;
  font-size: 18px !important;
}
.sc-hot-info .item, .sc-hotnews .item, .sc-trending .item {
  padding: 10px 16px !important;
  border-bottom: 1px solid #f0f0f0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  transition: background 0.2s !important;
  cursor: pointer !important;
}
.sc-hot-info .item:hover, .sc-hotnews .item:hover, .sc-trending .item:hover {
  background: #fff8f5 !important;
}
.sc-hot-info .item:last-child, .sc-hotnews .item:last-child, .sc-trending .item:last-child {
  border-bottom: none !important;
}
.sc-hot-info .rank, .sc-hotnews .rank, .sc-trending .rank {
  width: 22px !important;
  height: 22px !important;
  border-radius: 50% !important;
  background: #f0f0f0 !important;
  color: #999 !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}
.sc-hot-info .item:nth-child(1) .rank, .sc-hotnews .item:nth-child(1) .rank, .sc-trending .item:nth-child(1) .rank {
  background: #ff4757 !important;
  color: #fff !important;
}
.sc-hot-info .item:nth-child(2) .rank, .sc-hotnews .item:nth-child(2) .rank, .sc-trending .item:nth-child(2) .rank {
  background: #ff7f50 !important;
  color: #fff !important;
}
.sc-hot-info .item:nth-child(3) .rank, .sc-hotnews .item:nth-child(3) .rank, .sc-trending .item:nth-child(3) .rank {
  background: #ffa502 !important;
  color: #fff !important;
}
.sc-hot-info .text, .sc-hotnews .text, .sc-trending .text {
  flex: 1 !important;
  font-size: 14px !important;
  color: #333 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.sc-hot-info .heat, .sc-hotnews .heat, .sc-trending .heat {
  font-size: 12px !important;
  color: #ff6b35 !important;
  flex-shrink: 0 !important;
}

/* ===== 微信真实风格美化（增强版） ===== */
.sc-wechat, .sc-weixin {
  background: #ededed !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif !important;
}
.sc-wechat .header, .sc-weixin .header {
  background: #ededed !important;
  padding: 12px 16px !important;
  text-align: center !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  color: #000 !important;
  border-bottom: 1px solid #d9d9d9 !important;
}
.sc-wechat .messages, .sc-weixin .messages {
  padding: 12px !important;
  background: #ededed !important;
}
.sc-wechat .msg, .sc-weixin .msg {
  display: flex !important;
  margin-bottom: 16px !important;
  align-items: flex-start !important;
  gap: 8px !important;
}
.sc-wechat .msg.self, .sc-weixin .msg.self {
  flex-direction: row-reverse !important;
}
.sc-wechat .avatar, .sc-weixin .avatar {
  width: 40px !important;
  height: 40px !important;
  border-radius: 6px !important;
  background: #ccc !important;
  flex-shrink: 0 !important;
  overflow: hidden !important;
}
.sc-wechat .avatar img, .sc-weixin .avatar img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
.sc-wechat .bubble, .sc-weixin .bubble {
  max-width: 70% !important;
  padding: 10px 14px !important;
  border-radius: 6px !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  word-wrap: break-word !important;
  position: relative !important;
}
.sc-wechat .msg:not(.self) .bubble, .sc-weixin .msg:not(.self) .bubble {
  background: #fff !important;
  color: #000 !important;
}
.sc-wechat .msg.self .bubble, .sc-weixin .msg.self .bubble {
  background: #95ec69 !important;
  color: #000 !important;
}
.sc-wechat .time, .sc-weixin .time {
  text-align: center !important;
  font-size: 12px !important;
  color: #999 !important;
  margin: 8px 0 !important;
}
.sc-wechat .input-area, .sc-weixin .input-area {
  background: #f7f7f7 !important;
  padding: 10px 12px !important;
  border-top: 1px solid #d9d9d9 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}
.sc-wechat .input-area input, .sc-weixin .input-area input {
  flex: 1 !important;
  border: none !important;
  background: #fff !important;
  border-radius: 6px !important;
  padding: 8px 12px !important;
  font-size: 14px !important;
  outline: none !important;
}
.sc-wechat .send-btn, .sc-weixin .send-btn {
  background: #07c160 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 6px !important;
  padding: 8px 16px !important;
  font-size: 14px !important;
  cursor: pointer !important;
}
.sc-wechat .send-btn:hover, .sc-weixin .send-btn:hover {
  background: #06ad56 !important;
}