.pf { container-type: inline-size; padding: clamp(14px, 3.4cqi, 28px) clamp(12px, 3cqi, 26px); background-color: var(--field); color: var(--bone);
  background-image: linear-gradient(var(--field-2) 1px, transparent 1px), linear-gradient(90deg, var(--field-2) 1px, transparent 1px);
  background-size: 22px 22px; background-position: -1px -1px; border-radius: 1px; font-size: 15px; line-height: 1.4; }
.pf p, .pf ol, .pf ul { margin: 0; }
.pf-title { max-width: 46ch; margin: 0 auto 18px !important; color: var(--bone); font: 800 clamp(1.05rem, .95rem + .6cqi, 1.3rem)/1.25 var(--face); font-stretch: 108%; text-align: center; text-wrap: balance; }
.pf-art { display: block; max-width: 100%; height: auto; margin: 0 auto; }
.pf-t { color: var(--bone); font-weight: 800; font-size: 15px; line-height: 1.25; }
.pf-t[style*="--c"] { color: color-mix(in srgb, var(--c) 72%, #fff); }
.pf-s { color: var(--bone-soft); font-size: 14px; line-height: 1.4; }
.pf-k { display: block; color: var(--bone-soft); font-size: 13px; font-weight: 700; }
.pf-verb { color: var(--bone); font-size: 14px; font-weight: 650; }
.pf-line { max-width: 52ch; margin: 18px auto 0 !important; color: var(--bone); font-size: 15px; text-align: center; text-wrap: balance; }
.pf-panel { display: grid; align-content: start; justify-items: center; gap: 10px; padding: 14px 12px; background: rgba(0, 0, 0, .22); border-radius: 3px; text-align: center; }
.pf-panel .pf-art { width: 100%; max-width: 220px; }

.pf-cols { display: grid; grid-template-columns: repeat(var(--pn, 2), minmax(0, 1fr)); gap: 18px 14px; }
@container (min-width: 560px) { .pf-cols { grid-template-columns: repeat(var(--n), minmax(0, 1fr)); } }
.pf-col { display: grid; align-content: start; justify-items: center; gap: 6px; text-align: center; }
.pf-piece .pf-art { width: 64px; }
.pf-cols--steps { margin-top: 10px; gap: 10px; }
.pf-cols--steps .pf-s, .pf-cols--pillars .pf-s { font-size: 13.5px; }

.pf-stairs { width: 100%; max-width: 400px; }
.pf-notes { display: grid; gap: 8px; max-width: 52ch; margin: 16px auto 0 !important; padding: 0; list-style: none; }
.pf-notes li { display: grid; grid-template-columns: 30px 1fr; align-items: center; gap: 10px; font-size: 14px; color: var(--bone); }
.pf-notes li.is-gap { color: var(--bone-soft); }
.pf-key .pf-art { width: 30px; }

.pf-phones { display: grid; grid-template-columns: minmax(0, 1fr); gap: 22px; }
@container (min-width: 560px) { .pf-phones { grid-template-columns: repeat(var(--n), minmax(0, 1fr)); } }
.pf-phonecol { display: grid; align-content: start; gap: 10px; }
@container (min-width: 560px) { .pf-phones .pf-verdict { min-height: 3.2em; } }
.pf-q { color: var(--bone); font-size: 15px; font-weight: 700; }
.pf-q .pf-k { display: inline; margin-right: 6px; }
.pf-phonerow { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 14px; align-items: start; }
.pf-phone-art { width: 96px; }
.pf-phone { fill: #0d0f13; stroke: #3a3f4b; stroke-width: 1.5; }
.pf-fold { stroke: var(--piece-o); stroke-width: 1.4; stroke-dasharray: 4 3; }
.pf-legend { display: grid; gap: 8px; margin: 0; padding: 0 0 0 1.3em; color: var(--bone); font-size: 14px; }
.pf-legend li::marker { color: var(--c, var(--bone)); font-weight: 800; }
.pf-verdict { padding-top: 8px; border-top: 4px solid var(--c); color: var(--bone); font-size: 15px; font-weight: 800; }
.pf-foldkey { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 14px !important; color: var(--bone-soft); font-size: 13px; }
.pf-foldkey .pf-art { width: 30px; }

.pf-split, .pf-liftrow { display: grid; grid-template-columns: minmax(0, 1fr); gap: 12px; }
@container (min-width: 520px) { .pf-split, .pf-liftrow { grid-template-columns: 1fr 1fr; } }
.pf-clear { fill: rgba(242, 179, 61, .12); }

.pf-root { text-align: center; margin-bottom: 8px !important; }
.pf-root .pf-t { font-size: 16px; }
.pf-tree { width: 100%; max-width: 440px; margin-bottom: 12px; }
.pf-wire { fill: none; stroke: #7c818c; stroke-width: 1.4; }
.pf-wire--mess { stroke: #e0563b; stroke-opacity: .55; }
.pf-qs { display: grid; gap: 6px; max-width: 50ch; margin: 16px auto 0 !important; padding-left: 1.4em; color: var(--bone); font-size: 14.5px; }
.pf-dig { display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; }
.pf-digcol { display: grid; grid-template-columns: minmax(0, 1fr) 54px minmax(0, 1fr); align-items: center; gap: 10px; }
.pf-digcol > .pf-t:first-child { align-self: center; }
.pf-digcol .pf-t:last-child { text-align: left; }
.pf-digcol .pf-t:first-child { text-align: right; }
.pf-shaft--down { display: none; }
.pf-shaft .pf-art { width: 54px; }
@container (min-width: 560px) {
  .pf-dig { grid-template-columns: repeat(var(--n), minmax(0, 1fr)); }
  .pf-digcol { grid-template-columns: minmax(0, 1fr); grid-template-rows: 2.6em auto auto; align-content: start; justify-items: center; text-align: center; }
  .pf-digcol > .pf-t:first-child { align-self: end; }
  .pf-digcol .pf-t:first-child, .pf-digcol .pf-t:last-child { text-align: center; }
  .pf-shaft--down { display: block; } .pf-shaft--across { display: none; }
  .pf-shaft--down .pf-art { width: 12px; }
}
.pf-digkey { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 18px; margin-top: 16px !important; color: var(--bone-soft); font-size: 13px; }
.pf-digkey span::before { content: ""; display: inline-block; width: 10px; height: 10px; margin-right: 6px; background: var(--c); border-radius: 1px; vertical-align: -1px; }
.pf-seam { stroke: #0d0f13; stroke-width: 1.6; }

.pf-kit { display: grid; grid-template-columns: minmax(0, 1fr); gap: 18px; align-items: start; }
@container (min-width: 560px) { .pf-kit { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); } }
.pf-kitparts { display: grid; grid-template-columns: 48px minmax(0, 1fr); gap: 12px; align-items: start; }
.pf-kitart { width: 48px; }
.pf-legend--kit { gap: 14px; padding-top: 4px; }
.pf-launches { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.pf-launch { display: grid; justify-items: center; gap: 6px; padding: 10px 6px; background: rgba(0, 0, 0, .22); border-radius: 3px; }
.pf-launch .pf-art { width: 44px; }

.pf-checks { display: grid; gap: 6px; max-width: 46ch; margin: 16px auto 0 !important; padding-left: 1.3em; color: var(--bone); font-size: 14.5px; }
.pf-sieve { display: grid; gap: 12px; }
.pf-sieverow { display: grid; grid-template-columns: minmax(0, 1fr); gap: 4px; padding-bottom: 10px; border-bottom: 1px solid var(--field-2); }
.pf-sieverow:last-child { border-bottom: 0; padding-bottom: 0; }
@container (min-width: 560px) { .pf-sieverow { grid-template-columns: 110px minmax(0, 1fr) minmax(0, 1.1fr); align-items: center; gap: 14px; } }
.pf-sieveart .pf-art { margin: 0; width: 100%; max-width: 360px; }
.pf-big { text-align: center; color: var(--bone); font-size: 16px; margin-bottom: 14px !important; }
.pf-big b { color: var(--number); font: 850 1.5em/1 var(--face); font-stretch: 112%; margin-right: 4px; }
.pf-sites { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 12px; margin: 0; padding: 0; list-style: none; }
@container (min-width: 560px) { .pf-sites { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@container (min-width: 860px) { .pf-sites { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
.pf-sites li { display: grid; grid-template-columns: 34px minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 8px; align-items: center; }
.pf-sites .pf-icon { grid-row: span 2; }
.pf-sites .pf-icon .pf-art { width: 30px; }
.pf-sites .pf-t { font-size: 13.5px; min-width: 0; overflow-wrap: anywhere; }
.pf-sites .pf-s { font-size: 13px; }
.pf-sites li.is-other .pf-t { color: var(--bone-soft); }
.pf-grow { display: grid; gap: 16px; }
.pf-growrow { display: grid; gap: 6px; }
.pf-pct { margin-left: 6px; color: color-mix(in srgb, var(--c) 72%, #fff); font: 850 1.15em/1 var(--face); }
.pf-growbar { display: grid; grid-template-columns: 34px minmax(0, 1fr) auto; align-items: center; gap: 10px; }
.pf-growbar .pf-art { margin: 0; width: 100%; }
.pf-m { color: var(--bone-soft); font-size: 13px; font-weight: 700; }
.pf-v { color: var(--bone); font-size: 14px; font-weight: 700; font-variant-numeric: tabular-nums; min-width: 6ch; text-align: right; }

.pf-cleared { width: 100%; max-width: 420px; }
.pf-legend--clear { max-width: 56ch; margin: 16px auto 0 !important; }
.pf-legend--clear b { color: color-mix(in srgb, var(--c) 72%, #fff); }
.pf-temple { width: min(100%, 240px); }
.pf-lintel { margin: 10px 0 14px !important; text-align: center; color: var(--bone); font-weight: 800; }
.pf-steps { display: grid; grid-template-columns: minmax(0, 1fr); gap: 8px; margin: 0 0 18px !important; padding: 0; list-style: none; }
@container (min-width: 560px) { .pf-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.pf-steps li { display: grid; grid-template-columns: 40px minmax(0, 1fr); column-gap: 10px; align-items: start; font-size: 14px; color: var(--bone); }
.pf-steps .pf-stepk { grid-row: span 2; }
.pf-steps .pf-stepk .pf-art { width: 40px; margin-top: 3px; }
.pf-report .pf-art { width: 100%; max-width: 120px; }
.pf-fig figcaption a { color: inherit; }
