/* --- 全局变量与基础设置 --- */
:root {
  --bg-dark: #0f1012;
  --coral: #E37B58;
  --coral-dim: #9c553e;
  --text-gray: #888888;
  --gold: #D4AF37;
  /* 金色辅助色 */

  --font-serif: "Songti SC", "SimSun", "Times New Roman", serif;
  --font-sans: "DengXian", "Microsoft YaHei", sans-serif;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background-color: var(--bg-dark);
  color: white;
  font-family: var(--font-sans);
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  overflow-x: hidden;
}

a {
  text-decoration: none;
  color: inherit;

}

/* --- 顶部导航 --- */
header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px 40px;
  background: rgba(0, 0, 0, 0.3);
}

.header-left .back-btn {
  background: none;
  border: none;
  color: #ccc;
  font-size: 14px;
  font-family: var(--font-sans);
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  transition: color 0.3s ease;
}

.header-left .back-btn:hover {
  color: #ffffff;
}

.nav-center {
  text-align: center;
}

.logo-text {
  font-family: var(--font-serif);
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 2px;
  margin-left: 240px;
}

.logo-en {
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 4px;
  color: #fff;
  margin-top: 2px;
  margin-left: 240px;
}

.nav-right {
  display: flex;
  gap: 20px;
}


.nav-item {
  font-size: 15px;
  padding: 6px 16px;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.3s;
  color: #949292;

}

.nav-item.active {
  background-color: rgba(227, 123, 88, 0.2);
  color: var(--coral);
  background-color: #e9825f;
  color: #000000;
  font-weight: bold;
}

.nav-item:hover:not(.active) {
  color: #fff;
}

/* --- 页面主体 --- */
main {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 20px 60px;
}

/* 标题区 */
.hero-section {
  text-align: center;
  margin-bottom: 60px;
  margin-top: 80px;
}

.page-title {
  font-family: var(--font-serif);
  font-size: 40px;
  font-weight: 800;
  color: var(--coral);
  margin-bottom: 12px;
  letter-spacing: 2px;
}

.page-subtitle {
  font-size: 18px;
  color: #fff;
  letter-spacing: 1px;
}

/* --- 内容容器布局 --- */
.content-container {
  display: flex;
  position: relative;
  max-width: 1400px;
  margin: 0 auto;
  width: 100%;
}

/* 左侧时间轴区域 */
.timeline-wrapper {
  flex: 0 0 55%;
  /* 占据左侧 55% */
  position: relative;
  padding-left: 20px;
}

/* 贯穿线 */
.timeline-line {
  position: absolute;
  left: 43px;
  /* 对齐圆点中心 */
  top: 10px;
  bottom: 20px;
  width: 2px;
  background: linear-gradient(to bottom, var(--coral) 0%, var(--coral) 80%, transparent 100%);
  opacity: 0.6;
}

/* 时间轴单项 */
.timeline-item {
  position: relative;
  padding-left: 50px;
  /* 给圆点留出空间 */
  margin-bottom: 40px;
  opacity: 0;
  /* 初始隐藏，用于JS动画 */
  transform: translateY(20px);
}

/* 时间节点圆点 */
.timeline-dot {
  position: absolute;
  left: 17px;

  top: 6px;
  width: 14px;
  height: 14px;
  background-color: var(--coral);
  border-radius: 50%;
  box-shadow: 0 0 10px rgba(227, 123, 88, 0.4);
  z-index: 2;
}



.dynasty-title {
  font-family: var(--font-serif);
  font-size: 24px;
  font-weight: 800;
  color: var(--coral);
  margin-bottom: 6px;
}

.dynasty-desc {
  font-family: var(--font-sans);
  font-size: 18px;
  color: #b5b4b4;
  line-height: 1.6;
  max-width: 500px;
  /* 限制阅读宽度 */
}

/* --- 右侧视觉艺术区域 --- */
.visual-art {
  flex: 1;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  /* 防止图片溢出 */
}

.art-layer {
  position: fixed;
  right: -10%;
  bottom: -10%;
  width: 80vh;
  height: 80vh;
  background: radial-gradient(circle at center, rgba(212, 175, 55, 0.15) 0%, rgba(0, 0, 0, 0) 70%);
  pointer-events: none;
  z-index: -1;



  animation: pulseGlow 10s infinite alternate;
}

@keyframes pulseGlow {
  0% {
    transform: scale(1);
    opacity: 0.6;
  }

  100% {
    transform: scale(1.1);
    opacity: 0.9;
  }
}

/* 响应式适配 */
@media (max-width: 768px) {
  .content-container {
    flex-direction: column;
  }

  .timeline-wrapper {
    flex: 1;
    padding-right: 0;
  }

  .visual-art {
    display: none;

  }

  main {
    padding: 20px;
  }
}


/* --- 右侧视觉艺术区域 --- */
.visual-art {

  flex: 1;
  min-height: 100vh;
  pointer-events: none;

}

/* --- 核心修改部分：背景图层 --- */
.art-layer {

  position: fixed;
  top: 20%;
  right: 0;
  transform: translateY(-50%);

  width: 50vw;
  /* 占据屏幕宽度的一半 */
  height: 80vh;

  background-image: url('./素材补充/未标题-3.png');

  background-size: contain;
  background-repeat: no-repeat;
  background-position: center right;
  /* 图片靠右对齐 */

  z-index: -1;
  opacity: 0.9;

}

/* 手机端适配 */
@media (max-width: 768px) {
  .content-container {
    flex-direction: column;
  }

  .timeline-wrapper {
    flex: 1;
    padding-right: 0;
  }

  .art-layer {
    display: none;
  }

  main {
    padding: 20px;
  }
}


/* --- 响应式适配 (移动端: 屏幕宽度小于768px) --- */


@media (max-width: 768px) {

  /* 1. 取消全屏锁定，允许页面垂直滚动 */
  body {
    height: auto;
    overflow-y: auto;
    overflow-x: hidden;
  }

  /* 2. 导航栏改造：分两行显示 */
  header {
    flex-direction: column;
    /* 改为垂直排列 */
    padding: 15px 15px 10px 15px;
    gap: 15px;
    /* 上下两行之间的间距 */
    position: relative;
  }

  /* 将返回按钮绝对定位在左上角 */
  .header-left {
    position: absolute;
    left: 15px;
    top: 20px;
  }

  .logo-text,
  .logo-en {
    margin-left: 0;
    text-align: center;
  }

  .nav-right {
    width: 100%;
    justify-content: center;
    gap: 8px;
    overflow-x: auto;
    padding-bottom: 5px;
  }

  .nav-item {
    font-size: 12px;
    padding: 6px 10px;
    white-space: nowrap;
  }
}