/* Address-based capacity drawing; shares the site's slate palette and type. */
.site-capacity{color:var(--ink);background:var(--ground);border:1px solid var(--rule);overflow:hidden;border-radius:5px}
.site-capacity .capacity-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:22px 22px 16px}
.site-capacity .capacity-eyebrow{font:12px/1.5 var(--font-mono,monospace);letter-spacing:.09em;color:var(--ink-2)}
.site-capacity h3{font:500 27px/1.2 var(--font-sans,Arial,sans-serif);margin:5px 0 0;color:var(--ink)}
.site-capacity button,.site-capacity select,.site-capacity input{font:inherit;color:inherit}
.capacity-view,.capacity-projects{display:flex;gap:6px;flex-wrap:wrap}
.site-capacity .capacity-view button,.site-capacity .capacity-projects button{border:1px solid var(--rule);background:transparent;border-radius:3px;font-size:14px;line-height:1.3;padding:10px 12px;cursor:pointer;min-height:42px}
.site-capacity .capacity-view button[aria-pressed=true],.site-capacity .capacity-projects button[aria-pressed=true]{background:var(--ink-2);color:var(--inverse);border-color:var(--ink-2)}
.capacity-projects{padding:0 22px 18px;border-bottom:1px solid var(--rule)}
.capacity-drawing{position:relative;isolation:isolate;background:var(--surface)}
.site-capacity .capacity-drawing svg{width:100%;height:auto;display:block;max-height:none;aspect-ratio:760/470}
.capacity-neighbour-parcel{fill:none;stroke:#ced9de;stroke-width:1;vector-effect:non-scaling-stroke}
.capacity-parcel{fill:#eef1ed;stroke:none}
.capacity-boundary{fill:none;stroke:#506a78;stroke-width:1.6;vector-effect:non-scaling-stroke}
.capacity-envelope{fill:none;stroke:#467b78;stroke-width:1;stroke-dasharray:6 4;vector-effect:non-scaling-stroke}
.capacity-street{fill:none;stroke:#dce3e7;stroke-width:16;stroke-linecap:round;opacity:.7}.capacity-street.is-lane{stroke-width:7;stroke-dasharray:7 5}
.capacity-building .capacity-wall{fill:#edf1f3;stroke:#a9bac4;stroke-width:.75;vector-effect:non-scaling-stroke}
.capacity-building .capacity-roof{fill:#fff;stroke:#a9bac4;stroke-width:.9;vector-effect:non-scaling-stroke}
.capacity-building.is-context{opacity:.24}
.capacity-building.is-replaced{opacity:.28}
.capacity-building.is-proposal .capacity-wall{fill:#7dafa5a3;stroke:#39746b}.capacity-building.is-proposal .capacity-roof{fill:#d5e7e0dd;stroke:#39746b}
.capacity-building.is-exceeding .capacity-wall{fill:#ce9562a8;stroke:#98572d}.capacity-building.is-exceeding .capacity-roof{fill:#f2d8c0e6;stroke:#98572d}
.capacity-floor-line{fill:none;stroke:#3c726a;stroke-width:.8;opacity:.7;vector-effect:non-scaling-stroke}
.capacity-dimension path{stroke:#637982;fill:none;stroke-width:.7;vector-effect:non-scaling-stroke}
.capacity-dimension text,.capacity-street-label{fill:#3c535f;font:16px/1.2 monospace;paint-order:stroke;stroke:#f6f8f8;stroke-width:5px;stroke-linejoin:round}
.capacity-street-label{font-size:17px}.capacity-north text{font:17px monospace;fill:#506a78;text-anchor:middle}.capacity-north path{stroke:#506a78;fill:none;stroke-width:1.5}
.capacity-floor-label{position:absolute;bottom:12px;left:20px;background:color-mix(in srgb, var(--surface) 94.12%, transparent);padding:8px 10px;font-size:14px;border:1px solid var(--rule);border-radius:3px}
.capacity-legend{padding:14px 22px;display:flex;flex-wrap:wrap;gap:10px 18px;border-top:1px solid #d5dfe2;color:#465d6a;font-size:14px;line-height:1.35}
.capacity-legend span{display:flex;align-items:center;gap:7px}.capacity-legend i{width:13px;height:13px;border:1px solid #a9bac4;background:#fff;border-radius:2px;flex-shrink:0}.capacity-legend .key-proposal{background:#b9d7cc;border-color:#39746b}.capacity-legend .key-exceeding{background:#e5bc93;border-color:#98572d}.capacity-legend .key-envelope{background:transparent;border:1px dashed #467b78}
.capacity-camera{padding:0 22px 14px}.capacity-camera label{display:flex;align-items:center;gap:18px;font-size:14px}.capacity-camera input{flex:1;accent-color:#506a78}.capacity-camera select{padding:7px;background:white;border:1px solid var(--rule);border-radius:3px}
.capacity-status{padding:16px 22px;background:var(--sage-wash);border-block:1px solid var(--rule);color:var(--sage-deep);font-size:14px;line-height:1.5}.capacity-status.has-exceedance{background:var(--paper);border-color:var(--rule);color:var(--ink-2)}.site-capacity .capacity-status p{font-size:14px;line-height:1.5;margin:5px 0 0;color:inherit}
.capacity-metrics{padding:20px 22px;border-bottom:1px solid var(--rule)}.capacity-zoning{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:15px}.capacity-zoning>span{font-size:12px;letter-spacing:.12em;color:var(--ink-2)}.capacity-zoning strong{font-size:19px}.capacity-zoning a{font-size:14px;text-underline-offset:4px;color:var(--ink-2)}
.capacity-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0}.capacity-metric{padding:12px 10px;border:1px solid var(--rule);background:var(--surface);border-radius:4px;min-width:0}.capacity-metric dt{font-size:14px;line-height:1.3;color:var(--ink-2)}.capacity-metric dd{margin:9px 0;font-size:21px;line-height:1.1;letter-spacing:-.03em;overflow-wrap:anywhere}.capacity-metric small{display:block;font-size:12px;line-height:1.5;color:var(--ink-2)}.site-capacity .capacity-metric-note{margin:12px 0 0;font-size:13px;line-height:1.6;color:var(--ink-2)}
.capacity-controls{padding:20px 22px;background:var(--surface)}.capacity-controls label{font-size:14px;line-height:1.4;display:block;color:var(--ink-2)}.capacity-controls label strong{float:right;font-weight:600}.capacity-controls input:not([type=range]):not([type=checkbox]),.capacity-controls select{border:1px solid var(--rule);background:var(--surface);border-radius:3px;min-height:42px;padding:8px 10px;width:100%;font-size:16px;margin-top:7px;box-sizing:border-box}.capacity-controls small{font-size:13px;display:block;color:var(--ink-2);margin-top:7px;line-height:1.5}.capacity-control-row{margin:22px 0}.capacity-controls input[type=range]{width:100%;accent-color:#506a78;min-height:30px;cursor:ew-resize;margin:8px 0}.capacity-range-ends{display:flex;justify-content:space-between;gap:15px;font-size:12px;color:var(--ink-2)}.capacity-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.capacity-controls .capacity-check{display:flex;align-items:center;gap:9px;font-size:14px;margin-top:15px}.capacity-check input{width:18px;height:18px;accent-color:#506a78;flex-shrink:0}.capacity-placement{margin-top:18px;border-top:1px solid var(--rule);padding-top:16px}.capacity-placement summary,.capacity-evidence summary{font-size:14px;font-weight:600;cursor:pointer}.capacity-placement .capacity-two{margin-top:14px}.capacity-reset{border:0;border-bottom:1px solid var(--rule);background:transparent;padding:4px 0;margin-top:18px;font-size:14px;cursor:pointer}
.capacity-evidence{padding:18px 22px;border-top:1px solid var(--rule);background:var(--ground)}.capacity-evidence ul{padding-left:18px;font-size:14px;line-height:1.6;color:var(--ink-2)}.capacity-evidence li{margin:7px 0}.site-capacity .capacity-evidence p{font-size:14px;line-height:1.6;color:var(--ink-2)}.capacity-sources a{color:var(--ink-2);text-underline-offset:3px}.site-capacity .capacity-print-note,.site-capacity .capacity-empty{font-size:14px;line-height:1.6;padding:18px 22px;margin:0;color:var(--ink-2)}
.site-capacity :focus-visible{outline:2px solid var(--ink-2);outline-offset:3px}
@media(max-width:1100px){.capacity-heading{flex-wrap:wrap}.capacity-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.site-capacity .capacity-heading,.capacity-metrics,.capacity-controls,.capacity-evidence,.capacity-status{padding:16px}.capacity-projects{padding:0 16px 15px}.capacity-legend{padding:12px 16px;font-size:13px;gap:10px 14px}.capacity-dimension{display:none}.capacity-street-label{font-size:24px}.capacity-two{gap:10px}.site-capacity h3{font-size:25px}.capacity-floor-label{font-size:12px;left:12px;bottom:6px}.capacity-view{width:100%}.capacity-view button{flex:1}.capacity-metric dd{font-size:22px}.capacity-zoning{gap:8px}.capacity-range-ends{font-size:12px}}
.pdf-page .site-capacity .capacity-heading{padding:10px 14px}.pdf-page .site-capacity h3{font-size:20px}.pdf-page .site-capacity .capacity-drawing svg{max-height:250px}.pdf-page .site-capacity .capacity-legend{padding:8px 14px;font-size:11px;gap:8px 12px}.pdf-page .site-capacity .capacity-status{padding:8px 14px;font-size:12px}.pdf-page .site-capacity .capacity-status p{font-size:11px}.pdf-page .site-capacity .capacity-metrics{padding:10px 14px}.pdf-page .site-capacity .capacity-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.pdf-page .site-capacity .capacity-metric{padding:8px}.pdf-page .site-capacity .capacity-metric dt{font-size:11px}.pdf-page .site-capacity .capacity-metric dd{font-size:18px;margin:6px 0}.pdf-page .site-capacity .capacity-metric small{font-size:10px}.pdf-page .site-capacity .capacity-zoning{margin-bottom:8px}.pdf-page .site-capacity .capacity-metric-note,.pdf-page .site-capacity .capacity-print-note{font-size:10px;line-height:1.45}.pdf-page .site-capacity .capacity-evidence{display:none}.pdf-page .site-capacity .capacity-print-note{padding:10px 14px}.pdf-page.massing-page .section-deck{margin-bottom:12px}
.capacity-edge{font:15px monospace;fill:#506a78;paint-order:stroke;stroke:#f6f8f8;stroke-width:5px}
@media(max-width:520px){.capacity-edge{font-size:26px}}
.capacity-building.is-existing:not(.is-replaced) .capacity-wall{fill:#dbe2e6;stroke:#91a4af}.capacity-building.is-existing:not(.is-replaced) .capacity-roof{fill:#f8fafb;stroke:#91a4af}.capacity-status.needs-review{background:var(--warn-wash);border-color:var(--warn);color:var(--warn)}
.site-capacity .capacity-building.is-context{opacity:.25}
.site-capacity .capacity-building.is-existing .capacity-wall{fill:#4b657b;stroke:#213c52;stroke-width:1.7}
.site-capacity .capacity-building.is-existing .capacity-roof{fill:#7594a7;stroke:#213c52;stroke-width:2}
.site-capacity .capacity-building.is-existing.is-replaced{opacity:.7}
.site-capacity .capacity-building.is-existing.is-replaced .capacity-wall,.site-capacity .capacity-building.is-existing.is-replaced .capacity-roof{fill:#7891a275;stroke:#243e50;stroke-dasharray:4 3}
.site-capacity .capacity-building.is-proposal .capacity-wall{fill:#bd4d38d9;stroke:#742c21;stroke-width:1.6}
.site-capacity .capacity-building.is-proposal .capacity-roof{fill:#de6e50;stroke:#742c21;stroke-width:2}
.site-capacity .capacity-building.is-exceeding .capacity-wall{fill:#f2aa58;stroke:#8d4e20;stroke-width:1.5}
.site-capacity .capacity-building.is-exceeding .capacity-roof{fill:#f6c487;stroke:#8d4e20;stroke-width:2}
.capacity-existing-compare path{fill:none;stroke:#234c6e;stroke-width:2.5;stroke-dasharray:7 4;vector-effect:non-scaling-stroke;paint-order:stroke}
.capacity-mapped-tree circle:first-of-type{fill:#277d5290;stroke:#16543e;stroke-width:2;vector-effect:non-scaling-stroke}
.capacity-mapped-tree circle:last-of-type{fill:#fff;stroke:#16543e;stroke-width:1;vector-effect:non-scaling-stroke}
.capacity-drawing-note{position:absolute;left:16px;bottom:12px;max-width:calc(100% - 32px);padding:7px 10px;background:color-mix(in srgb, var(--surface) 94.12%, transparent);border:1px solid var(--rule);color:var(--ink-2);font-size:12px;line-height:1.4}
.pdf-page .capacity-drawing-note{font-size:8px;padding:3px 6px}
.capacity-legend .key-existing{background:#7594a7;border-color:#213c52}.capacity-legend .key-proposal{background:#de6e50;border-color:#742c21}.capacity-legend .key-tree{background:#52916b;border-color:#16543e;border-radius:50%}
.capacity-brief-areas{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--sage-wash);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.capacity-brief-areas>div{padding:15px 18px;background:var(--surface);min-width:0}
.capacity-brief-areas span,.capacity-brief-areas strong,.capacity-brief-areas small{display:block}
.capacity-brief-areas span{font-size:13px;color:var(--ink-2)}.capacity-brief-areas strong{font-size:19px;line-height:1.3;margin:7px 0;overflow-wrap:anywhere}.capacity-brief-areas small{font-size:12px;line-height:1.4;color:var(--ink-2)}
.pdf-page .capacity-brief-areas>div{padding:5px 7px}.pdf-page .capacity-brief-areas span,.pdf-page .capacity-brief-areas small{font-size:8px}.pdf-page .capacity-brief-areas strong{font-size:11px;margin:2px 0}
@media(max-width:650px){.capacity-brief-areas{grid-template-columns:1fr}.capacity-brief-areas>div{padding:12px 16px}}
@media print{
  .pdf-page.massing-page .page-body{padding-top:14px}
  .pdf-page.massing-page h2{font-size:25pt;margin:8px 0}
  .pdf-page.massing-page .pdf-eyebrow{margin:6px 0}
  .pdf-page.massing-page .section-deck{font-size:11px;line-height:1.4;padding-bottom:8px;margin:8px 0 10px}
  .pdf-page.massing-page .site-capacity .capacity-drawing svg{max-height:180px}
  .pdf-page.massing-page .site-capacity .capacity-heading{padding:8px 12px}
  .pdf-page.massing-page .site-capacity .capacity-status{padding:6px 12px}
  .pdf-page.massing-page .site-capacity .capacity-metric{padding:6px 8px}
  .pdf-page.massing-page .site-capacity .capacity-metric-note{margin-top:7px}
  .pdf-page.massing-page .site-capacity .capacity-print-note{padding:8px 12px}
}
/* Evidence stays beside the drawing, including on narrow screens. */
.capacity-evidence-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding:16px 22px;background:var(--surface);border-bottom:1px solid var(--rule);font-size:13px;line-height:1.5}.capacity-evidence-strip strong{display:block;color:var(--ink-2);font-size:13px}.site-capacity .capacity-evidence-strip p{font-size:13px;line-height:1.5;color:var(--ink-2);margin:6px 0}.capacity-evidence-strip a{font-size:12px;text-underline-offset:3px;overflow-wrap:anywhere}.capacity-record-links{display:flex;gap:6px 12px;flex-wrap:wrap}.capacity-dimension-strip{display:flex;flex-wrap:wrap;gap:12px 26px;padding:12px 22px;border-top:1px solid var(--rule);font-size:14px;line-height:1.5;background:var(--surface)}.capacity-dimension-strip span{flex:1;min-width:160px}.capacity-dimension-strip strong{display:block;font-size:12px;font-weight:400;color:var(--ink-2);margin-bottom:4px}.capacity-front-line{stroke:#435f70;stroke-width:4;fill:none}.capacity-density-note{font-size:13px;line-height:1.5;margin-top:14px;padding:12px;background:var(--paper);border-left:3px solid var(--rule)}.site-capacity .capacity-density-note p{font-size:13px;line-height:1.5;margin:6px 0 0;color:var(--ink-2)}.capacity-density-note a{color:inherit;text-underline-offset:3px}.capacity-density-note.density-review{background:var(--paper);border-color:var(--rule)}.capacity-building.is-proposal,.capacity-building.is-exceeding{animation:capacity-arrive .4s ease both}.capacity-boundary{animation:capacity-arrive .7s ease both}@keyframes capacity-arrive{from{opacity:.15}to{opacity:1}}.capacity-evidence:target{outline:2px solid var(--rule);outline-offset:-2px}.pdf-page .capacity-density-note{font-size:10px;padding:5px 8px;margin-top:7px}.pdf-page .capacity-density-note p{font-size:10px;line-height:1.4;margin-top:4px}@media(max-width:850px){.capacity-evidence-strip{grid-template-columns:1fr;gap:12px}.capacity-evidence-strip>div{border-bottom:1px solid var(--rule);padding-bottom:10px}.capacity-evidence-strip>div:last-child{padding-bottom:0;border:0}.capacity-evidence-strip a{font-size:14px}.capacity-evidence-strip strong,.site-capacity .capacity-evidence-strip p{font-size:14px}}@media(max-width:520px){.capacity-evidence-strip{padding:16px}.capacity-dimension-strip{padding:12px 16px}.site-capacity .capacity-projects{display:grid;grid-template-columns:1fr 1fr}.site-capacity .capacity-projects button{min-height:44px}.capacity-density-note,.site-capacity .capacity-density-note p{font-size:14px}.capacity-camera input[type=range]{min-height:32px}}@media(prefers-reduced-motion:reduce){.site-capacity *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.capacity-area-schedule{padding:22px;border-top:1px solid var(--rule);background:var(--surface)}.capacity-area-schedule h4{font-size:20px;margin:0 0 5px}.capacity-area-schedule>p{font-size:14px;color:var(--ink-2);margin:0 0 15px}.capacity-area-schedule dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin:0}.capacity-area-schedule dl>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;border-top:1px solid var(--rule)}.capacity-area-schedule dt{font-size:14px;font-weight:600}.capacity-area-schedule dt small{display:block;color:var(--ink-2);font-weight:400;font-size:12px}.capacity-area-schedule dd{font-size:17px;margin:0;text-align:right;min-width:115px}.capacity-tree,.capacity-beta{padding:16px 22px;margin:0;font-size:14px;line-height:1.5;background:var(--ground);border-top:1px solid var(--rule)}.capacity-beta p{margin:4px 0 0}.capacity-beta a{text-decoration:underline}.capacity-adu-note{width:100%;font-size:14px;color:var(--ink-2);margin:7px 0 0}.capacity-street-label.is-context-label{font-size:12px;opacity:.85}.capacity-edge{font-size:13px}.capacity-floor-label{max-width:calc(100% - 40px)}
@media(max-width:650px){.capacity-area-schedule dl{grid-template-columns:1fr}.capacity-area-schedule dd{min-width:110px}.capacity-dimension{display:block!important}.capacity-dimension text{font-size:15px}.capacity-edge{font-size:14px!important}.capacity-street-label{font-size:16px!important}}
.pdf-page .capacity-area-schedule{padding:8px 14px}.pdf-page .capacity-area-schedule h4{font-size:14px}.pdf-page .capacity-area-schedule>p{font-size:9px;margin-bottom:4px}.pdf-page .capacity-area-schedule dl{gap:0 12px}.pdf-page .capacity-area-schedule dl>div{padding:3px 0}.pdf-page .capacity-area-schedule dt,.pdf-page .capacity-area-schedule dd{font-size:10px}.pdf-page .capacity-area-schedule dt small{font-size:8px}.pdf-page .capacity-tree,.pdf-page .capacity-beta{font-size:9px;padding:6px 14px}.pdf-page .capacity-beta p{margin:0}

.stage-next{padding:20px;border-top:1px solid var(--rule);font-size:14px;line-height:1.5}.stage-next ol{margin:8px 0 16px;padding-left:20px}.stage-next li{margin:6px 0}.stage-next a{display:inline-block;border-bottom:1px solid currentColor;font-weight:650}

.is-drawing-only .capacity-status,.is-drawing-only .capacity-metric-note,.is-drawing-only .capacity-metrics,.is-drawing-only .capacity-area-schedule,.is-drawing-only .capacity-tree,.is-drawing-only .capacity-beta,.is-drawing-only .capacity-evidence,.is-drawing-only .capacity-print-note{display:none}.pdf-page.plan-page .site-capacity .capacity-drawing svg{max-height:540px}.pdf-page.plan-page .site-capacity .capacity-heading{padding:14px}.pdf-page.plan-page .site-capacity .capacity-legend{font-size:12px}
.metric-provenance{font-weight:400;margin-top:7px;color:var(--ink-2)}.metric-provenance summary{font-size:12px;cursor:pointer}.metric-provenance p{font-size:12px!important;line-height:1.6!important;margin:8px 0!important}.metric-provenance a{font-size:12px;display:inline-block;margin:4px 8px 4px 0;text-decoration:underline}.physical-export{display:flex;align-items:center;gap:22px;margin-top:20px;border-top:1px solid var(--rule);padding-top:18px}.physical-export button{border:1px solid var(--ink-2);background:var(--paper);color:var(--ink-2);border-radius:3px;padding:12px 16px;font:400 13px 'IBM Plex Mono',monospace;cursor:pointer;white-space:nowrap}.physical-export p{font-size:13px!important;line-height:1.5!important;margin:0!important}.capacity-area-schedule dl>div{align-items:start}.capacity-area-schedule dd{max-width:50%;font-size:16px}.capacity-area-schedule dt small{margin-top:4px;line-height:1.5}@media(max-width:650px){.physical-export{flex-direction:column;align-items:stretch}.physical-export button{white-space:normal}.capacity-area-schedule dd{font-size:15px;min-width:95px}}@media print{.physical-export,.metric-provenance{display:none}}
/* Property screen: keep the site drawing and its controls together. */
.site-capacity.is-plan .capacity-drawing svg{aspect-ratio:760/690}
.capacity-parcel{fill:#eaf1ec}.capacity-boundary{stroke:#183c4b;stroke-width:3.4;animation:none}.capacity-front-line{stroke:#183c4b;stroke-width:5;fill:none;vector-effect:non-scaling-stroke}.capacity-envelope{fill:none;stroke:#286f69;stroke-width:2.5;stroke-dasharray:8 5;vector-effect:non-scaling-stroke}.capacity-building.is-context{opacity:.15}.capacity-building.is-existing{opacity:1}.capacity-building.is-existing .capacity-wall{fill:#82939d;stroke:#2f4c5a;stroke-width:1.5}.capacity-building.is-existing .capacity-roof{fill:#a5b2b7;stroke:#264958;stroke-width:2}.capacity-building.is-replaced{opacity:.85}.capacity-building.is-replaced .capacity-roof{stroke-dasharray:7 4}.capacity-building.is-adu-proposal .capacity-wall{fill:#c98d64;stroke:#854925}.capacity-building.is-adu-proposal .capacity-roof{fill:#ecc6a1;stroke:#854925;stroke-width:2}.capacity-building.is-proposal .capacity-roof{stroke-width:2}.capacity-legend .key-existing{background:#a5b2b7;border-color:#264958}.capacity-legend .key-adu{background:#ecc6a1;border-color:#854925}.capacity-legend .key-tree{background:#75ad80;border-color:#286741;border-radius:50%}.capacity-address-tag rect{fill:#fff;stroke:#183c4b;stroke-width:1.5}.capacity-address-tag text{font:600 14px/1.2 var(--font-sans,Arial,sans-serif);fill:#183c4b}.capacity-scale path{stroke:#304e5c;stroke-width:3}.capacity-scale text{font:12px monospace;fill:#304e5c}.capacity-dimension-schedule{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:12px 22px;gap:0 15px;background:var(--surface);border-block:1px solid var(--rule)}.capacity-dimension-schedule>div{padding:8px 0;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:1fr auto;gap:2px 8px;font-size:13px}.capacity-dimension-schedule strong{color:var(--ink-2)}.capacity-dimension-schedule span{font-weight:600;white-space:nowrap}.capacity-dimension-schedule small{grid-column:1/-1;color:var(--ink-2);font-size:11px}.capacity-area-schedule dl>div{align-items:start}.capacity-area-schedule dt{min-width:0}.capacity-area-schedule dd{flex-shrink:0}.capacity-mapped-tree circle:first-of-type{fill:#75ad80b5;stroke:#286741;stroke-width:2.5}.capacity-status.needs-review{background:var(--warn-wash);border-color:var(--warn);color:var(--warn)}@media(max-width:700px){.capacity-dimension-schedule{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px 16px}.capacity-area-schedule dl>div{gap:7px}.capacity-area-schedule dd{min-width:0;font-size:15px}.capacity-dimension text{font-size:13px}.capacity-street-label{font-size:13px!important}.capacity-address-tag text{font-size:14px}}
.capacity-legend .key-proposal{background:#de6e50;border-color:#742c21}.capacity-existing-compare path{stroke:#1d4254;stroke-width:3.5;stroke-dasharray:8 4}.capacity-drawing{scrollbar-color:#8da4af #ecf1f2}@media(max-width:650px){.site-capacity .capacity-drawing{overflow-x:auto;overscroll-behavior-inline:contain}.site-capacity .capacity-drawing svg{width:680px;max-width:none}.site-capacity .capacity-drawing::after{content:'Pan diagram to inspect dimensions';display:block;position:sticky;left:0;bottom:0;text-align:center;background:var(--paper);color:var(--ink-2);font-size:12px;padding:5px}.capacity-dimension-schedule{grid-template-columns:1fr 1fr}}
.site-capacity .capacity-envelope{fill:none;stroke:#c54825;stroke-width:2.5;stroke-dasharray:8 5;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.site-capacity .capacity-envelope{fill:none;stroke:#087966;stroke-width:3.2;stroke-dasharray:9 5;paint-order:stroke}.site-capacity .capacity-building.is-existing .capacity-wall{fill:#82939d;stroke:#45685f}.site-capacity .capacity-building.is-existing .capacity-roof{fill:#a5b2b7;stroke:#45685f}.site-capacity .capacity-building.is-existing.is-replaced .capacity-wall,.site-capacity .capacity-building.is-existing.is-replaced .capacity-roof{fill:#82939d8c;stroke:#45685f}
.site-capacity .capacity-legend .key-envelope{border:2px dashed #087966;background:transparent}
.site-capacity .capacity-camera{padding:12px 22px;background:var(--surface);border-top:1px solid var(--rule)}
.site-capacity .capacity-camera label{max-width:390px;gap:20px;font-weight:600}
.site-capacity .capacity-area-schedule dl{grid-template-columns:1fr;gap:0}
.site-capacity .capacity-area-schedule dl>div{align-items:center;min-height:65px}
.site-capacity .capacity-area-schedule dd{min-width:185px;max-width:48%;overflow-wrap:normal}

/* Evidence notes belong below their drawing, never over project controls. */
.site-capacity .capacity-drawing-note{position:static;inset:auto;max-width:none;box-sizing:border-box;margin:10px 14px;padding:10px 12px;background:var(--ground);border:1px solid var(--rule);color:var(--sage-deep);font-size:12px;line-height:1.5;overflow-wrap:anywhere}
@media print{.pdf-page .site-capacity .capacity-drawing-note{position:static;font-size:8pt;break-inside:avoid}}

.capacity-projects .capacity-review-label{display:block;font-size:10px;font-weight:400;margin-top:3px}.capacity-projects button[data-fit-available="false"]{border-style:dashed}.capacity-verification{overflow-wrap:anywhere}

/* Keep metric evidence descriptions inside their semantic definition. */
.capacity-metric dd small{letter-spacing:normal;margin-top:9px}

/* Legible ground annotations and a distinct retained-building key in every report. */
.site-capacity .capacity-drawing,.site-capacity .capacity-drawing svg{user-select:none;-webkit-user-select:none}.site-capacity .capacity-drawing{touch-action:pan-y}.site-capacity .capacity-drawing svg text{pointer-events:none}.capacity-access-corridor{fill:#8ba89b;fill-opacity:.22;stroke:#527768;stroke-width:1;stroke-dasharray:4 3;vector-effect:non-scaling-stroke}.capacity-street-caption{pointer-events:none}.capacity-street-caption rect{fill:#f6f5ef;fill-opacity:.94;stroke:#c7cec7;stroke-width:.7}.capacity-street-caption text{fill:#4b6157;font:12px/1.3 'IBM Plex Mono',monospace;stroke:none}.capacity-legend .key-ancillary{background:#c5cec9;border-color:#70847a}.capacity-legend .key-access{background:#8ba89b38;border:1px dashed #527768}

/* One palette shared by live diagrams, site plans, legends and PDF rasterisation. */
.site-capacity{--massing-existing-roof:#91a59e;--massing-existing-wall:#78928a;--massing-existing-line:#45685f;--massing-principal-roof:#a8bbb3;--massing-principal-wall:#819e92;--massing-principal-line:#365f55;--massing-adu-roof:#bdc9b6;--massing-adu-wall:#9aaf96;--massing-adu-line:#5d7860;--massing-ancillary-roof:#c5cec9;--massing-ancillary-wall:#a8b6af;--massing-ancillary-line:#70847a;--massing-context-roof:#dce2df;--massing-context-wall:#cbd4d0;--massing-context-line:#a8b8b2}
.site-capacity .capacity-building.is-existing:not(.is-ancillary){opacity:1}.site-capacity .capacity-building.is-existing:not(.is-ancillary) .capacity-roof{fill:var(--massing-existing-roof);stroke:var(--massing-existing-line);fill-opacity:1}.site-capacity .capacity-building.is-existing:not(.is-ancillary) .capacity-wall{fill:var(--massing-existing-wall);stroke:var(--massing-existing-line);fill-opacity:1}
.site-capacity .capacity-building.is-existing.is-ancillary .capacity-roof{fill:var(--massing-ancillary-roof);stroke:var(--massing-ancillary-line);fill-opacity:1}.site-capacity .capacity-building.is-existing.is-ancillary .capacity-wall{fill:var(--massing-ancillary-wall);stroke:var(--massing-ancillary-line);fill-opacity:1}
.site-capacity .capacity-building.is-proposal .capacity-roof{fill:var(--massing-principal-roof);stroke:var(--massing-principal-line);fill-opacity:1}.site-capacity .capacity-building.is-proposal .capacity-wall{fill:var(--massing-principal-wall);stroke:var(--massing-principal-line);fill-opacity:1}
.site-capacity .capacity-building.is-adu-proposal .capacity-roof{fill:var(--massing-adu-roof);stroke:var(--massing-adu-line);fill-opacity:1}.site-capacity .capacity-building.is-adu-proposal .capacity-wall{fill:var(--massing-adu-wall);stroke:var(--massing-adu-line);fill-opacity:1}
.site-capacity .capacity-building.is-context{opacity:.3}.site-capacity .capacity-building.is-context .capacity-roof{fill:var(--massing-context-roof);stroke:var(--massing-context-line)}.site-capacity .capacity-building.is-context .capacity-wall{fill:var(--massing-context-wall);stroke:var(--massing-context-line)}
.site-capacity .capacity-building.is-proposal .capacity-study-window{fill:#365f55;stroke:#365f55;fill-opacity:.38}.site-capacity .capacity-building.is-adu-proposal .capacity-study-window{fill:#5d7860;stroke:#5d7860;fill-opacity:.38}
.site-capacity .capacity-legend .key-existing{background:var(--massing-existing-roof);border-color:var(--massing-existing-line)}.site-capacity .capacity-legend .key-proposal{background:var(--massing-principal-roof);border-color:var(--massing-principal-line)}.site-capacity .capacity-legend .key-adu{background:var(--massing-adu-roof);border-color:var(--massing-adu-line)}.site-capacity .capacity-legend .key-ancillary{background:var(--massing-ancillary-roof);border-color:var(--massing-ancillary-line)}.site-capacity .capacity-legend .key-context{background:var(--massing-context-roof);border-color:var(--massing-context-line)}
/* Keep the meaning of each colour stable while switching or rotating studies. */
.site-capacity .capacity-building.is-proposal,.site-capacity .capacity-building.is-adu-proposal{opacity:1;animation:none}

/* Reference sage palette shared by interactive axos, site plans and PDF print. */
.site-capacity .capacity-drawing,.scan-report .capacity-drawing{background:var(--ground)}
.site-capacity .capacity-parcel{fill:#edf2ee}
.site-capacity .capacity-neighbour-parcel{stroke:#91a39c;stroke-width:1.2}
.site-capacity .capacity-boundary,.site-capacity .capacity-front-line{stroke:#365f55}
.site-capacity .capacity-envelope{stroke:#66877b}
.site-capacity .capacity-building.is-context{opacity:1}
.site-capacity .capacity-existing-compare path{stroke:#45685f}
.site-capacity .capacity-building.is-replaced .capacity-wall,.site-capacity .capacity-building.is-replaced .capacity-roof{fill:#91a59e80;stroke:#45685f;stroke-dasharray:4 3}
.site-capacity .capacity-building .capacity-study-window{fill:#5d786e;stroke:#5d786e;fill-opacity:.32}
.site-capacity .capacity-floor-line{stroke:#567b6d}
.site-capacity .capacity-mapped-tree circle:first-of-type{fill:#bdcdbab5;stroke:#7c9582}
.site-capacity .capacity-legend .key-tree{background:#bdcdba;border-color:#7c9582}
.site-capacity .capacity-street-caption rect{fill:#f4f7f5}
