/* diagrams.css — flow (workflow / AI+human / reporting) + flywheel */
.flow{display:flex;flex-wrap:wrap;align-items:stretch;gap:var(--sp-2);margin-top:var(--sp-6)}
.flow__step{flex:1 1 180px;background:var(--surface-card);border:1px solid var(--hairline);padding:var(--sp-4)}
.band--dark .flow__step{background:var(--surface-dark-elevated);border-color:var(--hairline-dark)}
.flow__step--hl{border-color:var(--primary);border-width:2px}
.flow__step h3{font-size:var(--fs-title-sm);color:var(--ink)}
.band--dark .flow__step h3{color:var(--on-dark)}
.flow__step p{font-size:var(--fs-body-sm);color:var(--muted);margin-top:var(--sp-1)}
.band--dark .flow__step p{color:var(--on-dark-soft)}
.flow__tag{display:inline-block;font-size:var(--fs-caption);color:var(--primary);border:1px solid var(--primary);padding:1px 8px;margin-bottom:var(--sp-2)}
.flow__arrow{display:flex;align-items:center;color:var(--primary);font-size:22px;font-weight:700}
/* sink —— hover 下沉反馈（与 components.css 同一配方：平涂填充 + 描边收紧，无位移）；--hl 高亮卡保持蓝色描边 */
.flow__step{transition:background-color .16s ease-out,border-color .16s ease-out}
.flow__step:hover{background:var(--sink-fill);border-color:var(--hairline-strong)}
.flow__step--hl:hover{border-color:var(--primary)}
.band--dark .flow__step{transition:background-color .16s ease-out,border-color .16s ease-out,box-shadow .16s ease-out}
.band--dark .flow__step:hover{background:var(--surface-dark-sunk);border-color:var(--hairline-dark-sunk);box-shadow:inset 0 2px 5px rgba(0,0,0,.35)}
.band--dark .flow__step--hl:hover{border-color:var(--primary)}
@media (prefers-reduced-motion:reduce){.flow__step{transition:none}}
/* 四步 flow 横排最小需宽约 830px：768–1023px 平板区间会折行、箭头悬空，故提前转纵向 */
@media (max-width:1023.98px){
  .flow{flex-direction:column}
  .flow__arrow{justify-content:center;transform:rotate(90deg)}
}
/* print — 深色 band 不打印背景，需把浅色文字压回深色 */
@media print{
  .band--dark,.band--strip,#cta{background:none;color:var(--body)}
  .band--dark .headline,.band--dark h1,.band--dark h2,.band--dark h3,.pain__title,.tool__name,.band--dark .stat__num,.manifesto{color:var(--ink)}
  .band--dark .lead,.band--dark .kicker,.band--dark .stat__label,.pain__desc,.tool__desc,.band--dark .flow__step p{color:var(--body)}
  .pain,.tool,.band--dark .flow__step{background:none;border:1px solid var(--hairline-strong)}
  .nav,.skip-link,video{display:none}
  .js .reveal{opacity:1;transform:none}
}
