/* Per-acre series: figure internals (ported from the Oct 2026 mock-up). Loaded only by the series essays. */
.fig.pa .fig-panel { padding: 22px 22px 18px; }
.fig.pa svg { width: 100%; height: auto; overflow: visible; display: block; }
.fig.pa .fig-sub { margin: 0 0 12px; }
@media (max-width:560px) { .fig.pa .two { grid-template-columns:1fr } }
.prose .credit { font-family:var(--sans);font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px;margin-top:36px;line-height:1.5 }
.prose .interim { color:var(--muted);font-family:var(--sans);font-size:.78em }
.fig.pa /* figures */
.fig.pa h4 { font-family:var(--serif);font-weight:500;font-size:1.25rem;line-height:1.25;color:var(--fg);margin-bottom:4px }
.fig.pa .sub { font-family:var(--sans);font-size:13px;color:var(--muted);margin-bottom:12px;line-height:1.45 }
.fig.pa figcaption { font-family:var(--sans);font-size:12px;color:var(--muted);margin-top:10px;line-height:1.45 }
.fig.pa figcaption a { color:var(--accent) }
.fig.pa svg { width:100%;height:auto;overflow:visible }
.fig.pa .lbl { font-family:var(--sans);font-size:12px;fill:var(--body) }
.fig.pa .lbl-m { font-family:var(--sans);font-size:11px;fill:var(--muted) }
.fig.pa .lbl-s { font-family:var(--sans);font-size:12px;font-weight:600;fill:var(--fg) }
.fig.pa .grid { stroke:var(--line);stroke-width:1 }
.fig.pa .tip { position:absolute;pointer-events:none;background:var(--fg);color:var(--bg);font-family:var(--sans);font-size:12px;line-height:1.35;padding:7px 10px;border-radius:4px;max-width:260px;opacity:0;transition:opacity .08s;z-index:3 }
.fig.pa .chart { position:relative }
.fig.pa .legend { display:flex;gap:16px;flex-wrap:wrap;font-family:var(--sans);font-size:12px;color:var(--muted);margin:8px 0 0 }
.fig.pa .legend span::before { content:"";display:inline-block;width:12px;height:10px;margin-right:6px;vertical-align:-1px;border-radius:2px }
.fig.pa .lg-bar::before { background:var(--accent) }
.fig.pa .lg-open::before { background:repeating-linear-gradient(135deg,var(--accent) 0 2px,transparent 2px 5px) }
.fig.pa .lg-plan::before { width:10px;height:10px;border-radius:50%;background:var(--panel);border:2px solid var(--accent);box-sizing:border-box }
.fig.pa .lg-first::before { width:10px;height:10px;border-radius:50%;background:var(--fg) }
.fig.pa .lg-dot::before { width:10px;height:10px;border-radius:50%;background:var(--accent) }
.fig.pa .lg-none::before { display:none }
.fig.pa .ctrl { display:flex;align-items:center;gap:12px;font-family:var(--sans);font-size:12.5px;color:var(--muted);margin:6px 0 10px;flex-wrap:wrap }
.fig.pa .ctrl input[type=range] { flex:1;min-width:140px;accent-color:var(--accent) }
.fig.pa .ctrl output { color:var(--fg);font-weight:600;min-width:5ch }
.fig.pa .ctrl button { font:inherit;background:none;border:1px solid var(--line-strong);color:var(--fg);padding:4px 10px;border-radius:999px;cursor:pointer }
.fig.pa .mst details { margin-top:10px;font-family:var(--sans);font-size:13px;color:var(--muted) }
.fig.pa .mst summary { cursor:pointer;color:var(--fg) }
.fig.pa .mst table { border-collapse:collapse;width:100%;margin-top:8px;font-size:12.5px }
.fig.pa .mst th, .fig.pa .mst td { text-align:left;padding:6px 8px;border-bottom:1px solid var(--line);vertical-align:top }
.fig.pa .mst th { color:var(--muted);font-weight:600 }
.fig.pa .two { display:grid;grid-template-columns:1fr 1fr;gap:14px }
.fig.pa .two .pane { min-width:0 }
.fig.pa .two .pane h5 { font-family:var(--sans);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:6px }

/* SVG marks */
.fig.pa .sans { font-family:var(--sans) }
.fig.pa .bar { fill:var(--accent) }
.fig.pa .sq { fill:var(--accent-wash);stroke:var(--accent);stroke-width:1.5 }
.fig.pa .lot { fill:none;stroke:var(--accent);stroke-width:.8 }
.fig.pa .blk { fill:var(--accent-wash) }
.fig.pa .park { fill:var(--accent-wash);stroke:var(--accent);stroke-dasharray:3 3;stroke-width:1 }
.fig.pa .street { fill:var(--panel-2) }
.fig.pa .dot { fill:var(--accent);stroke:var(--panel);stroke-width:1.5 }
.fig.pa .dot.off { opacity:.12 }
.fig.pa .site { fill:none;stroke:var(--fg);stroke-width:1.5;stroke-dasharray:5 4 }
.fig.pa .node { fill:var(--panel-2);stroke:var(--accent);stroke-width:1.5 }
.fig.pa .node-dead { fill:var(--panel-2);stroke:var(--muted);stroke-width:1.5;stroke-dasharray:4 3 }
.fig.pa .arrow { fill:none;stroke:var(--accent);stroke-width:1.5;marker-end:url(#ah) }
.fig.pa .arrow-m { fill:none;stroke:var(--muted);stroke-width:1.5;marker-end:url(#ahm) }
.fig.pa .ntxt { font-family:var(--sans);font-size:11.5px;fill:var(--fg);text-anchor:middle }
.fig.pa .ntxt-m { font-family:var(--sans);font-size:11.5px;fill:var(--muted);text-anchor:middle }
.fig.pa .nhead { font-family:var(--sans);font-size:11px;letter-spacing:.1em;text-transform:uppercase;fill:var(--muted);font-weight:600 }
.fig.pa .landtxt { font-family:var(--serif);font-size:15px;fill:var(--accent);text-anchor:middle;font-weight:500 }

/* Part one aerial pair */
.fig.pa .aerial { display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 4px }
.fig.pa .aerial figure { margin:0 }
.fig.pa .aerial img { display:block;width:100%;height:auto;border-radius:4px;border:1px solid var(--line) }
.fig.pa .aerial figcaption { font-family:var(--sans);font-size:12px;color:var(--muted);margin-top:6px }
@media (max-width:560px) { .fig.pa .aerial { grid-template-columns:1fr } }

/* Oct 19 additions: tiles, still, three-pane, flows, photos */
.prose .tiles { display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px;margin:0 0 1.8em }
.prose .tile { background:var(--panel);border:1px solid var(--line);padding:12px 14px;min-width:0 }
.prose .tile .v { font-family:var(--serif);font-size:1.8rem;color:var(--fg);line-height:1;font-variant-numeric:tabular-nums }
.prose .tile .l { font-family:var(--sans);font-size:11.5px;color:var(--muted);margin-top:7px;line-height:1.35 }
.prose .still { margin:0 0 1.6em }
.prose .still img { width:300px;max-width:100%;height:auto;border:1px solid var(--line) }
.prose .still figcaption { font-family:var(--sans);font-size:12px;color:var(--muted);margin-top:8px }
.fig.pa .three { display:grid;grid-template-columns:repeat(3,1fr);gap:12px }
.fig.pa .three .pane { min-width:0 }
.fig.pa .three .pane h5, .fig.pa .two .pane h5 { font-family:var(--sans);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-bottom:6px }
@media (max-width:560px) { .fig.pa .three { grid-template-columns:1fr } }
.fig.pa .flow { display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-family:var(--sans);font-size:12.5px;margin-bottom:6px;overflow:visible }
.fig.pa .flow .n { border:1px solid var(--accent);padding:5px 10px;border-radius:999px;color:var(--fg);background:var(--panel-2) }
.fig.pa .flow .n.m { border-color:var(--line-strong);color:var(--muted);border-style:dashed }
.fig.pa .flow .ar { color:var(--muted) }
.fig.pa .flow-h { font-family:var(--sans);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600;margin:12px 0 6px }
.fig.pa.mst details { margin-top:10px;font-family:var(--sans);font-size:13px;color:var(--muted) }
.fig.pa.mst summary { cursor:pointer;color:var(--fg) }
.fig.pa.mst table { border-collapse:collapse;width:100%;margin-top:8px;font-size:12.5px }
.fig.pa.mst th, .fig.pa.mst td { text-align:left;padding:6px 8px;border-bottom:1px solid var(--line);vertical-align:top }
.fig.pa.mst th { color:var(--muted);font-weight:600 }
.fig.pa .photos { display:grid;grid-template-columns:1fr 1fr;gap:12px }
.fig.pa .photos figure { margin:0 }
.fig.pa .photos figure:first-child { grid-column:1 / -1 }
.fig.pa .photos img { display:block;width:100%;height:auto;border-radius:4px;border:1px solid var(--line) }
.fig.pa .photos figcaption { font-family:var(--sans);font-size:12px;color:var(--muted);margin-top:6px;line-height:1.4 }
@media (max-width:560px) { .fig.pa .photos { grid-template-columns:1fr } }
/* marks used by the Part three and four figures */
.fig.pa .cell { fill:var(--panel-2);stroke:var(--line-strong);stroke-width:.8 }
.fig.pa .cell.keep { fill:url(#keep) }
.fig.pa .bld { fill:var(--accent) }
.fig.pa .axis-l { font-family:var(--sans);font-size:11px;fill:var(--muted) }
.fig.pa .curve { fill:none;stroke:var(--accent);stroke-width:2 }
.fig.pa .pt { fill:var(--fg);stroke:var(--panel);stroke-width:2 }
@media (max-width:560px) { .fig.pa .two, .fig.pa .three, .fig.pa .photos, .fig.pa .aerial { grid-template-columns:1fr } }
