.mes_text {
  background: linear-gradient(180deg, #0f1419 0%, #161b22 100%) !important;
  color: #e0e6ed !important;
  font-family: -apple-system, "Segoe UI", "Helvetica Neue", Arial, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.75 !important;
  padding: 20px !important;
  border: 1px solid #2a3444 !important;
  border-radius: 4px !important;
  box-shadow: 0 0 20px rgba(79, 195, 247, 0.08), inset 0 0 40px rgba(0, 0, 0, 0.3) !important;
}

.mes_text hr {
  border: none !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent 0%, #4fc3f7 20%, #ffb74d 50%, #4fc3f7 80%, transparent 100%) !important;
  margin: 18px 0 !important;
  opacity: 0.5 !important;
}

.rev-main {
  background: rgba(26, 32, 48, 0.4) !important;
  border-left: 3px solid #4fc3f7 !important;
  border-right: 1px solid #2a3444 !important;
  padding: 16px 20px !important;
  margin: 12px 0 !important;
  color: #d8dee9 !important;
  line-height: 1.85 !important;
  text-indent: 2em !important;
  border-radius: 2px !important;
  position: relative !important;
}

.rev-main::before {
  content: "SDN // BROADCAST" !important;
  position: absolute !important;
  top: -8px !important;
  left: 12px !important;
  background: #0f1419 !important;
  color: #4fc3f7 !important;
  font-size: 10px !important;
  padding: 0 8px !important;
  letter-spacing: 2px !important;
  font-weight: bold !important;
}

.char-dialogue {
  color: #4fc3f7 !important;
  font-weight: 600 !important;
  text-shadow: 0 0 4px rgba(79, 195, 247, 0.3) !important;
}

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

.system-alert {
  background: rgba(255, 183, 77, 0.08) !important;
  border: 1px solid #ffb74d !important;
  border-left: 4px solid #ffb74d !important;
  color: #ffb74d !important;
  padding: 10px 14px !important;
  margin: 12px 0 !important;
  font-size: 13px !important;
  letter-spacing: 0.5px !important;
  border-radius: 2px !important;
  text-indent: 0 !important;
}

.system-alert::before {
  content: "⚠ SYSTEM ALERT // " !important;
  color: #ffb74d !important;
  font-weight: bold !important;
  letter-spacing: 1px !important;
}

.coser-panel {
  background: linear-gradient(180deg, #1a2030 0%, #141824 100%) !important;
  border: 1px solid #2a3444 !important;
  border-radius: 4px !important;
  margin: 10px 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4), inset 0 1px 0 rgba(79, 195, 247, 0.1) !important;
  color: #d8dee9 !important;
}

.coser-panel summary {
  background: linear-gradient(90deg, #1e2638 0%, #1a2030 100%) !important;
  color: #4fc3f7 !important;
  padding: 10px 16px !important;
  cursor: pointer !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  letter-spacing: 1px !important;
  border-bottom: 1px solid #2a3444 !important;
  border-left: 3px solid #4fc3f7 !important;
  transition: all 0.2s ease !important;
  list-style: none !important;
  text-shadow: 0 0 4px rgba(79, 195, 247, 0.2) !important;
}

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

.coser-panel summary:hover {
  background: linear-gradient(90deg, #243048 0%, #1e2638 100%) !important;
  color: #ffb74d !important;
  border-left-color: #ffb74d !important;
}

.coser-panel[open] summary {
  border-bottom: 1px solid #4fc3f7 !important;
}

.coser-panel > *:not(summary) {
  padding: 14px 18px !important;
  color: #d8dee9 !important;
  font-size: 13.5px !important;
  line-height: 1.75 !important;
}

.thinking-panel {
  border-color: #3a4458 !important;
  opacity: 0.85 !important;
}

.thinking-panel summary {
  color: #8a96a8 !important;
  border-left-color: #8a96a8 !important;
  text-shadow: none !important;
}

.scene-panel summary {
  border-left-color: #ffb74d !important;
  color: #ffb74d !important;
  text-shadow: 0 0 4px rgba(255, 183, 77, 0.2) !important;
}

.scene-panel[open] summary {
  border-bottom-color: #ffb74d !important;
}

.scene-panel > div, .scene-panel > p {
  background: rgba(255, 183, 77, 0.04) !important;
}

.memory-panel summary {
  border-left-color: #4fc3f7 !important;
}

.memory-panel table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin: 8px 0 !important;
  font-size: 12.5px !important;
  background: rgba(15, 20, 25, 0.5) !important;
}

.memory-panel th {
  background: #1e2638 !important;
  color: #4fc3f7 !important;
  padding: 8px 10px !important;
  text-align: left !important;
  border-bottom: 1px solid #4fc3f7 !important;
  font-weight: 600 !important;
  letter-spacing: 1px !important;
  font-size: 12px !important;
}

.memory-panel td {
  padding: 6px 10px !important;
  border-bottom: 1px solid #2a3444 !important;
  color: #c0c8d4 !important;
  vertical-align: top !important;
}

.memory-panel tr:hover td {
  background: rgba(79, 195, 247, 0.05) !important;
  color: #e0e6ed !important;
}

.player-panel summary {
  border-left-color: #ffb74d !important;
  color: #ffb74d !important;
}

.player-panel[open] summary {
  border-bottom-color: #ffb74d !important;
}

.player-panel ul, .player-panel ol {
  padding-left: 20px !important;
  margin: 6px 0 !important;
}

.player-panel li {
  margin: 4px 0 !important;
  color: #d8dee9 !important;
}

.team-panel summary {
  border-left-color: #4fc3f7 !important;
}

.team-panel p {
  padding: 8px 12px !important;
  margin: 6px 0 !important;
  background: rgba(79, 195, 247, 0.04) !important;
  border-left: 2px solid #2a3444 !important;
  border-radius: 2px !important;
}

.world-panel summary {
  border-left-color: #ffb74d !important;
  color: #ffb74d !important;
}

.world-panel[open] summary {
  border-bottom-color: #ffb74d !important;
}

.mission-panel summary {
  border-left-color: #4fc3f7 !important;
}

.mission-panel p {
  padding: 10px 14px !important;
  margin: 8px 0 !important;
  background: rgba(15, 20, 25, 0.6) !important;
  border: 1px solid #2a3444 !important;
  border-left: 3px solid #4fc3f7 !important;
  border-radius: 2px !important;
  font-size: 13px !important;
}

.npc-panel summary {
  border-left-color: #ffb74d !important;
  color: #ffb74d !important;
}

.npc-panel[open] summary {
  border-bottom-color: #ffb74d !important;
}

.npc-panel ul {
  list-style: none !important;
  padding-left: 0 !important;
}

.npc-panel li {
  padding: 5px 10px !important;
  margin: 4px 0 !important;
  background: rgba(255, 183, 77, 0.05) !important;
  border-left: 2px solid #ffb74d !important;
  border-radius: 2px !important;
  color: #d8dee9 !important;
  font-size: 13px !important;
}

.mes_text strong, .coser-panel strong {
  color: #4fc3f7 !important;
  font-weight: 600 !important;
}

.mes_text em, .coser-panel em {
  color: #ffb74d !important;
  font-style: italic !important;
}

.mes_text code {
  background: rgba(79, 195, 247, 0.1) !important;
  color: #4fc3f7 !important;
  padding: 1px 6px !important;
  border-radius: 2px !important;
  font-size: 12.5px !important;
  border: 1px solid #2a3444 !important;
}
