/* --- 全局与动画定义 --- */
@keyframes rainbow-glow {
  0%, 100% { box-shadow: 0 0 5px #ffc0cb, 0 0 10px #ffc0cb, 0 0 15px #87ceeb, 0 0 20px #87ceeb; }
  50% { box-shadow: 0 0 10px #87ceeb, 0 0 15px #87ceeb, 0 0 20px #fffacd, 0 0 25px #fffacd; }
}
@keyframes gentle-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-3px); }
}
/* --- 主容器 --- */
.mlp-c {
  background: linear-gradient(135deg, #fffacd 25%, #ffc0cb 50%, #87ceeb 75%, #fffacd 100%);
  background-size: 400% 400%;
  border: 2px solid #fff;
  border-radius: 20px;
  padding: 2%;
  box-shadow: 0 0 5px #ffc0cb, 0 0 10px #ffc0cb, 0 0 15px #87ceeb;
  animation: rainbow-glow 8s ease-in-out infinite;
  font-family: 'Comic Sans MS', cursive, sans-serif;
  color: #5a4f65;
}
/* --- 章节标题 --- */
.mlp-h {
  background-color: rgba(255, 255, 255, 0.7);
  color: #e55a89;
  font-size: 1.5em;
  font-weight: bold;
  text-align: center;
  padding: 10px;
  border-radius: 15px;
  margin-bottom: 15px;
  text-shadow: 1px 1px 2px #fff;
  animation: gentle-float 6s ease-in-out infinite;
}
/* --- 正文剧情段落 --- */
.mlp-c > p {
  background-color: rgba(255, 255, 255, 0.6);
  padding: 15px;
  border-radius: 10px;
  line-height: 1.6;
  margin-bottom: 15px;
}
/* --- 可折叠区域 details/summary --- */
details {
  background-color: rgba(255, 250, 205, 0.8); /* 蛋糕淡黄 */
  border-radius: 15px;
  margin-bottom: 10px;
  border: 1px solid rgba(255, 192, 203, 0.5);
  overflow: hidden;
  transition: all 0.3s ease-in-out;
}
summary {
  background-color: #ffc0cb; /* 泡泡糖粉色 */
  color: #fff;
  padding: 12px 15px;
  font-weight: bold;
  cursor: pointer;
  list-style: none; /* 移除默认箭头 */
  transition: background-color 0.3s ease;
  position: relative;
  text-shadow: 1px 1px 2px rgba(0,0,0,0.2);
}
summary::-webkit-details-marker {
  display: none; /* 兼容性移除箭头 */
}
summary:hover {
  background-color: #f7a8b8;
}
summary::before {
  content: '☁️';
  position: absolute;
  left: 15px;
  top: 50%;
  transform: translateY(-50%) rotate(0deg);
  transition: transform 0.4s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}
details[open] > summary::before {
  transform: translateY(-50%) rotate(360deg);
  content: '✨';
}
/* --- 折叠区域内的内容块 --- */
.mlp-cb {
  padding: 15px;
  background-color: rgba(255, 255, 255, 0.5);
  border-top: 2px dashed #87ceeb; /* 天空淡蓝 */
}
/* --- Markdown和表格样式 --- */
.mlp-cb pre {
  background-color: rgba(135, 206, 235, 0.15); /* 天空淡蓝背景 */
  border-radius: 8px;
  padding: 10px;
  white-space: pre-wrap;
  word-break: break-all;
  color: #4a6a8a;
}
.mlp-cb code {
  font-family: 'Courier New', Courier, monospace;
}
/* --- 表格样式 --- */
.mem-tbl {
  width: 100%;
  border-collapse: collapse;
  margin: 10px 0;
  background-color: rgba(255, 255, 255, 0.6);
  border-radius: 8px;
  overflow: hidden;
}
.mem-tbl th {
  background-color: rgba(255, 192, 203, 0.6); /* 泡泡糖粉色 */
  color: #5a4f65;
  padding: 10px 8px;
  text-align: left;
  font-weight: bold;
  border: 1px solid rgba(255, 250, 205, 0.8); /* 蛋糕淡黄 */
}
.mem-tbl td {
  padding: 8px;
  border: 1px solid rgba(135, 206, 235, 0.4); /* 天空淡蓝 */
  color: #5a4f65;
}
.mem-tbl tr:nth-child(even) {
  background-color: rgba(135, 206, 235, 0.15); /* 天空淡蓝 */
}
.mem-tbl tr:hover {
  background-color: rgba(255, 250, 205, 0.4); /* 蛋糕淡黄 */
}
.mem-div {
  margin: 15px 0;
  text-align: center;
  font-weight: bold;
  color: #e55a89;
  padding: 5px;
  background-color: rgba(255, 255, 255, 0.7);
  border-radius: 8px;
}