/* ==========================================================================
   UMCA 优化层 v2 — 品牌色系统 + 导航/页脚改造
   品牌色取自会徽实物(见 docs/UMCA-BRAND.md),版式模式借鉴 MampuAI 设计系统
   原则:叠加在 Enfold 之上;红 = 可点击;金 = 荣誉;绝不覆盖主题的 display
   ========================================================================== */

:root {
  /* 主色(徽章红,屏幕调校) */
  --um-crimson: #c0202a;
  --um-crimson-deep: #96161e;
  --um-crimson-soft: #fbedee;
  /* 辅色(徽章黄 → 金,象征团结与匠艺) */
  --um-gold: #c8a02e;
  --um-gold-soft: #fbf3dc;
  /* 徽章绿 / 蓝 */
  --um-jade: #1f6f45;
  --um-navy: #16284f;
  /* 中性(暖调) */
  --um-ink: #1a1614;
  --um-body: #3a3330;
  --um-muted: #6e6560;
  --um-line: #e8e2dc;
  --um-sand: #faf7f3;
  --um-surface: #ffffff;
  /* 形状与动效 */
  --um-r-card: 14px;
  --um-r-pill: 999px;
  --um-shadow: 0 1px 2px rgba(26, 22, 20, .04);
  --um-shadow-lift: 0 16px 32px rgba(26, 22, 20, .10);
  --um-ease: cubic-bezier(.25, .46, .45, .94);
}

/* ---------- 0. 基础 ----------
   注意:绝不覆盖 Enfold 的区块背景(.main_color / #wrap_all)。
   早期版本这么做过,结果整个内容区变黑。只改文字色。 */
/* 正文色只用于浅底内容。深色区块(页脚格子、alternate_color、轮播)必须排除,
   否则会出现深色文字压深色底 —— 页脚分会名曾因此对比度只有 1.2:1。 */
#top .entry-content-wrapper p,
#top .entry-content-wrapper li {
  color: var(--um-body);
}
/* flex_cell 是有自己配色的设计区块,交回主题控制 */
#top .av-flex-cells .flex_cell p,
#top .av-flex-cells .flex_cell li,
#top .av-flex-cells .flex_cell span { color: inherit; }
/* 不要一刀切改这些区块的文字色 —— .av-flex-cells 里深浅单元格交替出现
   (中央理事会名录就是深/浅隔行),强制白字会让浅色行的文字整片消失。
   改为:由 JS 逐个单元格测背景亮度,打上 umo-on-dark / umo-on-light 再上色。 */
#top .umo-on-dark,
#top .umo-on-dark p, #top .umo-on-dark li, #top .umo-on-dark span,
#top .umo-on-dark h1, #top .umo-on-dark h2, #top .umo-on-dark h3,
#top .umo-on-dark h4, #top .umo-on-dark h5, #top .umo-on-dark strong {
  color: rgba(255, 255, 255, .92) !important;
}
#top .umo-on-dark a { color: rgba(255, 255, 255, .90) !important; }
#top .umo-on-dark a:hover { color: var(--um-gold) !important; }
/* 只作用于内容区标题。轮播字幕、深色区块里的标题是白字,必须排除,
   否则 Hero 标题会变成深色压在深色照片上、完全看不见。 */
#top .entry-content-wrapper h1,
#top .entry-content-wrapper h2,
#top .entry-content-wrapper h3,
#top .entry-content-wrapper h4 {
  color: var(--um-ink);
  letter-spacing: -0.015em;
}
/* 深色语境一律保持白字 */
#top .avia-section.alternate_color h1, #top .avia-section.alternate_color h2,
#top .avia-section.alternate_color h3, #top .avia-section.alternate_color h4,
#top .footer_color h1, #top .footer_color h2, #top .footer_color h3, #top .footer_color h4,
#top .avia-slideshow h1, #top .avia-slideshow h2, #top .avia-slideshow h3,
#top .av-slideshow-caption h1, #top .av-slideshow-caption h2,
#top .av-slideshow-caption .av-slideshow-caption-title,
#top .slideshow_caption h1, #top .slideshow_caption h2 {
  color: #fff !important;
}

/* ---------- 1. 可读性 ---------- */
#top .entry-content-wrapper p,
#top .entry-content-wrapper li,
#top .av_textblock_section p {
  font-size: 16.5px;
  line-height: 1.95;
}
#top .entry-content-wrapper h1 { font-size: clamp(30px, 3.4vw, 42px); font-weight: 800; }
#top .entry-content-wrapper h2 { font-size: clamp(23px, 2.4vw, 29px); font-weight: 700; }
#top .entry-content-wrapper h3 { font-size: 20px; font-weight: 700; }

/* 标题末尾的红点 —— 全站签名细节,改用品牌红 */
#top .av-special-heading-tag strong,
#top h1 strong, #top h2 strong { color: var(--um-crimson); }

/* Hero 轮播:遮罩要加在「幻灯片」上,不能加在字幕块上
   (字幕块只有文字那么大,加渐变会变成一条灰色标签底) */
#top .avia-slideshow-inner li::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(10,8,7,.72) 0%, rgba(10,8,7,.28) 38%, rgba(10,8,7,0) 66%);
  pointer-events: none;
  z-index: 1;
}
#top .avia-slideshow .av-slideshow-caption { z-index: 2; }
#top .avia-caption-title,
#top .avia-caption-content {
  color: #fff !important;
  text-shadow: 0 2px 14px rgba(0,0,0,.5);
}

/* ---------- 2. 导航栏:玻璃质感 + 胶囊态(借鉴 MampuAI) ---------- */
#top #header_main {
  background: rgba(255, 255, 255, .82) !important;
  backdrop-filter: saturate(180%) blur(14px);
  -webkit-backdrop-filter: saturate(180%) blur(14px);
  border-bottom: 1px solid var(--um-line);
  box-shadow: 0 1px 12px rgba(26, 22, 20, .05);
}
#top .av_header_sticky #header_main { box-shadow: 0 4px 20px rgba(26, 22, 20, .08); }

/* 导航链接 hover:柔和底色(小圆角,不用胶囊——胶囊会让固定高度的项变圆球) */
#top #header .av-main-nav > li > a {
  transition: background-color .2s var(--um-ease), color .2s var(--um-ease);
}
#top #header .av-main-nav > li > a .avia-menu-text { transition: color .2s var(--um-ease); }
#top #header .av-main-nav > li > a:hover {
  background-color: var(--um-crimson-soft);
}
#top #header .av-main-nav > li > a:hover .avia-menu-text { color: var(--um-crimson) !important; }

/* 当前页:保留 Enfold 原本的下划线条,只换成品牌红 */
#top #header .av-main-nav > li.current-menu-item > a .avia-menu-text,
#top #header .av-main-nav > li.current_page_item > a .avia-menu-text {
  color: var(--um-crimson) !important;
  font-weight: 700;
}
#top #header .av-main-nav > li.current-menu-item > a .avia-menu-fx,
#top #header .av-main-nav > li.current_page_item > a .avia-menu-fx {
  background-color: var(--um-crimson) !important;
}

/* 下拉面板:圆角卡片 + 柔和阴影(MampuAI 模式) */
#top #header .av-main-nav ul {
  border-radius: var(--um-r-card);
  border: 1px solid var(--um-line);
  box-shadow: var(--um-shadow-lift);
  overflow: hidden;
  padding: 6px;
}
#top #header .av-main-nav ul li a {
  border-radius: 9px;
  border: 0 !important;
  transition: background-color .2s var(--um-ease), color .2s var(--um-ease);
}
#top #header .av-main-nav ul li a:hover { background-color: var(--um-crimson-soft); }
#top #header .av-main-nav ul li a:hover .avia-menu-text { color: var(--um-crimson) !important; }

/* 触摸目标 */
#top #header .av-main-nav > li > a { min-height: 44px; }

/* ---------- 3. 链接与按钮:红 = 可点击 ---------- */
#top .entry-content-wrapper a:not(.avia-button):not(.umo-tel) {
  color: var(--um-crimson);
  transition: color .2s var(--um-ease);
}
#top .entry-content-wrapper a:not(.avia-button):hover { color: var(--um-crimson-deep); }

#top .avia-button {
  border-radius: var(--um-r-pill) !important;
  min-height: 44px;
  padding: 12px 26px !important;
  font-weight: 700;
  letter-spacing: .01em;
  border: 0 !important;
  transition: transform .2s var(--um-ease), box-shadow .2s var(--um-ease),
              background-color .2s var(--um-ease) !important;
}
#top .avia-button.avia-color-theme-color,
#top .avia-button.avia-color-primary {
  background-color: var(--um-crimson) !important;
  color: #fff !important;
  box-shadow: 0 6px 16px rgba(192, 32, 42, .26);
}
#top .avia-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 26px rgba(192, 32, 42, .32);
  background-color: var(--um-crimson-deep) !important;
}
/* 全宽按钮不做胶囊 —— 1440px 宽的药丸形很怪,且它其实是通栏色块 */
#top .avia-button.avia-button-fullwidth {
  border-radius: 0 !important;
  padding: 20px 26px !important;
  font-size: 19px;
}
#top .avia-button.avia-button-fullwidth:hover { transform: none; box-shadow: none; }

/* ---------- 4. 深色通栏:改用徽章深蓝,比纯黑有质感 ---------- */
/* 仅换色相,不强加到所有区块 —— 早期版本波及了内容区 */
#top .avia-section.alternate_color { background-color: var(--um-navy) !important; }
#top .avia-section.alternate_color h1,
#top .avia-section.alternate_color h2,
#top .avia-section.alternate_color h3 { color: #fff !important; }

/* 金色点缀线 —— 荣誉感,取代原本的红 */
#top .avia-section.alternate_color .special-heading-inner-border {
  border-color: var(--um-gold) !important;
}

/* ---------- 5. 页脚:四栏 + 品牌色(MampuAI 模式) ---------- */
#top .entry-content-wrapper.footer_color,
#top .footer_color {
  background-color: var(--um-ink) !important;
  color: rgba(255, 255, 255, .85);
}
#top .footer_color a { color: rgba(255, 255, 255, .85) !important; transition: color .2s var(--um-ease); }
#top .footer_color a:hover { color: #fff !important; }

/* 页脚主区(分会列表所在的 flex-cells 区块) */
#top .av-flex-cells .flex_cell[class*="footer"],
#top .av-flex-cells.footer_color { border-top: 3px solid var(--um-gold); }

/* 页脚栏目标题:小号全大写 + 字距(MampuAI 的 mono 标签模式) */
#top .footer_color .av-special-heading-tag,
#top .av-flex-cells .av-special-heading-h3 .av-special-heading-tag {
  font-size: 13px !important;
  letter-spacing: .1em;
  text-transform: uppercase;
  font-weight: 700;
}

/* 页脚分会区:深色格子里的文字/链接必须够亮(原本偏暗,近乎不可读) */
/* 深浅由 JS 测得的 .umo-on-dark 决定(见上)。
   不要用 [style*="background"] 这类宽匹配 —— 它把浅色单元格也选中了,
   导致理事会浅色行的邮箱链接变成白字看不见。 */
#top .footer_color a { color: rgba(255,255,255,.88) !important; }
#top .footer_color a:hover { color: var(--um-gold) !important; }

/* ---------- 6. 通讯录标签 ---------- */
#top .tabcontainer .tab_titles .tab {
  min-height: 44px;
  line-height: 1.4;
  border-radius: 8px 8px 0 0;
  transition: background-color .2s var(--um-ease), color .2s var(--um-ease);
}
#top .tabcontainer .tab_titles .tab:hover {
  background-color: var(--um-crimson-soft) !important;
  color: var(--um-crimson) !important;
}
#top .tabcontainer .tab_titles .tab.active_tab {
  border-top: 3px solid var(--um-crimson) !important;
  font-weight: 700;
}

/* ---------- 7. 注入组件:搜索框 / 跳转条 ---------- */
.umo-search-wrap { margin: 0 0 16px; position: relative; }
.umo-search {
  width: 100%;
  min-height: 50px;
  padding: 12px 16px 12px 44px;
  font-size: 16px;
  color: var(--um-ink);
  border: 1px solid var(--um-line);
  border-radius: var(--um-r-pill);
  outline: none;
  background: var(--um-surface);
  box-shadow: var(--um-shadow);
  transition: border-color .2s var(--um-ease), box-shadow .2s var(--um-ease);
  box-sizing: border-box;
}
.umo-search::placeholder { color: var(--um-muted); }
.umo-search:focus {
  border-color: var(--um-crimson);
  box-shadow: 0 0 0 4px rgba(192, 32, 42, .10);
}
.umo-search-wrap svg {
  position: absolute; left: 16px; top: 50%; transform: translateY(-50%);
  width: 18px; height: 18px; color: var(--um-muted); pointer-events: none;
}
.umo-count { margin: 9px 4px 0; font-size: 13px; color: var(--um-muted); }
.umo-hidden { display: none !important; }

.umo-jump { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 22px; }
.umo-jump a {
  display: inline-flex; align-items: center; min-height: 38px; padding: 0 14px;
  border: 1px solid var(--um-line); border-radius: var(--um-r-pill);
  font-size: 13.5px; color: var(--um-body); text-decoration: none;
  background: var(--um-surface);
  transition: border-color .2s var(--um-ease), color .2s var(--um-ease), background-color .2s var(--um-ease);
}
.umo-jump a:hover { border-color: var(--um-crimson); color: var(--um-crimson); background: var(--um-crimson-soft); }
.umo-jump a span { margin-left: 6px; color: var(--um-muted); }

/* ---------- 8. 密集链接归档(新闻速览 / 剪报) ---------- */
.umo-linklist ul { list-style: none !important; margin-left: 0 !important; }
.umo-linklist li {
  padding: 14px 6px;
  border-bottom: 1px solid var(--um-line);
  font-size: 13.5px !important;
  color: var(--um-muted) !important;
  line-height: 1.6 !important;
  transition: background-color .2s var(--um-ease);
}
.umo-linklist li:hover { background: var(--um-sand); }
.umo-linklist li a {
  color: var(--um-ink) !important;
  font-size: 16px; font-weight: 600;
  text-decoration: none !important;
  transition: color .2s var(--um-ease);
}
.umo-linklist li a:hover {
  color: var(--um-crimson) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

/* ---------- 9. 表格 ---------- */
#top .entry-content-wrapper table { border-color: var(--um-line) !important; }
#top .entry-content-wrapper table td,
#top .entry-content-wrapper table th { border-color: var(--um-line) !important; }
#top .umo-sticky-row {
  position: sticky; top: 60px; z-index: 5;
  background: var(--um-gold-soft) !important;
}
#top .umo-sticky-row td { border-bottom: 2px solid var(--um-gold) !important; font-weight: 700; }
#top .entry-content-wrapper table tr:hover td {
  background-color: var(--um-crimson-soft) !important;
}
@media (max-width: 767px) {
  .umo-table-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .umo-table-scroll table.umo-data-table { min-width: 520px; }
  #top table.umo-layout-table,
  #top table.umo-layout-table tbody,
  #top table.umo-layout-table tr,
  #top table.umo-layout-table td {
    display: block !important; width: 100% !important; max-width: 100% !important;
  }
  #top table.umo-layout-table td { padding-left: 0 !important; padding-right: 0 !important; }
  #top table.umo-layout-table img { margin: 0 auto 14px; display: block; }
}

/* ---------- 10. 无障碍 ---------- */
#top a:focus-visible, #top button:focus-visible,
#top input:focus-visible, #top select:focus-visible, #top .tab:focus-visible {
  outline: 2px solid var(--um-crimson) !important;
  outline-offset: 2px;
  border-radius: 4px;
}
.umo-skip {
  position: absolute; left: -9999px; top: 0; z-index: 9999;
  background: var(--um-crimson); color: #fff;
  padding: .75rem 1.15rem; font-weight: 700; text-decoration: none;
  border-radius: 0 0 8px 0;
}
.umo-skip:focus { left: 0; }

.umo-tel {
  color: var(--um-crimson) !important;
  text-decoration: none !important;
  font-weight: 700; white-space: nowrap;
}
.umo-tel:hover { text-decoration: underline !important; }

/* ---------- 11. 动效 ---------- */
.umo-reveal {
  opacity: 0; transform: translateY(18px);
  transition: opacity .6s var(--um-ease), transform .6s var(--um-ease);
}
.umo-reveal.umo-in { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
  .umo-reveal { opacity: 1; transform: none; transition: none; }
  #top .avia-button, #top .av-main-nav > li > a,
  .umo-linklist li, .umo-linklist li a, .umo-jump a,
  #top .tabcontainer .tab_titles .tab { transition: none !important; }
  #top .avia-button:hover { transform: none; }
}


