/* ========== 神之容器·近未来都市暗潮风格CSS ========== */
/* 全局强制覆盖，所有规则均使用 !important */
/* 配色主题：深靛蓝底 + 冷银框线 + 暖灰白正文 + 神恩金/容器紫点缀 */

/* 隐藏思维链 */
.vessel-container think,
.vessel-container [class*="think"],
.vessel-container [class*="chain"] {
  display: none !important;
}

/* ========== 核心容器 ========== */
.vessel-container {
  display: block !important;
  max-width: 100% !important;
  font-family: 'Noto Sans SC', 'Source Han Sans', 'Helvetica Neue', 'Segoe UI', sans-serif !important;
  color: #C8CDD5 !important;
  background: transparent !important;
  position: relative !important;
}

/* ========== 前置状态栏 ========== */
.vessel-container status-block,
.vessel-container [class*="status-block"],
.vessel-container [class*="status"] {
  display: block !important;
  margin: 1.8rem 0 !important;
}

.vessel-container .status-header,
.vessel-container [class*="status-header"] {
  background: linear-gradient(135deg, rgba(12, 16, 28, 0.96), rgba(18, 22, 38, 0.98)) !important;
  border: 1px solid rgba(120, 140, 175, 0.35) !important;
  border-radius: 4px !important;
  padding: 20px 24px !important;
  font-size: 13.5px !important;
  line-height: 1.75 !important;
  color: #A0AABB !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.6), inset 0 1px 0 rgba(120, 140, 175, 0.08) !important;
  position: relative !important;
  overflow-x: auto !important;
  letter-spacing: 0.3px !important;
}

.vessel-container .status-header::before {
  content: "◈ VESSEL SYSTEM · STATUS ◈" !important;
  position: absolute !important;
  top: -11px !important;
  left: 18px !important;
  background: linear-gradient(135deg, #0C101C, #121626) !important;
  color: #6B7A99 !important;
  font-size: 10px !important;
  padding: 3px 14px !important;
  border-radius: 3px !important;
  border: 1px solid rgba(107, 122, 153, 0.4) !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  font-family: 'Consolas', 'SF Mono', monospace !important;
}

.vessel-container .status-header p {
  margin: 7px 0 !important;
  color: #A0AABB !important;
}

.vessel-container .status-header strong {
  color: #D4B96A !important;
  font-weight: 600 !important;
  margin-right: 4px !important;
}

/* ========== 当前任务面板（mission-panel）========== */
.vessel-container .mission-panel {
  background: linear-gradient(135deg, rgba(14, 18, 30, 0.92), rgba(20, 25, 42, 0.94)) !important;
  border: 1px solid rgba(100, 120, 155, 0.3) !important;
  border-radius: 4px !important;
  padding: 16px 24px !important;
  margin-top: 12px !important;
  font-size: 13.5px !important;
  line-height: 1.75 !important;
  color: #A0AABB !important;
  box-shadow: 0 3px 16px rgba(0, 0, 0, 0.5), inset 0 1px 0 rgba(100, 130, 165, 0.06) !important;
  position: relative !important;
}

.vessel-container .mission-panel p {
  margin: 6px 0 !important;
  color: #A0AABB !important;
}

.vessel-container .mission-panel strong {
  color: #D4B96A !important;
  font-weight: 600 !important;
  margin-right: 4px !important;
}

/* mission-panel 内部任务分隔线（银色→金色→银色渐变） */
.vessel-container .mission-panel p:first-of-type::after {
  content: "" !important;
  display: block !important;
  margin-top: 8px !important;
  margin-bottom: 4px !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(160, 170, 190, 0.3) 15%, rgba(212, 185, 106, 0.5) 50%, rgba(160, 170, 190, 0.3) 85%, transparent) !important;
}

/* 第四阶段双线并行——缩进 */
.vessel-container .mission-panel .dual-line {
  display: block !important;
  padding-left: 1.5em !important;
  color: #A0AABB !important;
  margin: 2px 0 !important;
}

/* ========== 响应式：mission-panel ========== */
@media (max-width: 768px) {
  .vessel-container .mission-panel {
    padding: 12px 16px !important;
    font-size: 12.5px !important;
  }
}

@media (max-width: 480px) {
  .vessel-container .mission-panel {
    padding: 10px 14px !important;
    font-size: 12px !important;
  }
}

/* ========== 正文区域（暖灰白底 + 微纹理） ========== */
.vessel-container .text-content {
  background:
    linear-gradient(135deg, rgba(245, 243, 238, 0.97) 0%, rgba(235, 232, 225, 0.95) 100%) !important;
  border: 1px solid rgba(120, 140, 175, 0.3) !important;
  border-radius: 5px !important;
  padding: 32px 36px !important;
  margin: 2rem 0 !important;
  position: relative !important;
  box-shadow:
    0 8px 32px rgba(0, 0, 0, 0.5),
    inset 0 1px 3px rgba(255, 255, 255, 0.4),
    inset 0 -1px 3px rgba(0, 0, 0, 0.06) !important;
  box-sizing: border-box !important;
  isolation: isolate !important;
  z-index: 1 !important;
  overflow-wrap: break-word !important;
}

/* 顶部神恩金光带 */
.vessel-container .text-content::before {
  content: "" !important;
  position: absolute !important;
  top: -2px !important;
  left: 8% !important;
  right: 8% !important;
  height: 2px !important;
  background: linear-gradient(90deg, transparent, rgba(212, 185, 106, 0.6) 20%, rgba(212, 185, 106, 0.9) 50%, rgba(212, 185, 106, 0.6) 80%, transparent) !important;
  z-index: 2 !important;
  border-radius: 1px !important;
  box-shadow: 0 0 12px rgba(212, 185, 106, 0.3) !important;
}

/* 底部冷银光带 */
.vessel-container .text-content::after {
  content: "" !important;
  position: absolute !important;
  bottom: -2px !important;
  left: 8% !important;
  right: 8% !important;
  height: 2px !important;
  background: linear-gradient(90deg, transparent, rgba(120, 140, 175, 0.4) 20%, rgba(120, 140, 175, 0.7) 50%, rgba(120, 140, 175, 0.4) 80%, transparent) !important;
  z-index: 2 !important;
  border-radius: 1px !important;
  box-shadow: 0 0 10px rgba(120, 140, 175, 0.2) !important;
}

/* ========== 正文段落 ========== */
.vessel-container .text-content text,
.vessel-container .text-content p {
  font-size: 15.5px !important;
  line-height: 1.9 !important;
  color: #2A2D35 !important;
  margin: 0 0 20px !important;
  text-indent: 2.2em !important;
  text-align: justify !important;
  letter-spacing: 0.02em !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
  position: relative !important;
}

.vessel-container .text-content text:last-child,
.vessel-container .text-content p:last-child {
  margin-bottom: 0 !important;
}

/* 段落间银色细线分隔 */
.vessel-container .text-content text:not(:last-child)::after,
.vessel-container .text-content p:not(:last-child)::after {
  content: "" !important;
  position: absolute !important;
  bottom: -10px !important;
  left: 12% !important;
  right: 12% !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(120, 140, 175, 0.25) 20%, rgba(120, 140, 175, 0.25) 80%, transparent) !important;
  pointer-events: none !important;
}

/* 首字放大（深靛色） */
.vessel-container .text-content text:first-of-type::first-letter,
.vessel-container .text-content p:first-of-type::first-letter {
  color: #3A4A6B !important;
  font-size: 1.35em !important;
  font-weight: 700 !important;
  text-shadow: 1px 1px 2px rgba(58, 74, 107, 0.2) !important;
}

/* ========== 铃的对白（粉红色）与内心独白（淡紫色）========== */
.vessel-container font[color="#FF6B8A"] {
  color: #E85B7A !important;
  font-style: normal !important;
  text-shadow: 0 0 3px rgba(232, 91, 122, 0.15) !important;
}

.vessel-container font[color="#C8A2FF"] {
  color: #A880D0 !important;
  font-style: italic !important;
  text-shadow: 0 0 4px rgba(168, 128, 208, 0.2) !important;
}

/* NPC对白（默认色，不做特殊处理） */

/* ========== 后置状态栏（折叠面板） ========== */
.vessel-container details,
.vessel-container details[class] {
  margin: 1.2rem 0 !important;
  border: 1px solid rgba(120, 140, 175, 0.3) !important;
  border-radius: 4px !important;
  overflow: hidden !important;
  background: transparent !important;
}

.vessel-container details summary,
.vessel-container details[class] summary {
  cursor: pointer !important;
  padding: 14px 20px !important;
  background: linear-gradient(90deg, rgba(14, 18, 30, 0.94), rgba(20, 25, 42, 0.88)) !important;
  color: #8A9AB5 !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  border-bottom: 1px solid rgba(120, 140, 175, 0.15) !important;
  user-select: none !important;
  list-style: none !important;
  position: relative !important;
  letter-spacing: 0.8px !important;
}

.vessel-container details summary::-webkit-details-marker {
  display: none !important;
}

.vessel-container details summary::after {
  content: '▾' !important;
  position: absolute !important;
  right: 18px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  color: #6B7A99 !important;
  font-size: 12px !important;
  transition: transform 0.3s ease !important;
}

.vessel-container details[open] summary::after {
  transform: translateY(-50%) rotate(180deg) !important;
}

/* 面板展开后的内容区 */
.vessel-container details > div,
.vessel-container details[class] > div {
  padding: 20px !important;
  background: linear-gradient(135deg, rgba(248, 246, 242, 0.96), rgba(240, 237, 230, 0.92)) !important;
  color: #2A2D35 !important;
  font-size: 13.5px !important;
  line-height: 1.65 !important;
  border-top: 1px solid rgba(120, 140, 175, 0.15) !important;
}

/* 面板内标题 */
.vessel-container details .profile-section h4,
.vessel-container details[class] .profile-section h4 {
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: 2.5px !important;
  color: #5A6B88 !important;
  border-bottom: 1px solid rgba(90, 107, 136, 0.2) !important;
  padding-bottom: 5px !important;
  margin-top: 16px !important;
  margin-bottom: 10px !important;
  font-family: 'Consolas', 'SF Mono', monospace !important;
}

/* 面板内列表 */
.vessel-container details ul,
.vessel-container details[class] ul {
  list-style: none !important;
  padding-left: 0 !important;
}

.vessel-container details li,
.vessel-container details[class] li {
  margin-bottom: 5px !important;
  font-size: 13px !important;
  color: #3A3D45 !important;
  position: relative !important;
  padding-left: 16px !important;
}

.vessel-container details li::before,
.vessel-container details[class] li::before {
  content: '›' !important;
  color: #7A8AA5 !important;
  position: absolute !important;
  left: 2px !important;
  font-size: 14px !important;
  font-weight: bold !important;
}

.vessel-container details li strong,
.vessel-container details[class] li strong {
  color: #4A5670 !important;
  font-weight: 700 !important;
  margin-right: 4px !important;
}

/* 嵌套列表（衣着子列表） */
.vessel-container details li ul {
  margin-top: 4px !important;
  margin-bottom: 2px !important;
}

.vessel-container details li li {
  padding-left: 14px !important;
  font-size: 12.5px !important;
  color: #555A65 !important;
}

.vessel-container details li li::before {
  content: '·' !important;
  color: #9AA0B0 !important;
  font-size: 16px !important;
  left: 2px !important;
}

/* ========== 面板类型专属配色 ========== */

/* 铃·容器状态——神恩金/淡紫 */
.vessel-container details.type-vessel,
.vessel-container .type-vessel {
  border-color: rgba(180, 155, 90, 0.4) !important;
  box-shadow: 0 0 12px rgba(180, 155, 90, 0.08) !important;
}

.vessel-container details.type-vessel summary,
.vessel-container .type-vessel summary {
  background: linear-gradient(90deg, rgba(18, 14, 28, 0.94), rgba(25, 20, 38, 0.88)) !important;
  color: #D4B96A !important;
}

/* 剧情进度——冷蓝 */
.vessel-container details.type-progress,
.vessel-container .type-progress {
  border-color: rgba(80, 120, 180, 0.3) !important;
  box-shadow: 0 0 12px rgba(80, 120, 180, 0.08) !important;
}

.vessel-container details.type-progress summary,
.vessel-container .type-progress summary {
  background: linear-gradient(90deg, rgba(10, 16, 30, 0.94), rgba(15, 22, 40, 0.88)) !important;
  color: #6A9FD8 !important;
}

/* NPC面板——冷灰紫 */
.vessel-container details.type-npc,
.vessel-container .type-npc {
  border-color: rgba(110, 100, 140, 0.3) !important;
  box-shadow: 0 0 12px rgba(110, 100, 140, 0.08) !important;
}

.vessel-container details.type-npc summary,
.vessel-container .type-npc summary {
  background: linear-gradient(90deg, rgba(16, 14, 26, 0.94), rgba(22, 18, 36, 0.88)) !important;
  color: #A090C0 !important;
}

/* 记忆区——深棕灰 */
.vessel-container details.type-archive,
.vessel-container .type-archive {
  border-color: rgba(120, 110, 95, 0.3) !important;
  box-shadow: 0 0 12px rgba(120, 110, 95, 0.08) !important;
}

.vessel-container details.type-archive summary,
.vessel-container .type-archive summary {
  background: linear-gradient(90deg, rgba(22, 18, 14, 0.94), rgba(28, 24, 18, 0.88)) !important;
  color: #B5A890 !important;
}

/* ========== 记忆区表格 ========== */
.vessel-container .memory-table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin: 12px 0 !important;
  font-size: 12.5px !important;
}

.vessel-container .memory-table th {
  background: rgba(58, 74, 107, 0.1) !important;
  color: #5A6B88 !important;
  padding: 9px 12px !important;
  border: 1px solid rgba(90, 107, 136, 0.2) !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  font-size: 11px !important;
  font-family: 'Consolas', 'SF Mono', monospace !important;
}

.vessel-container .memory-table td {
  padding: 9px 12px !important;
  border: 1px solid rgba(120, 140, 175, 0.15) !important;
  color: #3A3D45 !important;
}

.vessel-container .memory-table tr:nth-child(even) td {
  background: rgba(240, 238, 232, 0.5) !important;
}

/* 记忆区头部描述文字 */
.vessel-container .memory-header p {
  font-size: 12px !important;
  color: #7A7D85 !important;
  font-style: italic !important;
  margin-bottom: 1rem !important;
  font-family: 'Consolas', 'SF Mono', monospace !important;
}

/* ========== 行动选项 ========== */
.vessel-container choice-block,
.vessel-container [class*="choice-block"],
.vessel-container [class*="choice"] {
  display: block !important;
  margin: 1.8rem 0 !important;
}

.vessel-container .choice-panel,
.vessel-container [class*="choice-panel"] {
  background: linear-gradient(135deg, rgba(12, 16, 28, 0.96), rgba(18, 22, 38, 0.94)) !important;
  border: 1px solid rgba(120, 140, 175, 0.35) !important;
  border-radius: 5px !important;
  padding: 22px 26px !important;
  color: #C8CDD5 !important;
  position: relative !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5) !important;
}

.vessel-container .choice-panel::before {
  content: "◇ ACTION SELECT ◇" !important;
  position: absolute !important;
  top: -11px !important;
  left: 18px !important;
  background: linear-gradient(135deg, #0C101C, #121626) !important;
  color: #6B7A99 !important;
  font-size: 10px !important;
  padding: 3px 14px !important;
  border-radius: 3px !important;
  border: 1px solid rgba(107, 122, 153, 0.4) !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
  font-family: 'Consolas', 'SF Mono', monospace !important;
}

.vessel-container .choice-panel > p {
  margin: 0 0 14px !important;
  font-weight: 700 !important;
  color: #D4B96A !important;
  text-indent: 0 !important;
  font-size: 14px !important;
}

.vessel-container .choice-list {
  margin: 0 !important;
  padding-left: 20px !important;
  list-style: none !important;
}

.vessel-container .choice-list li {
  margin: 10px 0 !important;
  color: #B0B8C8 !important;
  line-height: 1.6 !important;
  font-size: 13.5px !important;
  padding-left: 4px !important;
  position: relative !important;
}

.vessel-container .choice-list li::before {
  content: none !important;
}

.vessel-container .choice-list strong {
  color: #D4B96A !important;
  margin-right: 6px !important;
  font-weight: 700 !important;
  font-family: 'Consolas', 'SF Mono', monospace !important;
}

/* ========== 状态变化提示 ========== */
.vessel-container .inline-status-change,
.vessel-container [class*="status-change"] {
  display: block !important;
  text-align: center !important;
  margin: 1.5rem 0 !important;
  padding: 10px !important;
  border-top: 1px solid rgba(120, 140, 175, 0.2) !important;
  border-bottom: 1px solid rgba(120, 140, 175, 0.2) !important;
  color: #7A8AA5 !important;
  font-size: 12.5px !important;
  letter-spacing: 0.8px !important;
  font-family: 'Consolas', 'SF Mono', monospace !important;
}

/* ========== 响应式设计 ========== */
@media (max-width: 992px) {
  .vessel-container .text-content {
    padding: 26px 28px !important;
    margin: 1.6rem 0 !important;
  }
  .vessel-container .text-content text,
  .vessel-container .text-content p {
    font-size: 15px !important;
    line-height: 1.85 !important;
    margin-bottom: 18px !important;
  }
}

@media (max-width: 768px) {
  .vessel-container .status-header,
  .vessel-container .text-content,
  .vessel-container details > div,
  .vessel-container .choice-panel {
    padding: 16px 18px !important;
  }

  .vessel-container .text-content {
    margin: 1.3rem 0 !important;
    border-radius: 4px !important;
  }

  .vessel-container .text-content text,
  .vessel-container .text-content p {
    font-size: 14.5px !important;
    line-height: 1.8 !important;
    margin-bottom: 16px !important;
    text-indent: 1.8em !important;
  }

  .vessel-container .text-content::before,
  .vessel-container .text-content::after {
    left: 6% !important;
    right: 6% !important;
  }

  .vessel-container .memory-table {
    font-size: 11.5px !important;
  }

  .vessel-container .memory-table th,
  .vessel-container .memory-table td {
    padding: 7px 10px !important;
  }
}

@media (max-width: 480px) {
  .vessel-container .text-content {
    padding: 14px 16px !important;
    margin: 1rem 0 !important;
  }

  .vessel-container .text-content text,
  .vessel-container .text-content p {
    font-size: 13.5px !important;
    line-height: 1.75 !important;
    margin-bottom: 14px !important;
    text-indent: 1.5em !important;
  }

  .vessel-container .text-content text:not(:last-child)::after,
  .vessel-container .text-content p:not(:last-child)::after {
    left: 5% !important;
    right: 5% !important;
  }

  .vessel-container .choice-list li {
    font-size: 13px !important;
  }

  .vessel-container details li {
    font-size: 12.5px !important;
  }
}