body {
  background-color: #1a0a2e !important;
  color: #1a1a1a !important;
  font-family: 'Segoe UI', 'Microsoft YaHei', sans-serif !important;
}

hr {
  border: none !important;
  height: 2px !important;
  background: linear-gradient(90deg, transparent, #CCFF00, #5B2C6F, #CCFF00, transparent) !important;
  margin: 20px 0 !important;
}

.rev-main {
  background: linear-gradient(135deg, #f0e6ff 0%, #e6ffe6 50%, #f0e6ff 100%) !important;
  color: #1a1a1a !important;
  padding: 20px 24px !important;
  border-radius: 8px !important;
  border-left: 4px solid #CCFF00 !important;
  border-right: 4px solid #5B2C6F !important;
  margin: 16px 0 !important;
  font-size: 15px !important;
  line-height: 1.9 !important;
  box-shadow: -4px 0 12px rgba(204, 255, 0, 0.15), 4px 0 12px rgba(91, 44, 111, 0.15) !important;
}

.char-dialogue {
  color: #3d1a6e !important;
  font-weight: 600 !important;
  text-shadow: 0 0 1px rgba(91, 44, 111, 0.2) !important;
}

.inner-thought {
  color: #4a6600 !important;
  font-style: italic !important;
  opacity: 0.9 !important;
}

.system-alert {
  background: linear-gradient(135deg, #5B2C6F, #3d1a6e) !important;
  color: #CCFF00 !important;
  padding: 14px 18px !important;
  border-radius: 6px !important;
  border: 2px solid #CCFF00 !important;
  margin: 14px 0 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  box-shadow: 0 0 15px rgba(204, 255, 0, 0.3), inset 0 0 20px rgba(204, 255, 0, 0.05) !important;
  text-align: center !important;
}

.danmaku-item {
  background: linear-gradient(90deg, rgba(204, 255, 0, 0.85), rgba(204, 255, 0, 0.65)) !important;
  color: #2d1b3d !important;
  padding: 6px 14px !important;
  border-radius: 20px !important;
  border-left: 3px solid #5B2C6F !important;
  margin: 8px 0 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  display: inline-block !important;
  max-width: 85% !important;
  box-shadow: 0 2px 8px rgba(204, 255, 0, 0.25) !important;
}

.coser-panel {
  margin: 10px 0 !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}

.coser-panel > summary {
  cursor: pointer !important;
  padding: 12px 18px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  list-style: none !important;
  transition: all 0.3s ease !important;
}

.coser-panel > summary::-webkit-details-marker {
  display: none !important;
}

.coser-panel > summary::after {
  content: '▸' !important;
  float: right !important;
  transition: transform 0.3s ease !important;
}

.coser-panel[open] > summary::after {
  transform: rotate(90deg) !important;
}

.coser-panel > *:not(summary) {
  padding: 14px 18px !important;
  font-size: 13px !important;
  line-height: 1.7 !important;
}

.thinking-panel {
  border: 2px solid #5B2C6F !important;
  box-shadow: 0 0 12px rgba(91, 44, 111, 0.2) !important;
}

.thinking-panel > summary {
  background: linear-gradient(135deg, #5B2C6F, #7d3fa0) !important;
  color: #CCFF00 !important;
}

.thinking-panel > *:not(summary) {
  background: linear-gradient(180deg, #f5eeff, #ede0ff) !important;
  color: #2d1b3d !important;
}

.scene-panel {
  border: 2px solid #CCFF00 !important;
  box-shadow: 0 0 12px rgba(204, 255, 0, 0.2) !important;
}

.scene-panel > summary {
  background: linear-gradient(135deg, #CCFF00, #a8e600) !important;
  color: #2d1b3d !important;
}

.scene-panel > *:not(summary) {
  background: linear-gradient(180deg, #f9ffe6, #f0ffc2) !important;
  color: #1a1a1a !important;
}

.memory-panel {
  border: 2px solid #8b5cf6 !important;
  box-shadow: 0 0 12px rgba(139, 92, 246, 0.2) !important;
}

.memory-panel > summary {
  background: linear-gradient(135deg, #6d28d9, #8b5cf6) !important;
  color: #CCFF00 !important;
}

.memory-panel > *:not(summary) {
  background: linear-gradient(180deg, #f3eeff, #ece2ff) !important;
  color: #2d1b3d !important;
}

.task-panel {
  border: 2px solid #5B2C6F !important;
  box-shadow: 0 0 12px rgba(91, 44, 111, 0.25) !important;
}

.task-panel > summary {
  background: linear-gradient(135deg, #CCFF00, #b8e600, #CCFF00) !important;
  color: #3d1a6e !important;
  border-bottom: 2px solid #5B2C6F !important;
}

.task-panel > *:not(summary) {
  background: linear-gradient(180deg, #faffe6, #f0ffc2) !important;
  color: #1a1a1a !important;
}

.shop-panel {
  border: 2px solid #CCFF00 !important;
  box-shadow: 0 0 12px rgba(204, 255, 0, 0.3), 0 0 8px rgba(91, 44, 111, 0.2) !important;
}

.shop-panel > summary {
  background: linear-gradient(135deg, #5B2C6F, #3d1a6e) !important;
  color: #CCFF00 !important;
  border-bottom: 2px solid #CCFF00 !important;
}

.shop-panel > *:not(summary) {
  background: linear-gradient(180deg, #f0e6ff, #f9ffe6) !important;
  color: #1a1a1a !important;
}

.broadcast-panel {
  border: 2px solid #CCFF00 !important;
  box-shadow: 0 0 15px rgba(204, 255, 0, 0.25), 0 0 15px rgba(91, 44, 111, 0.15) !important;
}

.broadcast-panel > summary {
  background: linear-gradient(135deg, #5B2C6F, #7d3fa0, #5B2C6F) !important;
  color: #CCFF00 !important;
  border-bottom: 2px solid #CCFF00 !important;
}

.broadcast-panel > *:not(summary) {
  background: linear-gradient(180deg, #f0e6ff, #e6ffe6, #f0e6ff) !important;
  color: #2d1b3d !important;
}

.player-panel {
  border: 2px solid #CCFF00 !important;
  box-shadow: 0 0 10px rgba(204, 255, 0, 0.15), 0 0 10px rgba(91, 44, 111, 0.15) !important;
}

.player-panel > summary {
  background: linear-gradient(135deg, #3d1a6e, #5B2C6F, #3d1a6e) !important;
  color: #CCFF00 !important;
  border-bottom: 2px solid #CCFF00 !important;
}

.player-panel > *:not(summary) {
  background: linear-gradient(180deg, #f5eeff, #e8f5e0) !important;
  color: #1a1a1a !important;
}

.npc-panel {
  border: 2px solid #8b5cf6 !important;
  box-shadow: 0 0 10px rgba(139, 92, 246, 0.2) !important;
}

.npc-panel > summary {
  background: linear-gradient(135deg, #CCFF00, #a8e600) !important;
  color: #3d1a6e !important;
  border-bottom: 2px solid #5B2C6F !important;
}

.npc-panel > *:not(summary) {
  background: linear-gradient(180deg, #faffe6, #f5eeff) !important;
  color: #1a1a1a !important;
}

.npc-minor-panel {
  border: 2px solid #8b5cf6 !important;
  box-shadow: 0 0 8px rgba(139, 92, 246, 0.15) !important;
}

.npc-minor-panel > summary {
  background: linear-gradient(135deg, #7d3fa0, #8b5cf6) !important;
  color: #CCFF00 !important;
  border-bottom: 2px solid #CCFF00 !important;
}

.npc-minor-panel > *:not(summary) {
  background: linear-gradient(180deg, #f5eeff, #f9ffe6) !important;
  color: #1a1a1a !important;
}

.coser-panel table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin: 8px 0 !important;
}

.coser-panel th {
  background: rgba(91, 44, 111, 0.15) !important;
  color: #3d1a6e !important;
  padding: 8px 10px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-align: left !important;
  border-bottom: 2px solid #CCFF00 !important;
}

.coser-panel td {
  padding: 6px 10px !important;
  font-size: 12px !important;
  border-bottom: 1px solid rgba(91, 44, 111, 0.1) !important;
  color: #1a1a1a !important;
}

.coser-panel tr:hover td {
  background: rgba(204, 255, 0, 0.08) !important;
}
