/* 基础容器与变量定义 */
ai {
    display: block;
    font-family: 'PingFang SC', 'Microsoft YaHei', sans-serif;
    line-height: 1.6;
    margin: 5px 0;
    border-radius: 12px;
    overflow: hidden;
    font-size: 14px;
    transition: all 0.5s ease;
}

/* --- 昼模式 (t="d") --- */
ai[t="d"] {
    background: #fdfdfb;
    color: #444;
    border: 1px solid #e0d5b1;
    box-shadow: 0 4px 15px rgba(197, 160, 89, 0.15);
}
ai[t="d"] details { background: rgba(245, 245, 240, 0.7); border-bottom: 1px solid #eee; }
ai[t="d"] summary { background: linear-gradient(90deg, #e0d5b1, #fdfdfb); color: #7d6b42; font-weight: bold; }

/* --- 夜模式 (t="n") --- */
ai[t="n"] {
    background: #121212;
    color: #bbb;
    border: 1px solid #3d0000;
    box-shadow: 0 4px 20px rgba(139, 0, 0, 0.3);
}
ai[t="n"] details { background: rgba(20, 20, 20, 0.8); border-bottom: 1px solid #2a1010; }
ai[t="n"] summary { background: linear-gradient(90deg, #3d0000, #121212); color: #ff4d4d; font-weight: bold; }

/* 共通组件样式 */
ai details { margin: 2px 0; }
ai summary { padding: 8px 12px; cursor: pointer; outline: none; list-style: none; display: flex; align-items: center; }
ai summary::-webkit-details-marker { display: none; }
ai r { display: flex; flex-wrap: wrap; padding: 6px 12px; border-bottom: 1px dashed rgba(128,128,128,0.1); }
ai l { font-weight: bold; margin-right: 8px; flex-shrink: 0; color: #888; min-width: 60px; }
ai v { flex: 1; min-width: 120px; }

/* 数值强化 */
ai up { color: #2ecc71; font-weight: bold; animation: floatUp 2s infinite; display: inline-block; }
ai dn { color: #e74c3c; font-weight: bold; animation: shake 0.5s infinite; display: inline-block; }
@keyframes floatUp { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-3px); } }
@keyframes shake { 0% { transform: translateX(0); } 25% { transform: translateX(-1px); } 75% { transform: translateX(1px); } }

/* 正文叙事区 (tx) */
ai tx { padding: 15px; display: block; background: transparent; }

/* 十色对话框系统 (d) */
ai d { 
    display: block; 
    margin: 10px 0; 
    padding: 10px 14px; 
    border-radius: 15px; 
    position: relative; 
    box-shadow: 2px 2px 5px rgba(0,0,0,0.05);
    max-width: 90%;
}
ai d::after { content: ''; position: absolute; left: -8px; top: 12px; border-width: 8px 8px 8px 0; border-style: solid; border-color: transparent inherit transparent transparent; filter: brightness(0.9); }

/* 对话颜色映射 (1-10) */
ai d[n="1"] { background: #fff0f5; border: 1px solid #ffb6c1; color: #d02090; } /* 纯真粉 */
ai d[n="2"] { background: #f0f8ff; border: 1px solid #add8e6; color: #4682b4; } /* 冷冽蓝 */
ai d[n="3"] { background: #f5f0ff; border: 1px solid #cbc3e3; color: #6a5acd; } /* 幽邃紫 */
ai d[n="4"] { background: #fff5f5; border: 1px solid #ffcccb; color: #b22222; } /* 祭祀红 */
ai d[n="5"] { background: #f0fff0; border: 1px solid #90ee90; color: #2e8b57; } /* 生机绿 */
ai d[n="6"] { background: #fffdf0; border: 1px solid #f0e68c; color: #b8860b; } /* 圣经金 */
ai d[n="7"] { background: #f0ffff; border: 1px solid #00ced1; color: #008b8b; } /* 冰晶青 */
ai d[n="8"] { background: #fffaf0; border: 1px solid #ffdab9; color: #d2691e; } /* 温暖橙 */
ai d[n="9"] { background: #f0f0ff; border: 1px solid #b0c4de; color: #191970; } /* 深海蓝 */
ai d[n="10"] { background: #f5f5f5; border: 1px solid #d3d3d3; color: #696969; } /* 中性灰 */

/* 夜间模式对话框色彩修正 */
ai[t="n"] d { background: rgba(30,30,30,0.8); filter: saturate(1.5) brightness(1.1); }

/* 心理活动 (t) */
ai t { 
    display: block; 
    margin: 5px 20px; 
    font-style: italic; 
    color: #888; 
    font-size: 0.95em; 
    border-left: 2px dashed #ccc; 
    padding-left: 10px;
    opacity: 0.8;
}
ai[t="n"] t { border-left-color: #555; color: #777; }

/* 身体数据 (bd) 色情化增强 */
ai bd { display: block; background: rgba(255,192,203,0.05); padding: 5px 0; border-radius: 8px; }
ai bd r v { color: #d02090; text-shadow: 0 0 8px rgba(255,182,193,0.6); font-weight: 500; }
ai[t="n"] bd r v { color: #ff69b4; text-shadow: 0 0 10px rgba(255,20,147,0.8); }

/* 推荐行动 (act) */
ai act { 
    display: block; 
    margin: 8px 12px; 
    padding: 10px; 
    border-radius: 6px; 
    text-align: center; 
    font-weight: bold; 
    transition: 0.3s;
    border: 1px solid transparent;
}
ai act.a { background: #ffebee; color: #c62828; border-color: #ffcdd2; } /* 侵犯 */
ai act.b { background: #e3f2fd; color: #1565c0; border-color: #bbdefb; } /* 日常 */
ai act.c { background: #fffde7; color: #f9a825; border-color: #fff9c4; } /* 宗教 */
ai act.d { background: #f5f5f5; color: #616161; border-color: #e0e0e0; } /* 自由 */

ai[t="n"] act.a { background: #310000; color: #ff5252; border-color: #610000; }
ai[t="n"] act.b { background: #001a35; color: #448aff; border-color: #002b55; }
ai[t="n"] act.c { background: #2d2d00; color: #ffff00; border-color: #4d4d00; }
ai[t="n"] act.d { background: #212121; color: #bdbdbd; border-color: #333; }

/* 移动端适配 */
@media (max-width: 600px) {
    ai r { flex-direction: column; }
    ai l { margin-bottom: 2px; font-size: 12px; }
    ai v { font-size: 14px; }
    ai d { max-width: 95%; }
}