/*
 * Data-method page composition (UI-015) on the M11-B2 contract. Frozen
 * target: docs/design/ui-references/20260915-m11/index.html (UI-015 markup)
 * — the layered head ships the kicker rule, sub, proof line and stale flag
 * (shared public.css language); this sheet carries the numbered m-step left
 * rail and the data-boundary block. Served only on /zh/method/ and
 * /en/method/ alongside public.css; all values resolve to tokens.
 */

/* ---------- numbered points: m-step left rail ---------- */

.m-step {
  border-inline-start: 2px solid var(--color-border-strong);
  padding: 0 0 var(--space-6) var(--space-5);
  position: relative;
}
.m-step::before {
  content: "";
  position: absolute;
  left: -5px;
  top: var(--space-2);
  width: var(--space-2);
  height: var(--space-2);
  background: var(--color-accent);
}
.m-step h3 {
  font-family: var(--font-display);
  font-size: var(--text-heading-xs);
  font-weight: var(--weight-bold);
}
.m-step .k {
  font-family: var(--font-mono);
  font-size: var(--text-caption);
  color: var(--color-accent-text);
  letter-spacing: 0.14em;
}
.m-step p { margin: var(--space-1) 0 0; color: var(--color-text-muted); font-size: var(--text-body); }

/* The limits section: the data-boundary block carries the ink frame with the
   hard offset shadow (the frozen press-language depth device). */
.boundary {
  border: 1px solid var(--color-border-strong);
  box-shadow: var(--shadow-press);
  padding: var(--space-5);
  font-size: var(--text-label);
  color: var(--color-text-muted);
}
.boundary a { color: var(--color-accent-text); font-weight: var(--weight-semibold); }
