/* 亿晟出品创业项目超市 · 全站视觉提升层
   只增强品牌、层级、可读性和交互反馈，不改变原页面业务结构。 */

:root {
  --ys-blue: #3156df;
  --ys-blue-dark: #203aa9;
  --ys-teal: #087b72;
  --ys-orange: #e66a2c;
  --ys-ink: #172033;
  --ys-muted: #65708a;
  --ys-line: rgba(50, 70, 115, 0.14);
  --ys-line-strong: rgba(49, 86, 223, 0.22);
  --ys-surface: rgba(255, 255, 255, 0.94);
  --ys-shadow-sm: 0 8px 24px rgba(25, 44, 90, 0.07);
  --ys-shadow-md: 0 18px 48px rgba(25, 44, 90, 0.12);
  --ys-shadow-lg: 0 28px 72px rgba(25, 44, 90, 0.16);
  --ys-ease: cubic-bezier(0.2, 0.8, 0.2, 1);
}

html { scroll-behavior: smooth; scroll-padding-top: 88px; }
body {
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  background-image:
    radial-gradient(circle at 7% -8%, rgba(49, 86, 223, 0.085), transparent 28rem),
    radial-gradient(circle at 96% 7%, rgba(8, 123, 114, 0.06), transparent 30rem);
}
::selection { color: #fff; background: rgba(49, 86, 223, 0.86); }
h1, h2, h3 { text-wrap: balance; }
p, li { text-wrap: pretty; }
a, button, input, select, textarea {
  transition: color 180ms ease, background-color 180ms ease, border-color 180ms ease,
    box-shadow 220ms var(--ys-ease), transform 220ms var(--ys-ease), opacity 180ms ease;
}
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid rgba(49, 86, 223, 0.28);
  outline-offset: 3px;
}

/* 顶部导航 */
.site-head, .topbar {
  border-bottom-color: var(--ys-line);
  box-shadow: 0 8px 30px rgba(25, 44, 90, 0.06);
  backdrop-filter: blur(18px) saturate(135%);
  -webkit-backdrop-filter: blur(18px) saturate(135%);
}
.brand img, .brand-mark, .site-head .logo { box-shadow: 0 7px 20px rgba(16, 28, 59, 0.16); }
.nav a, .site-head nav a, .topbar a { text-underline-offset: 4px; }

/* 首屏 */
.hero { position: relative; isolation: isolate; box-shadow: var(--ys-shadow-lg); }
.hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background: linear-gradient(120deg, rgba(255, 255, 255, 0.12), transparent 42%);
}
.hero h1, .library-hero h1, .page-intro h1 { letter-spacing: -0.035em; }
.hero-board, .hero-panel, .showcase-preview {
  border-color: rgba(255, 255, 255, 0.22);
  box-shadow: var(--ys-shadow-md);
}

/* 通用内容面 */
.card, .nav-card, .role-card, .resource-card, .project-card, .info-card, .channel-card,
.system, .system-card, .package-card, .progress-card, .file-card, .file-row, .status-strip,
.handoff, .summary-grid > div, .timeline article, .result-grid article, .live-plan article,
.numbers, .principles, .notice, .warning {
  border-color: var(--ys-line);
  box-shadow: var(--ys-shadow-sm);
}
.card, .nav-card, .role-card, .resource-card, .project-card, .system, .package-card,
.file-card, .file-row, .timeline article, .result-grid article {
  position: relative;
  overflow: hidden;
}
.nav-card::before, .resource-card::before, .project-card::before, .system::before,
.package-card::before, .file-card::before, .timeline article::before, .result-grid article::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  pointer-events: none;
  background: linear-gradient(90deg, var(--ys-blue), var(--ys-teal), transparent 82%);
  opacity: 0.72;
}
.card-icon, .system-id, .file-type, .step-no, .sequence {
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.34), 0 7px 18px rgba(31, 55, 115, 0.12);
}
.section-head, .chapter-head, .resource-group > h2 { position: relative; }
.section-head h2, .chapter-head h2, .resource-group > h2 { letter-spacing: -0.025em; }
.eyebrow, .kicker, .section-label, .chapter-label { letter-spacing: 0.1em; }

/* 按钮和可点击卡片 */
.btn, .button, .ghost-button, .manifest, .zip, .hero-actions a, .closing a,
.filters button, .role-switcher button, .reading-tools button {
  box-shadow: 0 8px 20px rgba(31, 55, 115, 0.11);
}
.btn:active, .button:active, .ghost-button:active, .manifest:active, .zip:active,
.hero-actions a:active, .closing a:active, .filters button:active,
.role-switcher button:active, .reading-tools button:active {
  transform: translateY(1px) scale(0.985);
}
@media (hover: hover) and (pointer: fine) {
  a.nav-card:hover, a.resource-card:hover, a.role-card:hover, a.file-card:hover,
  a.file-row:hover, .project-card:hover, .timeline article:hover, .result-grid article:hover {
    transform: translateY(-4px);
    border-color: var(--ys-line-strong);
    box-shadow: var(--ys-shadow-md);
  }
  .btn:hover, .button:hover, .ghost-button:hover, .manifest:hover, .zip:hover,
  .hero-actions a:hover, .closing a:hover {
    transform: translateY(-2px);
    box-shadow: 0 13px 28px rgba(31, 55, 115, 0.18);
  }
}

/* 资料库与长文档 */
.library-hero { position: relative; }
.library-hero h1 { text-shadow: 0 7px 24px rgba(25, 44, 90, 0.1); }
.document {
  position: relative;
  border-top: 4px solid var(--green, var(--ys-teal));
  box-shadow: var(--ys-shadow-md);
}
.doc-side .back, .side-card {
  border: 1px solid var(--ys-line);
  box-shadow: 0 6px 18px rgba(25, 44, 90, 0.055);
}
.side-card {
  padding: 12px 14px;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.66);
}
.doc-body h2, .doc-body h3 { scroll-margin-top: 92px; }
.doc-body blockquote, .doc-body .note, .doc-body .tip, .doc-body .warning { border-radius: 12px; }
.table-scroll, .doc-body table { box-shadow: 0 5px 18px rgba(25, 44, 90, 0.055); }
.role-switcher, .reading-tools { border-color: var(--ys-line); box-shadow: var(--ys-shadow-sm); }

/* 下载中心 */
.file-row { border-left: 3px solid transparent; }
.file-row:focus-within { border-left-color: var(--ys-blue); }
.actions label, .manifest { border-color: var(--ys-line); }

/* 复盘、客户档案和旧版单页 */
.head, .script, .say, .qa, .risk, .note, .post {
  border-color: var(--ys-line);
  box-shadow: var(--ys-shadow-sm);
}
.head { box-shadow: var(--ys-shadow-md); }

/* 智能体规划参考页 */
body:has(nav#TOC) > header { box-shadow: var(--ys-shadow-lg); }
body:has(nav#TOC) nav#TOC, body:has(nav#TOC) > main {
  border-color: var(--ys-line);
  box-shadow: var(--ys-shadow-md);
}
body:has(nav#TOC) nav#TOC a { text-underline-offset: 4px; }
body:has(nav#TOC) table { box-shadow: 0 6px 22px rgba(25, 44, 90, 0.07); }

/* 小屏视觉收口 */
@media (max-width: 640px) {
  html { scroll-padding-top: 72px; }
  body {
    background-image:
      radial-gradient(circle at 0 -3%, rgba(49, 86, 223, 0.075), transparent 19rem),
      radial-gradient(circle at 100% 8%, rgba(8, 123, 114, 0.05), transparent 21rem);
  }
  .site-head, .topbar { box-shadow: 0 6px 20px rgba(25, 44, 90, 0.055); }
  .hero, .hero-board, .hero-panel, .showcase-preview {
    box-shadow: 0 15px 36px rgba(25, 44, 90, 0.12);
  }
  .card, .nav-card, .role-card, .resource-card, .project-card, .system, .package-card,
  .file-card, .file-row, .timeline article, .result-grid article, .document {
    box-shadow: 0 7px 20px rgba(25, 44, 90, 0.065);
  }
  .document { border-top-width: 3px; }
  .side-card { padding: 11px 12px; }
  .btn, .button, .ghost-button, .hero-actions a, .closing a, .filters button { min-height: 42px; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* --------------------------------------------------------------------------
   V4 全站排版布局：统一内容宽度、网格密度、阅读行长与响应式节奏。
   -------------------------------------------------------------------------- */

:root {
  --ys-shell-wide: 1240px;
  --ys-shell-reading: 1180px;
  --ys-gutter: clamp(18px, 3vw, 32px);
  --ys-section-gap: clamp(44px, 5.5vw, 68px);
}

/* 首页、内容系统、门户和工作手册使用同一条桌面基线。 */
.wrap:has(> .hero) {
  max-width: var(--ys-shell-wide);
  padding-left: var(--ys-gutter);
  padding-right: var(--ys-gutter);
}

.wrap:has(> .hero) > .hero {
  padding: clamp(38px, 4vw, 52px);
}

.wrap:has(> .hero) > section,
.wrap:has(> .hero) > .section {
  margin-top: var(--ys-section-gap);
}

.wrap:has(> .head) {
  box-sizing: border-box;
  max-width: 980px;
  padding-left: var(--ys-gutter);
  padding-right: var(--ys-gutter);
}

.wrap:has(> .head) > .head {
  padding: clamp(24px, 4vw, 38px);
  margin-bottom: clamp(22px, 3vw, 34px);
}

.wrap:has(> .head) > h2 {
  margin-top: clamp(38px, 5vw, 58px);
}

/* 首页总控：导航入口保持三列，岗位改为更易读的三列。 */
.card-grid,
.role-grid {
  gap: 18px;
}

.nav-card {
  min-height: 158px;
  padding: 22px;
}

.role-card {
  min-height: 206px;
  padding: 22px;
}

.showcase-preview,
.content-system-preview {
  grid-template-columns: minmax(0, 1.3fr) minmax(300px, 0.7fr);
  gap: 32px;
  padding: 36px;
}

@media (min-width: 901px) {
  .role-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* 内容系统：减轻密度，让项目卡和渠道卡形成稳定阅读节奏。 */
.project-grid {
  gap: 20px;
}

.project-card {
  padding: 28px;
}

.info-grid,
.channel-grid,
.live-plan {
  gap: 16px;
}

.info-card,
.channel-card,
.live-plan article {
  padding: 22px;
}

.risk-section {
  padding: 32px;
}

.wrap > .closing {
  padding: 30px;
}

/* 工作手册：体系内容和执行卡之间增加呼吸感。 */
.topbar {
  margin-bottom: 24px;
}

.grid,
.system-grid,
.file-grid {
  gap: 18px;
}

.system {
  margin-top: 34px;
  padding: 30px 32px;
}

.system-grid {
  gap: 22px;
}

.system .card,
.package-card,
.progress-card {
  padding: 21px;
}

/* 四个业务说明页：适度放宽桌面内容面，保持卡片不过密。 */
.wrap:has(> .topbar) {
  max-width: var(--ys-shell-reading);
}

.wrap:has(> .topbar) .section {
  margin-top: 46px;
}

.wrap:has(> .topbar) .grid {
  gap: 16px;
}

.wrap:has(> .topbar) .card {
  padding: 20px;
}

/* 资料库首页：首屏左右比例更平衡，资料卡统一栅格。 */
.library-hero {
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.65fr);
  gap: 44px;
  align-items: center;
  padding: 76px var(--ys-gutter) 54px;
}

.catalog,
.category-section {
  padding-left: var(--ys-gutter);
  padding-right: var(--ys-gutter);
}

.boundary {
  max-width: calc(var(--ys-shell-wide) - (var(--ys-gutter) * 2));
}

.category-section {
  margin-bottom: 84px;
}

.category-section > .section-head {
  padding-top: 22px;
}

.resource-grid {
  gap: 18px;
}

.resource-card {
  min-height: 208px;
  padding: 24px;
}

/* 资料详情：正文控制在舒适行长，表格和附件仍可使用全部宽度。 */
.doc-layout {
  grid-template-columns: 230px minmax(0, 1fr);
  gap: 30px;
  padding: 40px var(--ys-gutter) 96px;
}

.document {
  padding: clamp(34px, 4.4vw, 64px);
}

.document > h1 {
  max-width: 26ch;
  line-height: 1.16;
}

.doc-body > p,
.doc-body > ul,
.doc-body > ol,
.doc-body > blockquote,
.doc-body > .note,
.doc-body > .tip,
.doc-body > .warning {
  max-width: 76ch;
}

.doc-body > h2,
.doc-body > h3 {
  max-width: 32ch;
}

.doc-body > h2 {
  margin-top: 2.15em;
}

.doc-body > h3 {
  margin-top: 1.7em;
}

/* 下载中心：首屏、搜索区与文件清单共用一条对齐线。 */
body:has(> header + main .brand-lockup) > header,
body:has(> header + main .brand-lockup) > main,
body:has(> header + main .brand-lockup) > footer {
  max-width: 1200px;
}

body:has(> header + main .brand-lockup) > main {
  padding-left: var(--ys-gutter);
  padding-right: var(--ys-gutter);
}

body:has(> header + main .brand-lockup) > main > .hero {
  grid-template-columns: minmax(0, 1.3fr) minmax(300px, 0.7fr);
  gap: 34px;
  padding: 46px;
}

body:has(> header + main .brand-lockup) .actions {
  grid-template-columns: minmax(280px, 1.3fr) minmax(250px, 1fr) auto;
  gap: 14px;
}

body:has(> header + main .brand-lockup) .download-group {
  margin-top: 40px;
}

body:has(> header + main .brand-lockup) .file-list {
  gap: 9px;
}

body:has(> header + main .brand-lockup) .file-row {
  grid-template-columns: 68px minmax(0, 1fr) 100px 72px;
  min-height: 70px;
  padding: 14px 16px;
}

/* 成果展示：宽屏的首屏、阶段过程和数据区统一到 1240px。 */
.site-head {
  padding-left: max(var(--ys-gutter), calc((100vw - var(--ys-shell-wide)) / 2));
  padding-right: max(var(--ys-gutter), calc((100vw - var(--ys-shell-wide)) / 2));
}

body > .hero {
  max-width: var(--ys-shell-wide);
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr);
  gap: 48px;
  align-items: center;
  padding: 72px var(--ys-gutter) 60px;
}

body:has(> .hero + .principles) > .principles,
body:has(> .hero + .principles) > .numbers,
body:has(> .hero + .principles) > footer {
  width: calc(100% - (var(--ys-gutter) * 2));
  max-width: calc(var(--ys-shell-wide) - (var(--ys-gutter) * 2));
}

body:has(> .hero + .principles) > .section {
  max-width: var(--ys-shell-wide);
  padding-left: var(--ys-gutter);
  padding-right: var(--ys-gutter);
}

body:has(> .hero + .principles) > .section .section-head {
  max-width: 820px;
}

.timeline,
.result-grid {
  gap: 18px;
}

body:has(> .hero + .principles) > .numbers {
  padding: 44px;
  gap: 48px;
}

/* 平板：避免三、四列卡片被压得过窄。 */
@media (min-width: 721px) and (max-width: 1020px) {
  .resource-grid,
  .g3,
  .g4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .showcase-preview,
  .content-system-preview,
  .library-hero,
  body:has(> header + main .brand-lockup) > main > .hero,
  body > .hero {
    grid-template-columns: 1fr;
  }

  .doc-layout {
    grid-template-columns: 1fr;
  }
}

/* 手机：统一左右留白、模块节奏与内容顺序。 */
@media (max-width: 720px) {
  :root {
    --ys-gutter: 12px;
  }

  .wrap:has(> .hero),
  .wrap:has(> .head) {
    padding: 12px 12px 46px;
  }

  .wrap:has(> .head) {
    padding: 0 18px 35px;
  }

  .wrap:has(> .hero) > .hero,
  .wrap:has(> .head) > .head {
    min-height: 0;
    padding: 23px 18px;
  }

  .wrap:has(> .head) > .head {
    padding: 28px 18px;
  }

  .wrap:has(> .hero) > section,
  .wrap:has(> .hero) > .section,
  .wrap:has(> .topbar) .section {
    margin-top: 36px;
  }

  .section-head,
  .section-title,
  .catalog-title,
  .group-title {
    align-items: flex-start;
  }

  .nav-card,
  .role-card,
  .project-card,
  .info-card,
  .channel-card,
  .live-plan article,
  .system,
  .system .card,
  .package-card,
  .progress-card {
    padding: 17px;
  }

  .nav-card,
  .role-card {
    min-height: 0;
  }

  .showcase-preview,
  .content-system-preview {
    grid-template-columns: 1fr;
    gap: 18px;
    margin-top: 20px;
    padding: 20px 17px;
  }

  .system {
    margin-top: 24px;
  }

  .system-grid,
  .grid,
  .card-grid,
  .role-grid,
  .project-grid,
  .info-grid,
  .channel-grid,
  .live-plan,
  .resource-grid,
  .timeline,
  .result-grid {
    gap: 12px;
  }

  .risk-section {
    padding: 21px 16px;
  }

  .library-hero {
    grid-template-columns: 1fr;
    gap: 22px;
    padding: 34px 18px 30px;
  }

  .catalog,
  .category-section {
    padding-left: 18px;
    padding-right: 18px;
  }

  .category-section {
    margin-bottom: 56px;
  }

  .resource-card {
    min-height: 0;
    padding: 18px;
  }

  .doc-layout {
    grid-template-columns: 1fr;
    gap: 14px;
    padding: 16px 10px 58px;
  }

  .document {
    padding: 23px 17px;
  }

  .document > h1,
  .doc-body > p,
  .doc-body > ul,
  .doc-body > ol,
  .doc-body > blockquote,
  .doc-body > h2,
  .doc-body > h3,
  .doc-body > .note,
  .doc-body > .tip,
  .doc-body > .warning {
    max-width: none;
  }

  body:has(> header + main .brand-lockup) > header {
    padding-left: 12px;
    padding-right: 12px;
  }

  body:has(> header + main .brand-lockup) > main {
    padding-left: 12px;
    padding-right: 12px;
  }

  body:has(> header + main .brand-lockup) > main > .hero,
  body > .hero {
    grid-template-columns: 1fr;
    gap: 24px;
    padding: 38px 18px 34px;
  }

  body:has(> header + main .brand-lockup) .actions {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  body:has(> header + main .brand-lockup) .download-group {
    margin-top: 32px;
  }

  body:has(> header + main .brand-lockup) .file-row {
    grid-template-columns: 48px minmax(0, 1fr) 44px;
    min-height: 64px;
    padding: 11px 9px;
  }

  body:has(> .hero + .principles) > .section {
    padding-left: 18px;
    padding-right: 18px;
    margin-bottom: 74px;
  }

  body:has(> .hero + .principles) > .principles,
  body:has(> .hero + .principles) > .numbers,
  body:has(> .hero + .principles) > footer {
    width: calc(100% - 36px);
  }

  body:has(> .hero + .principles) > .numbers {
    padding: 25px 20px;
    gap: 24px;
  }
}

/* --------------------------------------------------------------------------
   V5 视觉精修：强化品牌感、组件识别和长内容扫描效率，不改变 V4 布局。
   -------------------------------------------------------------------------- */

body {
  background-attachment: fixed;
}

/* 品牌导航 */
.site-head,
.topbar {
  background-image: linear-gradient(105deg, rgba(255, 255, 255, 0.96), rgba(249, 251, 255, 0.9));
  border-color: rgba(73, 92, 137, 0.15);
  box-shadow: 0 10px 34px rgba(24, 42, 84, 0.075);
}

.brand img,
.brand-mark,
.site-head .logo {
  outline: 1px solid rgba(255, 255, 255, 0.86);
  outline-offset: 2px;
}

.nav a[aria-current="page"],
.site-head nav a[aria-current="page"],
.topbar a[aria-current="page"] {
  color: var(--ys-blue-dark);
  border-color: rgba(49, 86, 223, 0.2);
  background: linear-gradient(180deg, #f1f4ff, #e7ecff);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.7), 0 5px 14px rgba(49, 86, 223, 0.09);
}

/* 首屏光感和信息标签 */
.hero {
  border: 1px solid rgba(255, 255, 255, 0.18);
  box-shadow:
    0 26px 68px rgba(25, 44, 90, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

.hero::before {
  background:
    radial-gradient(circle at 12% 8%, rgba(255, 255, 255, 0.17), transparent 28%),
    radial-gradient(circle at 82% 105%, rgba(160, 205, 255, 0.13), transparent 34%),
    linear-gradient(120deg, rgba(255, 255, 255, 0.08), transparent 48%);
}

.hero h1 {
  position: relative;
  z-index: 1;
  text-shadow: 0 8px 26px rgba(14, 25, 77, 0.2);
}

.hero p,
.hero .kicker,
.hero .eyebrow,
.hero .hero-kicker,
.hero .brand-lockup,
.hero .hero-stats,
.hero .hero-flow,
.hero .meta-row,
.hero .chips,
.hero .hero-actions {
  position: relative;
  z-index: 2;
}

.hero .chips span,
.hero .hero-stats span,
.hero .meta-row span,
.hero .badges .badge {
  border-color: rgba(255, 255, 255, 0.3);
  background: rgba(255, 255, 255, 0.12);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.hero-panel,
.hero-board,
.summary,
.showcase-stats div {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 18px 44px rgba(11, 32, 70, 0.14);
}

/* 章节标题：形成稳定的视觉锚点。 */
.section-title em,
.section h2::before {
  box-shadow: 0 0 0 4px rgba(49, 86, 223, 0.07), 0 5px 12px rgba(49, 86, 223, 0.16);
}

.section-head h2,
.section-title h2,
.catalog-title h2,
.group-title h2 {
  color: var(--ys-ink);
}

.section-head h2,
.catalog-title h2 {
  position: relative;
}

.section-head h2::after,
.catalog-title h2::after {
  content: "";
  display: block;
  width: 38px;
  height: 3px;
  margin-top: 9px;
  border-radius: 99px;
  background: linear-gradient(90deg, var(--ys-blue), var(--ys-teal));
}

/* 卡片表面：用轻微渐变区分层级，重点仍由内容本身决定。 */
.nav-card,
.role-card,
.resource-card,
.project-card,
.info-card,
.channel-card,
.system,
.system-card,
.package-card,
.progress-card,
.file-card,
.file-row,
.timeline article,
.result-grid article,
.card {
  background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(248, 250, 255, 0.92));
}

.card-icon,
.role-icon,
.icon {
  border: 1px solid rgba(49, 86, 223, 0.1);
  background-image: linear-gradient(145deg, #f4f7ff, #e6ecff);
}

.tag,
.type,
.status,
.category-nav span {
  border: 1px solid rgba(60, 92, 118, 0.09);
  font-weight: 850;
}

.tag.green,
.status-pilot {
  border-color: rgba(8, 123, 114, 0.15);
  box-shadow: 0 4px 12px rgba(8, 123, 114, 0.07);
}

.tag.amber,
.status-evaluate {
  border-color: rgba(214, 132, 42, 0.17);
}

.notice,
.warning,
.boundary {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.58), 0 8px 22px rgba(84, 64, 18, 0.055);
}

.risk-section,
.redline,
.hero-board,
.numbers,
.showcase-preview {
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 24px 62px rgba(15, 37, 65, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

/* 工作手册：导航、搜索和体系卡强化“正在使用”的感觉。 */
.manual-nav,
.searchbar,
.filter {
  border-color: var(--ys-line);
  box-shadow: 0 8px 22px rgba(25, 44, 90, 0.065);
}

.system-header {
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(50, 70, 115, 0.1);
}

.system .go,
.card-copy b,
.download-cta,
.resource-card small {
  text-underline-offset: 4px;
}

/* 资料页：纸张质感与章节扫描。 */
.document {
  background-color: #fff;
  background-image:
    linear-gradient(180deg, rgba(13, 107, 81, 0.026), transparent 170px),
    linear-gradient(90deg, rgba(13, 107, 81, 0.018), transparent 13%);
}

.document > h1 {
  position: relative;
  padding-bottom: 22px;
}

.document > h1::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 58px;
  height: 4px;
  border-radius: 99px;
  background: linear-gradient(90deg, var(--green, var(--ys-teal)), var(--ys-teal));
}

.doc-body > h2 {
  padding: 8px 14px;
  border-left: 4px solid var(--green, var(--ys-teal));
  border-radius: 0 10px 10px 0;
  background: linear-gradient(90deg, rgba(13, 107, 81, 0.075), transparent 88%);
}

.doc-body > h3 {
  color: var(--green, var(--ys-teal));
}

.doc-body > h3::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  margin: 0 9px 2px 0;
  border-radius: 50%;
  background: var(--green, var(--ys-teal));
  box-shadow: 0 0 0 4px rgba(13, 107, 81, 0.08);
}

.doc-body table th,
.tablewrap table th {
  box-shadow: inset 0 -1px 0 rgba(255, 255, 255, 0.16);
}

.table-scroll,
.tablewrap {
  border-radius: 14px;
}

/* 下载中心：文件、搜索和下载动作更直观。 */
.actions label:focus-within,
.search:focus-within,
.searchbar:focus-within {
  border-color: rgba(49, 86, 223, 0.42);
  box-shadow: 0 0 0 4px rgba(49, 86, 223, 0.09), 0 10px 24px rgba(25, 44, 90, 0.08);
}

.file-type {
  border: 1px solid rgba(49, 86, 223, 0.11);
  background: linear-gradient(180deg, #f1f4ff, #e6ecff);
}

.download {
  transition: transform 180ms var(--ys-ease), color 180ms ease;
}

@media (hover: hover) and (pointer: fine) {
  a.nav-card:hover .card-icon,
  a.role-card:hover .role-icon,
  a.card:hover .icon {
    transform: translateY(-2px) scale(1.045);
    box-shadow: 0 12px 24px rgba(49, 86, 223, 0.15);
  }

  a.file-row:hover .download,
  a.file-card:hover .download-cta {
    transform: translateX(3px);
  }

  a.resource-card:hover .status,
  a.resource-card:hover .type {
    border-color: rgba(8, 123, 114, 0.22);
  }
}

@media (max-width: 720px) {
  body {
    background-attachment: scroll;
  }

  .hero {
    box-shadow: 0 18px 42px rgba(25, 44, 90, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.15);
  }

  .section-head h2::after,
  .catalog-title h2::after {
    width: 32px;
    margin-top: 7px;
  }

  .document > h1 {
    padding-bottom: 18px;
  }

  .document > h1::after {
    width: 48px;
    height: 3px;
  }

  .doc-body > h2 {
    padding: 7px 10px;
    border-left-width: 3px;
  }

  .card-icon,
  .role-icon,
  .icon {
    box-shadow: none;
  }
}
