/* =======================================================
   1. 全局与底层 UI 隐藏 (漫画风：高对比、粗线条、硬阴影)
======================================================= */
[class*="bg-[#F1CBCB]"], [class*="bg-[#c9e1e9]"] { display: none !important; }

/* 替换旧版 .bg-gray-100\/90.relative.inline-block 为新版对话底板类名 */
.is-user > .border.border-muted, .is-assistant > .border.border-muted {
    background: #ffffff !important;
    background-image: radial-gradient(#000 1px, transparent 1px) !important;
    background-size: 15px 15px !important;
    border: 4px solid #000 !important;
    box-shadow: 10px 10px 0px #000 !important;
    border-radius: 0 !important;
    position: relative !important;
    overflow: visible !important;
}
/* 顶部与底部的漫画风胶带/装订线点缀 */
.is-user > .border.border-muted::before, .is-assistant > .border.border-muted::before { content: '' !important; position: absolute !important; top: -10px !important; left: 20px !important; width: 50px !important; height: 15px !important; background: #FFD700 !important; border: 3px solid #000 !important; transform: rotate(-3deg) !important; z-index: 10 !important; }
.is-user > .border.border-muted::after, .is-assistant > .border.border-muted::after { content: '' !important; position: absolute !important; bottom: -10px !important; right: 20px !important; width: 50px !important; height: 15px !important; background: #00E5FF !important; border: 3px solid #000 !important; transform: rotate(2deg) !important; z-index: 10 !important; }

.markdown-body, .rili-markdown-renderer {
    font-size: 1.15rem !important; line-height: 1.7 !important;
    color: #000 !important;
    font-family: "Comic Sans MS", "Chalkboard SE", "Comic Neue", "Marker Felt", sans-serif !important;
    font-weight: 700 !important; text-shadow: none !important; z-index: 1 !important;
}
.markdown-body strong, .rili-markdown-renderer strong { color: #000 !important; font-weight: 900 !important; background: #FFD700 !important; padding: 2px 6px !important; border: 2px solid #000 !important; box-shadow: 3px 3px 0 #000 !important; display: inline-block !important; transform: skewX(-5deg) !important; }

/* =========================================
   2. 顶部栏、底部输入栏与按钮栏 (适配新版输入框与按钮)
========================================= */
header, .sticky.top-0, [class*="sticky"][class*="top-0"] { background: transparent !important; border: none !important; box-shadow: none !important; backdrop-filter: none !important; }
#ai-model-selector .group.flex.items-center { background: #fff !important; border: 3px solid #000 !important; border-radius: 0 !important; box-shadow: 4px 4px 0 #000 !important; transition: all 0.2s ease !important; }
#ai-model-selector .group.flex.items-center:hover { background: #FFD700 !important; transform: translate(-2px, -2px) !important; box-shadow: 6px 6px 0 #000 !important; }
#ai-model-selector .truncate.text-\[13px\] { color: #000 !important; font-weight: 900 !important; text-transform: uppercase !important; }
#ai-model-selector .shrink-0.flex.items-center svg { color: #000 !important; }
.sticky.top-0 svg, [class*="sticky"][class*="top-0"] svg { color: #000 !important; transition: transform 0.2s !important; }
.sticky.top-0 svg:hover, [class*="sticky"][class*="top-0"] svg:hover { transform: scale(1.2) rotate(10deg) !important; color: #FF3366 !important; }
.bg-gradient-to-t { background: transparent !important; }
#ai-chat-bottom-input { background: transparent !important; }

textarea, input[type="text"] { background: #fff !important; border: 4px solid #000 !important; border-radius: 0 !important; color: #000 !important; font-weight: 900 !important; box-shadow: 6px 6px 0 #000 !important; transition: all 0.2s ease !important; }
textarea:focus, input[type="text"]:focus { box-shadow: 8px 8px 0 #FF3366 !important; outline: none !important; transform: translate(-2px, -2px) !important; }
textarea::placeholder, input[type="text"]::placeholder { color: #666 !important; font-weight: 700 !important; text-transform: uppercase !important; }
textarea::selection, input[type="text"]::selection { background: #00E5FF !important; color: #000 !important; }

button, .menu_button { background: #FFD700 !important; border: 3px solid #000 !important; border-radius: 0 !important; color: #000 !important; font-weight: 900 !important; text-transform: uppercase !important; box-shadow: 4px 4px 0 #000 !important; transition: all 0.2s ease-in-out !important; transform: skewX(-5deg) !important; }
button:hover, .menu_button:hover { background: #FF3366 !important; color: #fff !important; box-shadow: 6px 6px 0 #000 !important; transform: skewX(-5deg) translate(-2px, -2px) !important; }

/* =======================================================
   3. 虚数终端面板 UI & 🌟 不规则漫画碎片分镜布局
======================================================= */
.markdown-body .panel-grid > p, .markdown-body .scene-status-card > p, .rili-markdown-renderer .panel-grid > p, .rili-markdown-renderer .scene-status-card > p { display: contents !important; }

/* 🌟 场景状态卡片 (旁白框) */
.markdown-body .scene-status-card, .rili-markdown-renderer .scene-status-card { background: #FFD700 !important; border: 4px solid #000 !important; border-radius: 0 !important; padding: 15px !important; margin-bottom: 25px !important; box-shadow: 8px 8px 0 #000 !important; position: relative !important; }
.markdown-body .scene-status-card::before, .rili-markdown-renderer .scene-status-card::before { content: 'SYSTEM / 场景状态'; position: absolute; top: -14px; left: -4px; background: #000; color: #fff; padding: 2px 10px; font-size: 12px; font-weight: 900; letter-spacing: 1px; }
.markdown-body .scene-status-card .info-grid, .rili-markdown-renderer .scene-status-card .info-grid { display: flex !important; justify-content: space-between !important; flex-wrap: wrap !important; gap: 12px !important; margin: 0 !important; }
.markdown-body .scene-status-card span, .rili-markdown-renderer .scene-status-card span { background: #fff !important; padding: 8px 16px !important; border: 3px solid #000 !important; color: #000 !important; font-size: 1rem !important; font-weight: 900 !important; flex: 1 1 auto !important; text-align: center !important; box-shadow: 4px 4px 0 #000 !important; text-transform: uppercase !important; transform: skewX(-5deg) !important; }
.markdown-body .scene-status-card span b, .rili-markdown-renderer .scene-status-card span b { color: #FF3366 !important; }

/* 🌟 核心网格容器 (3x3 不规则网格) */
.markdown-body .panel-grid, .rili-markdown-renderer .panel-grid { 
    display: grid !important; 
    grid-template-columns: 1.2fr 0.8fr 1fr !important; 
    grid-template-rows: minmax(110px, auto) minmax(110px, auto) minmax(110px, auto) !important; 
    gap: 15px !important; 
    width: 100% !important; 
    box-sizing: border-box !important; 
    margin-bottom: 35px !important; 
}

/* 🌟 闭合状态：不规则碎片化排版 (利用 skew 与 rotate 制造撕裂感) */
.markdown-body .grid-item, .rili-markdown-renderer .grid-item { margin: 0 !important; box-sizing: border-box !important; min-width: 0 !important; background: #fff !important; border: 4px solid #000 !important; border-radius: 0 !important; transition: all 0.2s ease !important; box-shadow: 6px 6px 0 #000 !important; position: relative !important; }

/* 1. 世界 (左上宽屏) */
.markdown-body .grid-item:nth-child(1):not([open]), .rili-markdown-renderer .grid-item:nth-child(1):not([open]) { grid-area: 1 / 1 / 2 / 3 !important; transform: skewX(-4deg) rotate(-1deg) !important; z-index: 2; }
/* 2. 执照 (右上竖屏) */
.markdown-body .grid-item:nth-child(2):not([open]), .rili-markdown-renderer .grid-item:nth-child(2):not([open]) { grid-area: 1 / 3 / 3 / 4 !important; transform: skewY(4deg) rotate(2deg) !important; z-index: 1; }
/* 3. 档案 (左下巨幕) */
.markdown-body .grid-item:nth-child(3):not([open]), .rili-markdown-renderer .grid-item:nth-child(3):not([open]) { grid-area: 2 / 1 / 4 / 2 !important; transform: skewY(-3deg) rotate(-1.5deg) !important; z-index: 3; }
/* 4. 羁绊 (正中核心) */
.markdown-body .grid-item:nth-child(4):not([open]), .rili-markdown-renderer .grid-item:nth-child(4):not([open]) { grid-area: 2 / 2 / 3 / 3 !important; transform: skewX(6deg) rotate(3deg) scale(1.05) !important; z-index: 4; box-shadow: 8px 8px 0 #000 !important; }
/* 5. 记忆 (右下宽屏) */
.markdown-body .grid-item:nth-child(5):not([open]), .rili-markdown-renderer .grid-item:nth-child(5):not([open]) { grid-area: 3 / 2 / 4 / 4 !important; transform: skewX(-3deg) rotate(1deg) !important; z-index: 2; }

/* 闭合时的悬浮动效 */
.markdown-body .grid-item:not([open]):hover, .rili-markdown-renderer .grid-item:not([open]):hover { transform: scale(1.08) rotate(0deg) !important; box-shadow: 12px 12px 0 #000 !important; z-index: 10 !important; }

/* =======================================================
   🔥 标题框双字替换与高能色彩注入
======================================================= */
.markdown-body .grid-item:not([open]) .fold-header, .rili-markdown-renderer .grid-item:not([open]) .fold-header { 
    font-size: 0 !important; 
    cursor: pointer !important; 
    display: block !important; 
    width: 100% !important; 
    height: 100% !important; 
    min-height: 100px !important; 
    border-bottom: none !important; 
    position: relative;
    overflow: hidden !important; 
}

/* 利用 ::before 注入“两个字” */
.markdown-body .grid-item:not([open]) .fold-header::before, .rili-markdown-renderer .grid-item:not([open]) .fold-header::before {
    position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
    color: #000 !important; font-size: 2.2rem !important; font-weight: 900 !important;
    letter-spacing: 8px !important; text-transform: uppercase !important; text-shadow: 3px 3px 0 #fff !important;
    pointer-events: none !important; transition: all 0.2s ease !important;
}
.markdown-body .grid-item:not([open]):hover .fold-header::before, .rili-markdown-renderer .grid-item:not([open]):hover .fold-header::before { transform: translate(-50%, -50%) scale(1.2) !important; color: #fff !important; text-shadow: 4px 4px 0 #000 !important; }

/* 🎨 专属波普色彩与文字分配 */
.markdown-body .grid-item:nth-child(1) .fold-header, .rili-markdown-renderer .grid-item:nth-child(1) .fold-header { background: #FFD700 !important; }
.markdown-body .grid-item:nth-child(1):not([open]) .fold-header::before, .rili-markdown-renderer .grid-item:nth-child(1):not([open]) .fold-header::before { content: '世界'; }
.markdown-body .grid-item:nth-child(2) .fold-header, .rili-markdown-renderer .grid-item:nth-child(2) .fold-header { background: #00E5FF !important; }
.markdown-body .grid-item:nth-child(2):not([open]) .fold-header::before, .rili-markdown-renderer .grid-item:nth-child(2):not([open]) .fold-header::before { content: '执照'; writing-mode: vertical-lr; letter-spacing: 15px !important; }
.markdown-body .grid-item:nth-child(3) .fold-header, .rili-markdown-renderer .grid-item:nth-child(3) .fold-header { background: #FF3366 !important; }
.markdown-body .grid-item:nth-child(3):not([open]) .fold-header::before, .rili-markdown-renderer .grid-item:nth-child(3):not([open]) .fold-header::before { content: '档案'; font-size: 3rem !important; color: #fff !important; text-shadow: 5px 5px 0 #000 !important; writing-mode: vertical-lr; letter-spacing: 20px !important; }
.markdown-body .grid-item:nth-child(4) .fold-header, .rili-markdown-renderer .grid-item:nth-child(4) .fold-header { background: #FF9800 !important; }
.markdown-body .grid-item:nth-child(4):not([open]) .fold-header::before, .rili-markdown-renderer .grid-item:nth-child(4):not([open]) .fold-header::before { content: '羁绊'; }
.markdown-body .grid-item:nth-child(5) .fold-header, .rili-markdown-renderer .grid-item:nth-child(5) .fold-header { background: #B2FF59 !important; }
.markdown-body .grid-item:nth-child(5):not([open]) .fold-header::before, .rili-markdown-renderer .grid-item:nth-child(5):not([open]) .fold-header::before { content: '记忆'; }

/* =======================================================
   🌟 展开状态：正常大小、原位平铺、不影响其他界面
======================================================= */
.markdown-body .grid-item[open], .rili-markdown-renderer .grid-item[open] { 
    grid-area: auto !important; /* 解除碎片化固定位置 */
    grid-column: 1 / -1 !important; /* 在网格内部占满全宽，不超出版心 */
    position: relative !important; /* 恢复正常文档流，不遮挡聊天框 */
    z-index: 10 !important; 
    transform: scale(0.98) !important; /* 取消倾斜，端正显示 */
    animation: popNormal 0.2s ease-out forwards !important; 
    border: 4px solid #000 !important; 
    background: #fff !important; 
    box-shadow: 10px 10px 0 #000 !important; 
    margin-bottom: 15px !important; /* 增加呼吸感 */
}
@keyframes popNormal { to { transform: scale(1); } }

/* 展开时的顶部标题栏 */
.markdown-body .grid-item[open] .fold-header, .rili-markdown-renderer .grid-item[open] .fold-header { 
    display: block !important; 
    position: relative !important; 
    height: auto !important; 
    padding: 15px 100px 15px 20px !important; /* 右侧留出关闭按钮的空间 */
    white-space: normal !important; 
    border-bottom: 5px solid #000 !important; 
    color: #000 !important; 
    font-weight: 900 !important; 
    text-transform: uppercase !important; 
    font-size: 1.3rem !important; 
}
.markdown-body .grid-item:nth-child(3)[open] .fold-header, .rili-markdown-renderer .grid-item:nth-child(3)[open] .fold-header { color: #fff !important; background: #FF3366 !important; }

/* 🌟 纯 CSS 打造的「✖ 关闭」按钮 (保留在右上角) */
.markdown-body .grid-item[open] .fold-header::after, .rili-markdown-renderer .grid-item[open] .fold-header::after {
    content: '✖ 关闭' !important;
    position: absolute !important;
    top: 50% !important;
    right: 15px !important;
    transform: translateY(-50%) !important;
    background: #FF3366 !important;
    color: #fff !important;
    border: 3px solid #000 !important;
    padding: 6px 12px !important;
    font-size: 1rem !important;
    font-weight: 900 !important;
    letter-spacing: 2px !important;
    box-shadow: 4px 4px 0 #000 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    text-shadow: none !important;
    writing-mode: horizontal-tb !important; /* 强制水平 */
}
.markdown-body .grid-item[open] .fold-header:hover::after, .rili-markdown-renderer .grid-item[open] .fold-header:hover::after {
    background: #FFD700 !important;
    color: #000 !important;
    transform: translateY(-50%) translate(-2px, -2px) !important;
    box-shadow: 6px 6px 0 #000 !important;
}

/* 内部内容区 */
.markdown-body .fold-content, .rili-markdown-renderer .fold-content { padding: 20px !important; font-size: 15px !important; line-height: 1.7 !important; background: #fff !important; background-image: radial-gradient(#ccc 1px, transparent 1px) !important; background-size: 10px 10px !important; overflow: visible !important; color: #000 !important; }

/* =======================================================
   🌸 幕后茶话会 / 剧情分支 (原汁原味高能警告框)
======================================================= */
.markdown-body .main-story-box, .markdown-body .omake-isolation-box, .markdown-body .purple-isolation-box, .rili-markdown-renderer .main-story-box, .rili-markdown-renderer .omake-isolation-box, .rili-markdown-renderer .purple-isolation-box { grid-column: 1 / -1 !important; width: 100% !important; display: block !important; clear: both !important; margin-top: 35px !important; margin-bottom: 25px !important; background: #fff !important; border: 5px solid #000 !important; padding: 20px !important; position: relative !important; box-shadow: 12px 12px 0px #FFD700 !important; transition: all 0.2s ease !important; }
.markdown-body .main-story-box:hover, .markdown-body .omake-isolation-box:hover, .rili-markdown-renderer .main-story-box:hover, .rili-markdown-renderer .omake-isolation-box:hover { transform: translate(-4px, -4px) !important; box-shadow: 16px 16px 0px #FF3366 !important; }
.markdown-body .main-story-box::before, .markdown-body .omake-isolation-box::before, .markdown-body .purple-isolation-box::before, .rili-markdown-renderer .main-story-box::before, .rili-markdown-renderer .omake-isolation-box::before, .rili-markdown-renderer .purple-isolation-box::before { content: '' !important; position: absolute !important; top: -15px !important; left: 50% !important; transform: translateX(-50%) rotate(-2deg) !important; width: 140px !important; height: 30px !important; background: #000 !important; border: none !important; box-shadow: 4px 4px 0 #FF3366 !important; z-index: 5 !important; }
.markdown-body .main-story-box .fold-header, .markdown-body .omake-isolation-box .fold-header, .markdown-body .purple-isolation-box .fold-header, .rili-markdown-renderer .main-story-box .fold-header, .rili-markdown-renderer .omake-isolation-box .fold-header, .rili-markdown-renderer .purple-isolation-box .fold-header { background: transparent !important; border: none !important; text-align: center !important; font-size: 1.4em !important; font-weight: 900 !important; color: #000 !important; text-transform: uppercase !important; padding: 15px 0 15px 0 !important; white-space: normal !important; height: auto !important; text-shadow: 2px 2px 0 #FFD700 !important; position: relative; z-index: 10; }
.markdown-body .main-story-box .fold-header::before, .markdown-body .omake-isolation-box .fold-header::before, .rili-markdown-renderer .main-story-box .fold-header::before, .rili-markdown-renderer .omake-isolation-box .fold-header::before { content: '★ ' !important; color: #FF3366 !important; text-shadow: none !important; }
.markdown-body .main-story-box .fold-header::after, .markdown-body .omake-isolation-box .fold-header::after, .rili-markdown-renderer .main-story-box .fold-header::after, .rili-markdown-renderer .omake-isolation-box .fold-header::after { content: ' ★' !important; color: #FF3366 !important; text-shadow: none !important; }
.markdown-body .main-story-box .fold-content, .markdown-body .omake-isolation-box .fold-content, .rili-markdown-renderer .main-story-box .fold-content, .rili-markdown-renderer .omake-isolation-box .fold-content { background: #f4f4f4 !important; border: 3px solid #000 !important; padding: 15px !important; color: #000 !important; margin-top: 10px !important; box-shadow: inset 4px 4px 0 rgba(0,0,0,0.1) !important; }
.markdown-body .main-story-box b, .rili-markdown-renderer .main-story-box b { color: #FF3366 !important; font-weight: 900 !important; text-transform: uppercase !important; }

/* 羁绊/NPC卡片 */
.markdown-body .bond-card, .rili-markdown-renderer .bond-card { background: #E040FB !important; border: 4px solid #000 !important; padding: 15px !important; margin-bottom: 15px !important; box-shadow: 6px 6px 0 #000 !important; color: #fff !important; transition: all 0.2s ease !important; transform: skewX(-2deg) !important; }
.markdown-body .bond-card:hover, .rili-markdown-renderer .bond-card:hover { transform: skewX(-2deg) translate(-4px, -4px) !important; box-shadow: 10px 10px 0 #000 !important; }
.markdown-body .npc-card, .rili-markdown-renderer .npc-card { background: #00E5FF !important; border: 4px solid #000 !important; padding: 15px !important; margin-bottom: 15px !important; box-shadow: 6px 6px 0 #000 !important; color: #000 !important; transition: all 0.2s ease !important; transform: skewX(2deg) !important; }
.markdown-body .npc-card:hover, .rili-markdown-renderer .npc-card:hover { transform: skewX(2deg) translate(-4px, -4px) !important; box-shadow: 10px 10px 0 #000 !important; }
.markdown-body b, .rili-markdown-renderer b { color: #000 !important; font-weight: 900 !important; }
.markdown-body .info-grid, .rili-markdown-renderer .info-grid { display: flex !important; flex-wrap: wrap !important; gap: 10px !important; margin-bottom: 12px !important; }
.markdown-body .info-grid span, .rili-markdown-renderer .info-grid span { background: #fff !important; padding: 6px 12px !important; border: 3px solid #000 !important; font-size: 13px !important; font-weight: 900 !important; color: #000 !important; box-shadow: 3px 3px 0 #000 !important; transition: all 0.2s ease !important; text-transform: uppercase !important; }
.markdown-body .info-grid span:hover, .rili-markdown-renderer .info-grid span:hover { background: #FFD700 !important; transform: translate(-2px, -2px) !important; box-shadow: 5px 5px 0 #000 !important; }
.markdown-body .system-message, .rili-markdown-renderer .system-message { background: #000 !important; border: 3px dashed #FFD700 !important; padding: 12px !important; margin-bottom: 15px !important; color: #FFD700 !important; font-weight: 900 !important; text-transform: uppercase !important; text-align: center !important; }
.markdown-body hr, .rili-markdown-renderer hr { border: 0 !important; height: 4px !important; background: #000 !important; margin: 25px 0 !important; }

/* =======================================================
   4. 玩家头像防挤压 & 悬浮信息
======================================================= */
.markdown-body .player-header-wrap, .rili-markdown-renderer .player-header-wrap { display: flex !important; gap: 20px !important; align-items: center !important; margin-bottom: 20px !important; background: #FFD700; border: 4px solid #000; padding: 15px; box-shadow: 8px 8px 0 #000; }
.markdown-body .player-avatar, .rili-markdown-renderer .player-avatar { flex-shrink: 0 !important; width: 110px !important; height: 110px !important; display: flex !important; align-items: center !important; justify-content: center !important; }
.markdown-body .profile-player-img, .rili-markdown-renderer .profile-player-img { display: block !important; width: 110px !important; height: 110px !important; min-width: 110px !important; min-height: 110px !important; border-radius: 0 !important; object-fit: cover !important; object-position: top center !important; border: 4px solid #000 !important; box-shadow: 6px 6px 0 #000 !important; background: #fff !important; flex-shrink: 0 !important; transition: all 0.2s ease !important; }
.markdown-body .profile-player-img:hover, .rili-markdown-renderer .profile-player-img:hover { transform: translate(-4px, -4px) !important; box-shadow: 10px 10px 0 #FF3366 !important; }
.markdown-body .npc-banner, .rili-markdown-renderer .npc-banner { width: 100% !important; position: relative !important; border-bottom: 5px solid #000 !important; overflow: hidden !important; }
.markdown-body .npc-name-bar, .rili-markdown-renderer .npc-name-bar { position: absolute !important; bottom: 0 !important; left: 0 !important; width: 100% !important; padding: 30px 15px 12px !important; background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, rgba(0,0,0,0.5) 50%, transparent 100%) !important; display: flex !important; justify-content: space-between !important; align-items: flex-end !important; pointer-events: none !important; z-index: 10 !important; }
.markdown-body .npc-name-bar span, .rili-markdown-renderer .npc-name-bar span { color: #fff !important; font-size: 1.5em !important; font-weight: 900 !important; text-shadow: 3px 3px 0 #000 !important; text-transform: uppercase !important; letter-spacing: 2px !important; }
.markdown-body .npc-name-bar span:last-child, .rili-markdown-renderer .npc-name-bar span:last-child { font-size: 1.1em !important; color: #FFD700 !important; }
.markdown-body .hover-item, .rili-markdown-renderer .hover-item { position: relative !important; display: inline-block !important; color: #000 !important; border-bottom: 3px solid #000 !important; cursor: help !important; font-weight: 900 !important; margin: 0 4px !important; transition: all 0.2s ease !important; background: #FFD700 !important; padding: 0 4px !important; }
.markdown-body .hover-item:hover, .rili-markdown-renderer .hover-item:hover { color: #fff !important; background: #FF3366 !important; }
.markdown-body .item-desc, .rili-markdown-renderer .item-desc { visibility: hidden !important; opacity: 0 !important; width: max-content !important; max-width: 280px !important; background: #fff !important; color: #000 !important; text-align: left !important; border-radius: 0 !important; padding: 15px !important; position: absolute !important; z-index: 999999 !important; bottom: 130% !important; left: 50% !important; transform: translateX(-50%) translateY(10px) !important; transition: all 0.2s ease !important; border: 4px solid #000 !important; box-shadow: 8px 8px 0 #000 !important; font-size: 1rem !important; font-weight: 700 !important; line-height: 1.6 !important; white-space: normal !important; pointer-events: none !important; }
.markdown-body .item-desc::after, .rili-markdown-renderer .item-desc::after { content: ''; position: absolute; bottom: -12px; left: 50%; transform: translateX(-50%); border-width: 12px 12px 0; border-style: solid; border-color: #000 transparent transparent transparent; }
.markdown-body .hover-item:hover .item-desc, .markdown-body .hover-item:focus .item-desc, .rili-markdown-renderer .hover-item:hover .item-desc, .rili-markdown-renderer .hover-item:focus .item-desc { visibility: visible !important; opacity: 1 !important; transform: translateX(-50%) translateY(0) !important; }

/* ============================================
   5. 沉浸式对话气泡系统 (兼容新版 NPC 气泡类名)
============================================ */
.mt-chat > p, .mt-content > p, .npc-chat-row > p, .npc-chat-row > div:last-child > p { display: contents !important; margin: 0 !important; padding: 0 !important; }
.mt-chat, .npc-chat-row { display: flex !important; align-items: flex-start !important; gap: 15px !important; width: 100% !important; max-width: 760px !important; margin: 25px auto !important; font-family: "Comic Sans MS", "Marker Felt", sans-serif !important; background-color: transparent !important; border: none !important; padding: 10px 0 !important; box-sizing: border-box !important; }
.mt-content, .npc-chat-row > div:last-child { display: flex !important; flex-direction: column !important; flex: 1 1 auto !important; min-width: 0 !important; }
.mt-name, .npc-chat-name { font-size: 1.1rem !important; font-weight: 900 !important; margin-bottom: 8px !important; text-transform: uppercase !important; color: #000 !important; background: #fff !important; border: 2px solid #000 !important; padding: 2px 10px !important; display: inline-block !important; box-shadow: 2px 2px 0 #000 !important; align-self: flex-start !important; }
.mt-bubble, .npc-chat-bubble { position: relative !important; padding: 15px 20px !important; font-size: 1.1rem !important; line-height: 1.6 !important; box-shadow: 6px 6px 0 #000 !important; word-break: break-word !important; max-width: fit-content !important; border-radius: 0 !important; transition: all 0.2s ease !important; background: #fff !important; border: 4px solid #000 !important; color: #000 !important; font-weight: 700 !important; }
.mt-bubble p, .mt-bubble span, .npc-chat-bubble p, .npc-chat-bubble span { color: inherit !important; margin: 0 !important; padding: 0 !important; }
.mt-bubble:hover, .npc-chat-bubble:hover { transform: translate(-2px, -2px) !important; box-shadow: 8px 8px 0 #000 !important; }
.mt-chat[data-align="left"], .npc-chat-row.npc-left { flex-direction: row !important; }
.mt-chat[data-align="left"] .mt-content, .npc-chat-row.npc-left > div:last-child { align-items: flex-start !important; }
.mt-chat[data-align="left"] .mt-bubble::before, .npc-chat-row.npc-left .npc-chat-bubble::before { content: ''; position: absolute; top: 15px; left: -14px; border-width: 10px 14px 10px 0; border-style: solid; border-color: transparent #000 transparent transparent; }
.mt-chat[data-align="left"] .mt-bubble::after, .npc-chat-row.npc-left .npc-chat-bubble::after { content: ''; position: absolute; top: 15px; left: -9px; border-width: 10px 14px 10px 0; border-style: solid; border-color: transparent #fff transparent transparent; }
.mt-chat[data-align="right"], .npc-chat-row.npc-right { flex-direction: row-reverse !important; }
.mt-chat[data-align="right"] .mt-content, .npc-chat-row.npc-right > div:last-child { align-items: flex-end !important; }
.mt-chat[data-align="right"] .mt-name, .npc-chat-row.npc-right .npc-chat-name { align-self: flex-end !important; }
.mt-chat[data-align="right"] .mt-bubble::before, .npc-chat-row.npc-right .npc-chat-bubble::before { content: ''; position: absolute; top: 15px; right: -14px; border-width: 10px 0 10px 14px; border-style: solid; border-color: transparent transparent transparent #000; }
.mt-chat[data-align="right"] .mt-bubble::after, .npc-chat-row.npc-right .npc-chat-bubble::after { content: ''; position: absolute; top: 15px; right: -9px; border-width: 10px 0 10px 14px; border-style: solid; border-color: transparent transparent transparent #fff; }
.mt-chat[data-gender="m"] .mt-bubble, .npc-chat-row.npc-male .npc-chat-bubble { background: #E0F7FA !important; }
.mt-chat[data-gender="m"] .mt-bubble::after, .npc-chat-row.npc-male .npc-chat-bubble::after { border-color: transparent #E0F7FA transparent transparent !important; }
.mt-chat[data-gender="m"][data-align="right"] .mt-bubble::after, .npc-chat-row.npc-male.npc-right .npc-chat-bubble::after { border-color: transparent transparent transparent #E0F7FA !important; }
.mt-chat[data-gender="m"] .mt-bubble strong, .mt-chat[data-gender="m"] .mt-bubble em, .npc-chat-row.npc-male .npc-chat-bubble strong, .npc-chat-row.npc-male .npc-chat-bubble em { color: #000 !important; background: #00E5FF !important; }
.mt-chat[data-gender="m"] .mt-name, .npc-chat-row.npc-male .npc-chat-name { background: #00E5FF !important; }
.mt-chat[data-gender="m"] pic.p1, .mt-chat[data-gender="m"] .mt-avatar, .npc-chat-row.npc-male .npc-chat-avatar, .npc-chat-row.npc-male .npc-player-img { border: 4px solid #000 !important; box-shadow: 6px 6px 0 #00E5FF !important; }
.mt-chat[data-gender="f"] .mt-bubble, .npc-chat-row.npc-female .npc-chat-bubble { background: #FCE4EC !important; }
.mt-chat[data-gender="f"] .mt-bubble::after, .npc-chat-row.npc-female .npc-chat-bubble::after { border-color: transparent #FCE4EC transparent transparent !important; }
.mt-chat[data-gender="f"][data-align="right"] .mt-bubble::after, .npc-chat-row.npc-female.npc-right .npc-chat-bubble::after { border-color: transparent transparent transparent #FCE4EC !important; }
.mt-chat[data-gender="f"] .mt-bubble strong, .mt-chat[data-gender="f"] .mt-bubble em, .npc-chat-row.npc-female .npc-chat-bubble strong, .npc-chat-row.npc-female .npc-chat-bubble em { color: #000 !important; background: #FF3366 !important; }
.mt-chat[data-gender="f"] .mt-name, .npc-chat-row.npc-female .npc-chat-name { background: #FF3366 !important; color: #fff !important; }
.mt-chat[data-gender="f"] pic.p1, .mt-chat[data-gender="f"] .mt-avatar, .npc-chat-row.npc-female .npc-chat-avatar, .npc-chat-row.npc-female .npc-player-img { border: 4px solid #000 !important; box-shadow: 6px 6px 0 #FF3366 !important; }

/* =======================================================
   🖼️ 6. 核心图库映射系统 (保留原汁原味)
======================================================= */
pic { display: inline-block !important; background-size: cover !important; background-position: center 20% !important; background-repeat: no-repeat !important; flex-shrink: 0 !important; --avatar: url('https://images.unsplash.com/photo-1544502062-f82887f03d1c?q=80&w=200&auto=format&fit=crop'); --banner: url('https://images.unsplash.com/photo-1618005182384-a83a8bd57fbe?q=80&w=1000&auto=format&fit=crop'); }
pic.p1, .mt-avatar, .npc-chat-avatar, .npc-player-img { display: block !important; width: 95px !important; height: 95px !important; min-width: 95px !important; border-radius: 0 !important; background-image: var(--avatar) !important; background-color: #fff !important; border: 4px solid #000 !important; box-shadow: 6px 6px 0 #000 !important; transition: all 0.2s ease !important; margin: 0 !important; padding: 0 !important; }
pic.p1:hover, .mt-avatar:hover, .npc-chat-avatar:hover, .npc-player-img:hover { transform: translate(-2px, -2px) !important; box-shadow: 8px 8px 0 #FFD700 !important; }
pic.p2 { display: block !important; width: 50px !important; height: 50px !important; min-width: 50px !important; border-radius: 0 !important; background-image: var(--avatar) !important; border: 3px solid #000 !important; box-shadow: 4px 4px 0 #000 !important; }
pic.p3 { display: block !important; width: 100% !important; aspect-ratio: 3 / 2 !important; min-height: 240px !important; background-image: var(--banner) !important; background-position: center center !important; transition: transform 0.6s ease !important; }
.markdown-body .npc-banner:hover pic.p3, .rili-markdown-renderer .npc-banner:hover pic.p3 { transform: scale(1.05) !important; }

/* 角色变量表保持不变 */
pic[c="1"] { --avatar: url('https://p.uuu.ovh/2026/08/19/gRp5uX9z.png'); --banner: url('https://p.uuu.ovh/2026/08/20/7vcjQpD7.png'); }
pic[c="2"] { --avatar: url('https://p.uuu.ovh/2026/08/19/k1sejWRM.png'); --banner: url('https://p.uuu.ovh/2026/08/20/ldlW4kuI.png'); }
pic[c="3"] { --avatar: url('https://p.uuu.ovh/2026/08/19/umvcSLSr.png'); --banner: url('https://p.uuu.ovh/2026/08/20/WaFK8k4Q.png'); }
pic[c="4"] { --avatar: url('https://p.uuu.ovh/2026/08/19/HWhRniZw.png'); --banner: url('https://p.uuu.ovh/2026/08/20/XLVRFuDF.png'); }
pic[c="5"] { --avatar: url('https://p.uuu.ovh/2026/08/19/JLSD9oVa.png'); --banner: url('https://p.uuu.ovh/2026/08/20/aAYhVc2U.png'); }
pic[c="6"] { --avatar: url('https://p.uuu.ovh/2026/08/19/MTqJOM5f.png'); --banner: url('https://p.uuu.ovh/2026/08/20/tRh5eSkc.png'); }
pic[c="7"] { --avatar: url('https://p.uuu.ovh/2026/08/19/DWEZOXUj.png'); --banner: url('https://p.uuu.ovh/2026/08/20/8tpBEl0F.png'); }
pic[c="8"] { --avatar: url('https://p.uuu.ovh/2026/08/19/KzQiqy4T.png'); --banner: url('https://p.uuu.ovh/2026/08/20/ihppP8hy.png'); }
pic[c="9"] { --avatar: url('https://p.uuu.ovh/2026/08/19/UeNYl173.png'); --banner: url('https://p.uuu.ovh/2026/08/20/8C6tZT6v.png'); }
pic[c="10"] { --avatar: url('https://p.uuu.ovh/2026/08/19/e6k3LCsa.png'); --banner: url('https://p.uuu.ovh/2026/08/20/29sQLS6K.png'); }
pic[c="11"] { --avatar: url('https://p.uuu.ovh/2026/08/19/DB3CcBFK.png'); --banner: url('https://p.uuu.ovh/2026/08/20/t8K9wTrz.png'); }
pic[c="12"] { --avatar: url('https://p.uuu.ovh/2026/08/19/vPs7cDNW.png'); --banner: url('https://p.uuu.ovh/2026/08/20/YbFrLchr.png'); }
pic[c="13"] { --avatar: url('https://p.uuu.ovh/2026/08/19/NeLQAMtn.png'); --banner: url('https://p.uuu.ovh/2026/08/20/7lFN1zUq.png'); }
pic[c="14"] { --avatar: url('https://p.uuu.ovh/2026/08/19/XHGYeOTJ.png'); --banner: url('https://p.uuu.ovh/2026/08/20/7KKMjfsd.png'); }
pic[c="15"] { --avatar: url('https://p.uuu.ovh/2026/08/19/BR6JI9CU.png'); --banner: url('https://p.uuu.ovh/2026/08/20/IduSw4YE.png'); }
pic[c="16"] { --avatar: url('https://p.uuu.ovh/2026/08/19/CRsfaEA2.png'); --banner: url('https://p.uuu.ovh/2026/08/20/QvjmKHKT.png'); }
pic[c="17"] { --avatar: url('https://p.uuu.ovh/2026/08/19/G1PVNLho.png'); --banner: url('https://p.uuu.ovh/2026/08/20/FutJwUrr.png'); }
pic[c="18"] { --avatar: url('https://p.uuu.ovh/2026/08/19/FsHLy71G.png'); --banner: url('https://p.uuu.ovh/2026/08/20/W7N1YUgr.png'); }
pic[c="19"] { --avatar: url('https://p.uuu.ovh/2026/08/19/WjkbOSIR.png'); --banner: url('https://p.uuu.ovh/2026/08/20/RvGcbkW1.png'); }
pic[c="20"] { --avatar: url('https://p.uuu.ovh/2026/08/19/N7XwwAZd.png'); --banner: url('https://p.uuu.ovh/2026/08/20/HJaKz3yV.png'); }
pic[c="21"] { --avatar: url('https://p.uuu.ovh/2026/08/19/v9BFiVX5.png'); --banner: url('https://p.uuu.ovh/2026/08/20/mkcNQelq.png'); }
pic[c="22"] { --avatar: url('https://p.uuu.ovh/2026/08/19/KeAaz7vv.png'); --banner: url('https://p.uuu.ovh/2026/08/20/dY1Q9QDL.png'); }
pic[c="23"] { --avatar: url('https://p.uuu.ovh/2026/08/19/ykswE7Q5.png'); --banner: url('https://p.uuu.ovh/2026/08/20/GE4OiU20.png'); }
pic[c="24"] { --avatar: url('https://p.uuu.ovh/2026/08/19/ziymvevP.png'); --banner: url('https://p.uuu.ovh/2026/08/20/hdyQMCZc.png'); }
pic[c="25"] { --avatar: url('https://p.uuu.ovh/2026/08/19/mxCrTZ6I.png'); --banner: url('https://p.uuu.ovh/2026/08/20/UbDxDliA.png'); }
pic[c="26"] { --avatar: url('https://p.uuu.ovh/2026/08/19/ErfNCBsG.png'); --banner: url('https://p.uuu.ovh/2026/08/20/93wqcYrf.png'); }
pic[c="27"] { --avatar: url('https://p.uuu.ovh/2026/08/19/DP873VqK.png'); --banner: url('https://p.uuu.ovh/2026/08/20/W1rIB2gw.png'); }
pic[c="28"] { --avatar: url('https://p.uuu.ovh/2026/08/19/83ZPhkqQ.png'); --banner: url('https://p.uuu.ovh/2026/08/20/2TTHVnmu.png'); }
pic[c="29"] { --avatar: url('https://p.uuu.ovh/2026/08/20/fVRZaDNX.png'); --banner: url('https://p.uuu.ovh/2026/08/20/Wud2xmhh.png'); }
pic[c="30"] { --avatar: url('https://p.uuu.ovh/2026/08/20/0XRjKrSW.png'); --banner: url('https://p.uuu.ovh/2026/08/20/4cH3PGLQ.png'); }
pic[c="31"] { --avatar: url('https://p.uuu.ovh/2026/08/19/0c2vp20u.png'); --banner: url('https://p.uuu.ovh/2026/08/20/DOKsJCto.png'); }
pic[c="32"] { --avatar: url('https://p.uuu.ovh/2026/08/20/iWBC5rwY.png'); --banner: url('https://p.uuu.ovh/2026/08/20/A6iqsOGy.png'); }
pic[c="33"] { --avatar: url('https://p.uuu.ovh/2026/08/20/i83RsCV8.png'); --banner: url('https://p.uuu.ovh/2026/08/20/ogDaRujC.png'); }
pic[c="34"] { --avatar: url('https://p.uuu.ovh/2026/08/20/IrgVSkQV.png'); --banner: url('https://p.uuu.ovh/2026/08/20/6vKwhkCO.png'); }
pic[c="35"] { --avatar: url('https://p.uuu.ovh/2026/08/20/XMWKbujd.png'); --banner: url('https://p.uuu.ovh/2026/08/20/RjCuOt1A.png'); }
pic[c="36"] { --avatar: url('https://p.uuu.ovh/2026/08/20/1Y2Oivgr.png'); --banner: url('https://p.uuu.ovh/2026/08/20/MLTsf0dW.png'); }
pic[c="37"] { --avatar: url('https://p.uuu.ovh/2026/08/20/JAi6Klcp.png'); --banner: url('https://p.uuu.ovh/2026/08/20/gpICSOCj.png'); }
pic[c="38"] { --avatar: url('https://p.uuu.ovh/2026/08/20/5ZHEt8pU.png'); --banner: url('https://p.uuu.ovh/2026/08/20/EYjcg5tC.png'); }
pic[c="39"] { --avatar: url('https://p.uuu.ovh/2026/08/20/yM2CUBgf.png'); --banner: url('https://p.uuu.ovh/2026/08/20/XY5yBp5L.png'); }
pic[c="40"] { --avatar: url('https://p.uuu.ovh/2026/08/20/YbAxWyhn.png'); --banner: url('https://p.uuu.ovh/2026/08/20/wcIWkhPl.png'); }
pic[c="41"] { --avatar: url('https://p.uuu.ovh/2026/08/20/sRhqaV3o.png'); --banner: url('https://p.uuu.ovh/2026/08/20/KGz0ISr3.png'); }
pic[c="42"] { --avatar: url('https://p.uuu.ovh/2026/08/20/fcog0QZJ.png'); --banner: url('https://p.uuu.ovh/2026/08/20/XrjxeHrW.png'); }
pic[c="43"] { --avatar: url('https://p.uuu.ovh/2026/08/20/28q7Ab2y.jpg'); --banner: url('https://p.uuu.ovh/2026/08/20/8RptEPJJ.jpg'); }
pic[c="44"] { --avatar: url('https://p.uuu.ovh/2026/08/20/aEAnLupy.png'); --banner: url('https://p.uuu.ovh/2026/08/20/zJZcNgRl.png'); }
pic[c="45"] { --avatar: url('https://p.uuu.ovh/2026/08/20/ulVHxMM9.png'); --banner: url('https://p.uuu.ovh/2026/08/20/wn1j2rRW.png'); }
pic[c="46"] { --avatar: url('https://p.uuu.ovh/2026/08/20/118QUat7.png'); --banner: url('https://p.uuu.ovh/2026/08/20/nLA0hTMf.png'); }
pic[c="47"] { --avatar: url('https://p.uuu.ovh/2026/08/20/URH7wHsu.png'); --banner: url('https://p.uuu.ovh/2026/08/20/wuATr1D0.png'); }
pic[c="48"] { --avatar: url('https://p.uuu.ovh/2026/08/20/MHglHt2O.png'); --banner: url('https://p.uuu.ovh/2026/08/20/ZSaAQrHx.png'); }
pic[c="49"] { --avatar: url('https://p.uuu.ovh/2026/08/20/TLvrC0Vi.png'); --banner: url('https://p.uuu.ovh/2026/08/20/PgYd7DW3.png'); }
pic[c="50"] { --avatar: url('https://p.uuu.ovh/2026/08/20/dvCMOvaI.png'); --banner: url('https://p.uuu.ovh/2026/08/20/pdO7tolL.png'); }
pic[c="51"] { --avatar: url('https://p.uuu.ovh/2026/08/20/dkQV2CNY.jpg'); --banner: url('https://p.uuu.ovh/2026/08/20/NKG8eYLZ.png'); }
pic[c="999"] { --banner: url('https://p.uuu.ovh/2026/08/21/H2S3R0w8.png'); --avatar: url('https://p.uuu.ovh/2026/08/21/H2S3R0w8.png'); }

/* =======================================================
   📱 7. 终极移动端等比例适配 (还原电脑端 3x3 碎片网格)
======================================================= */
@media screen and (max-width: 768px) {
  /* 保持电脑端的网格比例，仅仅把高度等比例缩小 */
  .markdown-body .panel-grid, .rili-markdown-renderer .panel-grid { 
      grid-template-columns: 1.2fr 0.8fr 1fr !important; 
      grid-template-rows: minmax(75px, auto) minmax(75px, auto) minmax(75px, auto) !important; 
      gap: 8px !important; 
  }
  
  /* 移动端闭合时：等比例缩小双字标题，防止撑爆小网格 */
  .markdown-body .grid-item:not([open]) .fold-header::before, .rili-markdown-renderer .grid-item:not([open]) .fold-header::before {
      font-size: 1.3rem !important;
      letter-spacing: 4px !important;
  }
  /* 右上角“执照”竖向排版，稍微收缩字距 */
  .markdown-body .grid-item:nth-child(2):not([open]) .fold-header::before, .rili-markdown-renderer .grid-item:nth-child(2):not([open]) .fold-header::before {
      letter-spacing: 6px !important;
  }
  /* 左下角“档案”竖向大字，按比例缩小 */
  .markdown-body .grid-item:nth-child(3):not([open]) .fold-header::before, .rili-markdown-renderer .grid-item:nth-child(3):not([open]) .fold-header::before {
      font-size: 1.8rem !important;
      letter-spacing: 8px !important;
  }
  
  /* 移动端展开时：缩小顶部标题栏和关闭按钮，适配手机宽度 */
  .markdown-body .grid-item[open] .fold-header, .rili-markdown-renderer .grid-item[open] .fold-header {
      font-size: 1.1rem !important;
      padding: 12px 80px 12px 15px !important;
  }
  .markdown-body .grid-item[open] .fold-header::after, .rili-markdown-renderer .grid-item[open] .fold-header::after {
      font-size: 0.8rem !important;
      padding: 4px 8px !important;
      right: 10px !important;
  }

  /* 其他界面的移动端适配保留 */
  .markdown-body .scene-status-card .info-grid, .rili-markdown-renderer .scene-status-card .info-grid { flex-direction: column !important; }
  .markdown-body .scene-status-card span, .rili-markdown-renderer .scene-status-card span { width: 100% !important; }
  .markdown-body .player-header-wrap, .rili-markdown-renderer .player-header-wrap { flex-direction: column !important; align-items: flex-start !important; text-align: left !important; gap: 15px !important; }
  .markdown-body .player-avatar, .rili-markdown-renderer .player-avatar { margin: 0 auto !important; width: 90px !important; height: 90px !important; }
  .markdown-body .profile-player-img, .rili-markdown-renderer .profile-player-img { width: 90px !important; height: 90px !important; min-width: 90px !important; min-height: 90px !important; }
  .markdown-body .info-grid, .rili-markdown-renderer .info-grid { justify-content: center !important; }
  .markdown-body .info-grid span, .rili-markdown-renderer .info-grid span { flex: 1 1 auto !important; text-align: center !important; }
  .markdown-body .item-desc, .rili-markdown-renderer .item-desc { max-width: 220px !important; left: 50% !important; transform: translateX(-50%) translateY(10px) !important; font-size: 0.9rem !important; padding: 10px !important; }
  .mt-chat, .npc-chat-row { gap: 10px !important; margin: 15px auto !important; }
  pic.p1, .mt-avatar, .npc-chat-avatar, .npc-player-img { width: 70px !important; min-width: 70px !important; height: 70px !important; }
  .mt-bubble, .npc-chat-bubble { padding: 12px 15px !important; font-size: 1rem !important; }
}
@media screen and (max-width: 480px) {
  .markdown-body .npc-name-bar span, .rili-markdown-renderer .npc-name-bar span { font-size: 1.2em !important; }
  .markdown-body .npc-name-bar span:last-child, .rili-markdown-renderer .npc-name-bar span:last-child { font-size: 0.9em !important; }
}

/* =======================================================
   🔥 8. 全局 Webkit 滚动条 (漫画黑白风)
======================================================= */
::-webkit-scrollbar { width: 12px !important; height: 12px !important; }
::-webkit-scrollbar-track { background: #fff !important; border-left: 3px solid #000 !important; }
::-webkit-scrollbar-thumb { background: #000 !important; border: 2px solid #fff !important; }
::-webkit-scrollbar-thumb:hover { background: #FF3366 !important; border-color: #000 !important; }

/* =======================================================
   🔥 9. 玩家自定义头像完美同步 NPC 样式
======================================================= */
img.p1-custom { display: block !important; width: 95px !important; height: 95px !important; min-width: 95px !important; border-radius: 0 !important; object-fit: cover !important; background-color: #fff !important; border: 4px solid #000 !important; box-shadow: 6px 6px 0 #000 !important; transition: all 0.2s ease !important; margin: 0 !important; padding: 0 !important; flex-shrink: 0 !important; }
img.p1-custom:hover { transform: translate(-2px, -2px) !important; box-shadow: 8px 8px 0 #FFD700 !important; }
.mt-chat[data-gender="m"] img.p1-custom, .npc-chat-row.npc-male img.p1-custom { box-shadow: 6px 6px 0 #00E5FF !important; }
.mt-chat[data-gender="f"] img.p1-custom, .npc-chat-row.npc-female img.p1-custom { box-shadow: 6px 6px 0 #FF3366 !important; }
@media screen and (max-width: 768px) { img.p1-custom { width: 70px !important; min-width: 70px !important; height: 70px !important; } }
img.p2-custom { display: block !important; width: 50px !important; height: 50px !important; min-width: 50px !important; border-radius: 0 !important; object-fit: cover !important; border: 3px solid #000 !important; box-shadow: 4px 4px 0 #000 !important; }

/* =======================================================
   10. 【纯净防吞补丁】仅修复平台按钮消失的Bug，不改样式
======================================================= */
.w-full.h-full.flex.group .bg-muted.rounded.flex.p-0\.5, .is-user .bg-muted.rounded.flex.p-0\.5, .is-assistant .bg-muted.rounded.flex.p-0\.5 { display: flex !important; visibility: visible !important; opacity: 1 !important; overflow: visible !important; position: relative !important; width: auto !important; height: auto !important; max-height: none !important; pointer-events: auto !important; clip: auto !important; clip-path: none !important; }
.w-full.h-full.flex.group .bg-muted.rounded.flex.p-0\.5 > button, .is-user .bg-muted.rounded.flex.p-0\.5 > button, .is-assistant .bg-muted.rounded.flex.p-0\.5 > button, .rili-bottom-actions button { display: inline-flex !important; visibility: visible !important; opacity: 1 !important; pointer-events: auto !important; position: relative !important; clip: auto !important; clip-path: none !important; min-height: auto !important; padding: 4px !important; }
.flex.items-center.gap-1.ml-auto.md\:opacity-0.group-hover\:opacity-100 { visibility: visible !important; display: flex !important; pointer-events: auto !important; overflow: visible !important; }
.flex.w-full.items-center.justify-between.gap-2.px-2 { display: flex !important; visibility: visible !important; overflow: visible !important; }