/* 基础平台兼容性CSS */
.css-6usgop, .w-2 { display: none !important; }
.border-\[\#F1CBCB\] { border-color: transparent !important; }
.rounded-tr-2xl { padding: 15px !important; }
.text-gray-100\/90 { color: transparent !important; }
.bg-gray-100\/90:not(.chat-answer-container .bg-gray-100\/90) {
    background: transparent;
    border: none;
    padding: 0;
    margin-bottom: 20px;
}
.markdown-body { background-color: transparent; color: black; font-family: 'Microsoft YaHei', 'SimSun', sans-serif; }
.py-3, .px-4 { padding: 0 !important; }

/* 悬浮说明面板 */
.sys-ctn { position: fixed; top: 10px; left: 10px; z-index: 10002; }
.sys-btn { width: 40px; height: 40px; background: #87CEEB; color: white; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 24px; cursor: pointer; box-shadow: 0 2px 10px rgba(0,0,0,0.2); transition: all 0.3s; }
.sys-pnl { display: none; position: absolute; top: 50px; left: 0; width: 300px; background: rgba(240, 248, 255, 0.95); border: 2px solid #87CEEB; border-radius: 10px; padding: 15px; box-shadow: 0 4px 15px rgba(0,0,0,0.2); backdrop-filter: blur(5px); }
.sys-ctn:hover .sys-pnl { display: block; }
.sys-ctn:hover .sys-btn { transform: rotate(360deg); }
.pnl-cnt h2 { color: #005f8c; border-bottom: 2px solid #87CEEB; padding-bottom: 5px; margin-top: 0; }
.pnl-cnt p { font-size: 14px; line-height: 1.6; color: #333; }
.pnl-cnt code { background: #d4effc; padding: 2px 5px; border-radius: 4px; }

/* 左右悬浮角色面板 */
.char-panel-ctn { position: fixed; top: 50%; transform: translateY(-50%); z-index: 10001; }
.char-panel-ctn.left { left: 0; }
.char-panel-ctn.right { right: 0; }
.char-panel-btn { display: flex; align-items: center; justify-content: center; width: 45px; height: 45px; background: #87CEEB; color: #fff; font-size: 24px; cursor: pointer; box-shadow: 0 4px 12px rgba(0,0,0,0.15); transition: all 0.3s ease; }
.char-panel-ctn.left .char-panel-btn { border-radius: 0 25px 25px 0; }
.char-panel-ctn.right .char-panel-btn { border-radius: 25px 0 0 25px; }
.char-panel-box { position: absolute; top: 50%; transform: translateY(-50%); width: 280px; max-height: 500px; background: rgba(240, 248, 255, 0.95); border: 2px solid #87CEEB; border-radius: 10px; box-shadow: 0 5px 20px rgba(0,0,0,0.2); backdrop-filter: blur(5px); opacity: 0; visibility: hidden; transition: all 0.4s ease; overflow: hidden; }
.char-panel-ctn.left .char-panel-box { left: -300px; }
.char-panel-ctn.right .char-panel-box { right: -300px; }
.char-panel-ctn:hover .char-panel-box { opacity: 1; visibility: visible; }
.char-panel-ctn.left:hover .char-panel-box { left: 55px; }
.char-panel-ctn.right:hover .char-panel-box { right: 55px; }
.char-panel-content { padding: 15px; max-height: 500px; overflow-y: auto; }
.panel-header { font-size: 1.1em; font-weight: bold; color: #005f8c; margin-bottom: 10px; margin-top: 10px; text-align: center; border-bottom: 1px solid #bce2f5; padding-bottom: 5px; }
.char-info p, .attributes p { margin: 6px 0; color: #1a1a1a; font-size: 14px; }
.char-info strong, .attributes strong { color: #4682B4; min-width: 50px; display: inline-block; }
.attributes { padding: 5px; background: rgba(173, 216, 230, 0.2); border-radius: 5px; }
.no-npc-text { text-align: center; color: #777; font-style: italic; padding: 20px 0; }

/* 游戏主容器 */
.game-wrapper { max-width: 800px; margin: 20px auto; background: rgba(240, 248, 255, 0.9); border: 2px solid #b0e0e6; border-radius: 15px; padding: 20px; box-shadow: 0 8px 30px rgba(135, 206, 235, 0.3); backdrop-filter: blur(4px); }

/* 顶部状态栏 */
.game-header { text-align: center; background: #e0f7fa; color: #007a99; padding: 10px; border-radius: 10px; margin-bottom: 20px; font-weight: bold; border: 1px solid #b2ebf2; }

/* 故事内容 */
.story-content { line-height: 1.8; color: #000; text-align: justify; margin-bottom: 20px; font-size: 16px; }
.story-content p { margin-bottom: 1em; }

/* 记忆区域 */
.memory-section details { border: 1px solid #bce2f5; border-radius: 8px; margin-bottom: 20px; }
.memory-section summary { background: #e0f2ff; padding: 10px; cursor: pointer; font-weight: bold; color: #005f8c; border-radius: 8px 8px 0 0; }
.memory-content { padding: 15px; background: #f7feff; border-top: 1px solid #bce2f5; }
.memory-subsection h3 { color: #4682B4; border-bottom: 1px solid #d4effc; padding-bottom: 5px; margin-top: 0; }

/* 选项 */
.options-container { display: grid; gap: 10px; }
.option-item { background: #87CEEB; color: white; padding: 12px 15px; border-radius: 8px; cursor: pointer; transition: all 0.3s; text-align: center; font-weight: bold; }
.option-item:hover { background: #5f9ea0; transform: translateY(-2px); box-shadow: 0 4px 10px rgba(0,0,0,0.1); }