/*
 * 全站可识别度 / 可阅读度系统
 * 原则：浅底用中深灰，深底用暖白灰；装饰光晕不得压住文字。
 */
:root{
  --cts-text-light-bg:#3f403c;
  --cts-text-light-bg-strong:#2f302d;
  --cts-muted-light-bg:#565752;
  --cts-text-dark-bg:#ecebe4;
  --cts-text-dark-bg-soft:#d8d6cd;
  --cts-muted-dark-bg:#c4c1b8;
  --cts-veil-light:rgba(239,238,233,.56);
  --cts-veil-dark:rgba(18,18,16,.36);
}

/* 浅色背景：所有辅助、编号、注释文字统一提高灰度，但不压成纯黑。 */
body:not(.not-found-page) .eyebrow,
body:not(.not-found-page) .section-label,
body:not(.not-found-page) .section-label span,
body:not(.not-found-page) small,
body:not(.not-found-page) time,
body:not(.not-found-page) dt,
body:not(.not-found-page) .item-no,
body:not(.not-found-page) .project-no,
body:not(.not-found-page) .partner-en,
body:not(.not-found-page) .page-number,
body:not(.not-found-page) .hero-index,
body:not(.not-found-page) .scroll-mark,
body:not(.not-found-page) .orbit-hint,
body:not(.not-found-page) .news-row>span,
body:not(.not-found-page) .news-row>time,
body:not(.not-found-page) .project-info span,
body:not(.not-found-page) .slot-placeholder small,
body:not(.not-found-page) .char-count,
body:not(.not-found-page) .form-status,
body:not(.not-found-page) .people-filter button,
body:not(.not-found-page) .person-info>span,
body:not(.not-found-page) .person-info p{
  color:var(--cts-muted-light-bg)!important;
  opacity:1!important;
}

/* 深色背景：辅助文字不能再低于可识别阈值。 */
.dark-section .eyebrow,
.dark-section .section-label,
.dark-section .section-label span,
.dark-section small,
.dark-section time,
.dark-section dt,
.dark-section .item-no,
.dark-section .project-no,
.dark-section .partner-en,
.dark-section .page-number,
.dark-section .orbit-hint,
.dark-section .news-row>span,
.dark-section .news-row>time,
.dark-section .project-info span,
.dark-section .char-count,
.dark-section .form-status,
.team-hero .eyebrow,
.team-hero .page-number,
.inner-hero[style*="background"] .eyebrow,
.site-footer span,
.site-footer a,
.site-footer p{
  color:var(--cts-muted-dark-bg)!important;
  opacity:1!important;
}

body:not(.not-found-page) main .dark-section p:not(.eyebrow):not([lang="en"]):not(.no-records):not(.form-status),
body:not(.not-found-page) main .dark-section li,
body:not(.not-found-page) main .dark-section dd,
body:not(.not-found-page) .team-hero .inner-intro{
  color:var(--cts-text-dark-bg-soft)!important;
}

/* 固定页眉：禁用不可控反差混合，改为主动明暗识别。 */
.site-header{
  isolation:isolate;
  mix-blend-mode:normal!important;
  color:var(--cts-text-light-bg-strong)!important;
  transition:color .28s ease,text-shadow .28s ease,background .28s ease;
}

.site-header::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:96px;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(to bottom,var(--cts-veil-light),rgba(239,238,233,0));
  opacity:.62;
  transition:opacity .28s ease,background .28s ease;
}

.site-header .brand,
.site-header .brand-name,
.site-header .brand-en,
.site-header .brand-roof,
.site-header .site-nav a,
.site-header .site-nav em,
.site-header .menu-toggle,
.site-header .nav-search{
  color:inherit!important;
  opacity:1!important;
  filter:none!important;
}

.site-header .site-nav a{
  color:var(--cts-text-light-bg-strong)!important;
  text-shadow:0 1px 10px rgba(239,238,233,.52);
  font-weight:400;
}

.site-header .site-nav em{
  color:#62635d!important;
}

.site-header.is-on-dark{
  color:var(--cts-text-dark-bg)!important;
}

.site-header.is-on-dark::before{
  background:linear-gradient(to bottom,var(--cts-veil-dark),rgba(18,18,16,0));
  opacity:.88;
}

.site-header.is-on-dark .site-nav a,
.site-header.is-on-dark .brand,
.site-header.is-on-dark .brand-name,
.site-header.is-on-dark .brand-en,
.site-header.is-on-dark .brand-roof,
.site-header.is-on-dark .menu-toggle,
.site-header.is-on-dark .nav-search{
  color:var(--cts-text-dark-bg)!important;
  text-shadow:0 1px 15px rgba(0,0,0,.92),0 0 1px rgba(255,255,255,.26);
}

.site-header.is-on-dark .site-nav em{
  color:#b8b5ac!important;
  text-shadow:0 1px 12px rgba(0,0,0,.88);
}

.site-header .site-nav a.active::after,
.site-header .site-nav a:hover::after{
  opacity:.95;
}

/* 深色英雄页的光晕降噪：保留呼吸，不让它蒙住导航。 */
.team-hero .team-ink{
  opacity:.72;
}
.team-hero .team-ink i{
  filter:blur(46px)!important;
}
.team-hero .team-ink i:nth-child(1){background:rgba(235,234,228,.075)!important;}
.team-hero .team-ink i:nth-child(2){background:rgba(235,234,228,.055)!important;}
.team-hero .team-ink i:nth-child(3){background:rgba(240,68,35,.035)!important;}

/* 移动端菜单打开时仍保持高对比。 */
@media(max-width:900px){
  .site-header .site-nav{
    color:var(--cts-text-dark-bg)!important;
  }
  .site-header .site-nav a{
    color:inherit!important;
    text-shadow:none;
  }
  .site-header::before{height:78px;}
}