/* ============================================================
   紫霄天境服务器 · 模组服 —— 全站统一样式层
   基于原版紫色渐变配色（#8a2be2 → #4b0082），
   仅统一导航、字体、间距与组件细节，不改变原有布局结构
   ============================================================ */

:root {
  --zx-primary: #8a2be2;
  --zx-deep: #4b0082;
  --zx-grad: linear-gradient(90deg, #8a2be2, #4b0082);
  --zx-grad-rev: linear-gradient(90deg, #4b0082, #8a2be2);
  --zx-card-bg: rgba(255, 255, 255, 0.95);
  --zx-line: rgba(138, 43, 226, 0.2);
  --zx-muted: #6b6480;
}

body {
  font-family: "Microsoft YaHei", "微软雅黑", "PingFang SC", "Helvetica Neue", Arial, sans-serif;
  background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
  color: #333;
}

/* ---------- 导航（原版紫色渐变，统一间距与交互） ---------- */
.zx-navbar {
  padding-top: 10px;
  padding-bottom: 10px;
}
.zx-navbar .navbar-brand {
  font-size: 1.3rem;
  letter-spacing: 1px;
}
.zx-navbar .zx-brand-sub {
  display: inline-block;
  font-size: 0.75rem;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.55);
  border-radius: 20px;
  padding: 2px 10px;
  margin-left: 8px;
  vertical-align: middle;
}
.zx-navbar .nav-link {
  margin: 0 2px;
}
.zx-navbar .navbar-nav .nav-link:hover {
  transform: none;
  background-color: rgba(255, 255, 255, 0.14);
}
.zx-navbar .zx-nav-sponsor {
  background: rgba(255, 255, 255, 0.18);
  color: #fff !important;
}
.zx-navbar .zx-nav-sponsor:hover {
  background: rgba(255, 255, 255, 0.3);
}

/* ---------- 页头卡（原版 jumbotron 白卡 + 顶部紫条，居中统一） ---------- */
.zx-pagehead {
  text-align: center;
  padding: 34px 40px;
}
.zx-pagehead h1 {
  font-size: 2rem;
  margin-bottom: 12px;
}
.zx-pagehead p {
  font-size: 1.02rem;
  color: var(--zx-muted);
  margin-bottom: 0;
}

/* ---------- 服务器信息框（原版浅紫虚线框） ---------- */
.zx-server-info {
  background: rgba(138, 43, 226, 0.05);
  border: 1px dashed rgba(138, 43, 226, 0.3);
  border-radius: 10px;
}
.zx-server-info h3 {
  color: var(--zx-deep);
  font-size: 1.25rem;
}

/* ---------- 卡片细节（原版白卡 + 顶部紫条） ---------- */
.zx-card-media {
  height: 175px;
  object-fit: cover;
  border-radius: 0;
}
.zx-download-card .card-body {
  padding: 30px 24px;
}
.zx-note {
  font-size: 0.88rem;
  color: var(--zx-muted);
  margin-top: 12px;
  margin-bottom: 0;
}

/* ---------- 提示条（紫色系，统一） ---------- */
.zx-notice {
  border-left: 4px solid var(--zx-primary);
  background: rgba(138, 43, 226, 0.06);
  border-radius: 8px;
  padding: 14px 18px;
  color: var(--zx-deep);
  text-align: left;
}
.zx-notice p { margin-bottom: 4px; }
.zx-notice p:last-child { margin-bottom: 0; }

/* ---------- 停服倒计时容器（原版白卡 + 顶部紫条） ---------- */
.zx-countdown {
  background: rgba(255, 255, 255, 0.95);
  border: 1px solid rgba(138, 43, 226, 0.2);
  border-radius: 10px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
  padding: 24px 22px 20px;
  position: relative;
  overflow: hidden;
}
.zx-countdown::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 5px;
  background: var(--zx-grad);
}
.zx-countdown h2 {
  font-size: 1.6rem;
}

/* ---------- 截图画廊（适度优化：统一圆角与阴影） ---------- */
.zx-gallery-img {
  width: 100%;
  height: 180px;
  object-fit: cover;
  border-radius: 8px;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  cursor: pointer;
}
.zx-gallery-img:hover {
  transform: scale(1.03);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
}

/* ---------- 页脚（原版紫渐变，统一内部排版） ---------- */
.zx-footer .container { padding: 0 15px; }
.zx-footer-logo {
  font-size: 1.25rem;
  font-weight: bold;
  letter-spacing: 4px;
  margin-bottom: 14px;
  color: #fff;
}
.zx-footer-contact {
  font-size: 0.9rem;
  margin-bottom: 12px;
}
.zx-footer-contact img {
  height: 20px;
  margin-right: 5px;
  vertical-align: middle;
}
.zx-footer a {
  color: rgba(255, 255, 255, 0.85);
}
.zx-footer a:hover {
  color: #fff;
  text-decoration: none;
}
.zx-footer .zx-footer-copy {
  font-size: 0.85rem;
}

/* ---------- 原版组件细节修复 ---------- */
/* 恢复被全局重置波及的组件内边距 */
.alert { padding: 1rem 1.25rem; }
.badge { padding: 0.25em 0.55em; }
.modal-header { padding: 1rem 1.25rem; }
.modal-body { padding: 1rem 1.25rem; }
/* 修复卡片顶部紫色装饰条定位（.card 作为定位锚点） */
.card { position: relative; }

/* ---------- 响应式（移动端） ---------- */
@media (max-width: 768px) {
  .zx-pagehead { padding: 24px 16px; }
  .zx-pagehead h1 { font-size: 1.5rem; }
  .jumbotron { padding: 26px 16px; }
  .jumbotron h1 { font-size: 1.8rem; }
  .zx-brand-sub { margin-left: 4px; padding: 1px 8px; font-size: 0.7rem; }
  .zx-card-media { height: 150px; }
  .zx-gallery-img { height: 140px; }
  .zx-countdown h2 { font-size: 1.3rem; }
  section h2 { font-size: 1.5rem; }
  .zx-footer-logo { letter-spacing: 2px; }
}
