/* 全局变量与底座 */
:root {
  --primary-color: #0b4ea2;
  --primary-color-rgb: 11, 78, 162;
  --secondary-color: #102a43;
  --accent-color: #b0893e;
  --bg-color: #f4f7fb;
  --panel-bg: #ffffff;
  --panel-soft: #f8fafc;
  --text-main: #17212b;
  --text-muted: #667085;
  --border-color: #dce5f2;
  --header-text: #ffffff;
  --nav-bg: var(--primary-color);
  --nav-active-bg: rgba(255, 255, 255, 0.16);
  --top-banner-image: url("assets/academic_banner.png");
  --radius: 6px;
  --shadow: 0 8px 24px rgba(15, 35, 60, 0.08);
  --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "PingFang SC", "Microsoft YaHei", sans-serif;
  --font-serif: "Noto Serif SC", "Songti SC", "SimSun", serif;
  --transition: all 0.22s ease;
}

/* 首页重构布局（移除黑框，使用精美的高品质卡片间距） */
.home-draft-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.8fr) minmax(360px, 1.2fr);
  grid-template-rows: auto auto auto;
  grid-template-areas:
    "poster video"
    "achievements membersFeature"
    "highlights highlights";
  gap: 24px;
  overflow: hidden;
  background: transparent;
  border: none;
}

.home-draft-layout>section,
.home-draft-layout>aside {
  min-width: 0;
  background: var(--panel-bg);
  border: 1px solid var(--border-color);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding: 24px;
  transition: var(--transition);
}

.home-draft-layout>section:hover,
.home-draft-layout>aside:hover {
  box-shadow: 0 12px 32px rgba(15, 35, 90, 0.06);
}

/* 联合完成单位 Logo 栏 */
.cooperating-units-bar {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 16px;
  padding: 8px 0 20px;
  background: transparent;
  margin-bottom: 8px;
  width: 100%;
}

.cooperating-unit-item {
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.65);
  backdrop-filter: blur(12px) saturate(180%);
  -webkit-backdrop-filter: blur(12px) saturate(180%);
  border: 1px solid rgba(255, 255, 255, 0.85);
  border-radius: 10px;
  height: 48px;
  min-width: 48px;
  padding: 6px 16px;
  box-shadow: 0 4px 14px rgba(15, 35, 90, 0.02);
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  cursor: pointer;
  position: relative;
}

.cooperating-unit-item img {
  height: 24px;
  width: auto;
  max-width: 140px;
  object-fit: contain;
  opacity: 0.85;
  filter: grayscale(100%);
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.cooperating-unit-item.text-fallback span {
  font-size: 0.8rem;
  font-weight: 700;
  color: var(--text-main);
  white-space: nowrap;
}

.cooperating-unit-item:hover {
  transform: translateY(-3px);
  background: rgba(255, 255, 255, 0.95);
  border-color: rgba(var(--primary-color-rgb), 0.3);
  box-shadow: 0 8px 20px rgba(var(--primary-color-rgb), 0.12);
}

.cooperating-unit-item:hover img {
  opacity: 1;
  filter: grayscale(0%);
}

/* 纯 CSS 优雅 Tooltip */
.cooperating-unit-item::after {
  content: attr(data-tooltip);
  position: absolute;
  bottom: 125%;
  left: 50%;
  transform: translateX(-50%) translateY(8px);
  background: rgba(15, 23, 42, 0.92);
  color: #ffffff;
  padding: 6px 12px;
  border-radius: 6px;
  font-size: 0.75rem;
  font-weight: 500;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: all 0.25s cubic-bezier(0.25, 0.8, 0.25, 1);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.16);
  z-index: 1000;
}

.cooperating-unit-item::before {
  content: "";
  position: absolute;
  bottom: 112%;
  left: 50%;
  transform: translateX(-50%) translateY(8px);
  border-width: 6px 6px 0 6px;
  border-style: solid;
  border-color: rgba(15, 23, 42, 0.92) transparent transparent transparent;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: all 0.25s cubic-bezier(0.25, 0.8, 0.25, 1);
  z-index: 1000;
}

.cooperating-unit-item:hover::after,
.cooperating-unit-item:hover::before {
  opacity: 1;
  visibility: visible;
  transform: translateX(-50%) translateY(0);
}

/* 荣耀学院暗色主题适配 */
body[data-theme="prestige-academy"] .cooperating-unit-item {
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.12);
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.20);
  color: rgba(255, 255, 255, 0.85);
}

body[data-theme="prestige-academy"] .cooperating-unit-item img {
  filter: grayscale(100%) brightness(1.6);
  opacity: 0.75;
}

body[data-theme="prestige-academy"] .cooperating-unit-item:hover {
  background: rgba(255, 255, 255, 0.16);
  border-color: rgba(255, 255, 255, 0.25);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
  color: #ffffff;
}

body[data-theme="prestige-academy"] .cooperating-unit-item:hover img {
  filter: grayscale(0%) brightness(1);
  opacity: 1;
}

body[data-theme="prestige-academy"] .cooperating-unit-item::after {
  background: rgba(255, 255, 255, 0.95);
  color: #0f172a;
}

body[data-theme="prestige-academy"] .cooperating-unit-item::before {
  border-color: rgba(255, 255, 255, 0.95) transparent transparent transparent;
}

.cooperating-unit-divider {
  display: none;
}

/* 顶部大标题样式 */
.header-main-content {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 32px 24px;
  text-align: center;
}

.masthead-title-wrap h1 {
  font-family: var(--font-serif);
  color: var(--primary-color);
  font-size: 2.2rem;
  font-weight: 800;
  line-height: 1.35;
  letter-spacing: 0.02em;
  margin-bottom: 12px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.01);
}

.masthead-title-wrap p {
  color: #c30d23;
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: 0.08em;
}

/* 2. 海报区域（固定高度，防止图片变化导致跳动，完整展示任意比例图片） */
.home-poster-zone {
  grid-area: poster;
  height: 450px;
  padding: 0 !important;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

.poster-carousel {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  background: #ffffff;
}

.poster-image {
  width: 100%;
  flex: 1 1 0%;
  min-height: 0;
  object-fit: contain;
  background: #ffffff;
  display: block;
}

.poster-copy {
  position: relative;
  left: auto;
  right: auto;
  bottom: auto;
  z-index: 2;
  padding: 14px 20px;
  color: #ffffff;
  background: linear-gradient(90deg, rgba(5, 18, 38, 0.92), rgba(5, 18, 38, 0.72));
  border-left: 4px solid var(--accent-color);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  flex-shrink: 0;
}

.poster-copy h1 {
  margin-bottom: 4px;
  font-size: 1.3rem;
  line-height: 1.3;
  font-weight: 800;
}

.poster-copy p {
  font-size: 0.88rem;
  line-height: 1.5;
  opacity: 0.88;
}

.poster-dots {
  position: absolute;
  right: 16px;
  top: 12px;
  z-index: 3;
  display: flex;
  gap: 6px;
}

.poster-dot {
  width: 8px;
  height: 8px;
  border: 1px solid rgba(var(--primary-color-rgb), 0.45);
  border-radius: 50%;
  background: rgba(var(--primary-color-rgb), 0.2);
  cursor: pointer;
  transition: var(--transition);
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.55);
}

.poster-dot.active {
  background: var(--primary-color);
  border-color: var(--primary-color);
  transform: scale(1.1);
}

/* 3. 视频区域（高度对齐海报区，视频画面比例缩放） */
.home-video-zone {
  grid-area: video;
  height: 450px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 6px;
}

.home-video-zone .home-video-frame {
  flex-grow: 1;
  margin-bottom: 4px;
  border-radius: 8px;
  background: #080c10;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border: 1px solid var(--border-color);
}

.home-video-zone .home-video-frame video {
  width: 100%;
  height: 100%;
  max-height: 100%;
  object-fit: contain;
}

.home-video-zone p {
  display: none;
}

/* 4. 滚动的成果（精美卡片式，由左往右水平滚动） */
.home-achievements-zone {
  grid-area: achievements;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 16px;
  overflow: hidden;
  align-self: stretch;
  height: 460px;
}

.home-achievements-zone .home-intro-text {
  margin-bottom: 16px;
  font-size: 0.95rem;
  color: var(--text-muted);
  line-height: 1.6;
}

/* 成果量化统计指标 */
.achievement-stats-container {
  display: flex;
  justify-content: space-around;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
  padding: 4px 0 16px;
}

.achievement-stat-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.achievement-stat-item .stat-number {
  color: #e53935; /* 红色 */
  font-size: 2.4rem;
  font-weight: 900;
  line-height: 1.1;
  font-family: Arial, Helvetica, sans-serif;
  text-shadow: 0 2px 4px rgba(229, 57, 53, 0.15);
}

.achievement-stat-item .stat-label {
  color: var(--text-main);
  font-size: 0.9rem;
  font-weight: 600;
  margin-top: 6px;
}

/* 成果滚动区域的外层包装，用于限制溢出并提供优雅的渐变淡出边缘 */
.achievement-scroll-wrapper {
  overflow: hidden;
  margin: 0 -24px;
  padding: 4px 24px 14px 24px;
  width: calc(100% + 48px);
  -webkit-mask-image: linear-gradient(to right, transparent, #000 24px, #000 calc(100% - 24px), transparent);
  mask-image: linear-gradient(to right, transparent, #000 24px, #000 calc(100% - 24px), transparent);
}

.achievement-scroll-horizontal {
  display: flex;
  gap: 16px;
  width: max-content; /* 核心：让容器宽度完全由子卡片撑开，以便精确计算物理滚动位移 */
  overflow: visible;  /* 允许卡片阴影不受限显示，由外层 wrapper 负责裁剪 */
  padding: 0;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
}

/* 成果卡片自动向左滚动动画 */
.achievement-scroll-horizontal.auto-scroll {
  animation: achievementMarquee var(--marquee-duration, 30s) linear infinite;
}

.achievement-scroll-horizontal.auto-scroll:hover {
  animation-play-state: paused;
}

@keyframes achievementMarquee {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(var(--marquee-translate, -1000px)); /* 使用精确的像素位移，实现无缝物理循环 */
  }
}

/* 隐藏自带滚动条，用精致的细滚动条代替 */
.achievement-scroll-horizontal::-webkit-scrollbar {
  height: 6px;
}

.achievement-scroll-horizontal::-webkit-scrollbar-track {
  background: rgba(0, 0, 0, 0.02);
  border-radius: 10px;
}

.achievement-scroll-horizontal::-webkit-scrollbar-thumb {
  background: rgba(var(--primary-color-rgb), 0.15);
  border-radius: 10px;
}

.achievement-scroll-horizontal::-webkit-scrollbar-thumb:hover {
  background: rgba(var(--primary-color-rgb), 0.35);
}

.achievement-card {
  flex: 0 0 320px;
  padding: 20px 24px;
  border: 1px solid var(--border-color);
  border-radius: 8px;
  background: var(--panel-soft);
  box-shadow: 0 4px 12px rgba(15, 35, 90, 0.015);
  display: flex;
  flex-direction: column;
  gap: 12px;
  transition: var(--transition);
}

.achievement-card:hover {
  transform: translateY(-3px);
  border-color: var(--primary-color);
  box-shadow: 0 8px 24px rgba(var(--primary-color-rgb), 0.06);
}

.achievement-card-header {
  display: flex;
  align-items: center;
  gap: 8px;
}

.achievement-icon {
  color: var(--primary-color);
  flex-shrink: 0;
}

.achievement-card strong {
  display: block;
  font-size: 1.05rem;
  color: var(--text-main);
  font-weight: 800;
  line-height: 1.4;
}

.achievement-card .achievement-desc {
  font-size: 0.9rem;
  color: var(--text-muted);
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* 卡片描述中的数字温和加粗，保持与文本同色系，不再突兀或单行独占 */
.achievement-card .achievement-desc .achievement-number {
  font-weight: 700;
  color: var(--primary-color);
}

.achievement-card-empty {
  flex: 1 1 auto;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: var(--text-muted);
  background: var(--panel-soft);
  border-style: dashed;
}

.achievement-card-empty span {
  display: block;
  -webkit-line-clamp: unset;
}

/* 5. 特色完成人简介卡片（左边头像右边文字） */
.home-draft-layout>aside.home-members-zone {
  grid-area: membersFeature;
  display: flex;
  flex-direction: column;
  gap: 16px;
  overflow: hidden;
  position: relative;
  align-self: stretch;
  height: 460px;
}

/* 弱化手动滚动边栏 */
.home-members-scroll-inner-manual::-webkit-scrollbar {
  width: 4px;
}

.home-members-scroll-inner-manual::-webkit-scrollbar-track {
  background: transparent;
}

.home-members-scroll-inner-manual::-webkit-scrollbar-thumb {
  background: rgba(var(--primary-color-rgb), 0.15);
  border-radius: 4px;
}

.home-members-scroll-inner-manual::-webkit-scrollbar-thumb:hover {
  background: rgba(var(--primary-color-rgb), 0.35);
}

.home-member-feature {
  background: var(--panel-bg);
  border: 1px solid var(--border-color);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding: 12px 16px;
  display: grid;
  grid-template-columns: 60px 1fr;
  gap: 12px;
  align-items: center;
  transition: var(--transition);
}

.home-member-feature:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 24px rgba(15, 35, 90, 0.08);
}

.home-member-feature.is-empty {
  display: none;
}

.home-member-feature .member-avatar {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid rgba(var(--primary-color-rgb), 0.15);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
}

.home-member-feature h4 {
  font-size: 1.1rem;
  font-weight: 800;
  color: var(--text-main);
  display: flex;
  align-items: center;
  gap: 8px;
}

.home-member-feature .role {
  color: var(--accent-color);
  font-size: 0.76rem;
  font-weight: 700;
  background: rgba(176, 137, 62, 0.1);
  padding: 2px 6px;
  border-radius: 4px;
}

.home-member-feature .title,
.home-member-feature .position {
  margin-top: 4px;
  color: var(--text-muted);
  font-size: 0.88rem;
  font-weight: 500;
}

/* 6. 创新亮点 (左) 与 其他成员滚动卡片 (右) */
.home-highlights-card {
  grid-area: highlights;
  min-height: 200px;
}

.home-members-scroll-card {
  grid-area: membersScroll;
  max-height: 250px;
  padding: 24px;
  overflow: hidden;
}

.members-scroll {
  max-height: 170px;
  overflow-y: auto;
  display: grid;
  gap: 12px;
  padding-right: 6px;
}

.members-scroll::-webkit-scrollbar {
  width: 4px;
}

.members-scroll::-webkit-scrollbar-track {
  background: transparent;
}

.members-scroll::-webkit-scrollbar-thumb {
  background: rgba(0, 0, 0, 0.08);
  border-radius: 4px;
}

.members-scroll .member-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 12px;
  border-radius: 6px;
  background: var(--panel-soft);
  border: 1px solid rgba(0, 0, 0, 0.02);
}

.members-scroll .member-avatar {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  object-fit: cover;
  border: 1.5px solid rgba(0, 0, 0, 0.05);
}

.members-scroll .member-info h4 {
  font-size: 0.95rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 6px;
}

.members-scroll .member-info .role {
  font-size: 0.72rem;
  color: var(--accent-color);
  font-weight: 500;
}

.members-scroll .member-info .title {
  font-size: 0.8rem;
  color: var(--text-muted);
  margin-top: 1px;
}

.home-draft-layout .home-material-strip {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 18px;
}

.home-draft-layout .material-entry {
  min-height: 80px;
  padding: 14px;
  box-shadow: none;
}

/* 内置主题的覆盖边框与背景，保持与无黑框风格一致 */
body[data-theme="prestige-academy"] .home-draft-layout {
  border: none;
  background: transparent;
}

body[data-theme="prestige-academy"] .home-draft-layout>section,
body[data-theme="prestige-academy"] .home-draft-layout>aside,
body[data-theme="prestige-academy"] .home-member-feature {
  border-color: rgba(255, 255, 255, 0.15);
  background: rgba(8, 23, 58, 0.78);
}

/* 暗色主题下海报区保留深色底，避免浅色信息图留白与暗色卡片割裂 */
body[data-theme="prestige-academy"] .poster-carousel,
body[data-theme="prestige-academy"] .poster-image {
  background: #0a1628;
}

@media (max-width: 1100px) {
  .home-draft-layout {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    grid-template-areas:
      "poster"
      "video"
      "achievements"
      "membersFeature"
      "highlights";
  }

  .home-poster-zone {
    height: 380px;
  }

  .home-members-zone {
    max-height: none;
    height: auto;
    overflow: visible;
  }

  .home-members-scroll-wrapper {
    overflow: visible !important;
    height: auto !important;
  }

  .home-members-scroll-inner-manual {
    overflow-y: visible !important;
    height: auto !important;
  }

  .scroll-more-indicator {
    display: none !important;
  }

  .home-member-feature {
    border-right: 1px solid var(--border-color);
  }
}

@media (max-width: 768px) {
  .achievement-scroll-wrapper {
    margin: 0 -20px;
    padding: 4px 20px 14px 20px;
    width: calc(100% + 40px);
    -webkit-mask-image: linear-gradient(to right, transparent, #000 20px, #000 calc(100% - 20px), transparent);
    mask-image: linear-gradient(to right, transparent, #000 20px, #000 calc(100% - 20px), transparent);
  }

  .home-draft-layout {
    gap: 16px;
  }

  .home-poster-zone {
    height: 260px;
  }

  .home-video-zone {
    height: auto;
    min-height: 240px;
  }

  .poster-carousel,
  .poster-image {
    min-height: 0;
    height: 100%;
  }

  .poster-copy {
    padding: 10px 14px;
  }

  .poster-copy h1 {
    font-size: 1.1rem;
  }

  .home-achievements-zone,
  .home-highlights-card {
    padding: 20px;
  }

  .home-member-feature {
    grid-template-columns: 60px 1fr;
    gap: 14px;
    padding: 16px;
  }

  .home-member-feature .member-avatar {
    width: 60px;
    height: 60px;
  }

  .home-draft-layout .home-material-strip,
  .highlights-grid {
    grid-template-columns: 1fr;
  }
}

body[data-theme="college-blue"] {
  --primary-color: #0b4ea2;
  --primary-color-rgb: 11, 78, 162;
  --secondary-color: #102a43;
  --accent-color: #b0893e;
  --bg-color: #f4f7fb;
  --panel-bg: #ffffff;
  --panel-soft: #f8fafc;
  --text-main: #17212b;
  --text-muted: #667085;
  --border-color: #dce5f2;
  --nav-bg: var(--primary-color);
  --nav-active-bg: rgba(255, 255, 255, 0.18);
  --shadow: 0 8px 24px rgba(15, 45, 90, 0.08);
}

body[data-theme="prestige-academy"] {
  --primary-color: #2f80ff;
  --primary-color-rgb: 47, 128, 255;
  --secondary-color: #07163f;
  --accent-color: #d8ad43;
  --bg-color: #071127;
  --panel-bg: rgba(8, 23, 58, 0.78);
  --panel-soft: rgba(255, 255, 255, 0.08);
  --text-main: #f7fbff;
  --text-muted: rgba(225, 235, 255, 0.72);
  --border-color: rgba(255, 255, 255, 0.18);
  --header-text: #ffffff;
  --nav-bg: transparent;
  --nav-active-bg: rgba(255, 255, 255, 0.13);
  --shadow: 0 20px 50px rgba(0, 8, 28, 0.34);
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  overflow-x: hidden;
  background: var(--bg-color);
  color: var(--text-main);
  font-family: var(--font-sans);
  letter-spacing: 0;
  -webkit-font-smoothing: antialiased;
}

a {
  color: var(--primary-color);
  text-decoration: none;
  transition: var(--transition);
}

svg {
  flex-shrink: 0;
}

.container {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 24px;
}

main {
  flex-grow: 1;
  padding-top: 24px;
  padding-bottom: 56px;
}

/* 顶部横幅与导航 */
.site-header {
  position: relative;
  z-index: 1000;
  background: var(--panel-bg);
  box-shadow: 0 4px 18px rgba(16, 42, 67, 0.08);
}

/* ==========================================================
   顶部高级毛玻璃极光 Banner 与文字微动效
   ========================================================== */
.site-masthead {
  min-height: 140px;
  display: flex;
  align-items: center;
  overflow: hidden;
  position: relative;
  background: rgba(255, 255, 255, 0.45);
  backdrop-filter: blur(24px) saturate(180%);
  -webkit-backdrop-filter: blur(24px) saturate(180%);
  border-bottom: 1px solid rgba(var(--primary-color-rgb), 0.08);
}

/* 荣耀学院暗色主题毛玻璃适配 */
body[data-theme="prestige-academy"] .site-masthead {
  background: rgba(7, 17, 39, 0.55);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

/* 极光渐变漂移动画背景 */
.site-masthead::before {
  content: "";
  position: absolute;
  inset: -100% -50%;
  z-index: -1;
  background:
    radial-gradient(circle at 20% 35%, rgba(var(--primary-color-rgb), 0.16) 0%, transparent 45%),
    radial-gradient(circle at 75% 65%, rgba(var(--primary-color-rgb), 0.1) 0%, transparent 40%),
    radial-gradient(circle at 50% 50%, rgba(176, 137, 62, 0.06) 0%, transparent 50%);
  filter: blur(60px);
  animation: mastheadAurora 18s ease-in-out infinite alternate;
}

@keyframes mastheadAurora {
  0% {
    transform: translate(0, 0) rotate(0deg) scale(1);
  }

  50% {
    transform: translate(4%, -3%) rotate(3deg) scale(1.05);
  }

  100% {
    transform: translate(-2%, 3%) rotate(-2deg) scale(0.98);
  }
}

/* 极光背景在 Prefers-reduced-motion 下的静止适配 */
@media (prefers-reduced-motion: reduce) {
  .site-masthead::before {
    animation: none;
  }
}

/* 文字加载微动效 */
@keyframes titleSlideUp {
  0% {
    opacity: 0;
    transform: translateY(12px);
    filter: blur(4px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
  }
}

@keyframes subtitleSlideUp {
  0% {
    opacity: 0;
    transform: translateY(8px);
    filter: blur(3px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
  }
}

.masthead-title-wrap h1 {
  animation: titleSlideUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) both;
  transition: letter-spacing 0.4s ease, text-shadow 0.4s ease, transform 0.4s ease;
}

.masthead-title-wrap p {
  animation: subtitleSlideUp 0.9s cubic-bezier(0.16, 1, 0.3, 1) both;
  animation-delay: 0.15s;
  transition: transform 0.4s ease, opacity 0.4s ease, color 0.4s ease;
}

/* 文字悬停微交互效果 */
.masthead-title-wrap:hover h1 {
  letter-spacing: 0.03em;
  text-shadow: 0 4px 16px rgba(var(--primary-color-rgb), 0.18);
}

.masthead-title-wrap:hover p {
  transform: scale(1.02);
  opacity: 0.95;
}

/* 暗色主题文字高对比度适配 */
body[data-theme="prestige-academy"] .masthead-title-wrap h1 {
  color: #ffffff;
  text-shadow: 0 0 12px rgba(47, 128, 255, 0.4);
}

body[data-theme="prestige-academy"] .masthead-title-wrap p {
  color: var(--accent-color);
}

.masthead-inner {
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  padding: 24px;
  display: grid;
  grid-template-columns: minmax(220px, 0.82fr) minmax(0, 1.8fr);
  gap: 24px;
  align-items: center;
}

.masthead-copy {
  min-width: 0;
  text-align: center;
}

.masthead-copy h1 {
  overflow-wrap: anywhere;
  color: var(--primary-color);
  font-size: 2.08rem;
  font-weight: 900;
  line-height: 1.18;
}

.masthead-copy p {
  margin-top: 10px;
  overflow-wrap: anywhere;
  color: #c30d23;
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.45;
}

.nav-bar {
  min-height: 56px;
  display: flex;
  align-items: center;
  color: var(--header-text);
  background: var(--nav-bg);
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

.nav-container {
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 24px;
}

.logo {
  min-width: 210px;
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 1.05rem;
  font-weight: 700;
  color: #ffffff;
}

.masthead-logo {
  color: var(--primary-color);
}

.masthead-logo svg,
.masthead-logo .logo-svg {
  color: var(--primary-color) !important;
}

.logo svg,
.logo .logo-svg {
  color: #ffffff !important;
}

.logo img {
  width: auto;
  height: 42px;
  border-radius: 4px;
}

.masthead-logo img {
  max-width: 170px;
  height: 64px;
  object-fit: contain;
}

.nav-links {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
}

.nav-links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 56px;
  padding: 8px 24px;
  border-radius: 0;
  color: rgba(255, 255, 255, 0.86);
  font-size: 0.98rem;
  font-weight: 800;
  white-space: nowrap;
}

.nav-links a:hover,
.nav-links a.active {
  color: #ffffff;
  background: var(--nav-active-bg);
}

.menu-toggle {
  display: none;
  border: none;
  background: transparent;
  color: #ffffff;
  cursor: pointer;
}

/* 视图 */
.view-section {
  display: none;
  animation: sectionIn 0.24s ease both;
}

.view-section.active {
  display: block;
}

@keyframes sectionIn {
  from {
    opacity: 0;
    transform: translateY(8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* 通用组件 */
.card {
  background: var(--panel-bg);
  border: 1px solid var(--border-color);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding: 24px;
}

.section-title {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 18px;
  color: var(--text-main);
  font-size: 1.22rem;
  font-weight: 800;
  line-height: 1.3;
}

.section-title svg {
  color: var(--primary-color);
}

.section-heading-line {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  margin-bottom: 18px;
  border-bottom: 1px solid var(--border-color);
}

.section-heading-line .section-title {
  margin-bottom: 12px;
}

.text-link {
  flex-shrink: 0;
  color: var(--primary-color);
  font-size: 0.88rem;
  font-weight: 700;
}

.btn-outline {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 36px;
  padding: 8px 14px;
  border: 1px solid var(--border-color);
  border-radius: 4px;
  background: var(--panel-bg);
  color: var(--text-main);
  font-size: 0.86rem;
  font-weight: 700;
  cursor: pointer;
}

.btn-outline:hover {
  border-color: var(--primary-color);
  background: var(--primary-color);
  color: #ffffff;
}

/* 首页横幅 */
.hero-section {
  position: relative;
  min-height: 248px;
  margin-bottom: 24px;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  padding: 36px 42px;
  border: 1px solid var(--border-color);
  border-radius: var(--radius);
  background: var(--secondary-color);
  box-shadow: var(--shadow);
  color: #ffffff;
}

.hero-section::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(10, 24, 38, 0.82), rgba(10, 24, 38, 0.48) 54%, rgba(10, 24, 38, 0.25)),
    linear-gradient(0deg, rgba(var(--primary-color-rgb), 0.22), transparent 70%);
}

.hero-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero-content {
  position: relative;
  z-index: 2;
  max-width: 900px;
}

.hero-content h1 {
  margin-bottom: 12px;
  font-size: 2.05rem;
  font-weight: 850;
  line-height: 1.32;
}

.hero-content p {
  max-width: 820px;
  color: rgba(255, 255, 255, 0.88);
  font-size: 1.02rem;
  line-height: 1.72;
}

.hero-actions {
  display: none;
}

/* 固定首页展示 */
.home-fixed-layout {
  display: block;
}

.home-primary-grid {
  display: grid;
  grid-template-columns: minmax(320px, 0.82fr) minmax(0, 1.18fr);
  gap: 24px;
  align-items: stretch;
}

.home-video-card,
.home-brief-card {
  min-height: 100%;
}

.home-video-frame {
  position: relative;
  overflow: hidden;
  aspect-ratio: 16 / 9;
  margin-bottom: 16px;
  border: 1px solid var(--border-color);
  border-radius: var(--radius);
  background: #0c1117;
}

.home-video-frame video {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.home-video-empty {
  position: absolute;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  color: rgba(255, 255, 255, 0.75);
  font-weight: 700;
}

.home-video-card h3 {
  margin-bottom: 8px;
  color: var(--text-main);
  font-size: 1rem;
}

.home-video-card p {
  max-height: 96px;
  overflow: auto;
  color: var(--text-muted);
  font-size: 0.9rem;
  line-height: 1.65;
}

.home-intro-text {
  margin-bottom: 20px;
  color: var(--text-main);
  font-size: 1.02rem;
  line-height: 1.88;
  text-align: justify;
}

.home-brief-preview {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  padding-top: 16px;
  border-top: 1px solid var(--border-color);
}

.brief-preview-row {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 12px;
  align-items: center;
  padding: 10px 12px;
  border: 1px solid var(--border-color);
  border-radius: 4px;
  background: var(--panel-soft);
}

.brief-preview-row span {
  color: var(--accent-color);
  font-family: Georgia, serif;
  font-size: 0.9rem;
  font-weight: 800;
}

.brief-preview-row strong {
  overflow: hidden;
  color: var(--text-main);
  font-size: 0.94rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.home-material-strip {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-top: 24px;
}

.material-entry {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 6px 12px;
  min-height: 112px;
  padding: 18px;
  border: 1px solid var(--border-color);
  border-radius: var(--radius);
  background: var(--panel-bg);
  box-shadow: var(--shadow);
  color: var(--text-main);
}

.material-entry:hover {
  transform: translateY(-2px);
  border-color: rgba(var(--primary-color-rgb), 0.52);
}

.entry-index {
  grid-row: span 2;
  color: var(--accent-color);
  font-family: Georgia, serif;
  font-size: 1.28rem;
  font-weight: 800;
}

.entry-title {
  align-self: end;
  color: var(--text-main);
  font-size: 1rem;
  font-weight: 800;
}

.entry-meta {
  overflow: hidden;
  color: var(--text-muted);
  font-size: 0.82rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.highlights-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.highlight-item {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 20px;
  border: 1px solid var(--border-color);
  border-radius: var(--radius);
  background: var(--panel-soft);
  transition: transform 0.28s ease, box-shadow 0.28s ease;
}

.highlight-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.06);
}

.highlight-header {
  display: flex;
  align-items: center;
  gap: 12px;
}

.highlight-icon {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius);
  background: rgba(var(--primary-color-rgb), 0.1);
  color: var(--primary-color);
}

.highlight-icon svg {
  width: 24px;
  height: 24px;
}

.highlight-title {
  margin: 0;
  font-size: 1.15rem;
  font-weight: 600;
  color: var(--text-main);
}

.highlight-desc {
  margin: 0;
  font-size: 0.95rem;
  line-height: 1.6;
  color: var(--text-muted);
  text-align: justify;
}

.highlight-emoji {
  font-size: 1.35rem;
  line-height: 1;
}

.highlight-text h4 {
  margin-bottom: 6px;
  color: var(--text-main);
  font-size: 1rem;
  line-height: 1.35;
}

.highlight-text p {
  color: var(--text-muted);
  font-size: 0.9rem;
  line-height: 1.65;
}

.members-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 14px;
}

.member-item {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px;
  border: 1px solid var(--border-color);
  border-radius: var(--radius);
  background: var(--panel-soft);
}

.member-avatar {
  width: 52px;
  height: 52px;
  flex-shrink: 0;
  border-radius: 50%;
  object-fit: cover;
  background: rgba(var(--primary-color-rgb), 0.12);
  color: var(--primary-color);
  font-weight: 800;
}

.member-info {
  min-width: 0;
}

.member-info h4 {
  display: flex;
  align-items: baseline;
  gap: 8px;
  overflow: hidden;
  color: var(--text-main);
  font-size: 1rem;
  line-height: 1.35;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.member-info .role {
  flex-shrink: 0;
  color: var(--accent-color);
  font-size: 0.78rem;
  font-weight: 800;
}

.member-info .title {
  margin-top: 4px;
  overflow: hidden;
  color: var(--text-muted);
  font-size: 0.84rem;
  line-height: 1.45;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* 文章 */
.article-layout {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

.sidebar-toc,
.sidebar-tabs {
  position: sticky;
  top: 96px;
  max-height: calc(100vh - 132px);
  overflow: auto;
}

.toc-title {
  margin-bottom: 14px;
  color: var(--text-muted);
  font-size: 0.92rem;
  font-weight: 800;
}

.toc-links,
.tab-list {
  list-style: none;
}

.toc-links {
  border-left: 2px solid var(--border-color);
}

.toc-links a {
  display: block;
  margin-left: -2px;
  padding: 8px 12px 8px 16px;
  overflow: hidden;
  border-left: 2px solid transparent;
  color: var(--text-muted);
  font-size: 0.9rem;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.toc-links a:hover,
.toc-links a.active {
  border-left-color: var(--primary-color);
  color: var(--primary-color);
  font-weight: 700;
}

.academic-header {
  margin-bottom: 24px;
  padding-bottom: 14px;
  border-bottom: 2px solid var(--primary-color);
  color: var(--text-main);
  font-size: 1.8rem;
  line-height: 1.35;
}

.article-body {
  color: var(--text-main);
  font-size: 1.02rem;
  line-height: 1.9;
}

.article-body h2 {
  margin: 2rem 0 1rem;
  padding-bottom: 8px;
  border-bottom: 1px solid var(--border-color);
  color: var(--text-main);
  font-size: 1.45rem;
}

.article-body h3 {
  margin: 1.6rem 0 0.8rem;
  color: var(--text-main);
  font-size: 1.18rem;
}

.article-body p,
.article-body ul,
.article-body ol {
  margin-bottom: 1.05rem;
}

.article-body ul,
.article-body ol {
  padding-left: 24px;
}

.article-body li {
  margin-bottom: 0.5rem;
}

.article-body strong {
  color: var(--primary-color);
  font-weight: 800;
}

.article-body img {
  max-width: 100%;
  height: auto;
  border: 1px solid var(--border-color);
  border-radius: 4px;
}

/* PDF */
.pdf-container {
  display: flex;
  flex-direction: column;
  height: calc(100vh - 176px);
  min-height: 620px;
  padding: 0;
  overflow: hidden;
}

.pdf-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding: 14px 18px;
  border-bottom: 1px solid var(--border-color);
  background: var(--panel-soft);
  color: var(--text-main);
  font-weight: 800;
}

.pdf-header span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.pdf-iframe {
  flex-grow: 1;
  width: 100%;
  border: none;
  background: #525659;
}

.pdf-fallback {
  min-height: 360px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 40px;
  border: 1px dashed var(--border-color);
  border-radius: var(--radius);
  background: var(--panel-soft);
  text-align: center;
}

/* 支撑材料 */
.supporting-layout {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

.tab-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.tab-btn {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid transparent;
  border-radius: 4px;
  background: transparent;
  color: var(--text-muted);
  font: inherit;
  font-size: 0.92rem;
  font-weight: 700;
  text-align: left;
  cursor: pointer;
  transition: var(--transition);
}

.tab-btn:hover {
  border-color: var(--border-color);
  background: var(--panel-soft);
  color: var(--text-main);
}

.tab-btn.active {
  border-color: rgba(var(--primary-color-rgb), 0.18);
  background: rgba(var(--primary-color-rgb), 0.1);
  color: var(--primary-color);
}

.materials-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}

.material-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 18px 20px;
  border: 1px solid var(--border-color);
  border-radius: var(--radius);
  background: var(--panel-bg);
  box-shadow: var(--shadow);
}

.material-card:hover {
  border-color: rgba(var(--primary-color-rgb), 0.5);
}

.material-meta {
  min-width: 0;
  display: flex;
  align-items: center;
  gap: 14px;
}

.material-type-icon {
  width: 42px;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 4px;
  background: rgba(var(--primary-color-rgb), 0.1);
  color: var(--primary-color);
}

.material-info {
  min-width: 0;
}

.material-info h4 {
  margin-bottom: 4px;
  overflow: hidden;
  color: var(--text-main);
  font-size: 1rem;
  font-weight: 800;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.material-info span {
  color: var(--text-muted);
  font-size: 0.82rem;
}

.material-action {
  flex-shrink: 0;
}

/* 视频页 */
.video-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}

.video-player-container {
  overflow: hidden;
  border: 1px solid var(--border-color);
  border-radius: var(--radius);
  background: #000000;
  box-shadow: var(--shadow);
  aspect-ratio: 16 / 9;
}

.video-player-container video {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.video-details {
  padding: 24px;
  border: 1px solid var(--border-color);
  border-radius: var(--radius);
  background: var(--panel-bg);
  box-shadow: var(--shadow);
}

.video-details h2 {
  margin-bottom: 10px;
  color: var(--text-main);
  font-size: 1.28rem;
}

.video-details p {
  color: var(--text-muted);
  line-height: 1.8;
}

/* 视频播放弹窗 */
.video-modal-overlay {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9999;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, 0.75);
  backdrop-filter: blur(4px);
  padding: 24px;
}

.video-modal-content {
  width: 100%;
  max-width: 960px;
  border-radius: 12px;
  overflow: hidden;
  background: #000;
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.6);
  animation: modalFadeIn 0.25s ease;
}

@keyframes modalFadeIn {
  from { opacity: 0; transform: scale(0.96); }
  to   { opacity: 1; transform: scale(1); }
}

.video-modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 20px;
  background: #111;
}

.video-modal-title {
  color: #eee;
  font-size: 0.95rem;
  font-weight: 700;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.video-modal-close {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  border: none;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  color: #aaa;
  font-size: 1.3rem;
  line-height: 1;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
}

.video-modal-close:hover {
  background: rgba(255, 255, 255, 0.2);
  color: #fff;
}

.video-modal-body {
  aspect-ratio: 16 / 9;
}

.video-modal-body video {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

/* 内置主题的细节差异 */
body[data-theme="college-blue"] .section-title,
body[data-theme="college-blue"] .entry-index {
  color: var(--primary-color);
}

body[data-theme="college-blue"] .hero-section {
  border-bottom: 4px solid var(--accent-color);
}

/* 荣耀学院蓝：深蓝获奖主题，首屏参考学术颁奖页构图 */
body[data-theme="prestige-academy"] {
  background:
    radial-gradient(circle at 78% 16%, rgba(47, 128, 255, 0.28), transparent 28%),
    linear-gradient(180deg, #071127 0, #071127 720px, #0a1430 100%);
}

body[data-theme="prestige-academy"] a {
  color: #8ec7ff;
}

body[data-theme="prestige-academy"] main.container {
  max-width: 1280px;
  padding-top: 112px;
  padding-bottom: 72px;
}

body[data-theme="prestige-academy"] .site-header {
  position: absolute;
  top: 18px;
  left: 50%;
  width: min(calc(100% - 32px), 1240px);
  display: grid;
  grid-template-columns: minmax(220px, auto) minmax(0, 1fr);
  align-items: center;
  overflow: hidden;
  transform: translateX(-50%);
  border: 1px solid rgba(255, 255, 255, 0.34);
  border-radius: 8px;
  background: rgba(9, 27, 74, 0.68);
  box-shadow: 0 18px 48px rgba(0, 10, 42, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.24);
  -webkit-backdrop-filter: blur(18px) saturate(150%);
  backdrop-filter: blur(18px) saturate(150%);
}

body[data-theme="prestige-academy"] .site-masthead {
  min-height: 70px;
  overflow: visible;
  background: transparent;
}

body[data-theme="prestige-academy"] .masthead-inner {
  width: auto;
  max-width: none;
  padding: 10px 18px 10px 24px;
  display: flex;
}

body[data-theme="prestige-academy"] .masthead-copy {
  display: none;
}

body[data-theme="prestige-academy"] .masthead-logo {
  min-width: 0;
  color: #ffffff;
}

body[data-theme="prestige-academy"] .masthead-logo svg,
body[data-theme="prestige-academy"] .masthead-logo .logo-svg {
  color: #ffffff !important;
}

body[data-theme="prestige-academy"] .masthead-logo img {
  max-width: 300px;
  height: 50px;
  object-fit: contain;
  filter: drop-shadow(0 8px 18px rgba(0, 0, 0, 0.26));
}

body[data-theme="prestige-academy"] .nav-bar {
  min-height: 70px;
  border: none;
  background: transparent;
}

body[data-theme="prestige-academy"] .nav-container {
  max-width: none;
  padding: 0 18px 0 0;
  justify-content: flex-end;
}

body[data-theme="prestige-academy"] .nav-links {
  justify-content: flex-end;
}

body[data-theme="prestige-academy"] .nav-links a {
  min-height: 70px;
  padding: 8px 11px;
  border-radius: 4px;
  color: rgba(255, 255, 255, 0.8);
  font-size: 0.8rem;
  font-weight: 700;
}

body[data-theme="prestige-academy"] .nav-links a:hover,
body[data-theme="prestige-academy"] .nav-links a.active {
  color: #ffffff;
  background: var(--nav-active-bg);
}

body[data-theme="prestige-academy"] #view-home.active {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, 42%);
  grid-template-rows: minmax(650px, auto) auto auto auto auto;
  gap: 24px;
  margin-top: -94px;
}

body[data-theme="prestige-academy"] #home-layout-fixed,
body[data-theme="prestige-academy"] .home-primary-grid {
  display: contents;
}

body[data-theme="prestige-academy"] .hero-section {
  grid-column: 1 / -1;
  grid-row: 1;
  min-height: 650px;
  margin: 0;
  padding: 150px 56px 118px;
  align-items: center;
  border: 1px solid rgba(255, 255, 255, 0.34);
  border-radius: 8px;
  background: #07163f;
  box-shadow: 0 24px 70px rgba(0, 8, 32, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.22);
}

body[data-theme="prestige-academy"] .hero-section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    radial-gradient(circle at 46% 46%, rgba(142, 199, 255, 0.52) 0 2px, transparent 3px),
    radial-gradient(circle at 58% 57%, rgba(142, 199, 255, 0.42) 0 2px, transparent 3px),
    linear-gradient(118deg, transparent 0 54%, rgba(90, 198, 255, 0.24) 62%, transparent 72%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.08), transparent 18%),
    repeating-linear-gradient(118deg, transparent 0 76px, rgba(93, 185, 255, 0.11) 77px, transparent 78px);
  opacity: 0.82;
}

body[data-theme="prestige-academy"] .hero-section::after {
  background:
    linear-gradient(90deg, rgba(4, 10, 34, 0.94) 0%, rgba(5, 19, 61, 0.84) 46%, rgba(8, 34, 95, 0.44) 74%, rgba(7, 19, 54, 0.64) 100%),
    linear-gradient(0deg, rgba(3, 8, 27, 0.72), rgba(3, 8, 27, 0.18) 56%, rgba(3, 8, 27, 0.4));
}

body[data-theme="prestige-academy"] .hero-bg {
  opacity: 0.82;
  object-position: center;
}

body[data-theme="prestige-academy"] .hero-content {
  width: min(58%, 720px);
  max-width: 720px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  color: #ffffff;
}

body[data-theme="prestige-academy"] .hero-content h1 {
  order: 1;
  max-width: 720px;
  margin-bottom: 18px;
  overflow-wrap: anywhere;
  color: #ffffff;
  font-size: 3rem;
  font-weight: 900;
  line-height: 1.1;
  text-shadow: 0 12px 28px rgba(0, 0, 0, 0.34);
}

body[data-theme="prestige-academy"] .hero-content p {
  order: 3;
  max-width: 580px;
  margin-top: 20px;
  color: rgba(255, 255, 255, 0.82);
  font-size: 1.02rem;
  line-height: 1.65;
}

body[data-theme="prestige-academy"] .hero-content::after {
  content: "教学成果奖申报展示";
  order: 2;
  min-height: 46px;
  width: min(100%, 360px);
  display: inline-flex;
  align-items: center;
  margin-top: 26px;
  padding: 10px 34px 10px 50px;
  clip-path: polygon(0 0, calc(100% - 24px) 0, 100% 50%, calc(100% - 24px) 100%, 0 100%, 18px 50%);
  background: linear-gradient(90deg, #f8db73 0%, #d8ad43 44%, #b98222 100%);
  color: #18233d;
  font-size: 0.9rem;
  font-weight: 900;
  line-height: 1.2;
  box-shadow: 0 16px 30px rgba(91, 57, 8, 0.32);
}

body[data-theme="prestige-academy"] .hero-actions {
  order: 4;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}

body[data-theme="prestige-academy"] .hero-actions a {
  min-width: 164px;
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 18px;
  border-radius: 5px;
  font-size: 0.9rem;
  font-weight: 900;
  line-height: 1.2;
}

body[data-theme="prestige-academy"] .hero-action-primary {
  border: 1px solid rgba(255, 255, 255, 0.92);
  background: #ffffff;
  color: #101b37;
}

body[data-theme="prestige-academy"] .hero-action-primary:hover {
  color: #071127;
  transform: translateY(-1px);
}

body[data-theme="prestige-academy"] .hero-action-secondary {
  border: 1px solid rgba(255, 255, 255, 0.46);
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
}

body[data-theme="prestige-academy"] .hero-action-secondary:hover {
  border-color: rgba(216, 173, 67, 0.8);
  background: rgba(216, 173, 67, 0.15);
  color: #ffe8a3;
  transform: translateY(-1px);
}

body[data-theme="prestige-academy"] .home-video-card {
  grid-column: 2;
  grid-row: 1;
  z-index: 3;
  align-self: end;
  justify-self: end;
  width: min(100%, 470px);
  min-height: 0;
  margin: 0 42px 56px 0;
  padding: 10px 10px 18px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.34);
  border-radius: 8px;
  background: rgba(14, 31, 79, 0.66);
  box-shadow: 0 22px 52px rgba(0, 5, 24, 0.46), inset 0 1px 0 rgba(255, 255, 255, 0.24);
  color: #ffffff;
  -webkit-backdrop-filter: blur(16px) saturate(150%);
  backdrop-filter: blur(16px) saturate(150%);
}

body[data-theme="prestige-academy"] .home-video-card .section-title {
  margin: 6px 8px 10px;
  color: #ffffff;
  font-size: 1rem;
}

body[data-theme="prestige-academy"] .home-video-card .section-title svg {
  color: var(--accent-color);
}

body[data-theme="prestige-academy"] .home-video-frame {
  margin-bottom: 12px;
  border-color: rgba(255, 255, 255, 0.22);
  border-radius: 8px;
  background: #020817;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
}

body[data-theme="prestige-academy"] .home-video-frame::before,
body[data-theme="prestige-academy"] .home-video-frame::after {
  content: "";
  position: absolute;
  z-index: 2;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  pointer-events: none;
}

body[data-theme="prestige-academy"] .home-video-frame::before {
  width: 62px;
  height: 62px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.72);
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.32);
}

body[data-theme="prestige-academy"] .home-video-frame::after {
  margin-left: 3px;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
  border-left: 18px solid rgba(15, 24, 48, 0.84);
}

body[data-theme="prestige-academy"] .home-video-frame:has(video:not([style*="none"]))::before,
body[data-theme="prestige-academy"] .home-video-frame:has(video:not([style*="none"]))::after {
  opacity: 0.92;
}

body[data-theme="prestige-academy"] .home-video-card h3 {
  margin: 0 8px 6px;
  color: #ffffff;
  font-size: 1rem;
}

body[data-theme="prestige-academy"] .home-video-card p {
  margin: 0 8px;
  max-height: none;
  overflow: hidden;
  color: rgba(226, 235, 255, 0.72);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

body[data-theme="prestige-academy"] .home-brief-card {
  grid-column: 1 / -1;
  grid-row: 2;
  min-height: 0;
  padding: 30px;
}

body[data-theme="prestige-academy"] .home-material-strip {
  grid-column: 1 / -1;
  grid-row: 3;
  margin-top: 0;
}

body[data-theme="prestige-academy"] .home-highlights-card {
  grid-column: 1 / -1;
  grid-row: 4;
}

body[data-theme="prestige-academy"] .home-members-card {
  grid-column: 1 / -1;
  grid-row: 5;
}

body[data-theme="prestige-academy"] .card,
body[data-theme="prestige-academy"] .material-entry,
body[data-theme="prestige-academy"] .video-details,
body[data-theme="prestige-academy"] .material-card {
  border-color: rgba(255, 255, 255, 0.18);
  background: rgba(9, 26, 67, 0.72);
  box-shadow: 0 18px 46px rgba(0, 6, 28, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.14);
  -webkit-backdrop-filter: blur(14px) saturate(140%);
  backdrop-filter: blur(14px) saturate(140%);
}

body[data-theme="prestige-academy"] .material-entry {
  min-height: 118px;
  padding: 18px 20px;
}

body[data-theme="prestige-academy"] .section-title,
body[data-theme="prestige-academy"] .entry-title,
body[data-theme="prestige-academy"] .home-video-card h3,
body[data-theme="prestige-academy"] .video-details h2,
body[data-theme="prestige-academy"] .material-info h4,
body[data-theme="prestige-academy"] .academic-header,
body[data-theme="prestige-academy"] .article-body,
body[data-theme="prestige-academy"] .article-body h2,
body[data-theme="prestige-academy"] .article-body h3 {
  color: #f7fbff;
}

body[data-theme="prestige-academy"] .section-title svg,
body[data-theme="prestige-academy"] .entry-index,
body[data-theme="prestige-academy"] .brief-preview-row span,
body[data-theme="prestige-academy"] .article-body strong {
  color: var(--accent-color);
}

body[data-theme="prestige-academy"] .home-intro-text,
body[data-theme="prestige-academy"] .entry-meta,
body[data-theme="prestige-academy"] .video-details p,
body[data-theme="prestige-academy"] .material-info span,
body[data-theme="prestige-academy"] .toc-title,
body[data-theme="prestige-academy"] .toc-links a,
body[data-theme="prestige-academy"] .tab-btn {
  color: rgba(225, 235, 255, 0.72);
}

body[data-theme="prestige-academy"] .brief-preview-row,
body[data-theme="prestige-academy"] .highlight-item,
body[data-theme="prestige-academy"] .member-item {
  border-color: rgba(255, 255, 255, 0.13);
  background: rgba(255, 255, 255, 0.07);
}

body[data-theme="prestige-academy"] .highlight-icon,
body[data-theme="prestige-academy"] .material-type-icon {
  background: rgba(216, 173, 67, 0.14);
  color: var(--accent-color);
}

body[data-theme="prestige-academy"] .material-entry:hover,
body[data-theme="prestige-academy"] .material-card:hover {
  border-color: rgba(142, 199, 255, 0.58);
  transform: translateY(-2px);
}

body[data-theme="prestige-academy"] .btn-outline {
  border-color: rgba(255, 255, 255, 0.24);
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
}

body[data-theme="prestige-academy"] .btn-outline:hover,
body[data-theme="prestige-academy"] .tab-btn.active,
body[data-theme="prestige-academy"] .toc-links a.active {
  border-color: rgba(216, 173, 67, 0.52);
  background: rgba(216, 173, 67, 0.14);
  color: #ffe8a3;
}

body[data-theme="prestige-academy"] .pdf-header {
  border-bottom-color: rgba(255, 255, 255, 0.16);
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
}

body[data-theme="prestige-academy"] footer {
  border-top-color: rgba(255, 255, 255, 0.14);
  background: rgba(4, 12, 32, 0.9);
  color: rgba(225, 235, 255, 0.64);
}

/* ============================================================
   液态玻璃 · 浅色白瓷磨砂主题
   浅色极光底 + backdrop-filter 磨砂玻璃 + logo 品牌胶囊 + 微动效
   特点：保持深色文字保证学术内容可读性，仅用半透明+模糊营造高级毛玻璃质感
   ============================================================ */
body[data-theme="liquid-glass"] {
  --primary-color: #1e63d6;
  --primary-color-rgb: 30, 99, 214;
  --secondary-color: #0b3b8c;
  --accent-color: #6366f1;
  --bg-color: #eaf1fd;
  --panel-bg: rgba(255, 255, 255, 0.62);
  --panel-soft: rgba(255, 255, 255, 0.46);
  --text-main: #15233b;
  --text-muted: #5a6b86;
  --border-color: rgba(255, 255, 255, 0.7);
  --header-text: #15233b;
  --nav-bg: transparent;
  --nav-active-bg: rgba(30, 99, 214, 0.12);
  --radius: 16px;
  --shadow: 0 18px 40px rgba(30, 70, 160, 0.12);
  /* 浅色极光底：青/靛/蓝三色光晕叠加，固定不随滚动 */
  background:
    radial-gradient(42% 38% at 12% 6%, rgba(56, 189, 248, 0.30), transparent 70%),
    radial-gradient(46% 40% at 88% 4%, rgba(99, 102, 241, 0.26), transparent 72%),
    radial-gradient(54% 52% at 72% 92%, rgba(30, 99, 214, 0.18), transparent 70%),
    linear-gradient(180deg, #eaf1fd 0%, #e7eefb 52%, #eef3fc 100%);
  background-attachment: fixed;
}

/* —— 顶栏：磨砂吸顶，去除校园照背景 —— */
body[data-theme="liquid-glass"] .site-header {
  position: sticky;
  top: 0;
  background: rgba(255, 255, 255, 0.55);
  border-bottom: 1px solid rgba(255, 255, 255, 0.7);
  box-shadow: 0 10px 30px rgba(30, 70, 160, 0.10), inset 0 1px 0 rgba(255, 255, 255, 0.6);
  -webkit-backdrop-filter: blur(18px) saturate(160%);
  backdrop-filter: blur(18px) saturate(160%);
}

body[data-theme="liquid-glass"] .site-masthead {
  min-height: 76px;
  background: none;
  /* 移除单侧白渐变 + 校园照，根除“看不清/很乱” */
}

body[data-theme="liquid-glass"] .masthead-inner {
  padding: 14px 24px;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 18px;
}

/* logo 品牌渐变胶囊：白色 logo 压在蓝色玻璃胶囊上，清晰凸显 */
body[data-theme="liquid-glass"] .masthead-logo {
  min-width: 0;
  padding: 9px 20px;
  border-radius: 14px;
  background: linear-gradient(135deg, #1e63d6 0%, #3b82f6 52%, #38bdf8 100%);
  box-shadow: 0 12px 26px rgba(30, 99, 214, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.55);
}

body[data-theme="liquid-glass"] .masthead-logo img {
  max-width: 184px;
  height: 40px;
  object-fit: contain;
}

body[data-theme="liquid-glass"] .masthead-logo svg,
body[data-theme="liquid-glass"] .masthead-logo .logo-svg {
  color: #ffffff !important;
}

body[data-theme="liquid-glass"] #site-logo-text {
  color: #ffffff;
}

/* 站名文案：左对齐、去掉刺眼红色副标题 */
body[data-theme="liquid-glass"] .masthead-copy {
  text-align: left;
}

body[data-theme="liquid-glass"] .masthead-copy h1 {
  color: var(--secondary-color);
  font-size: 1.5rem;
  font-weight: 800;
}

body[data-theme="liquid-glass"] .masthead-copy p {
  margin-top: 6px;
  color: var(--text-muted);
  font-size: 0.92rem;
  font-weight: 600;
}

/* —— 导航：磨砂玻璃 + 深色文字 + 圆角胶囊高亮 —— */
body[data-theme="liquid-glass"] .nav-bar {
  border-top: 1px solid rgba(255, 255, 255, 0.6);
  border-bottom: 1px solid rgba(30, 70, 160, 0.08);
  background: rgba(255, 255, 255, 0.42);
  -webkit-backdrop-filter: blur(16px) saturate(150%);
  backdrop-filter: blur(16px) saturate(150%);
}

body[data-theme="liquid-glass"] .nav-links {
  gap: 4px;
}

body[data-theme="liquid-glass"] .nav-links a {
  min-height: 40px;
  margin: 0 1px;
  padding: 8px 18px;
  border-radius: 11px;
  color: #3a4a66;
  transition: color 0.2s ease, background 0.2s ease;
}

body[data-theme="liquid-glass"] .nav-links a:hover,
body[data-theme="liquid-glass"] .nav-links a.active {
  color: var(--primary-color);
  background: var(--nav-active-bg);
}

body[data-theme="liquid-glass"] .menu-toggle {
  color: var(--primary-color);
}

/* —— 玻璃卡片：所有主要容器统一白瓷磨砂质感 —— */
body[data-theme="liquid-glass"] .card,
body[data-theme="liquid-glass"] .material-entry,
body[data-theme="liquid-glass"] .material-card,
body[data-theme="liquid-glass"] .video-details,
body[data-theme="liquid-glass"] .video-player-container,
body[data-theme="liquid-glass"] .pdf-container {
  border: 1px solid rgba(255, 255, 255, 0.72);
  background: rgba(255, 255, 255, 0.6);
  box-shadow: 0 18px 40px rgba(30, 70, 160, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.6);
  -webkit-backdrop-filter: blur(16px) saturate(150%);
  backdrop-filter: blur(16px) saturate(150%);
  transition: transform 0.28s cubic-bezier(0.2, 0.7, 0.2, 1), box-shadow 0.28s ease, border-color 0.28s ease;
}

/* 卡片内的次级表面：预览行 / 亮点 / 成员 */
body[data-theme="liquid-glass"] .brief-preview-row,
body[data-theme="liquid-glass"] .highlight-item,
body[data-theme="liquid-glass"] .member-item {
  border: 1px solid rgba(255, 255, 255, 0.7);
  background: rgba(255, 255, 255, 0.5);
}

body[data-theme="liquid-glass"] .highlight-icon,
body[data-theme="liquid-glass"] .material-type-icon,
body[data-theme="liquid-glass"] .member-avatar {
  background: rgba(30, 99, 214, 0.12);
  color: var(--primary-color);
}

/* 入口卡片：序号竖向居中、内容整体垂直居中，消除卡片底部大片留白 */
body[data-theme="liquid-glass"] .material-entry {
  align-content: center;
  min-height: 104px;
  gap: 4px 14px;
}

body[data-theme="liquid-glass"] .entry-index {
  align-self: center;
  font-size: 1.5rem;
  line-height: 1;
}

/* 微动效：卡片悬浮上浮 + 光晕加深 */
body[data-theme="liquid-glass"] .material-entry:hover,
body[data-theme="liquid-glass"] .material-card:hover {
  transform: translateY(-4px);
  border-color: rgba(30, 99, 214, 0.5);
  box-shadow: 0 26px 54px rgba(30, 70, 160, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.7);
}

/* —— 首页 Hero：保留校园大图，圆角加大 + 玻璃边 + 启用快捷按钮 —— */
body[data-theme="liquid-glass"] .hero-section {
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 22px;
  box-shadow: 0 24px 60px rgba(20, 50, 120, 0.22);
}

body[data-theme="liquid-glass"] .hero-section::after {
  background:
    linear-gradient(90deg, rgba(10, 28, 60, 0.78), rgba(12, 34, 80, 0.42) 55%, rgba(14, 40, 95, 0.18)),
    linear-gradient(0deg, rgba(30, 99, 214, 0.30), transparent 70%);
}

body[data-theme="liquid-glass"] .hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 22px;
}

body[data-theme="liquid-glass"] .hero-actions a {
  min-height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 22px;
  border-radius: 12px;
  font-size: 0.92rem;
  font-weight: 800;
  transition: transform 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

body[data-theme="liquid-glass"] .hero-action-primary {
  background: #ffffff;
  color: var(--primary-color);
  box-shadow: 0 12px 26px rgba(0, 10, 40, 0.28);
}

body[data-theme="liquid-glass"] .hero-action-primary:hover {
  transform: translateY(-2px);
}

body[data-theme="liquid-glass"] .hero-action-secondary {
  border: 1px solid rgba(255, 255, 255, 0.55);
  background: rgba(255, 255, 255, 0.14);
  color: #ffffff;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}

body[data-theme="liquid-glass"] .hero-action-secondary:hover {
  background: rgba(255, 255, 255, 0.24);
  transform: translateY(-2px);
}

/* —— 其余玻璃化细节：PDF 头 / 按钮 / 选项卡 / 目录 / 页脚 —— */
body[data-theme="liquid-glass"] .pdf-header {
  border-bottom: 1px solid rgba(255, 255, 255, 0.6);
  background: rgba(255, 255, 255, 0.5);
}

body[data-theme="liquid-glass"] .btn-outline {
  border: 1px solid rgba(30, 99, 214, 0.3);
  background: rgba(255, 255, 255, 0.55);
  color: var(--primary-color);
}

body[data-theme="liquid-glass"] .btn-outline:hover {
  border-color: var(--primary-color);
  background: var(--primary-color);
  color: #ffffff;
}

body[data-theme="liquid-glass"] .tab-btn:hover {
  border-color: rgba(255, 255, 255, 0.7);
  background: rgba(255, 255, 255, 0.5);
  color: var(--text-main);
}

body[data-theme="liquid-glass"] .tab-btn.active {
  border-color: rgba(30, 99, 214, 0.28);
  background: rgba(30, 99, 214, 0.1);
  color: var(--primary-color);
}

body[data-theme="liquid-glass"] .toc-links a.active {
  border-left-color: var(--primary-color);
  color: var(--primary-color);
}

body[data-theme="liquid-glass"] footer {
  border-top: 1px solid rgba(255, 255, 255, 0.6);
  background: rgba(255, 255, 255, 0.5);
  color: var(--text-muted);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}

/* 页脚 */
footer {
  margin-top: 56px;
  padding: 24px 0;
  border-top: 1px solid var(--border-color);
  background: var(--panel-bg);
  color: var(--text-muted);
  text-align: center;
  font-size: 0.88rem;
}

/* 本地后台入口 */
.admin-badge {
  position: fixed;
  right: 24px;
  bottom: 24px;
  z-index: 9999;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border-radius: 4px;
  background: var(--secondary-color);
  color: #ffffff;
  box-shadow: var(--shadow);
  font-size: 0.84rem;
  font-weight: 800;
}

.admin-badge:hover {
  background: var(--primary-color);
  color: #ffffff;
}

/* 响应式 */
@media (max-width: 1100px) {
  .masthead-inner {
    grid-template-columns: minmax(170px, 0.7fr) minmax(0, 1.4fr);
  }

  .masthead-copy h1 {
    font-size: 1.74rem;
  }

  .nav-container {
    gap: 12px;
  }

  .logo {
    min-width: 170px;
    font-size: 0.98rem;
  }

  .nav-links a {
    padding: 8px 8px;
    font-size: 0.86rem;
  }

  .home-primary-grid,
  .article-layout,
  .supporting-layout {
    grid-template-columns: 1fr;
  }

  .sidebar-toc,
  .sidebar-tabs {
    position: static;
    max-height: none;
  }

  .home-material-strip {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {

  .container,
  .nav-container {
    padding: 0 16px;
  }

  main {
    padding-top: 20px;
  }

  .site-masthead {
    min-height: 150px;
  }

  .masthead-inner {
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 20px 16px;
  }

  .masthead-logo {
    justify-content: center;
    max-width: none;
  }

  .masthead-copy h1 {
    font-size: 1.45rem;
  }

  .masthead-copy p {
    font-size: 0.88rem;
  }

  .nav-bar {
    position: relative;
  }

  .nav-container {
    justify-content: flex-end;
    min-height: 52px;
  }

  .menu-toggle {
    display: block;
  }

  .logo {
    min-width: 0;
    max-width: calc(100% - 52px);
  }

  .logo #site-logo-text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .nav-links {
    position: absolute;
    top: 52px;
    left: 0;
    right: 0;
    display: none;
    flex-direction: column;
    align-items: stretch;
    padding: 12px 16px 16px;
    background: var(--nav-bg);
    border-bottom: 1px solid rgba(255, 255, 255, 0.14);
    box-shadow: 0 12px 24px rgba(16, 42, 67, 0.18);
  }

  .nav-links.active {
    display: flex;
  }

  .nav-links a {
    justify-content: flex-start;
    min-height: 40px;
    padding: 8px 12px;
  }

  .hero-section {
    min-height: 220px;
    padding: 28px 22px;
  }

  .hero-content h1 {
    font-size: 1.45rem;
  }

  .hero-content p {
    font-size: 0.94rem;
  }

  .card {
    padding: 18px;
  }

  .home-material-strip {
    grid-template-columns: 1fr;
  }

  .material-card {
    align-items: stretch;
    flex-direction: column;
  }

  .material-action {
    width: 100%;
  }

  .material-action .btn-outline {
    width: 100%;
  }

  .pdf-container {
    height: 560px;
    min-height: 560px;
  }
}

@media (max-width: 480px) {
  .section-heading-line {
    align-items: flex-start;
    flex-direction: column;
    gap: 4px;
  }

  .pdf-header {
    align-items: stretch;
    flex-direction: column;
  }
}

@media (max-width: 1100px) {
  body[data-theme="prestige-academy"] .site-header {
    grid-template-columns: minmax(180px, auto) minmax(0, 1fr);
  }

  body[data-theme="prestige-academy"] .masthead-logo img {
    max-width: 230px;
    height: 44px;
  }

  body[data-theme="prestige-academy"] .nav-links a {
    padding: 8px 7px;
    font-size: 0.72rem;
  }

  body[data-theme="prestige-academy"] .hero-content h1 {
    font-size: 2.58rem;
  }

  body[data-theme="prestige-academy"] .home-video-card {
    width: min(100%, 420px);
    margin-right: 30px;
  }
}

@media (max-width: 900px) {
  body[data-theme="prestige-academy"] main.container {
    padding-top: 104px;
  }

  body[data-theme="prestige-academy"] #view-home.active {
    display: block;
    margin-top: -88px;
  }

  body[data-theme="prestige-academy"] #home-layout-fixed,
  body[data-theme="prestige-academy"] .home-primary-grid {
    display: block;
  }

  body[data-theme="prestige-academy"] .hero-section {
    min-height: 620px;
    padding: 132px 32px 270px;
  }

  body[data-theme="prestige-academy"] .hero-content {
    width: 100%;
    max-width: 620px;
  }

  body[data-theme="prestige-academy"] .home-video-card {
    position: relative;
    z-index: 4;
    width: min(520px, calc(100% - 40px));
    margin: -238px auto 24px;
  }

  body[data-theme="prestige-academy"] .home-brief-card,
  body[data-theme="prestige-academy"] .home-highlights-card,
  body[data-theme="prestige-academy"] .home-members-card {
    margin-top: 24px;
  }
}

@media (max-width: 768px) {
  body[data-theme="prestige-academy"] .site-header {
    top: 12px;
    width: min(calc(100% - 24px), 1240px);
    grid-template-columns: minmax(0, 1fr) 56px;
    min-height: 60px;
  }

  body[data-theme="prestige-academy"] .site-masthead {
    min-height: 60px;
  }

  body[data-theme="prestige-academy"] .masthead-inner {
    padding: 8px 10px 8px 14px;
  }

  body[data-theme="prestige-academy"] .masthead-logo {
    justify-content: flex-start;
  }

  body[data-theme="prestige-academy"] .masthead-logo img {
    max-width: calc(100vw - 122px);
    height: 38px;
  }

  body[data-theme="prestige-academy"] .nav-bar,
  body[data-theme="prestige-academy"] .nav-container {
    min-height: 60px;
  }

  body[data-theme="prestige-academy"] .nav-container {
    justify-content: flex-end;
    padding: 0 12px 0 0;
  }

  body[data-theme="prestige-academy"] .menu-toggle {
    display: block;
    color: #ffffff;
  }

  body[data-theme="prestige-academy"] .nav-links {
    position: absolute;
    top: 60px;
    left: 0;
    right: 0;
    display: none;
    flex-direction: column;
    align-items: stretch;
    padding: 8px;
    border-top: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(8, 22, 58, 0.96);
    box-shadow: 0 18px 32px rgba(0, 7, 28, 0.32);
  }

  body[data-theme="prestige-academy"] .nav-links.active {
    display: flex;
  }

  body[data-theme="prestige-academy"] .nav-links a {
    justify-content: flex-start;
    min-height: 40px;
    padding: 8px 12px;
    font-size: 0.86rem;
  }

  body[data-theme="prestige-academy"] main.container {
    padding: 92px 16px 48px;
  }

  body[data-theme="prestige-academy"] #view-home.active {
    margin-top: -76px;
  }

  body[data-theme="prestige-academy"] .hero-section {
    min-height: 650px;
    padding: 108px 20px 276px;
  }

  body[data-theme="prestige-academy"] .hero-content h1 {
    font-size: 2rem;
    line-height: 1.16;
  }

  body[data-theme="prestige-academy"] .hero-content p {
    font-size: 0.94rem;
  }

  body[data-theme="prestige-academy"] .hero-content::after {
    width: min(100%, 320px);
    padding-left: 42px;
    padding-right: 26px;
  }

  body[data-theme="prestige-academy"] .hero-actions {
    width: 100%;
  }

  body[data-theme="prestige-academy"] .hero-actions a {
    min-width: min(100%, 180px);
  }

  body[data-theme="prestige-academy"] .home-video-card {
    width: calc(100% - 24px);
    margin: -240px 12px 22px;
  }

  body[data-theme="prestige-academy"] .home-brief-card {
    padding: 20px;
  }
}

@media (max-width: 480px) {
  body[data-theme="prestige-academy"] .hero-section {
    min-height: 680px;
    padding: 100px 18px 282px;
  }

  body[data-theme="prestige-academy"] .hero-content h1 {
    font-size: 1.68rem;
  }

  body[data-theme="prestige-academy"] .hero-actions {
    flex-direction: column;
  }

  body[data-theme="prestige-academy"] .hero-actions a {
    width: 100%;
  }

  body[data-theme="prestige-academy"] .home-video-card {
    margin-top: -246px;
  }
}

/* —— 液态玻璃 · 响应式 —— */
@media (max-width: 768px) {
  body[data-theme="liquid-glass"] .masthead-inner {
    grid-template-columns: 1fr;
    gap: 12px;
    padding: 12px 16px;
  }

  body[data-theme="liquid-glass"] .masthead-logo {
    justify-self: start;
  }

  body[data-theme="liquid-glass"] .masthead-copy {
    text-align: center;
  }

  body[data-theme="liquid-glass"] .masthead-copy h1 {
    font-size: 1.3rem;
  }

  /* 移动端折叠菜单：给透明导航补足磨砂底，保证可读 */
  body[data-theme="liquid-glass"] .nav-links {
    padding: 10px 12px 14px;
    background: rgba(255, 255, 255, 0.92);
    border-bottom: 1px solid rgba(255, 255, 255, 0.6);
    box-shadow: 0 16px 30px rgba(30, 70, 160, 0.16);
    -webkit-backdrop-filter: blur(18px) saturate(160%);
    backdrop-filter: blur(18px) saturate(160%);
  }

  body[data-theme="liquid-glass"] .nav-links a {
    margin: 2px 0;
  }
}

/* ==========================================================
   特色完成人手动滚动与微提示动效样式
   ========================================================== */
.home-members-scroll-inner-manual::-webkit-scrollbar {
  width: 5px;
}

.home-members-scroll-inner-manual::-webkit-scrollbar-track {
  background: transparent;
}

.home-members-scroll-inner-manual::-webkit-scrollbar-thumb {
  background: rgba(var(--primary-color-rgb), 0.18);
  border-radius: 10px;
}

.home-members-scroll-inner-manual::-webkit-scrollbar-thumb:hover {
  background: rgba(var(--primary-color-rgb), 0.38);
}

.scroll-more-indicator {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 62px;
  background: linear-gradient(to top, var(--panel-bg) 0%, var(--panel-bg) 48%, transparent 100%);
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 6px;
  color: var(--text-muted);
  font-size: 0.76rem;
  font-weight: 700;
  pointer-events: none;
  /* 穿透 */
  opacity: 1;
  transition: opacity 0.3s ease;
  z-index: 10;
  padding-bottom: 6px;
}

body[data-theme="prestige-academy"] .scroll-more-indicator {
  background: linear-gradient(to top, rgba(8, 23, 58, 0.98) 0%, rgba(8, 23, 58, 0.98) 48%, transparent 100%);
  color: rgba(225, 235, 255, 0.6);
}

.scroll-more-indicator.hidden {
  opacity: 0;
}

.scroll-more-indicator .bounce-arrow {
  animation: indicatorBounce 1.5s infinite;
}

@keyframes indicatorBounce {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(5px);
  }
}

/* ==========================================================
   移动端访客端显示优化专区 (768px & 480px)
   ========================================================== */

/* 1100px 以下适配：主要是支撑材料的标签页 */
@media (max-width: 1100px) {
  .tab-list {
    flex-direction: row !important;
    overflow-x: auto !important;
    flex-wrap: nowrap !important;
    padding: 8px 4px 12px !important;
    gap: 10px !important;
    scrollbar-width: none !important; /* Firefox */
    -webkit-overflow-scrolling: touch !important;
  }
  .tab-list::-webkit-scrollbar {
    display: none !important; /* Safari/Chrome */
  }
  .tab-list li {
    flex-shrink: 0 !important;
  }
  .tab-btn {
    width: auto !important;
    white-space: nowrap !important;
    padding: 8px 16px !important;
    text-align: center !important;
    font-size: 0.88rem !important;
    border-radius: 6px !important;
  }
}

/* 768px 以下适配 */
@media (max-width: 768px) {
  /* 联合完成单位 Logo 栏优化：单行居中且支持横向微滑 */
  .cooperating-units-bar {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    gap: 10px !important;
    padding: 10px 16px 14px !important;
    margin-bottom: 4px !important;
    width: 100% !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }
  .cooperating-units-bar::-webkit-scrollbar {
    display: none !important;
  }
  .cooperating-unit-item {
    flex-shrink: 0 !important;
    height: 38px !important;
    padding: 4px 12px !important;
    border-radius: 6px !important;
  }
  .cooperating-unit-item img {
    height: 18px !important;
    max-width: 95px !important;
  }
  .cooperating-unit-item.text-fallback span {
    font-size: 0.78rem !important;
  }

  /* 顶部大标题与内边距 */
  .header-main-content {
    padding: 20px 16px 18px !important;
  }
  .masthead-title-wrap h1 {
    font-size: 1.35rem !important;
    margin-bottom: 6px !important;
    line-height: 1.4 !important;
    letter-spacing: 0.01em !important;
  }
  .masthead-title-wrap p {
    font-size: 0.82rem !important;
    letter-spacing: 0.04em !important;
  }

  /* 成果海报区域高度微调与内容优化 */
  .home-poster-zone {
    height: 220px !important;
  }
  .poster-copy {
    padding: 8px 14px !important;
  }
  .poster-copy h1 {
    font-size: 0.95rem !important;
    margin-bottom: 2px !important;
  }
  .poster-copy p {
    font-size: 0.78rem !important;
  }

  /* 成果视频卡片：16:9自适应及无黑边 */
  .home-video-zone {
    height: auto !important;
    min-height: 0 !important;
    padding: 20px !important;
  }
  .home-video-zone .home-video-frame {
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 9 !important;
    flex-grow: 0 !important;
    margin-bottom: 0 !important;
  }
  .home-video-zone .home-video-frame video {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important; /* 保持包含比例并自适应 16:9，确保视频不被截切 */
  }

  /* 成果与成效网格双列布局与高度解锁 */
  .home-achievements-zone {
    height: auto !important; /* 解除 PC 端的 460px 高度限制，使下方滚动卡片完美包裹，不发生溢出截断 */
  }
  .achievement-stats-container {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px 16px !important;
    padding: 12px 0 16px !important;
  }
  /* 奇数个指标时，使最后一个指标在底行水平居中 */
  .achievement-stat-item:last-child:nth-child(odd) {
    grid-column: 1 / span 2 !important;
    justify-self: center !important;
  }
  .achievement-stat-item {
    padding: 8px !important;
  }
  .achievement-stat-item .stat-number {
    font-size: 1.8rem !important;
    text-shadow: 0 1px 3px rgba(229, 57, 53, 0.1) !important;
  }
  .achievement-stat-item .stat-label {
    font-size: 0.82rem !important;
    margin-top: 4px !important;
  }

  /* 隐藏在手机端作用极低的简介长文目录 */
  .sidebar-toc {
    display: none !important;
  }

  /* 强制亮点在手机端单列排布，消除文字纵向堆叠变形 */
  .highlights-grid {
    grid-template-columns: 1fr !important;
  }

  /* 解锁成员简介板块高度，消除局部滚动和多余的底部遮罩 */
  .home-draft-layout>aside.home-members-zone {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }
  .home-members-scroll-wrapper {
    overflow: visible !important;
    height: auto !important;
  }
  .home-members-scroll-inner-manual {
    overflow-y: visible !important;
    height: auto !important;
    padding-right: 0 !important;
  }
  .scroll-more-indicator {
    display: none !important;
  }

  /* 页脚友情链接移动端优化：隐藏竖线，链接改为胶囊标签并支持换行展示 */
  .footer-links {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 8px 12px !important;
    padding: 0 16px !important;
    margin-bottom: 16px !important;
  }
  .footer-links span {
    display: none !important; /* 隐藏原有的 "|" 分隔线 */
  }
  .footer-links a {
    white-space: nowrap !important; /* 强制链接不折行 */
    font-size: 0.8rem !important;
    background: var(--panel-soft) !important;
    padding: 6px 12px !important;
    border-radius: 20px !important;
    border: 1px solid var(--border-color) !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02) !important;
    transition: all 0.2s ease !important;
    font-weight: 500 !important;
    color: var(--primary-color) !important;
  }
  .footer-links a:hover {
    background: var(--primary-color) !important;
    color: #ffffff !important;
    border-color: var(--primary-color) !important;
  }

  /* 解决支撑材料卡片在各主题下横向撑爆、按钮截断的问题 */
  .materials-grid .material-card {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 14px !important;
    padding: 16px !important;
  }
  .materials-grid .material-meta {
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
  }
  .materials-grid .material-info {
    flex-grow: 1 !important;
  }
  .materials-grid .material-info h4 {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    word-break: break-all !important;
    font-size: 0.95rem !important;
    line-height: 1.4 !important;
    margin-bottom: 6px !important;
  }
  .materials-grid .material-action {
    width: 100% !important;
    margin-top: 4px !important;
  }
  .materials-grid .material-action .btn-outline {
    width: 100% !important;
    justify-content: center !important;
    display: flex !important;
  }
}

/* 480px 以下超窄手机屏幕适配 */
@media (max-width: 480px) {
  /* 顶部大标题进一步缩小 */
  .masthead-title-wrap h1 {
    font-size: 1.15rem !important;
  }
  
  /* 成果海报区域高度再微缩，确保界面紧凑 */
  .home-poster-zone {
    height: 185px !important;
  }

  /* PDF 下载与头部自适应，防止折叠重叠 */
  .pdf-header {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
    padding: 12px 14px !important;
  }
  .pdf-header span {
    text-align: center !important;
    font-size: 0.88rem !important;
    white-space: normal !important;
    word-break: break-all !important;
  }
  .pdf-header .btn-outline {
    width: 100% !important;
    justify-content: center !important;
    padding: 10px !important;
    font-size: 0.85rem !important;
  }
}