/* Natural source ratio: the entire drawing occupies the card width. */
#lots .v2 .unitCard .visual.unit-plan{display:flex;flex-direction:column;align-items:stretch;aspect-ratio:auto!important;min-height:0!important;height:auto!important;padding:0!important;cursor:zoom-in}
#lots .v2 .unitCard .visual.unit-plan>svg{display:block!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;flex:none!important;margin:0!important}
#lots .v2 .unitCard .visual.unit-plan>img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;padding:0;transform:none!important}
#lots .unitCard .unit-plan .flag{margin:12px 14px 8px!important}
#lots .nf-plan-hint{position:absolute;inset-inline-end:10px;bottom:10px;display:grid;place-items:center;width:36px;height:36px;background:#f7f5f1ed;border:1px solid #b5a99b80;color:#2d2b29;pointer-events:none}
.nf-plan-tool-icon{display:block;width:22px;height:22px;flex:none;fill:none;stroke:currentColor}
#lots .modal{width:1100px!important;max-width:min(1100px,calc(100% - 24px))!important}
#lots .modalColumns{grid-template-columns:minmax(0,1fr)!important}
#lots .modalPlan{height:auto!important;min-height:0!important;padding:0!important;margin:0!important;cursor:zoom-in}
#lots .modalPlan>svg{display:block;width:100%!important;height:auto!important;max-height:none!important}
#lots .nf-plan-expand{display:inline-flex;gap:10px;align-items:center;min-height:48px;margin:12px 0;padding:8px 14px;border:1px solid currentColor;background:transparent;color:inherit;font:500 12px/1.5 var(--font-body);cursor:zoom-in}
/* Same visible X and touch target across every existing popup. */
body button.nf-large-close{display:inline-flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;width:52px!important;height:52px!important;min-width:52px!important;min-height:52px!important;padding:12px!important;flex:none;line-height:1;cursor:pointer}
body button.nf-large-close .nf-close-icon{display:block!important;width:28px!important;height:28px!important;flex:none;fill:none;stroke:currentColor}
.nf-large-close:focus-visible,.nf-plan-expand:focus-visible,.nf-plan-tools button:focus-visible{outline:2px solid currentColor;outline-offset:3px}
html.nf-plan-viewer-open{overflow:hidden!important}
body dialog.nf-plan-viewer{box-sizing:border-box;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:#f7f5f1;color:#2d2b29;overflow:hidden;transform:none!important}
.nf-plan-viewer::backdrop{background:#17242be6}
.nf-plan-toolbar{display:flex;align-items:center;gap:16px;padding:10px 16px;border-bottom:1px solid #b5a99b70;min-height:72px;box-sizing:border-box}
.nf-plan-toolbar h2{font:400 20px/1.3 var(--font-display);margin:0;min-width:0;flex:1}
.nf-plan-toolbar>[data-plan-close]{background:transparent;color:inherit;border:1px solid #b5a99b80}
.nf-plan-tools{display:flex;align-items:center;gap:8px;direction:ltr}
.nf-plan-tools button{display:grid;place-items:center;width:44px;height:44px;padding:10px;border:1px solid #b5a99b80;background:transparent;color:inherit;cursor:pointer}
.nf-plan-tools button:disabled{opacity:.35;cursor:default}
.nf-plan-tools output{min-width:48px;text-align:center;font:400 12px/1.4 var(--font-body)}
.nf-plan-viewport{height:calc(100% - 73px);width:100%;overflow:auto;overscroll-behavior:contain;touch-action:none;direction:ltr;cursor:grab}
.nf-plan-viewport:active{cursor:grabbing}
.nf-plan-stage{display:grid;place-items:center;min-width:100%;min-height:100%;background:#ece9e3;user-select:none}
.nf-plan-stage img{display:block;max-width:none!important;max-height:none!important;object-fit:contain;pointer-events:none;flex:none}
.nf-plan-error{position:absolute;top:50%;inset-inline:20px;text-align:center}
@media(max-width:600px){.nf-plan-toolbar{display:grid;grid-template-columns:1fr 52px;gap:8px;padding:8px 12px}.nf-plan-toolbar h2{font-size:18px;grid-column:1;grid-row:1}.nf-plan-toolbar>[data-plan-close]{grid-column:2;grid-row:1}.nf-plan-tools{grid-column:1/-1;grid-row:2;justify-content:center}.nf-plan-viewport{height:calc(100% - 121px)}#lots .modalHead{padding:12px 16px}#lots .modalBody{padding:16px}#lots .nf-plan-expand{min-height:48px}}
@media(prefers-reduced-motion:reduce){.nf-plan-viewer{transition:none!important;animation:none!important}}
/* A fading closed viewer must not consume the next tap on a card. */
#nf-plan-viewer:not([open]){pointer-events:none}
