/* ==========================================================================
   医疗工艺标准图则及审图要点 · 疗愈环境与建筑图则美学系统 (Healing Environment Atlas)
   设计理念：自然晨光、草木生机(鼠尾草/苔绿)、温暖陶土、温润素纸、严谨工法规度。
   彻底去除 AI 风格：无紫蓝渐变、无毛玻璃拟态、无霓虹、无大圆角卡片、无刺眼钴蓝、无跳动动画。
   ========================================================================== */

:root {
  /* --- 纸张与基底色彩 (Tactile Paper Foundation) --- */
  --heal-paper: #f8f6f0;           /* 温暖素纸底色，舒缓视觉疲劳 */
  --heal-paper-light: #fcfbfa;     /* 卡片棉纸白 */
  --heal-paper-subtle: #f2eee3;    /* 次级折页纸色 */
  --heal-paper-warm: #faf4e8;      /* 暖阳漫射纸色 */
  --heal-paper-sunlight: rgba(238, 228, 210, 0.45); /* 柔和自然采光晕 */

  /* --- 主题植物与生机色调 (Sage & Moss Healing) --- */
  --heal-sage-deep: #254439;       /* 沉稳深鼠尾草墨绿，用于顶栏重点与弹窗头部 */
  --heal-sage: #33594b;            /* 标准鼠尾草绿，高雅沉静，对比度高 */
  --heal-sage-light: #4d7a6a;      /* 中阶鼠尾草绿 */
  --heal-sage-soft: #edf4f0;       /* 浅苔绿，用于微选中与悬停 */
  --heal-sage-border: rgba(51, 89, 75, 0.20); /* 细微植物墨线 */

  /* --- 陶土与赭红守护色 (Terracotta & Ochre Care) --- */
  --heal-clay: #bf4e34;            /* 温暖陶土砖红，用于核心行动点与强条核查 */
  --heal-clay-hover: #a74029;      /* 悬停陶土深红 */
  --heal-clay-soft: #faede8;       /* 浅陶土衬底 */
  --heal-ochre: #ad7c32;           /* 暖赭金，用于提示与次重点 */
  --heal-ochre-soft: #fbf3e6;      /* 浅赭衬底 */

  /* --- 建筑工艺雾蓝灰 (Architectural Mist Slate) --- */
  --heal-slate: #445963;           /* 雾蓝灰，用于专业元数据、制图标线 */
  --heal-slate-soft: #edf2f5;      /* 浅雾蓝灰 */
  --heal-slate-border: rgba(68, 89, 99, 0.18);

  /* --- 松烟墨韵文字层级 (Scholar Ink Hierarchy) --- */
  --heal-ink-title: #1a2421;       /* 典雅松烟黑，对比度极其优秀 (>10:1) */
  --heal-ink-body: #323f3b;        /* 正文灰墨，WCAG AA 高度达标 */
  --heal-ink-muted: #596b65;       /* 辅助注释色，WCAG AA 达标 */
  --heal-line: rgba(45, 64, 57, 0.13);     /* 细致铅笔分割线 (1px) */
  --heal-line-firm: rgba(45, 64, 57, 0.22);/* 构件外边框线 */

  /* --- 案头图则纸本阴影与质感 (Tactile Shadows & Craft) --- */
  --heal-shadow-sm: 0 1px 3px rgba(35, 48, 43, 0.04), 0 2px 6px rgba(35, 48, 43, 0.03);
  --heal-shadow-card: 0 2px 8px rgba(35, 48, 43, 0.05), 0 6px 18px rgba(35, 48, 43, 0.04);
  --heal-shadow-hover: 0 4px 14px rgba(35, 48, 43, 0.07), 0 12px 28px rgba(35, 48, 43, 0.06);
  --heal-radius-sm: 4px;
  --heal-radius: 6px;
  --heal-radius-md: 8px;

  /* --- 典籍标题与现代无衬线字体栈 --- */
  --font-serif-title: "Microsoft YaHei","微软雅黑","PingFang SC","Noto Sans CJK SC",sans-serif;
  --font-sans-body: "Microsoft YaHei","微软雅黑","PingFang SC","Noto Sans CJK SC",sans-serif;
}

/* --------------------------------------------------------------------------
   1. 全局基底、自然光晕与排版节奏
   -------------------------------------------------------------------------- */
html {
  background-color: var(--heal-paper) !important;
  color: var(--heal-ink-body);
  font-family: var(--font-sans-body);
  letter-spacing: 0.01em;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  background-color: var(--heal-paper) !important;
  color: var(--heal-ink-body);
  /* 温暖的自然晨光柔和透射（非刺眼色块，极淡天光漫射） */
  background-image: 
    radial-gradient(circle at 14% 6%, rgba(226, 214, 192, 0.35), transparent 36rem),
    radial-gradient(circle at 86% 12%, rgba(180, 206, 196, 0.25), transparent 32rem),
    linear-gradient(180deg, #fbf9f4 0%, #f6f3eb 52%, #f8f5ee 100%) !important;
  background-attachment: scroll;
}

/* 标题系统：典雅中文衬线书香质感，字骨清峻舒展 */
h1, h2, h3, .section h2, .hero h1, .brand strong, .review-modal-head b, .modal-head b, .site-modal-head b {
  font-family: var(--font-serif-title) !important;
  font-weight: 700;
  letter-spacing: 0.025em;
  color: var(--heal-ink-title) !important;
}

.section h2 {
  font-size: clamp(23px, 2.3vw, 32px);
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

/* 标题前缀细致规矩符号，暗示建筑图集规范 */
.section-head h2::before {
  content: "";
  display: inline-block;
  width: 4px;
  height: 18px;
  background: var(--heal-sage);
  border-radius: 2px;
}

.section .hint, .section-subhead span {
  color: var(--heal-ink-muted) !important;
  font-size: 13.5px;
  line-height: 1.65;
}

.section-head {
  border-top: 1px solid var(--heal-line) !important;
  padding-top: 26px;
  margin-bottom: 22px;
}

/* 链接温和自然 */
a {
  color: var(--heal-sage);
  transition: color 0.18s ease;
}
a:hover {
  color: var(--heal-clay);
}

/* --------------------------------------------------------------------------
   2. 顶栏 (Topbar) 与 导航菜单 (Main Menu)
   -------------------------------------------------------------------------- */
.topbar {
  background: rgba(250, 248, 243, 0.96) !important;
  border-bottom: 1px solid var(--heal-line) !important;
  box-shadow: 0 2px 12px rgba(35, 48, 43, 0.04) !important;
  backdrop-filter: blur(10px) !important;
}

/* 桌面端顶栏：强制单行、高度稳定约 76px、绝对禁止换行与上部裁切 */
@media (min-width: 1025px) {
  .topbar {
    height: 76px !important;
    max-height: 76px !important;
    overflow: visible !important;
  }
  .topbar-shell,
  .topbar .shell {
    height: 76px !important;
    min-height: 76px !important;
    max-height: 76px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    padding: 0 26px !important;
    box-sizing: border-box !important;
  }
  .brand {
    flex: 0 0 auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    min-width: 0 !important;
  }
  .main-menu {
    margin-left: auto !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 6px !important;
    overflow: visible !important;
  }
  .main-menu .menu-group > button,
  .main-menu .menu-direct,
  .team-toggle {
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    padding: 7px 9px !important;
    font-size: 12.5px !important;
    min-height: 36px !important;
    height: 36px !important;
    line-height: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
  }
}

/* 1280 视口自适应：适度收紧按钮边距与字号，隐藏副标题，确保单行宽裕不换行 */
@media (min-width: 1025px) and (max-width: 1340px) {
  .topbar .shell,
  .topbar-shell {
    gap: 10px !important;
    padding: 0 16px !important;
  }
  .brand span span {
    display: none !important;
  }
  .main-menu {
    gap: 4px !important;
  }
  .main-menu .menu-group > button,
  .main-menu .menu-direct,
  .team-toggle {
    padding: 6px 7px !important;
    font-size: 12px !important;
    min-height: 34px !important;
    height: 34px !important;
  }
}

.brand {
  gap: 13px;
}

.mark {
  width: 38px !important;
  height: 38px !important;
  border-radius: var(--heal-radius-sm) !important;
  border: 1px solid var(--heal-sage-border) !important;
  background: linear-gradient(135deg, var(--heal-sage-deep) 0%, #2f5446 60%, #476c5d 100%) !important;
  box-shadow: 0 4px 10px rgba(37, 68, 57, 0.16) !important;
}

.brand strong {
  font-size: 16px !important;
  letter-spacing: 0.03em;
  color: var(--heal-ink-title) !important;
}

.brand span span {
  color: var(--heal-ink-muted) !important;
  font-size: 11.5px !important;
  margin-top: 3px;
}

/* 主菜单项：温润质朴的便签风格，字迹工整严谨 */
.main-menu .menu-group > button,
.main-menu .menu-direct,
.team-toggle {
  background: #ffffff !important;
  border: 1px solid var(--heal-line) !important;
  color: var(--heal-ink-body) !important;
  border-radius: var(--heal-radius) !important;
  font-weight: 600 !important;
  box-shadow: var(--heal-shadow-sm) !important;
  transition: all 0.2s ease !important;
}

.main-menu .menu-group > button:hover,
.main-menu .menu-group.open > button,
.main-menu .menu-direct:hover {
  background: var(--heal-sage-soft) !important;
  border-color: var(--heal-sage-border) !important;
  color: var(--heal-sage-deep) !important;
}

.main-menu .menu-group > button::after {
  border-top-color: var(--heal-sage) !important;
  margin-left: 6px;
}

/* 核心行动直达入口：系统使用说明 */
.main-menu .guide-direct {
  background: var(--heal-sage-deep) !important;
  border-color: var(--heal-sage-deep) !important;
  color: #ffffff !important;
  box-shadow: 0 3px 10px rgba(37, 68, 57, 0.18) !important;
}
.main-menu .guide-direct:hover {
  background: var(--heal-sage) !important;
  border-color: var(--heal-sage) !important;
  color: #ffffff !important;
}

/* 建议与留言入口：陶土红温润色 */
.main-menu > a[href="#suggestions"] {
  background: #ffffff !important;
  border-color: rgba(158, 70, 50, 0.35) !important;
  color: var(--heal-clay) !important;
}
.main-menu > a[href="#suggestions"]:hover {
  background: var(--heal-clay-soft) !important;
  border-color: var(--heal-clay) !important;
}

/* 研究团队入口 */
.main-menu .team-direct {
  background: #ffffff !important;
  border-color: var(--heal-line) !important;
  color: var(--heal-ink-muted) !important;
}
.main-menu .team-direct:hover {
  background: var(--heal-paper-subtle) !important;
  color: var(--heal-ink-title) !important;
}

/* 下拉菜单 */
.submenu {
  background: rgba(255, 255, 255, 0.98) !important;
  border: 1px solid var(--heal-line) !important;
  border-top: 3px solid var(--heal-sage) !important;
  border-radius: var(--heal-radius) !important;
  box-shadow: 0 10px 30px rgba(35, 48, 43, 0.10) !important;
  padding: 7px !important;
}

.submenu a {
  color: var(--heal-ink-body) !important;
  border-radius: var(--heal-radius-sm) !important;
  padding: 8px 11px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  transition: all 0.16s ease !important;
}

.submenu a:hover {
  background: var(--heal-sage-soft) !important;
  color: var(--heal-sage-deep) !important;
}

/* --------------------------------------------------------------------------
   3. 首页 Hero 区域与建筑全景图则
   -------------------------------------------------------------------------- */
.hero {
  position: relative !important;
  padding: 22px 0 32px !important;
  background-image: url("../img/sunlight-window-grid.svg") !important;
  background-repeat: no-repeat !important;
  background-position: top 10px right 28px !important;
  background-size: 440px auto !important;
}

.eyebrow {
  background: var(--heal-paper-warm) !important;
  border: 1px solid rgba(173, 124, 50, 0.28) !important;
  color: #8c5e1c !important;
  border-radius: var(--heal-radius-sm) !important;
  padding: 4px 10px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em;
  margin-bottom: 14px !important;
}

.hero h1 {
  font-size: clamp(34px, 4.4vw, 54px) !important;
  line-height: 1.18 !important;
  color: var(--heal-ink-title) !important;
  margin: 0 !important;
  letter-spacing: 0.02em;
}

.hero p {
  font-size: 15.5px !important;
  line-height: 1.8 !important;
  color: var(--heal-ink-body) !important;
  margin: 18px 0 0 !important;
  max-width: 720px;
}

.hero-signature {
  color: var(--heal-clay) !important;
  font-weight: 600;
  display: inline-block;
  margin-top: 6px;
}

/* 按钮通用规整样式 (Buttons) */
.btn {
  border-radius: var(--heal-radius) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  min-height: 40px !important;
  padding: 8px 16px !important;
  background: #ffffff !important;
  border: 1px solid var(--heal-line-firm) !important;
  color: var(--heal-ink-body) !important;
  box-shadow: var(--heal-shadow-sm) !important;
  transition: all 0.2s ease !important;
}

.btn:hover {
  border-color: var(--heal-sage) !important;
  background: var(--heal-sage-soft) !important;
  color: var(--heal-sage-deep) !important;
  transform: translateY(-1px);
}

.btn.primary {
  background: var(--heal-clay) !important;
  border-color: var(--heal-clay) !important;
  color: #ffffff !important;
  box-shadow: 0 4px 14px rgba(158, 70, 50, 0.22) !important;
}

.btn.primary:hover {
  background: var(--heal-clay-hover) !important;
  border-color: var(--heal-clay-hover) !important;
  color: #ffffff !important;
  box-shadow: 0 6px 18px rgba(158, 70, 50, 0.28) !important;
}

.btn.ghost {
  background: #ffffff !important;
  border: 1px solid var(--heal-line) !important;
  color: var(--heal-ink-body) !important;
}

/* 内容快捷入口胶囊 */
.content-link-strip {
  margin-top: 22px;
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
}

.content-link-strip a {
  background: #ffffff !important;
  border: 1px solid var(--heal-line) !important;
  border-radius: var(--heal-radius-sm) !important;
  color: var(--heal-ink-body) !important;
  font-size: 12.5px !important;
  padding: 5px 10px !important;
  box-shadow: var(--heal-shadow-sm) !important;
  transition: all 0.18s ease;
}

.content-link-strip a:hover {
  background: var(--heal-sage-soft) !important;
  border-color: var(--heal-sage-border) !important;
  color: var(--heal-sage-deep) !important;
}

/* 英雄区右侧面板与全站结构图 (Site Atlas) */
.hero-panel {
  background: var(--heal-paper-light) !important;
  border: 1px solid var(--heal-line) !important;
  border-radius: var(--heal-radius-md) !important;
  box-shadow: var(--heal-shadow-card) !important;
  padding: 16px !important;
}

.hero-art {
  background: #f4f6f5 !important;
  border: 1px solid var(--heal-line) !important;
  border-radius: var(--heal-radius) !important;
}

.site-atlas {
  position: relative;
  min-height: 290px;
}

/* 结构图核心节点与外围节点：典雅的建筑图底风格 */
.atlas-center {
  background: #ffffff !important;
  border: 1.5px solid var(--heal-sage) !important;
  border-radius: var(--heal-radius) !important;
  box-shadow: 0 4px 14px rgba(51, 89, 75, 0.12) !important;
}

.atlas-center b {
  color: var(--heal-sage-deep) !important;
  font-family: var(--font-serif-title) !important;
  font-size: 15px !important;
}

.atlas-center span {
  color: var(--heal-ink-muted) !important;
  font-size: 11px !important;
}

.atlas-node {
  background: #ffffff !important;
  border: 1px solid var(--heal-line-firm) !important;
  border-radius: var(--heal-radius-sm) !important;
  box-shadow: var(--heal-shadow-sm) !important;
  transition: all 0.18s ease !important;
}

.atlas-node:hover {
  background: var(--heal-sage-soft) !important;
  border-color: var(--heal-sage) !important;
  transform: translateY(-2px);
  box-shadow: var(--heal-shadow-hover) !important;
}

.atlas-node b {
  color: var(--heal-ink-title) !important;
  font-size: 12.5px !important;
}

.atlas-node span {
  color: var(--heal-ink-muted) !important;
  font-size: 10.5px !important;
}

/* 统计卡片 (Metrics) */
.metric-grid {
  gap: 10px !important;
}

.metric {
  background: #ffffff !important;
  border: 1px solid var(--heal-line) !important;
  border-radius: var(--heal-radius) !important;
  box-shadow: var(--heal-shadow-sm) !important;
  padding: 12px 14px !important;
}

.metric b {
  font-family: var(--font-serif-title) !important;
  font-size: 28px !important;
  color: var(--heal-sage-deep) !important;
  font-weight: 700 !important;
}

.metric:nth-child(2) b { color: var(--heal-clay) !important; }
.metric:nth-child(3) b { color: var(--heal-ochre) !important; }
.metric:nth-child(4) b { color: var(--heal-slate) !important; }

.metric span {
  color: var(--heal-ink-muted) !important;
  font-size: 12px !important;
  margin-top: 2px;
}

.status-line {
  background: var(--heal-paper-warm) !important;
  border: 1px solid rgba(173, 124, 50, 0.22) !important;
  border-left: 3px solid var(--heal-ochre) !important;
  border-radius: var(--heal-radius-sm) !important;
  color: #5e4726 !important;
  font-size: 12.5px !important;
  line-height: 1.6 !important;
  padding: 10px 12px !important;
}

/* --------------------------------------------------------------------------
   4. 空间模块与工具栏 (Library & Module Cards)
   -------------------------------------------------------------------------- */
.toolbar {
  background: rgba(250, 248, 243, 0.94) !important;
  border: 1px solid var(--heal-line) !important;
  border-radius: var(--heal-radius) !important;
  box-shadow: var(--heal-shadow-sm) !important;
  backdrop-filter: blur(8px) !important;
  padding: 10px !important;
}

.search {
  background: #ffffff !important;
  border: 1px solid var(--heal-line-firm) !important;
  border-radius: var(--heal-radius-sm) !important;
  box-shadow: inset 0 1px 2px rgba(35, 48, 43, 0.03);
}

.search input {
  color: var(--heal-ink-title) !important;
  font-size: 13.5px;
}

.search input::placeholder {
  color: #8c9994;
}

.tab {
  background: #ffffff !important;
  border: 1px solid var(--heal-line) !important;
  color: var(--heal-ink-body) !important;
  border-radius: var(--heal-radius-sm) !important;
  padding: 6px 12px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  transition: all 0.18s ease;
}

.tab:hover {
  background: var(--heal-sage-soft) !important;
  border-color: var(--heal-sage-border) !important;
  color: var(--heal-sage-deep) !important;
}

.tab.active {
  background: var(--heal-sage-deep) !important;
  border-color: var(--heal-sage-deep) !important;
  color: #ffffff !important;
  box-shadow: 0 2px 8px rgba(37, 68, 57, 0.20) !important;
}

/* 空间模块卡片 (Module Cards) */
.module {
  background: #ffffff !important;
  border: 1px solid var(--heal-line) !important;
  border-radius: var(--heal-radius-md) !important;
  box-shadow: var(--heal-shadow-card) !important;
  transition: all 0.22s ease !important;
}

.module:hover {
  border-color: var(--heal-sage) !important;
  box-shadow: var(--heal-shadow-hover) !important;
  transform: translateY(-3px) !important;
}

.visual {
  background: #f0f4f2 !important;
  border-bottom: 1px solid var(--heal-line) !important;
}

.module h3 {
  font-family: var(--font-serif-title) !important;
  font-size: 18.5px !important;
  color: var(--heal-ink-title) !important;
  font-weight: 700 !important;
}

.summary {
  color: var(--heal-ink-body) !important;
  font-size: 13.5px !important;
  line-height: 1.65 !important;
}

.badge {
  background: rgba(255, 255, 255, 0.95) !important;
  border: 1px solid var(--heal-line-firm) !important;
  border-radius: var(--heal-radius-sm) !important;
  color: var(--heal-ink-body) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
}

.badge.core {
  background: var(--heal-clay-soft) !important;
  border-color: rgba(158, 70, 50, 0.3) !important;
  color: var(--heal-clay) !important;
}

.badge.important {
  background: var(--heal-ochre-soft) !important;
  border-color: rgba(173, 124, 50, 0.3) !important;
  color: var(--heal-ochre) !important;
}

.badge.model {
  background: var(--heal-sage-soft) !important;
  border-color: var(--heal-sage-border) !important;
  color: var(--heal-sage) !important;
}

/* 审图规范条目列表 */
.rule {
  border-left: 3px solid var(--heal-sage) !important;
  background: var(--heal-sage-soft) !important;
  border-radius: var(--heal-radius-sm) !important;
  color: var(--heal-ink-body) !important;
  font-size: 12.5px !important;
  line-height: 1.6 !important;
  padding: 8px 10px !important;
}

.rule.core {
  border-left-color: var(--heal-clay) !important;
  background: var(--heal-clay-soft) !important;
  color: #8e301d !important;
}

.rule.important {
  border-left-color: var(--heal-ochre) !important;
  background: var(--heal-ochre-soft) !important;
  color: #634316 !important;
}

/* 彻底取消按钮疯狂脉冲和闪烁动画，采用端庄平稳的现代微动效 */
.module-front-actions .module-model-primary,
.module-actions .btn.primary[data-open-model] {
  animation: none !important;
  background: var(--heal-clay) !important;
  border-color: var(--heal-clay) !important;
  color: #ffffff !important;
  box-shadow: 0 4px 12px rgba(158, 70, 50, 0.20) !important;
  font-weight: 600 !important;
}

.module-front-actions .module-model-primary:hover,
.module-actions .btn.primary[data-open-model]:hover {
  background: var(--heal-clay-hover) !important;
  border-color: var(--heal-clay-hover) !important;
  box-shadow: 0 6px 16px rgba(158, 70, 50, 0.26) !important;
  transform: translateY(-1px);
}

/* --------------------------------------------------------------------------
   5. 工艺流程与总则 (Process & Principles)
   -------------------------------------------------------------------------- */
.principle-card, .dept-summary {
  background: #ffffff !important;
  border: 1px solid var(--heal-line) !important;
  border-radius: var(--heal-radius-md) !important;
  box-shadow: var(--heal-shadow-card) !important;
  transition: all 0.2s ease;
}

.principle-card:hover, .dept-summary:hover {
  border-color: var(--heal-sage) !important;
  box-shadow: var(--heal-shadow-hover) !important;
  transform: translateY(-2px);
}

.principle-card:before {
  background: var(--heal-sage) !important;
  height: 3px !important;
}
.principle-card.accent-2:before { background: var(--heal-clay) !important; }
.principle-card.accent-3:before { background: var(--heal-slate) !important; }
.principle-card.accent-4:before { background: #4a7565 !important; }
.principle-card.accent-5:before { background: var(--heal-ochre) !important; }
.principle-card.accent-6:before { background: #667e76 !important; }

.principle-card h3, .dept-summary b {
  font-family: var(--font-serif-title) !important;
  color: var(--heal-ink-title) !important;
  font-size: 18px !important;
}

.principle-card span, .dept-summary span, .doc-facts span {
  background: var(--heal-sage-soft) !important;
  color: var(--heal-sage-deep) !important;
  border: 1px solid var(--heal-sage-border) !important;
  border-radius: var(--heal-radius-sm) !important;
  font-size: 11.5px !important;
}

/* 流程看板 */
.flow-card {
  background: #ffffff !important;
  border: 1px solid var(--heal-line) !important;
  border-radius: var(--heal-radius-md) !important;
  box-shadow: var(--heal-shadow-card) !important;
}

.flow-head b {
  font-family: var(--font-serif-title) !important;
  color: var(--heal-ink-title) !important;
  font-size: 19px !important;
}

.flow-head span {
  background: var(--heal-sage-soft) !important;
  border: 1px solid var(--heal-sage-border) !important;
  color: var(--heal-sage-deep) !important;
  border-radius: var(--heal-radius-sm) !important;
  font-size: 12px !important;
}

.flow-steps span {
  background: #ffffff !important;
  border: 1px solid var(--heal-line-firm) !important;
  color: var(--heal-ink-body) !important;
  border-radius: var(--heal-radius-sm) !important;
}

.flow-steps i {
  background: var(--heal-sage-deep) !important;
  color: #ffffff !important;
  border-radius: 50% !important;
}

/* --------------------------------------------------------------------------
   6. 规范审核工作台 (Review Workspace)
   -------------------------------------------------------------------------- */
.review-dept {
  background: #ffffff !important;
  border: 1px solid var(--heal-line) !important;
  border-radius: var(--heal-radius-md) !important;
  box-shadow: var(--heal-shadow-card) !important;
}

.review-dept-head b {
  font-family: var(--font-serif-title) !important;
  color: var(--heal-ink-title) !important;
  font-size: 19px !important;
}

.review-module {
  background: #ffffff !important;
  border: 1px solid var(--heal-line) !important;
  border-radius: var(--heal-radius) !important;
  box-shadow: var(--heal-shadow-sm) !important;
  transition: all 0.18s ease;
}

.review-module:hover {
  border-color: var(--heal-sage) !important;
  background: var(--heal-sage-soft) !important;
  transform: translateY(-1px);
}

.review-module b {
  font-family: var(--font-serif-title) !important;
  color: var(--heal-ink-title) !important;
  font-size: 14.5px !important;
}

.review-guide {
  background: var(--heal-paper-light) !important;
  border: 1px solid var(--heal-line) !important;
  border-left: 3px solid var(--heal-sage) !important;
  border-radius: var(--heal-radius) !important;
  box-shadow: var(--heal-shadow-card) !important;
}

.review-guide b {
  font-family: var(--font-serif-title) !important;
  color: var(--heal-ink-title) !important;
  font-size: 17px !important;
}

/* --------------------------------------------------------------------------
   7. 弹窗系统 (Modals: 3D模型、规范审核、系统说明、研究团队)
   -------------------------------------------------------------------------- */
.modal-box,
.site-modal-box,
.review-modal-box,
.guide-modal-box,
.team-modal-box {
  background: #ffffff !important;
  border: 1px solid var(--heal-line-firm) !important;
  border-radius: var(--heal-radius-md) !important;
  box-shadow: 0 20px 60px rgba(25, 38, 33, 0.22) !important;
}

/* 彻底清除生硬刺眼的钴蓝！头部统一使用庄严温和的深鼠尾草墨绿 */
.modal-head,
.site-modal-head,
.review-modal-head {
  background: var(--heal-sage-deep) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
  color: #ffffff !important;
  padding: 13px 18px !important;
}

.modal-head b,
.site-modal-head b,
.review-modal-head b {
  color: #ffffff !important;
  font-size: 16px !important;
  letter-spacing: 0.03em;
}

.modal-head button,
.site-modal-head button,
.review-modal-head button {
  background: rgba(255, 255, 255, 0.14) !important;
  border: 1px solid rgba(255, 255, 255, 0.28) !important;
  color: #ffffff !important;
  border-radius: var(--heal-radius-sm) !important;
  font-size: 12px;
  padding: 5px 10px !important;
  transition: all 0.15s ease;
}

.modal-head button:hover,
.site-modal-head button:hover,
.review-modal-head button:hover {
  background: rgba(255, 255, 255, 0.24) !important;
}

/* 移动端弹窗返回栏：严格恢复改前逻辑，仅显示「← 返回」，彻底隐藏重叠的「关闭」文本 */
html.is-mobile .modal-head-actions .modal-close-btn,
html.is-mobile .modal-close-btn {
  font-size: 0 !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 12px 0 4px !important;
  min-height: 36px !important;
  min-width: 44px !important;
  box-shadow: none !important;
}
html.is-mobile .modal-head-actions .modal-close-btn::before,
html.is-mobile .modal-close-btn::before {
  content: "← 返回" !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  white-space: nowrap !important;
}

.review-modal-body,
.guide-modal-body,
.team-modal-body {
  background: var(--heal-paper) !important;
}

/* 团队弹窗成员卡片 */
.member-item, .team-member {
  background: #ffffff !important;
  border: 1px solid var(--heal-line) !important;
  border-radius: var(--heal-radius) !important;
  box-shadow: var(--heal-shadow-sm) !important;
}

/* --------------------------------------------------------------------------
   8. 图纸审核工作台 (Drawing Audit & Layout)
   -------------------------------------------------------------------------- */
.audit-panel,
.audit-figure,
.audit-workflow-figure {
  background: #ffffff !important;
  border: 1px solid var(--heal-line) !important;
  border-radius: var(--heal-radius-md) !important;
  box-shadow: var(--heal-shadow-card) !important;
}

.audit-panel-head {
  border-bottom: 1px solid var(--heal-line) !important;
  padding: 12px 14px !important;
}

.audit-panel-head b {
  font-family: var(--font-serif-title) !important;
  color: var(--heal-ink-title) !important;
  font-size: 16.5px !important;
}

.audit-panel-head span {
  color: var(--heal-ink-muted) !important;
  font-size: 12px !important;
}

/* 文件上传拖拽区：优雅的案头纸面感 */
.audit-file-drop {
  border: 1.5px dashed var(--heal-sage-border) !important;
  background: var(--heal-paper) !important;
  border-radius: var(--heal-radius) !important;
  padding: 22px 16px !important;
  transition: all 0.2s ease;
}

.audit-file-drop:hover {
  border-color: var(--heal-sage) !important;
  background: var(--heal-sage-soft) !important;
}

.audit-file-drop b {
  color: var(--heal-sage-deep) !important;
  font-size: 14.5px !important;
}

.audit-file-drop em {
  color: var(--heal-ink-muted) !important;
}

/* 身份核验框 */
.audit-identity-state {
  border-left: 3px solid var(--heal-sage) !important;
  background: var(--heal-paper) !important;
  border-radius: var(--heal-radius-sm) !important;
}

/* 审核过滤器按钮 */
.audit-filter {
  background: #ffffff !important;
  border: 1px solid var(--heal-line) !important;
  color: var(--heal-ink-body) !important;
  border-radius: var(--heal-radius-sm) !important;
  padding: 5px 11px !important;
  font-size: 12.5px !important;
}

.audit-filter.on {
  background: var(--heal-sage-deep) !important;
  border-color: var(--heal-sage-deep) !important;
  color: #ffffff !important;
}

/* --------------------------------------------------------------------------
   9. 页脚与合规展示 (Footer)
   -------------------------------------------------------------------------- */
footer {
  border-top: 1px solid var(--heal-line) !important;
  background: var(--heal-paper-light) !important;
  color: var(--heal-ink-muted) !important;
  padding: 32px 0 !important;
  font-size: 13px !important;
  line-height: 1.7;
}

/* --------------------------------------------------------------------------
   10. 移动端 (390px) 深度排版优化
   -------------------------------------------------------------------------- */
@media (max-width: 720px) {
  .hero {
    padding: 16px 0 24px !important;
    background-image: none !important;
  }

  .hero h1 {
    font-size: 30px !important;
    line-height: 1.25 !important;
  }
  
  .hero p {
    font-size: 14px !important;
  }

  .topbar .shell {
    padding: 10px 14px !important;
  }

  .main-menu .menu-group > button,
  .main-menu .menu-direct {
    font-size: 12.5px !important;
    padding: 7px 9px !important;
  }

  .grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .section {
    padding: 28px 0 !important;
  }

  .section h2 {
    font-size: 22px !important;
  }

  /* 窄屏弹窗返回栏：仅显示「← 返回」，隐藏「关闭」 */
  .modal-head-actions .modal-close-btn,
  .modal-close-btn {
    font-size: 0 !important;
    background: transparent !important;
    border: 0 !important;
    padding: 0 12px 0 4px !important;
    min-height: 36px !important;
    min-width: 44px !important;
    box-shadow: none !important;
  }
  .modal-head-actions .modal-close-btn::before,
  .modal-close-btn::before {
    content: "← 返回" !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
    white-space: nowrap !important;
  }
}

/* --------------------------------------------------------------------------
   11. 手绘 SVG 装饰类 (Hand-drawn Botanical & Sunlight Motifs)
   -------------------------------------------------------------------------- */
.section-divider-decor {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 32px auto 20px;
  width: 100%;
  max-width: 480px;
  opacity: 0.85;
  user-select: none;
  pointer-events: none;
}
.section-divider-decor img {
  width: 100%;
  max-width: 380px;
  height: auto;
  display: block;
}

.hero-sunlight-motif {
  display: none !important; /* 彻底移除DOM占位，由 hero 容器 background-image 承载 */
}

.audit-empty-decor {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 14px 0 8px;
  opacity: 0.9;
  pointer-events: none;
}
.audit-empty-decor img {
  width: 120px;
  height: auto;
  display: block;
}

/* --------------------------------------------------------------------------
   12. 手机端 (390px) 细致规避与边距调节
   -------------------------------------------------------------------------- */
@media (max-width: 420px) {
  .section-divider-decor {
    margin: 22px auto 14px;
    max-width: 260px;
  }
  .brand strong {
    font-size: 14px !important;
  }
  .hero h1 {
    font-size: 26px !important;
  }
  .topbar .shell {
    padding: 8px 12px !important;
  }
}



/* ===== 2026-10-19 负责人修改：全局微软雅黑 / 加粗强调 / 3D 弹窗蓝色系 / logo 完整圆形 ===== */
*:not(code):not(pre):not(kbd):not(samp) { font-family: var(--font-sans-body) !important; }
h1, h2, h3, h4, h5, h6, strong, b, th, .brand strong, .hero h1, .section h2,
.modal-head b, .site-modal-head b, .review-modal-head b { font-weight: 700 !important; }

.brand .mark {
  width: 42px !important; height: 42px !important; flex: 0 0 42px !important;
  border: 0 !important; border-radius: 50% !important; background: transparent !important;
  box-shadow: none !important; overflow: visible !important; padding: 0 !important;
}
.brand .mark img { display: block !important; width: 100% !important; height: 100% !important;
  object-fit: contain !important; border-radius: 50% !important; }

#modelModal .modal-head, #modelModal .site-modal-head, #modelModal .review-modal-head,
#siteModelModal .modal-head, #siteModelModal .site-modal-head, #siteModelModal .review-modal-head {
  background: #1f3a5f !important;
}
#modelModal, #siteModelModal { --heal-modal-dark: #16324f; }


/* ===== 2026-10-21 首页配色与版面层次：中性柔和色带 + 克制的对比点缀（仅样式，不改内容） =====
   色板：鼠尾草雾绿 / 沙色 / 雾蓝灰 / 淡陶土 作分区色带；深青灰作标题；陶土砖红 + 青绿作对比点缀。
   所有文字保持深色压浅底，正文对比度 ≥ 4.5:1；无动画。 */
:root {
  --pal-sage-band: #e4ece6;
  --pal-sand-band: #f0e9db;
  --pal-slate-band: #e3e9ee;
  --pal-blush-band: #f3e5dd;
  --pal-teal: #2f6f73;
  --pal-teal-deep: #234f58;
  --pal-slate-title: #233b46;
  --pal-clay: #b8523a;
  --pal-ochre: #a87a33;
  --pal-plum: #6d5a7c;
}

/* 顶栏：浅鼠尾草底 + 四色细线 */
.topbar {
  background: rgba(238, 242, 235, 0.94) !important;
  border-bottom: 0 !important;
  border-image: linear-gradient(90deg, #6f9484 0%, #a87a33 34%, #b8523a 62%, #4a6f86 100%) 1 !important;
  border-bottom: 3px solid transparent !important;
}

/* 首屏：沙色到雾绿的柔和渐变底，标题用深青灰 */
.hero {
  position: relative;
  box-shadow: 0 0 0 100vmax #efe8da;
  clip-path: inset(0 -100vmax);
  background: linear-gradient(115deg, #efe8da 0%, #ecebdd 45%, #e1eae4 100%) !important;
  padding-top: 40px !important; padding-bottom: 44px !important;
}
.hero h1 { color: var(--pal-slate-title) !important; }
.hero .eyebrow { background: #f8efe0 !important; color: #6f4a21 !important; border-color: rgba(168, 122, 51, 0.45) !important; }
.hero-panel { background: rgba(252, 251, 247, 0.92) !important; border-color: rgba(47, 111, 115, 0.22) !important; }
.hero .btn.ghost { border-color: rgba(35, 79, 88, 0.35) !important; color: var(--pal-teal-deep) !important; background: rgba(255, 255, 255, 0.82) !important; }
.hero .btn.ghost:hover { background: #fff !important; border-color: var(--pal-teal) !important; }
.content-link-strip a { border-color: rgba(35, 79, 88, 0.22) !important; color: var(--pal-slate-title) !important; }
.content-link-strip a:nth-child(4n+1) { border-bottom: 3px solid #6f9484 !important; }
.content-link-strip a:nth-child(4n+2) { border-bottom: 3px solid #a87a33 !important; }
.content-link-strip a:nth-child(4n+3) { border-bottom: 3px solid #b8523a !important; }
.content-link-strip a:nth-child(4n+4) { border-bottom: 3px solid #4a6f86 !important; }

/* 数据指标：四色淡底 */
.metric-grid .metric { border-color: transparent !important; border-top: 3px solid var(--mc, #6f9484) !important; }
.metric-grid .metric:nth-child(1) { --mc: #5f8a78; background: #e6eee9 !important; }
.metric-grid .metric:nth-child(2) { --mc: #b8523a; background: #f5e6df !important; }
.metric-grid .metric:nth-child(3) { --mc: #a87a33; background: #f4ecd9 !important; }
.metric-grid .metric:nth-child(4) { --mc: #4a6f86; background: #e3eaef !important; }
.metric-grid .metric:nth-child(1) b { color: #2f5d4c !important; }
.metric-grid .metric:nth-child(2) b { color: #9c3f29 !important; }
.metric-grid .metric:nth-child(3) b { color: #7f5a1d !important; }
.metric-grid .metric:nth-child(4) b { color: #2d4f66 !important; }

/* 分区色带（整幅通栏；内容宽度不变） */
.section.shell {
  position: relative;
  clip-path: inset(0 -100vmax);
  padding-top: 44px !important; padding-bottom: 48px !important;
  margin-top: 0 !important; margin-bottom: 0 !important;
  --sec-accent: var(--pal-teal);
}
#principles { background: var(--pal-sage-band); box-shadow: 0 0 0 100vmax var(--pal-sage-band); --sec-accent: #4d7a6a; }
#library { background: var(--pal-sand-band); box-shadow: 0 0 0 100vmax var(--pal-sand-band); --sec-accent: var(--pal-ochre); }
#process { background: var(--pal-slate-band); box-shadow: 0 0 0 100vmax var(--pal-slate-band); --sec-accent: #4a6f86; }
#review { background: var(--pal-blush-band); box-shadow: 0 0 0 100vmax var(--pal-blush-band); --sec-accent: var(--pal-clay); }
#illustrations { background: var(--pal-sage-band); box-shadow: 0 0 0 100vmax var(--pal-sage-band); --sec-accent: #4d7a6a; }
#assets { background: var(--pal-sand-band); box-shadow: 0 0 0 100vmax var(--pal-sand-band); --sec-accent: var(--pal-ochre); }
#future { background: var(--pal-slate-band); box-shadow: 0 0 0 100vmax var(--pal-slate-band); --sec-accent: #4a6f86; }
#suggestions { background: var(--pal-blush-band); box-shadow: 0 0 0 100vmax var(--pal-blush-band); --sec-accent: var(--pal-clay); }

/* 分区标题：深青灰字 + 分区点缀色短横线 */
.section-head h2, .section > h2 { color: var(--pal-slate-title) !important; }
.section-head { border-bottom: 1px solid color-mix(in srgb, var(--sec-accent) 38%, transparent) !important; padding-bottom: 12px !important; }
.section-head h2::before { background: var(--sec-accent) !important; }
.section-head h2::after { content: ""; display: block; width: 56px; height: 3px; margin-top: 8px; background: var(--sec-accent); border-radius: 2px; }
.section .hint { color: #4c5f66 !important; }

/* 卡片：白底在色带上更醒目；顶部点缀色线分层 */
.principle-card, .dept-summary, .flow-card, .module, .review-dept, .review-guide, .review-figure {
  background: #fffefb !important;
  border: 1px solid color-mix(in srgb, var(--sec-accent) 26%, transparent) !important;
  border-top: 3px solid var(--sec-accent) !important;
  box-shadow: 0 2px 10px rgba(35, 48, 43, 0.06) !important;
}
.principle-card.accent-1 { border-top-color: #5f8a78 !important; }
.principle-card.accent-2 { border-top-color: #a87a33 !important; }
.principle-card.accent-3 { border-top-color: #b8523a !important; }
.principle-card.accent-4 { border-top-color: #4a6f86 !important; }
.principle-card.accent-5 { border-top-color: #6d5a7c !important; }
.principle-card.accent-6 { border-top-color: #2f6f73 !important; }
.module .card-icon, .principle-card .card-icon, .dept-summary .card-icon { color: var(--sec-accent) !important; }
.card-links a { color: var(--pal-teal-deep) !important; }

/* 主按钮：砖红；次按钮：深青描边，形成对比色 */
.btn.primary { background: var(--pal-clay) !important; border-color: var(--pal-clay) !important; color: #fff !important; }
.btn.primary:hover { background: #9f4430 !important; }
.module .btn:not(.primary) { border-color: var(--pal-teal) !important; color: var(--pal-teal-deep) !important; }
.module .btn:not(.primary):hover { background: #e6f0ef !important; }

/* 搜索栏与筛选按钮 */
.toolbar { background: rgba(255, 254, 250, 0.9) !important; border-color: rgba(168, 122, 51, 0.3) !important; }
.tabs button.active, .tabs .active { background: var(--pal-teal-deep) !important; border-color: var(--pal-teal-deep) !important; color: #fff !important; }

/* 页脚 */
footer, .footer { background: #dfe6e2 !important; color: #2f453f !important; }

@media (max-width: 720px) {
  .section.shell { padding-top: 32px !important; padding-bottom: 36px !important; }
  .hero { padding-top: 26px !important; padding-bottom: 30px !important; }
}

/* ===== 2026-10-21b 首屏内容结构图：按分组着色（与连线同色系），中心节点深青底白字 ===== */
.hero-panel .site-atlas {
  background: linear-gradient(135deg, #f1ece0 0%, #eaf0ea 55%, #e4ebf0 100%) !important;
  border-color: rgba(47, 111, 115, 0.25) !important;
}
.hero-panel .site-atlas:before { opacity: .55; }
.hero-panel .atlas-node {
  --nc: #4f8f8c; --nb: #e3efee;
  background: var(--nb) !important;
  border: 1px solid color-mix(in srgb, var(--nc) 45%, transparent) !important;
  border-left: 5px solid var(--nc) !important;
  box-shadow: 0 2px 8px rgba(35, 48, 43, 0.08) !important;
}
.hero-panel .atlas-node b { color: #1f3036 !important; }
.hero-panel .atlas-node span { color: #43575c !important; }
.hero-panel .atlas-node:hover { background: #fffefb !important; }
.hero-panel .atlas-process { --nc: #c7672b; --nb: #f6e5d8; }
.hero-panel .atlas-review { --nc: #765b86; --nb: #ebe4f0; }
.hero-panel .atlas-opd { --nc: #4f8f8c; --nb: #e0efee; }
.hero-panel .atlas-emg { --nc: #c0573a; --nb: #f5e3dc; }
.hero-panel .atlas-tech { --nc: #4a6f9a; --nb: #e1e9f2; }
.hero-panel .atlas-ward { --nc: #6f9a62; --nb: #e6efdf; }
.hero-panel .atlas-assets { --nc: #a87a33; --nb: #f4ead3; }
.hero-panel .atlas-future { --nc: #765b86; --nb: #ebe4f0; }
.hero-panel .atlas-comments { --nc: #5a8a4f; --nb: #e4eedc; }
.hero-panel .atlas-center {
  background: linear-gradient(135deg, #234f58 0%, #2f6f73 100%) !important;
  border-color: #1c3f47 !important;
  box-shadow: 0 6px 18px rgba(35, 79, 88, 0.3) !important;
}
.hero-panel .atlas-center b, .hero-panel .atlas-center span { color: #fff !important; }

/* 结构图节点：标题与细分项均为链接 */
.hero-panel .atlas-node { cursor: default; }
.hero-panel .atlas-node b a { color: inherit !important; text-decoration: none; }
.hero-panel .atlas-node b a:hover { text-decoration: underline; text-underline-offset: 3px; }
.hero-panel .atlas-chip { color: #2a4a55 !important; text-decoration: underline; text-decoration-color: color-mix(in srgb, var(--nc) 70%, transparent); text-underline-offset: 2px; white-space: nowrap; }
.hero-panel .atlas-chip:hover { color: #0f2f3a !important; background: rgba(255,255,255,.75); text-decoration-thickness: 2px; }
/* ==========================================================================
   2026-10-21c 建筑图册与工程蓝图美学重塑 (Architectural Monograph & Drawing Sheet)
   定位：纸本图册质感、粗细剖切墨线对比、制图标题栏网格、印章式朱砂/普鲁士蓝克制对比色。
   去AI化：废除圆角白卡+彩色顶边线模板、废除四色糖果方块、废除渐变与多层浮空阴影、无闪烁无动画。
   ========================================================================== */

:root {
  /* 1. 纸张基底（平涂无渐变，冷暖微差构建翻页节奏） */
  --arch-paper: #f3efe6;           /* 主图纸暖亚麻素纸 */
  --arch-paper-alt: #eae4d7;       /* 次级档案册页深素纸 */
  --arch-paper-cool: #e6ebe9;      /* 工程晒图浅青灰纸（用于流程与审图工作台） */
  --arch-sheet: #faf8f3;           /* 图面棉纸白 */
  --arch-white: #ffffff;           /* 核心图框亮白 */

  /* 2. 制图墨线与字阶（全部通过 WCAG AA ≥ 4.5:1，正文 > 8.5:1） */
  --arch-ink: #161e1c;             /* 标题松烟重墨 (对比度 14.2:1) */
  --arch-ink-body: #2c3634;        /* 正文铅笔浓墨 (对比度 9.6:1) */
  --arch-ink-muted: #525f5b;       /* 图注/标尺小字 (对比度 5.4:1 ≥ AA) */
  --arch-rule-heavy: #1c2623;      /* 建筑剖切粗墨线 (1.5px~2px) */
  --arch-rule-firm: rgba(22, 30, 28, 0.28); /* 标准图框外线 (1px) */
  --arch-rule-thin: rgba(22, 30, 28, 0.14); /* 表格内部分格细线 (1px) */
  --arch-grid-line: rgba(22, 30, 28, 0.045);/* 坐标底图极细网格 */

  /* 3. 克制对比色（古建审图朱砂印 + 普鲁士晒图蓝 + 深苍绿 + 暖赭批注） */
  --arch-vermilion: #a63623;       /* 审图印章朱砂红：主按钮、强条、核心锚点 */
  --arch-vermilion-hover: #8c2b1a;
  --arch-vermilion-tint: #f4e6e2;
  --arch-prussian: #1f4252;        /* 普鲁士深青蓝：3D模型标识、技术图签、对比副色 */
  --arch-prussian-tint: #e4edf0;
  --arch-sage: #26473c;            /* 深苍绿：医疗感控与安全基准 */
  --arch-sage-tint: #e5ede9;
  --arch-ochre: #825819;           /* 暖赭石：条文编号与重点批注 */
  --arch-ochre-tint: #f3eadb;

  /* 4. 等宽制图字体栈（用于图号、指标、编码） */
  --font-mono-arch: "JetBrains Mono", "Cascadia Mono", "Consolas", "SFMono-Regular", monospace;
}

/* --------------------------------------------------------------------------
   全局去动画与纸本图册基底
   -------------------------------------------------------------------------- */
*, *::before, *::after {
  animation: none !important;
  transition: none !important;
}

html, body {
  background-color: var(--arch-paper) !important;
  color: var(--arch-ink-body) !important;
  background-image:
    linear-gradient(90deg, var(--arch-grid-line) 1px, transparent 1px),
    linear-gradient(180deg, var(--arch-grid-line) 1px, transparent 1px) !important;
  background-size: 36px 36px !important;
}

/* 隐藏居中对称的植物插画分割线，改用建筑图框横线体系 */
.section-divider-decor,
.hero-sunlight-motif {
  display: none !important;
}

/* --------------------------------------------------------------------------
   顶栏 (Topbar)：废除四色彩虹底边，改为建筑双线图框顶栏
   -------------------------------------------------------------------------- */
.topbar {
  background: var(--arch-sheet) !important;
  border-bottom: 2px solid var(--arch-rule-heavy) !important;
  border-image: none !important;
  box-shadow: 0 3px 0 var(--arch-rule-thin) !important;
  backdrop-filter: none !important;
}

.main-menu .menu-group > button,
.main-menu .menu-direct,
.team-toggle,
.lang-switch {
  background: transparent !important;
  border: 1px solid var(--arch-rule-firm) !important;
  border-radius: 2px !important;
  color: var(--arch-ink) !important;
  box-shadow: none !important;
}

.main-menu .menu-group > button:hover,
.main-menu .menu-group.open > button,
.main-menu .menu-direct:hover,
.lang-switch:hover {
  background: var(--arch-paper-alt) !important;
  border-color: var(--arch-rule-heavy) !important;
  color: var(--arch-ink) !important;
  transform: none !important;
}

.main-menu .guide-direct {
  background: var(--arch-prussian) !important;
  border-color: var(--arch-prussian) !important;
  color: #ffffff !important;
}
.main-menu .guide-direct:hover {
  background: #16323f !important;
  color: #ffffff !important;
}

.main-menu > a[href="#suggestions"] {
  background: var(--arch-vermilion-tint) !important;
  border-color: var(--arch-vermilion) !important;
  color: var(--arch-vermilion) !important;
}

.main-menu .team-direct {
  background: var(--arch-sheet) !important;
  border-color: var(--arch-rule-firm) !important;
  color: var(--arch-ink-body) !important;
}

.submenu {
  background: var(--arch-sheet) !important;
  border: 1px solid var(--arch-rule-heavy) !important;
  border-top: 3px solid var(--arch-prussian) !important;
  border-radius: 2px !important;
  box-shadow: 4px 4px 0 rgba(22, 30, 28, 0.12) !important;
}

.submenu a {
  border-radius: 0 !important;
  color: var(--arch-ink-body) !important;
}
.submenu a:hover {
  background: var(--arch-prussian-tint) !important;
  color: var(--arch-prussian) !important;
}

/* --------------------------------------------------------------------------
   首屏 (Hero) 与 建筑图纸标题栏 (Title Block)
   -------------------------------------------------------------------------- */
.hero {
  background: var(--arch-paper) !important;
  background-image:
    linear-gradient(90deg, var(--arch-grid-line) 1px, transparent 1px),
    linear-gradient(180deg, var(--arch-grid-line) 1px, transparent 1px) !important;
  background-size: 36px 36px !important;
  box-shadow: 0 0 0 100vmax var(--arch-paper) !important;
  clip-path: inset(0 -100vmax);
  border-bottom: 2px solid var(--arch-rule-heavy) !important;
  padding-top: 36px !important;
  padding-bottom: 40px !important;
}

.hero::before {
  display: none !important;
}

/* 印章式眉题：直角双边线 + 等宽图号前导 */
.hero .eyebrow {
  background: var(--arch-sheet) !important;
  color: var(--arch-vermilion) !important;
  border: 1px solid var(--arch-vermilion) !important;
  border-left: 4px solid var(--arch-vermilion) !important;
  border-radius: 0 !important;
  padding: 4px 10px !important;
  font-size: 12px !important;
  letter-spacing: 0.06em !important;
  box-shadow: none !important;
}
.hero .eyebrow::before {
  content: "DWG.NO // 01-PED · ";
  font-family: var(--font-mono-arch) !important;
  font-weight: 700;
}

.hero h1 {
  color: var(--arch-ink) !important;
  letter-spacing: -0.01em !important;
  line-height: 1.15 !important;
}

.hero p {
  color: var(--arch-ink-body) !important;
  border-left: 2px solid var(--arch-rule-firm) !important;
  padding-left: 14px !important;
}

/* 按钮体系：硬朗晒图图签风格，朱砂红与普鲁士蓝形成明确冷暖对比 */
.btn {
  border-radius: 2px !important;
  background: var(--arch-sheet) !important;
  border: 1px solid var(--arch-rule-heavy) !important;
  color: var(--arch-ink) !important;
  box-shadow: 2px 2px 0 rgba(22, 30, 28, 0.08) !important;
  transform: none !important;
}
.btn:hover {
  background: var(--arch-prussian-tint) !important;
  border-color: var(--arch-prussian) !important;
  color: var(--arch-prussian) !important;
  transform: none !important;
}

.btn.primary {
  background: var(--arch-vermilion) !important;
  border: 1px solid var(--arch-vermilion) !important;
  color: #ffffff !important;
  box-shadow: 2px 2px 0 rgba(22, 30, 28, 0.18) !important;
}
.btn.primary:hover {
  background: var(--arch-vermilion-hover) !important;
  border-color: var(--arch-vermilion-hover) !important;
  color: #ffffff !important;
}

.hero .btn.ghost {
  background: var(--arch-sheet) !important;
  border: 1px solid var(--arch-rule-firm) !important;
  color: var(--arch-ink) !important;
}
.hero .btn.ghost:hover {
  background: var(--arch-white) !important;
  border-color: var(--arch-prussian) !important;
  color: var(--arch-prussian) !important;
}

/* 快捷入口条：废除四色底边，改为连体工程目录索引条 */
.content-link-strip {
  gap: 0 !important;
  border: 1px solid var(--arch-rule-firm) !important;
  background: var(--arch-sheet) !important;
  width: fit-content;
  max-width: 100%;
}
.content-link-strip a,
.content-link-strip a:nth-child(4n+1),
.content-link-strip a:nth-child(4n+2),
.content-link-strip a:nth-child(4n+3),
.content-link-strip a:nth-child(4n+4) {
  background: transparent !important;
  border: 0 !important;
  border-right: 1px solid var(--arch-rule-thin) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--arch-ink-body) !important;
  padding: 6px 12px !important;
  font-size: 12px !important;
}
.content-link-strip a:last-child {
  border-right: 0 !important;
}
.content-link-strip a:hover {
  background: var(--arch-prussian) !important;
  color: #ffffff !important;
}

/* 首屏三步上手图：去圆角，融于纸面 */
.hero-steps img {
  filter: contrast(1.02) sepia(0.08);
}

/* --------------------------------------------------------------------------
   首屏右栏 (.hero-panel)：建筑图纸图框 + 坐标总图 (.site-atlas) + 图标栏表格 (.metric-grid)
   -------------------------------------------------------------------------- */
.hero-panel {
  background: var(--arch-sheet) !important;
  border: 1.5px solid var(--arch-rule-heavy) !important;
  border-radius: 2px !important;
  box-shadow: 4px 4px 0 rgba(22, 30, 28, 0.08) !important;
  padding: 14px !important;
}

.hero-panel .hero-art,
.hero-panel .site-atlas {
  background-color: #f6f3ec !important;
  background-image:
    linear-gradient(90deg, rgba(31, 66, 82, 0.06) 1px, transparent 1px),
    linear-gradient(180deg, rgba(31, 66, 82, 0.06) 1px, transparent 1px) !important;
  background-size: 20px 20px !important;
  border: 1px solid var(--arch-rule-firm) !important;
  border-radius: 0 !important;
}

/* 废除八彩糖果色块，改为白底工程图签 + 细墨线框 + 左端 2px 功能色标 */
.hero-panel .atlas-node {
  background: var(--arch-white) !important;
  border: 1px solid var(--arch-rule-firm) !important;
  border-left: 2.5px solid var(--arch-prussian) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 7px 9px !important;
}
.hero-panel .atlas-node:hover {
  background: var(--arch-prussian-tint) !important;
  border-color: var(--arch-prussian) !important;
  transform: none !important;
  box-shadow: none !important;
}
.hero-panel .atlas-future:hover {
  transform: translateX(-50%) !important;
}
.hero-panel .atlas-process,
.hero-panel .atlas-emg {
  border-left-color: var(--arch-vermilion) !important;
}
.hero-panel .atlas-opd,
.hero-panel .atlas-ward,
.hero-panel .atlas-comments {
  border-left-color: var(--arch-sage) !important;
}
.hero-panel .atlas-assets {
  border-left-color: var(--arch-ochre) !important;
}

.hero-panel .atlas-node b {
  color: var(--arch-ink) !important;
  font-size: 12.5px !important;
}
.hero-panel .atlas-node span,
.hero-panel .atlas-chip {
  color: var(--arch-ink-muted) !important;
  text-decoration: none !important;
  font-size: 11px !important;
}
.hero-panel .atlas-chip:hover {
  color: var(--arch-vermilion) !important;
  background: transparent !important;
  text-decoration: underline !important;
}

/* 中心图签：普鲁士深青印章框（平涂无渐变，双线内框） */
.hero-panel .atlas-center {
  background: var(--arch-prussian) !important;
  border: 1.5px solid var(--arch-ink) !important;
  outline: 1px solid rgba(255, 255, 255, 0.32) !important;
  outline-offset: -4px !important;
  border-radius: 0 !important;
  box-shadow: 3px 3px 0 rgba(22, 30, 28, 0.16) !important;
}
.hero-panel .atlas-center:hover {
  transform: translate(-50%, -50%) !important;
  background: #173340 !important;
}
.hero-panel .atlas-center b,
.hero-panel .atlas-center span {
  color: #ffffff !important;
}

/* 统计指标 (.metric-grid)：彻底废除“四色小方块”，改为连体工程图纸图标栏 (Title Block Table) */
.metric-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  border: 1.5px solid var(--arch-rule-heavy) !important;
  background: var(--arch-white) !important;
}

.metric-grid .metric,
.metric-grid .metric:nth-child(1),
.metric-grid .metric:nth-child(2),
.metric-grid .metric:nth-child(3),
.metric-grid .metric:nth-child(4) {
  background: var(--arch-white) !important;
  border: 0 !important;
  border-right: 1px solid var(--arch-rule-firm) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 10px 12px !important;
  position: relative;
}
.metric-grid .metric:last-child {
  border-right: 0 !important;
}
.metric-grid .metric::before {
  content: "0" counter(metric-idx);
  display: block;
  font-family: var(--font-mono-arch) !important;
  font-size: 10px;
  color: var(--arch-ink-muted);
  letter-spacing: 0.08em;
  margin-bottom: 2px;
}
.metric-grid { counter-reset: metric-idx; }
.metric-grid .metric { counter-increment: metric-idx; }

.metric-grid .metric b,
.metric-grid .metric:nth-child(1) b,
.metric-grid .metric:nth-child(3) b,
.metric-grid .metric:nth-child(4) b {
  font-family: var(--font-mono-arch) !important;
  font-size: 24px !important;
  color: var(--arch-ink) !important;
  line-height: 1.1 !important;
}
.metric-grid .metric:nth-child(2) b {
  color: var(--arch-vermilion) !important;
}
.metric-grid .metric span {
  color: var(--arch-ink-muted) !important;
  font-size: 11.5px !important;
  display: block;
  margin-top: 3px;
}

.status-line {
  background: var(--arch-paper) !important;
  border: 1px solid var(--arch-rule-firm) !important;
  border-left: 3px solid var(--arch-prussian) !important;
  border-radius: 0 !important;
  color: var(--arch-ink-body) !important;
  font-size: 12px !important;
}

/* --------------------------------------------------------------------------
   分区色带与章节图框头部 (.section, .section-head)
   -------------------------------------------------------------------------- */
.section.shell {
  position: relative;
  clip-path: inset(0 -100vmax);
  padding-top: 44px !important;
  padding-bottom: 48px !important;
  border-bottom: 1px solid var(--arch-rule-firm) !important;
}

/* 摒弃花哨彩带，以暖麻纸、深档案纸、晒图浅青灰三阶中性纸张交替构建节奏 */
#principles    { background: var(--arch-paper) !important;      box-shadow: 0 0 0 100vmax var(--arch-paper) !important; }
#library       { background: var(--arch-paper-alt) !important;  box-shadow: 0 0 0 100vmax var(--arch-paper-alt) !important; }
#process       { background: var(--arch-paper-cool) !important; box-shadow: 0 0 0 100vmax var(--arch-paper-cool) !important; }
#review        { background: var(--arch-paper) !important;      box-shadow: 0 0 0 100vmax var(--arch-paper) !important; }
#illustrations { background: var(--arch-paper-alt) !important;  box-shadow: 0 0 0 100vmax var(--arch-paper-alt) !important; }
#assets        { background: var(--arch-paper) !important;      box-shadow: 0 0 0 100vmax var(--arch-paper) !important; }
#future        { background: var(--arch-paper-cool) !important; box-shadow: 0 0 0 100vmax var(--arch-paper-cool) !important; }
#suggestions   { background: var(--arch-paper-alt) !important;  box-shadow: 0 0 0 100vmax var(--arch-paper-alt) !important; }

/* 章节头：上粗下细建筑图框线 + 等宽图号标尺，修复原 ::after 右侧突兀横条 */
.section-head {
  border-top: 2px solid var(--arch-rule-heavy) !important;
  border-bottom: 1px solid var(--arch-rule-firm) !important;
  padding: 14px 0 12px !important;
  margin-bottom: 24px !important;
  align-items: baseline !important;
}

.section-head h2 {
  color: var(--arch-ink) !important;
  font-size: clamp(22px, 2.2vw, 30px) !important;
  display: inline-flex !important;
  align-items: baseline !important;
  gap: 10px !important;
}

.section-head h2::before {
  width: auto !important;
  height: auto !important;
  background: var(--arch-vermilion) !important;
  color: #ffffff !important;
  font-family: var(--font-mono-arch) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  padding: 1px 6px !important;
  border-radius: 0 !important;
  letter-spacing: 0.05em;
  transform: translateY(-2px);
}
#principles .section-head h2::before    { content: "SEC.01"; }
#library .section-head h2::before       { content: "SEC.02"; background: var(--arch-prussian) !important; }
#process .section-head h2::before       { content: "SEC.03"; background: var(--arch-sage) !important; }
#review .section-head h2::before        { content: "SEC.04"; }
#illustrations .section-head h2::before { content: "SEC.05"; background: var(--arch-prussian) !important; }
#assets .section-head h2::before        { content: "SEC.06"; background: var(--arch-ochre) !important; }
#future .section-head h2::before        { content: "SEC.07"; background: var(--arch-prussian) !important; }
#suggestions .section-head h2::before   { content: "SEC.08"; }

.section-head h2::after {
  display: none !important;
  content: none !important;
}

.section .hint, .section-subhead span {
  color: var(--arch-ink-muted) !important;
  font-size: 13px !important;
}

.section-subhead {
  border-bottom: 1px solid var(--arch-rule-firm) !important;
  padding-bottom: 8px !important;
  margin-top: 28px !important;
}

/* --------------------------------------------------------------------------
   三级差异化卡片体系（彻底打破“全站统一圆角白卡+彩条”的 AI 模板感）
   -------------------------------------------------------------------------- */

/* 【层级 A：二级图则条文卡】.principle-card / .flow-card / .case-card / .illustration-card
   特征：素纸底、直角无阴影、细墨外框 + 左侧或顶部黑墨剖切线，去图标框 */
.principle-card,
.flow-card,
.case-card,
.illustration-card,
.audit-panel,
.audit-workflow-figure,
.process-overview {
  background: var(--arch-sheet) !important;
  border: 1px solid var(--arch-rule-firm) !important;
  border-top: 2px solid var(--arch-rule-heavy) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}

.principle-card::before,
.principle-card.accent-1::before,
.principle-card.accent-2::before,
.principle-card.accent-3::before,
.principle-card.accent-4::before,
.principle-card.accent-5::before,
.principle-card.accent-6::before {
  display: none !important;
  content: none !important;
}

/* 去除圆角底框图标，改为纯粹的建筑制图线稿符号 */
.principle-card .card-icon,
.dept-summary .card-icon {
  background: transparent !important;
  border: 0 !important;
  border-right: 1px solid var(--arch-rule-thin) !important;
  border-radius: 0 !important;
  width: 34px !important;
  height: 34px !important;
  padding-right: 8px !important;
  color: var(--arch-prussian) !important;
}

.principle-card span,
.dept-summary span,
.doc-facts span,
.flow-head span,
.case-tag-row span {
  background: var(--arch-paper) !important;
  border: 1px solid var(--arch-rule-firm) !important;
  border-radius: 0 !important;
  color: var(--arch-ink-body) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
}

.flow-steps span {
  border-radius: 0 !important;
  background: var(--arch-white) !important;
  border: 1px solid var(--arch-rule-firm) !important;
}
.flow-steps i {
  border-radius: 0 !important;
  background: var(--arch-prussian) !important;
  font-family: var(--font-mono-arch) !important;
}
.flow-focus em {
  border-radius: 0 !important;
  background: var(--arch-vermilion-tint) !important;
  color: var(--arch-vermilion) !important;
  border: 1px solid rgba(166, 54, 35, 0.25) !important;
}

/* 【层级 B：一级主图幅模块卡】.module（56个空间模块）
   特征：纯白图面、建筑图框双边质感（外细框 + 底部重剖切线）、硬朗叠影、工程参数条 */
.toolbar {
  background: var(--arch-sheet) !important;
  border: 1.5px solid var(--arch-rule-heavy) !important;
  border-radius: 0 !important;
  box-shadow: 3px 3px 0 rgba(22, 30, 28, 0.08) !important;
  backdrop-filter: none !important;
}

.search {
  border: 1px solid var(--arch-rule-firm) !important;
  border-radius: 0 !important;
  background: var(--arch-white) !important;
  box-shadow: none !important;
}

.tabs .tab, .tab {
  border-radius: 0 !important;
  border: 1px solid var(--arch-rule-firm) !important;
  background: var(--arch-white) !important;
  color: var(--arch-ink-body) !important;
}
.tabs .tab:hover, .tab:hover {
  background: var(--arch-prussian-tint) !important;
  border-color: var(--arch-prussian) !important;
  color: var(--arch-prussian) !important;
}
.tabs .tab.active, .tab.active, .tabs button.active {
  background: var(--arch-prussian) !important;
  border-color: var(--arch-prussian) !important;
  color: #ffffff !important;
  box-shadow: none !important;
}

.module {
  background: var(--arch-white) !important;
  border: 1px solid var(--arch-rule-firm) !important;
  border-top: 1px solid var(--arch-rule-firm) !important;
  border-bottom: 2.5px solid var(--arch-rule-heavy) !important;
  border-radius: 0 !important;
  box-shadow: 3px 3px 0 rgba(22, 30, 28, 0.06) !important;
  transform: none !important;
}
.module:hover {
  border-color: var(--arch-prussian) !important;
  border-bottom-color: var(--arch-vermilion) !important;
  box-shadow: 4px 4px 0 rgba(31, 66, 82, 0.14) !important;
  transform: none !important;
}

.visual {
  background: #eae8e1 !important;
  border-bottom: 1px solid var(--arch-rule-firm) !important;
}

.badge {
  border-radius: 0 !important;
  background: rgba(250, 248, 243, 0.94) !important;
  border: 1px solid var(--arch-rule-firm) !important;
  color: var(--arch-ink) !important;
  font-family: var(--font-mono-arch), var(--font-sans-body) !important;
}
.badge.core {
  background: var(--arch-vermilion) !important;
  border-color: var(--arch-vermilion) !important;
  color: #ffffff !important;
}
.badge.important {
  background: var(--arch-ochre-tint) !important;
  border-color: var(--arch-ochre) !important;
  color: var(--arch-ochre) !important;
}
.badge.model {
  background: var(--arch-prussian-tint) !important;
  border-color: var(--arch-prussian) !important;
  color: var(--arch-prussian) !important;
}

.interactive-cover-bar b,
.model-tip {
  border-radius: 0 !important;
  background: rgba(22, 30, 28, 0.88) !important;
  font-family: var(--font-mono-arch), var(--font-sans-body) !important;
}
.interactive-cover-bar span {
  border-radius: 0 !important;
  background: rgba(250, 248, 243, 0.95) !important;
  color: var(--arch-prussian) !important;
  border: 1px solid var(--arch-rule-firm) !important;
}

/* 模块内 3D 模型前置框：去除渐变，改为晒图蓝灰细线框 */
.module-front-entry {
  background: var(--arch-sheet) !important;
  border: 1px solid var(--arch-rule-firm) !important;
  border-left: 3px solid var(--arch-prussian) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.module-front-copy > span {
  color: var(--arch-prussian) !important;
  letter-spacing: 0.05em;
}
.module-front-copy > b {
  color: var(--arch-ink) !important;
}
.module-front-copy i,
.sq-chip {
  border-radius: 0 !important;
  background: var(--arch-white) !important;
  border: 1px solid var(--arch-rule-thin) !important;
  color: var(--arch-ink-body) !important;
}
.sq-chip.sq-area {
  background: var(--arch-prussian-tint) !important;
  border-color: rgba(31, 66, 82, 0.3) !important;
  color: var(--arch-prussian) !important;
}
.sq-chip.sq-norm {
  background: var(--arch-vermilion-tint) !important;
  border-color: rgba(166, 54, 35, 0.3) !important;
  color: var(--arch-vermilion) !important;
}

/* 模块主次按钮对比：朱砂红印章主入口 + 普鲁士青描边副入口 */
.module-front-actions .module-model-primary,
.module-actions .btn.primary[data-open-model] {
  background: var(--arch-vermilion) !important;
  border: 1px solid var(--arch-vermilion) !important;
  border-radius: 2px !important;
  color: #ffffff !important;
  box-shadow: none !important;
  transform: none !important;
}
.module-front-actions .module-model-primary:hover,
.module-actions .btn.primary[data-open-model]:hover {
  background: var(--arch-vermilion-hover) !important;
  border-color: var(--arch-vermilion-hover) !important;
  transform: none !important;
}
.module .btn:not(.primary) {
  border-radius: 2px !important;
  border: 1px solid var(--arch-prussian) !important;
  color: var(--arch-prussian) !important;
  background: var(--arch-white) !important;
  box-shadow: none !important;
}
.module .btn:not(.primary):hover {
  background: var(--arch-prussian-tint) !important;
}

/* 审图规则条目：去圆角，左侧细剖切线 */
.rule {
  border-radius: 0 !important;
  background: var(--arch-sheet) !important;
  border: 1px solid var(--arch-rule-thin) !important;
  border-left: 3px solid var(--arch-sage) !important;
  color: var(--arch-ink-body) !important;
}
.rule.core {
  background: var(--arch-vermilion-tint) !important;
  border-left-color: var(--arch-vermilion) !important;
  color: #6e1f11 !important;
}
.rule.important {
  background: var(--arch-ochre-tint) !important;
  border-left-color: var(--arch-ochre) !important;
  color: #593b0d !important;
}

/* 【层级 C：三级工程目录与审图清单行】.dept-summary / .review-dept / .review-module
   特征：去卡片化，透明或平涂连体明细表风格，以粗细横线组织层级 */
.dept-summary {
  background: transparent !important;
  border: 0 !important;
  border-top: 1.5px solid var(--arch-rule-heavy) !important;
  border-bottom: 1px solid var(--arch-rule-firm) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 14px 4px !important;
}
.dept-summary:hover {
  background: rgba(255, 255, 255, 0.45) !important;
  transform: none !important;
  box-shadow: none !important;
}

.review-dept {
  background: var(--arch-sheet) !important;
  border: 1px solid var(--arch-rule-firm) !important;
  border-top: 2px solid var(--arch-rule-heavy) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 16px !important;
}

.review-dept-head {
  border-bottom: 1px solid var(--arch-rule-firm) !important;
  padding-bottom: 8px !important;
  margin-bottom: 12px !important;
}

.review-module-list {
  gap: 0 !important;
  border-top: 1px solid var(--arch-rule-firm) !important;
  border-left: 1px solid var(--arch-rule-firm) !important;
}

.review-module {
  background: var(--arch-white) !important;
  border: 0 !important;
  border-right: 1px solid var(--arch-rule-firm) !important;
  border-bottom: 1px solid var(--arch-rule-firm) !important;
  border-left: 3px solid transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 10px 12px !important;
  transform: none !important;
}
.review-module:hover {
  background: var(--arch-prussian-tint) !important;
  border-left-color: var(--arch-vermilion) !important;
  transform: none !important;
}

.review-guide,
.review-figure {
  background: var(--arch-sheet) !important;
  border: 1px solid var(--arch-rule-firm) !important;
  border-top: 2px solid var(--arch-prussian) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* 留言框与页脚 */
.quick-panel,
.comment.suggestion-box {
  background: var(--arch-sheet) !important;
  border: 1px solid var(--arch-rule-firm) !important;
  border-top: 2px solid var(--arch-rule-heavy) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

footer, .footer {
  background: var(--arch-ink) !important;
  color: #d8d4c8 !important;
  border-top: 3px solid var(--arch-vermilion) !important;
}
footer a {
  color: #f3efe6 !important;
  text-decoration: underline;
}

/* --------------------------------------------------------------------------
   响应式适配：桌面 1360px 与 手机 390px 严谨兼顾
   -------------------------------------------------------------------------- */
@media (max-width: 720px) {
  .hero {
    padding-top: 18px !important;
    padding-bottom: 22px !important;
  }
  .section.shell {
    padding-top: 28px !important;
    padding-bottom: 32px !important;
  }
  .metric-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .metric-grid .metric:nth-child(2) {
    border-right: 0 !important;
  }
  .metric-grid .metric:nth-child(1),
  .metric-grid .metric:nth-child(2) {
    border-bottom: 1px solid var(--arch-rule-firm) !important;
  }
  .review-module-list {
    border-top: 1px solid var(--arch-rule-firm) !important;
  }
  /* 保持手机端抽屉与顶部搜索停靠条的位移过渡正常可用 */
  html.is-mobile .topbar,
  html.is-mobile #library .toolbar.sb-dock,
  html.is-mobile .sb-grip {
    transition: transform 0.2s ease, top 0.25s ease !important;
  }
}


/* ===== 2026-10-21d 融合收口：保留图册式直角/细墨线/平涂的去模板化结构，恢复中性色带与对比点缀；
   移除 CSS 生成的文字（不改页面内容）。色彩全部平涂，无渐变、无动画。 ===== */
.hero .eyebrow::before { content: none !important; }
.metric-grid .metric::before { content: none !important; display: none !important; }
.section-head h2::before,
#principles .section-head h2::before, #library .section-head h2::before, #process .section-head h2::before,
#review .section-head h2::before, #illustrations .section-head h2::before, #assets .section-head h2::before,
#future .section-head h2::before, #suggestions .section-head h2::before {
  content: "" !important; display: inline-block; width: 12px !important; height: 12px !important;
  padding: 0 !important; transform: none !important; flex: 0 0 12px; align-self: center;
}
#principles .section-head h2::before, #illustrations .section-head h2::before { background: #4d7a6a !important; }
#library .section-head h2::before, #assets .section-head h2::before { background: #a87a33 !important; }
#process .section-head h2::before, #future .section-head h2::before { background: #3f6a86 !important; }
#review .section-head h2::before, #suggestions .section-head h2::before { background: #b8523a !important; }

/* 中性色带（平涂） */
.hero { background-color: #ece6d8 !important; box-shadow: 0 0 0 100vmax #ece6d8 !important; }
#principles, #illustrations { background: #e3ebe4 !important; box-shadow: 0 0 0 100vmax #e3ebe4 !important; }
#library, #assets { background: #efe6d4 !important; box-shadow: 0 0 0 100vmax #efe6d4 !important; }
#process, #future { background: #e1e8ed !important; box-shadow: 0 0 0 100vmax #e1e8ed !important; }
#review, #suggestions { background: #f1e2d9 !important; box-shadow: 0 0 0 100vmax #f1e2d9 !important; }
.hero-panel { background: #faf8f2 !important; }
.hero-panel .site-atlas { background-color: #efeadd !important; }

/* 指标标题栏：保持连体表格，四格平涂淡色 */
.metric-grid .metric:nth-child(1) { background: #e3ebe4 !important; }
.metric-grid .metric:nth-child(2) { background: #f1e2d9 !important; }
.metric-grid .metric:nth-child(3) { background: #efe6d4 !important; }
.metric-grid .metric:nth-child(4) { background: #e1e8ed !important; }
.metric-grid .metric:nth-child(1) b { color: #2f5d4c !important; }
.metric-grid .metric:nth-child(2) b { color: #9c3f29 !important; }
.metric-grid .metric:nth-child(3) b { color: #7f5a1d !important; }
.metric-grid .metric:nth-child(4) b { color: #2d4f66 !important; }

/* 结构图节点：平涂分组色 + 同色左边线（与连线同色系） */
.hero-panel .atlas-node { background: var(--nb, #fff) !important; border-left: 4px solid var(--nc, #26473c) !important; }
.hero-panel .atlas-node b, .hero-panel .atlas-node b a { color: #1b2a30 !important; }
.hero-panel .atlas-center { background: #234f58 !important; }

/* 模块卡：左侧墙线按分区点缀色区分（保持直角、细框） */
#principles .principle-card, #principles .dept-summary { border-left: 4px solid #4d7a6a !important; }
#library .module { border-left-color: #a87a33 !important; }
#process .flow-card { border-left: 4px solid #3f6a86 !important; }
#review .review-dept { border-left: 4px solid #b8523a !important; }

/* 图标与标题不重叠；去掉卡片彩色顶线（改由左侧墙线/色带承担分区色） */
.principle-card .card-icon, .dept-summary .card-icon { flex: 0 0 44px !important; width: 44px !important; height: 44px !important; padding: 0 !important; border-right: 0 !important; overflow: visible; }
.principle-card .card-icon svg, .dept-summary .card-icon svg { width: 36px !important; height: 36px !important; }
.principle-head, .dept-head { display: flex !important; align-items: center; gap: 12px; }
.principle-card.accent-1, .principle-card.accent-2, .principle-card.accent-3, .principle-card.accent-4,
.principle-card.accent-5, .principle-card.accent-6 { border-top: 2px solid var(--arch-rule-heavy, #1b2422) !important; }


/* ===== 2026-10-21e 色彩体系重定：白底 + 海蓝主色 + 玫红点缀 + 浅黄高亮；小圆角扁平按钮（参照用户给定参考图） =====
   交互模型（弹窗头、查看器）的暗色统一为海蓝。全部平涂；白底文字对比度 ≥ AA。 */
:root {
  --sea: #1d7396; --sea-deep: #0f5f80; --sea-mid: #4a95b3; --sea-soft: #e4f1f6; --sea-line: #c9dde6;
  --rose: #d6336c; --rose-deep: #b8285a; --rose-soft: #fbe7ee;
  --sun: #ffe66d; --sun-soft: #fff6cc; --mint-soft: #e2f2ea;
  --ink-sea: #12384a;
  --r-s: 6px;
}
html, body { background: #fff !important; background-image: none !important; color: #26414d !important; }
.topbar { background: #fff !important; border-bottom: 1px solid var(--sea-line) !important; border-image: none !important; box-shadow: none !important; }
.main-menu .menu-group > button, .main-menu .menu-direct, .team-toggle, .lang-switch {
  border: 1px solid var(--sea-line) !important; border-radius: var(--r-s) !important; background: #fff !important; color: var(--ink-sea) !important; box-shadow: none !important; }
.main-menu .menu-group > button:hover, .main-menu .menu-direct:hover, .lang-switch:hover { background: var(--sea-soft) !important; border-color: var(--sea) !important; }
.main-menu .guide-direct { background: var(--sea) !important; border-color: var(--sea) !important; color: #fff !important; }
.main-menu .guide-direct:hover { background: var(--sea-deep) !important; }
.main-menu > a[href="#suggestions"] { background: var(--rose-soft) !important; border-color: var(--rose) !important; color: var(--rose-deep) !important; }
.submenu { border: 1px solid var(--sea-line) !important; border-top: 3px solid var(--sea) !important; border-radius: var(--r-s) !important; box-shadow: 0 6px 18px rgba(15, 95, 128, .12) !important; background: #fff !important; }
.submenu a:hover { background: var(--sea-soft) !important; color: var(--sea-deep) !important; }

/* 全站白底：取消色带，用细线分区 */
.hero, #principles, #library, #process, #review, #illustrations, #assets, #future, #suggestions {
  background: #fff !important; box-shadow: none !important; clip-path: none !important; }
.hero { background-image: none !important; border-bottom: 1px solid var(--sea-line) !important; }
.section.shell { border-top: 1px solid var(--sea-line); }
.hero h1 { color: var(--ink-sea) !important; }
.hero p { border-left: 3px solid var(--sun) !important; color: #2f4b57 !important; }
.hero .eyebrow { background: var(--sun-soft) !important; border: 1px solid #e6cf5a !important; color: #5c4a00 !important; border-radius: var(--r-s) !important; }

/* 按钮：小圆角扁平 */
.btn { border-radius: var(--r-s) !important; background: #fff !important; border: 1px solid var(--sea) !important; color: var(--sea-deep) !important; box-shadow: none !important; }
.btn:hover { background: var(--sea-soft) !important; }
.btn.primary { background: var(--rose) !important; border-color: var(--rose) !important; color: #fff !important; }
.btn.primary:hover { background: var(--rose-deep) !important; border-color: var(--rose-deep) !important; }
.module .btn:not(.primary) { border-color: var(--sea) !important; color: var(--sea-deep) !important; }
.content-link-strip { border: 0 !important; gap: 8px; display: flex; flex-wrap: wrap; }
.content-link-strip a { border: 0 !important; border-radius: var(--r-s) !important; background: var(--sea-soft) !important; color: var(--sea-deep) !important; box-shadow: none !important; }
.content-link-strip a:nth-child(3n+2) { background: var(--sun-soft) !important; color: #5c4a00 !important; }
.content-link-strip a:nth-child(3n+3) { background: var(--rose-soft) !important; color: var(--rose-deep) !important; }
.content-link-strip a:hover { filter: brightness(.96); }

/* 分区标题 */
.section-head { border-bottom: 1px solid var(--sea-line) !important; }
.section-head h2 { color: var(--ink-sea) !important; }
.section-head h2::before, #principles .section-head h2::before, #library .section-head h2::before, #process .section-head h2::before,
#review .section-head h2::before, #illustrations .section-head h2::before, #assets .section-head h2::before,
#future .section-head h2::before, #suggestions .section-head h2::before { background: var(--sea) !important; border-radius: 3px; }
#review .section-head h2::before, #suggestions .section-head h2::before { background: var(--rose) !important; }
#assets .section-head h2::before, #illustrations .section-head h2::before { background: #e0b800 !important; }
.section .hint, .section-subhead span { color: #44606d !important; }

/* 卡片：白底细海蓝线、小圆角、平涂 */
.principle-card, .flow-card, .case-card, .illustration-card, .audit-panel, .audit-workflow-figure, .process-overview,
.dept-summary, .module, .review-dept, .review-guide, .review-figure, .toolbar {
  background: #fff !important; border: 1px solid var(--sea-line) !important; border-radius: 8px !important; box-shadow: none !important; }
.principle-card { border-top: 3px solid var(--sea) !important; }
.principle-card.accent-2, .principle-card.accent-6 { border-top-color: #e0b800 !important; }
.principle-card.accent-3, .principle-card.accent-5 { border-top-color: var(--rose) !important; }
.dept-summary { border-top: 3px solid var(--sea-mid) !important; }
.principle-card span, .dept-summary span, .doc-facts span, .flow-head span { border-radius: 4px !important; background: var(--sea-soft) !important; border-color: var(--sea-line) !important; color: var(--ink-sea) !important; }
.card-links a, .principle-card .btn { border-radius: var(--r-s) !important; }
.principle-card .card-icon, .dept-summary .card-icon { color: var(--sea) !important; }
.tabs button, .tabs a { border-radius: var(--r-s) !important; }
.tabs button.active, .tabs .active { background: var(--sea-deep) !important; border-color: var(--sea-deep) !important; color: #fff !important; }

/* 结构图：小圆角扁平节点 */
.hero-panel { background: #fff !important; border: 1px solid var(--sea-line) !important; border-radius: 10px !important; box-shadow: none !important; }
.hero-panel .site-atlas { background: #f3f9fb !important; border: 1px solid var(--sea-line) !important; border-radius: 8px !important; }
.hero-panel .atlas-node { border-radius: var(--r-s) !important; border: 1px solid var(--nc2, var(--sea-line)) !important; box-shadow: none !important; background: var(--nb) !important; }
.hero-panel .atlas-process { --nb: var(--sun-soft); --nc2: #e6cf5a; }
.hero-panel .atlas-review { --nb: var(--rose-soft); --nc2: #eeb3c8; }
.hero-panel .atlas-opd { --nb: var(--sea-soft); --nc2: #a9cfdf; }
.hero-panel .atlas-emg { --nb: var(--rose-soft); --nc2: #eeb3c8; }
.hero-panel .atlas-tech { --nb: #e6edf8; --nc2: #b4c6e4; }
.hero-panel .atlas-ward { --nb: var(--mint-soft); --nc2: #a9d6c0; }
.hero-panel .atlas-assets { --nb: var(--sun-soft); --nc2: #e6cf5a; }
.hero-panel .atlas-future { --nb: #ece6f6; --nc2: #c9bde4; }
.hero-panel .atlas-comments { --nb: var(--mint-soft); --nc2: #a9d6c0; }
.hero-panel .atlas-node b, .hero-panel .atlas-node b a { color: var(--ink-sea) !important; }
.hero-panel .atlas-node span { color: #3e5a66 !important; }
.hero-panel .atlas-chip { color: var(--sea-deep) !important; text-decoration-color: var(--sea-mid); }
.hero-panel .atlas-center { background: var(--sea) !important; border: 0 !important; border-radius: 8px !important; box-shadow: none !important; }
.metric-grid { border: 1px solid var(--sea-line) !important; border-radius: 8px !important; overflow: hidden; }
.metric-grid .metric:nth-child(1) { background: var(--sea-soft) !important; }
.metric-grid .metric:nth-child(2) { background: var(--rose-soft) !important; }
.metric-grid .metric:nth-child(3) { background: var(--sun-soft) !important; }
.metric-grid .metric:nth-child(4) { background: var(--mint-soft) !important; }
.metric-grid .metric:nth-child(1) b { color: var(--sea-deep) !important; }
.metric-grid .metric:nth-child(2) b { color: var(--rose-deep) !important; }
.metric-grid .metric:nth-child(3) b { color: #7a6100 !important; }
.metric-grid .metric:nth-child(4) b { color: #1e6b4a !important; }

/* 交互模型暗色：海蓝 */
#modelModal .modal-head, #modelModal .site-modal-head, #modelModal .review-modal-head,
#siteModelModal .modal-head, #siteModelModal .site-modal-head, #siteModelModal .review-modal-head { background: #0f5f80 !important; }
#modelModal, #siteModelModal { --heal-modal-dark: #0d4f6b; }
footer, .footer { background: var(--sea-soft) !important; color: var(--ink-sea) !important; }
.section-head { border-top: 0 !important; }
#principles .principle-card, #principles .dept-summary, #process .flow-card, #review .review-dept { border-left: 1px solid var(--sea-line) !important; }
.principle-card, .dept-summary { border-left-width: 1px !important; }
.principle-card.accent-1, .principle-card.accent-2, .principle-card.accent-3, .principle-card.accent-4, .principle-card.accent-5, .principle-card.accent-6 { border-top-width: 3px !important; }
.principle-card.accent-1, .principle-card.accent-4 { border-top-color: var(--sea) !important; }

/* 2026-10-21f 结构图：白底、浅灰色块、中央红底白字；主红色统一 */
:root { --rose: #c9304c; --rose-deep: #a8243c; }
.hero-panel .site-atlas { background: #fff !important; border-color: #dfe3e5 !important; }
.hero-panel .atlas-node { --nb: #f1f3f4 !important; --nc2: #d9dde0 !important; background: #f1f3f4 !important; border-color: #d9dde0 !important; }
.hero-panel .atlas-center { background: var(--rose) !important; }
.hero-panel .atlas-center b, .hero-panel .atlas-center span { color: #fff !important; }
.metric-grid { border-color: #dfe3e5 !important; }
.metric-grid .metric:nth-child(n) { background: #f1f3f4 !important; }


/* ===== 2026-10-21g 全局形状规则：有链接/可点击的卡片、文字框、按钮 = 小圆角或胶囊；无链接的信息块 = 直角 ===== */
:root { --r-link: 6px; --r-card-link: 8px; --r-pill: 999px; }

/* —— 无链接：直角 —— */
.principle-card, .flow-card, .dept-summary, .case-card, .illustration-card, .process-overview, .audit-panel,
.audit-workflow-figure, .review-dept, .review-guide, .review-figure, .public-source-note, .toolbar,
.hero-panel, .hero-panel .site-atlas, .metric-grid, .metric-grid .metric, .hero .eyebrow, .hero-steps, .hero-steps *,
.principle-card span, .dept-summary span, .doc-facts span, .flow-head span, .flow-steps span, .flow-focus em,
.module .chip, .module .tag, .module .badge, .module .sq-chip, .sq-chip, .team-card, .case-card span,
.review-modal, .site-modal, .modal-card, .guide-card, .submenu,
input, textarea, select, .hint, .note, figure, figure img, table {
  border-radius: 0 !important;
}
.module img, .principle-card img, .illustration-card img { border-radius: 0 !important; }

/* —— 有链接 / 可点击：小圆角 —— */
a.btn, button, .btn, .menu-toggle, .main-menu .menu-group > button, .main-menu .menu-direct, .lang-switch,
.module .btn, .card-links a, .principle-card .btn, .hero-actions a, .tabs button, .tabs a,
.hero-panel .atlas-node, .review-module, .review-module a, .interactive-cover, .interactive-cover-img,
.submenu a, .modal-close-btn, .asset, a.asset, .flow-card .resource-links a, .resource-links a {
  border-radius: var(--r-link) !important;
}
.module { border-radius: var(--r-card-link) !important; }          /* 整卡可点开说明 / 进入模型 */
.hero-panel .atlas-center { border-radius: var(--r-card-link) !important; }

/* —— 胶囊：标签式链接 —— */
.content-link-strip a, .hero-panel .atlas-chip, .card-links a, .tabs button, .flow-card .resource-links a, .resource-links a,
.lang-switch, .main-menu .menu-group > button, .main-menu .menu-direct {
  border-radius: var(--r-pill) !important;
}
.hero-panel .atlas-chip { padding: 0 6px; }
html body .content-link-strip a, html body .hero .content-link-strip a, html body .toolbar .tabs button, html body .tabs button,
html body .card-links a, html body .resource-links a { border-radius: 999px !important; }
html body .hero-panel .atlas-chip:hover { background: var(--sea-soft) !important; border-radius: 999px !important; }
html body .content-link-strip { display: flex !important; flex-wrap: wrap; gap: 8px !important; background: none !important; }


/* ===== 知识问答面板（2026-10-22） ===== */
.audit-qa .qa-form { display: grid; gap: 10px; }
.audit-qa label { display: grid; gap: 4px; font-weight: 700; font-size: 13px; }
.audit-qa select, .audit-qa textarea { width: 100%; border: 1px solid var(--heal-line-firm); border-radius: 6px; padding: 8px 10px; background: #fff; color: var(--heal-ink-body); font-size: 14px; }
.audit-qa textarea { resize: vertical; min-height: 76px; line-height: 1.6; }
.qa-actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.qa-actions button { background: var(--heal-clay); color: #fff; border: 0; border-radius: 6px; padding: 8px 22px; font-weight: 700; cursor: pointer; }
.qa-actions button:hover { background: var(--heal-clay-hover); }
.qa-actions button:disabled { opacity: .55; cursor: wait; }
.qa-actions span, .qa-privacy, .qa-model { font-size: 12px; color: var(--heal-ink-muted); }
.qa-privacy { margin: 0; line-height: 1.6; }
.qa-answer { margin-top: 12px; }
.qa-text { line-height: 1.85; font-size: 14px; background: var(--heal-paper-light); border: 1px solid var(--heal-line); border-radius: 6px; padding: 12px 14px; }
.qa-note { background: var(--heal-ochre-soft); border-left: 3px solid var(--heal-ochre); padding: 8px 12px; margin: 0 0 8px; font-size: 13px; }
.qa-ref { display: inline-block; font-size: 11px; font-weight: 700; color: var(--heal-sage); background: var(--heal-sage-soft); border-radius: 4px; padding: 0 5px; margin: 0 1px; text-decoration: none; }
.qa-sources { margin-top: 10px; display: grid; gap: 6px; }
.qa-sources > b { font-size: 13px; }
.qa-sources details { border: 1px solid var(--heal-line); border-radius: 6px; background: #fff; padding: 6px 10px; }
.qa-sources summary { cursor: pointer; font-size: 13px; }
.qa-sources details p { margin: 6px 0 2px; font-size: 13px; line-height: 1.7; }
.qa-k { font-weight: 700; color: var(--heal-sage); margin-right: 6px; }
.qa-t { font-size: 11px; border: 1px solid var(--heal-sage-border); border-radius: 4px; padding: 0 5px; margin-right: 6px; color: var(--heal-sage); }
.qa-hint { color: var(--heal-ink-body); } .qa-src { color: var(--heal-ink-muted); font-size: 12px !important; }

/* ===== 图纸审核：标签页 + 智能体审图（2026-10-23） ===== */
.audit-tabs { display: flex; gap: 8px; margin: 0 0 14px; overflow-x: auto; scrollbar-width: none; padding-bottom: 2px; }
.audit-tabs::-webkit-scrollbar { display: none; }
.audit-tabs button { flex: 1 1 0; min-width: 118px; display: grid; gap: 2px; text-align: left; padding: 9px 14px; background: var(--heal-paper-light); color: var(--heal-ink-body);
  border: 1px solid var(--heal-line-firm); border-radius: var(--heal-radius-md); cursor: pointer; font-family: inherit; }
.audit-tabs button b { font-size: 15px; }
.audit-tabs button small { font-size: 11.5px; color: var(--heal-ink-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.audit-tabs button:hover { border-color: var(--heal-sage); background: var(--heal-sage-soft); }
.audit-tabs button.on { background: var(--heal-sage-deep); color: #fff; border-color: var(--heal-sage-deep); box-shadow: var(--heal-shadow-card); }
.audit-tabs button.on small { color: rgba(255,255,255,.78); }
.audit-pane[hidden] { display: none !important; }
.audit-plan-grid { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(320px,.85fr); gap: 16px; align-items: start; }
#auditPaneQa .audit-panel, #auditPaneRecords .audit-panel { max-width: 980px; }
@media (max-width: 1100px) { .audit-plan-grid { grid-template-columns: 1fr; } }

.ag-grid { display: grid; grid-template-columns: minmax(300px, 380px) minmax(0, 1fr); gap: 16px; align-items: start; }
.ag-left { display: grid; gap: 12px; align-content: start; }
.ag-drop { position: relative; display: grid; gap: 4px; justify-items: center; text-align: center; padding: 18px 12px; border: 1.5px dashed var(--heal-sage); border-radius: var(--heal-radius-md); background: var(--heal-sage-soft); cursor: pointer; }
.ag-drop.over { background: #dcebe3; border-style: solid; }
.ag-drop input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.ag-drop b { color: var(--heal-sage-deep); font-size: 15px; }
.ag-drop em { font-style: normal; font-size: 12px; color: var(--heal-ink-muted); line-height: 1.6; }
.ag-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.ag-fields label { display: grid; gap: 4px; font-size: 13px; font-weight: 700; }
.ag-wide { grid-column: 1 / -1; }
.ag-fields select, .ag-fields textarea { width: 100%; border: 1px solid var(--heal-line-firm); border-radius: 6px; padding: 7px 9px; background: #fff; color: var(--heal-ink-body); font-size: 14px; font-family: inherit; }
.ag-fields textarea { resize: vertical; line-height: 1.55; }
.ag-consent { display: grid; grid-template-columns: auto 1fr; gap: 8px; align-items: start; font-size: 12.5px; line-height: 1.65; padding: 9px 11px; background: var(--heal-ochre-soft); border-left: 3px solid var(--heal-ochre); border-radius: 4px; }
.ag-consent input { margin-top: 4px; }
.ag-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.ag-actions .btn.primary:disabled { opacity: .5; cursor: not-allowed; }
#agMeta { font-size: 12.5px; color: var(--heal-ink-muted); }
#agMeta.bad { color: #b3342d; font-weight: 700; }
.ag-steps { margin: 0; padding: 0; list-style: none; display: grid; gap: 4px; font-size: 13px; }
.ag-steps li { padding: 4px 10px; border-radius: 4px; background: var(--heal-paper-subtle); color: var(--heal-ink-muted); }
.ag-steps li.done { background: var(--heal-sage-soft); color: var(--heal-sage-deep); }
.ag-steps li.done::before { content: "✓ "; }
.ag-steps li.now { background: var(--heal-ochre-soft); color: var(--heal-ink-title); font-weight: 700; }
.ag-steps li.now::before { content: "… "; }
.ag-steps li.bad { background: var(--heal-clay-soft); color: #b3342d; font-weight: 700; }
.ag-stage { min-height: 320px; border: 1px solid var(--heal-line-firm); border-radius: var(--heal-radius-md); background: #eceeed; overflow: auto; display: grid; place-items: center; padding: 8px; }
.ag-empty { color: var(--heal-ink-muted); font-size: 13.5px; line-height: 1.8; max-width: 320px; text-align: center; margin: 0; }
.ag-canvas { position: relative; display: inline-block; max-width: 100%; line-height: 0; }
.ag-canvas img { display: block; max-width: 100%; height: auto; user-select: none; -webkit-user-drag: none; }
.ag-svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.ag-svg.off { display: none; }
.ag-box { cursor: move; touch-action: none; --c: #e38400; }
.ag-box.sev-core { --c: #d22b2b; }
.ag-box.sev-optimize { --c: #2a9a4a; }
.ag-box rect { fill: var(--c); fill-opacity: .07; stroke: var(--c); stroke-width: 2.5; pointer-events: all; }
.ag-box circle { fill: var(--c); stroke: #fff; stroke-width: 1.5; }
.ag-box text { fill: #fff; font-weight: 700; pointer-events: none; font-family: "Microsoft YaHei", sans-serif; }
.ag-box.sel rect { stroke-width: 4.5; fill-opacity: .16; }
.ag-tools { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px; }
.ag-tools[hidden], .ag-steps[hidden] { display: none; }
.ag-result { margin-top: 14px; }
.ag-summary { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px 18px; padding: 10px 14px; background: var(--heal-paper-light); border: 1px solid var(--heal-line); border-radius: 6px; font-size: 13px; }
.ag-summary b { font-size: 20px; color: var(--heal-sage-deep); margin-right: 3px; }
.ag-summary em { font-style: normal; color: var(--heal-ink-muted); margin-left: auto; font-size: 12px; }
.ag-disclaimer { font-size: 12.5px; color: var(--heal-ink-muted); margin: 8px 0 10px; line-height: 1.7; }
.ag-issues { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 10px; }
.ag-issue { border: 1px solid var(--heal-line-firm); border-left: 4px solid #e38400; border-radius: 6px; background: #fff; padding: 10px 12px; display: grid; gap: 6px; cursor: pointer; }
.ag-issue.sev-core { border-left-color: #d22b2b; }
.ag-issue.sev-optimize { border-left-color: #2a9a4a; }
.ag-issue.sel { box-shadow: 0 0 0 2px var(--heal-sage); }
.ag-issue.weak { background: var(--heal-paper-subtle); }
.ag-issue header { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; }
.ag-issue header b { font-size: 14px; flex: 1 1 100%; }
.ag-issue header em { font-style: normal; font-size: 12px; color: var(--heal-ink-muted); }
.ag-no { display: inline-grid; place-items: center; min-width: 22px; height: 22px; border-radius: 50%; background: #e38400; color: #fff; font-size: 12px; font-weight: 700; }
.sev-core .ag-no { background: #d22b2b; }
.sev-optimize .ag-no { background: #2a9a4a; }
.ag-sev, .ag-weak { font-size: 11px; font-weight: 700; padding: 0 6px; border-radius: 4px; border: 1px solid var(--heal-line-firm); }
.ag-weak { background: var(--heal-ochre-soft); color: var(--heal-ochre); border-color: var(--heal-ochre); }
.ag-loc { margin-left: auto; font-size: 12px; border: 1px solid var(--heal-sage-border); background: var(--heal-sage-soft); color: var(--heal-sage-deep); border-radius: 4px; padding: 1px 8px; cursor: pointer; }
.ag-issue p { margin: 0; font-size: 13px; line-height: 1.75; }
.ag-issue p i { font-style: normal; font-size: 11px; font-weight: 700; color: var(--heal-slate); background: var(--heal-slate-soft); border-radius: 3px; padding: 0 5px; margin-right: 6px; }
.ag-foot { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.ag-cite { font-size: 11px; font-weight: 700; color: var(--heal-sage); background: var(--heal-sage-soft); border: 1px solid var(--heal-sage-border); border-radius: 4px; padding: 0 6px; cursor: pointer; }
.ag-gen { font-size: 11.5px; color: var(--heal-ink-muted); }
.ag-h { margin: 16px 0 8px; font-size: 14px; color: var(--heal-sage-deep); }
.ag-uncertain { margin: 0; padding-left: 20px; font-size: 13px; line-height: 1.8; }
.ag-note { font-size: 13px; background: var(--heal-ochre-soft); border-left: 3px solid var(--heal-ochre); padding: 8px 12px; }
@media (max-width: 900px) { .ag-grid { grid-template-columns: 1fr; } .ag-issues { grid-template-columns: 1fr; } .audit-tabs button { min-width: 108px; padding: 8px 10px; } }

/* 2026-10-24 隐藏征求意见版面与评审篮（用户要求；恢复时删除本段，并还原 index.html / app.js 中的注释位置） */
#suggestions, .suggestion-box, .comment, .rating-block, .review-cart, .atlas-comments, a[href="#suggestions"] { display: none !important; }

/* 2026-10-24 AI 生成内容显式标识 */
.ai-badge { display: inline-block; margin: 0 0 8px; padding: 1px 10px; font-size: 12px; font-weight: 700; color: #7a3b00; background: var(--heal-ochre-soft, #fbf3e6); border: 1px solid var(--heal-ochre, #ad7c32); border-radius: 4px; }
.qa-privacy a { color: var(--heal-sage-deep); }
.ai-model-note { margin: 0; font-size: 12px; line-height: 1.7; color: var(--heal-ink-muted); }
.ai-model-note a { color: var(--heal-sage-deep); }
.audit-qa input#qaCode, .ag-fields input#agCode { width: 100%; border: 1px solid var(--heal-line-firm); border-radius: 6px; padding: 7px 9px; background: #fff; color: var(--heal-ink-body); font-size: 14px; font-family: inherit; }
/* hidden 属性不被 label 的 display:grid 盖掉（访问码行未启用时必须隐藏） */
.ag-fields label[hidden], .audit-qa label[hidden], .ag-wide[hidden] { display: none !important; }
