/* property-detail.css */
/* Property detail: photography, transparent economics, then physical context. */
.property-page .portal-shell{max-width:1512px;padding:32px clamp(20px,5vw,76px) 64px}
.property-page h1{max-width:1100px;font-size:clamp(34px,4.6vw,62px);line-height:1.08;letter-spacing:-.045em;margin:8px 0 14px;font-weight:500}
.property-page #portal-status{font-size:16px;margin:0 0 30px;max-width:none}
.property-hero-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);gap:32px;align-items:start}
.property-page .detail-photo{aspect-ratio:16/10;height:auto;border-radius:20px}
.property-brief{padding:30px;border:1px solid var(--line);border-radius:20px;background:var(--surface);min-width:0}
.detail-eyebrow{font-size:10px!important;font-weight:600;letter-spacing:.16em;color:var(--teal);margin:0 0 13px;text-transform:uppercase}
.property-brief h2{font-size:clamp(26px,2.4vw,35px);line-height:1.18;letter-spacing:-.035em;margin:0 0 26px;font-weight:500}
.brief-facts{margin:0 0 25px;display:grid;gap:0}.brief-facts>div{padding:12px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px}
.brief-facts dt{font-size:12px;color:var(--muted)}.brief-facts dd{font-size:14px;font-weight:500;text-align:right;margin:0;max-width:66%}
.property-page .property-brief .detail-actions{display:grid;grid-template-columns:1fr;gap:10px;margin:0 0 18px}.property-page .property-brief .detail-actions a{min-height:48px;font-size:14px;border-radius:10px;padding:12px}
.brief-contact{display:block;text-align:center;color:var(--muted);font-size:12px;text-decoration:none}.brief-contact:hover{text-decoration:underline}
.property-jump{display:flex;gap:32px;border-bottom:1px solid var(--line);margin:30px 0 0;overflow-x:auto;white-space:nowrap;scrollbar-width:thin}
.property-jump a{display:block;padding:17px 0;text-decoration:none;color:var(--muted);font-size:13px;font-weight:500;border-bottom:2px solid transparent}.property-jump a:hover,.property-jump a:focus{color:var(--ink);border-color:var(--teal)}
.property-section{margin:0;padding:54px 0;scroll-margin-top:100px;border-bottom:1px solid var(--line)}
.section-intro{margin:0 0 28px}.property-page .section-intro h2,.property-page .download-section h2{font-size:clamp(26px,3vw,38px);font-weight:500;letter-spacing:-.035em;line-height:1.2;margin:0 0 12px}
.section-deck{color:var(--muted);font-size:15px;margin:0;max-width:730px}.space-card-list{display:grid;gap:18px}.space-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.space-card-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 28px 20px}.space-type{color:var(--muted);font-size:11px;letter-spacing:.06em;text-transform:uppercase;margin:0 0 5px}.property-page .space-card h3{font-size:22px;font-weight:500;letter-spacing:-.025em;margin:0}.space-size{font-size:23px;font-weight:500;white-space:nowrap;letter-spacing:-.025em}
.space-economics{display:grid;grid-template-columns:1.2fr 1fr 1.3fr 1fr;gap:0;margin:0;padding:0 28px 24px}.space-economics>div{min-width:0;border-left:1px solid var(--line);padding:0 22px}.space-economics>div:first-child{border:0;padding-left:0}.space-economics>div:last-child{padding-right:0}.space-economics dt{font-size:11px;color:var(--muted);margin-bottom:9px}.space-economics dd{font-size:17px;line-height:1.4;letter-spacing:-.015em;margin:0;font-weight:500;overflow-wrap:anywhere}.space-economics small{display:block;font-size:10px;color:var(--muted);line-height:1.5;margin-top:5px;max-width:210px}.space-charges{margin:0 28px 20px;font-size:12px;color:var(--muted)}
.property-page details.space-description{margin:0 28px 20px;padding:0;border:0;background:transparent;border-radius:0;font-size:13px}.space-description summary{font-size:13px;cursor:pointer}.space-description p{color:var(--muted);max-width:920px;line-height:1.8}
.space-card-footer{border-top:1px solid var(--line);background:var(--surface-alt);padding:12px 28px;display:flex;justify-content:space-between;align-items:center;gap:20px}.space-use{font-size:12px;color:var(--muted)}.space-card-footer a.portal-button{border:0;background:transparent;padding:8px 0;font-size:12px;min-height:36px}
.detail-disclaimer{font-size:11px;line-height:1.7;color:var(--muted);margin:20px 0 0;max-width:1000px}
.plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.plan-card{border:1px solid var(--line);border-radius:16px;padding:16px;background:var(--surface);min-width:0}.plan-open{display:block;color:var(--teal);text-decoration:none;font-size:12px}.plan-image{height:310px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:#fff;margin-bottom:14px;overflow:hidden;padding:16px}.plan-image img{width:100%;height:100%;object-fit:contain}.plan-pdf{height:180px;display:flex;align-items:center;justify-content:center;background:var(--surface-alt);font-size:32px;border-radius:8px;margin-bottom:14px;letter-spacing:.1em}.property-page .plan-card h3{font-size:15px;font-weight:500;margin:9px 0 0}
.property-page .detail-context{display:block;margin:0}.location-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:32px}.property-page .detail-map{height:360px;border-radius:16px;overflow:hidden}.neighborhood-panel{padding:8px 0}.neighborhood-panel>h3{font-size:22px;font-weight:500;letter-spacing:-.02em;margin:0 0 15px}.neighborhood-panel>.portal-button{font-size:13px;border-radius:9px;min-height:44px;padding:10px 16px}.property-page .detail-retailers{border:0;width:auto;padding:28px 0 0;margin:24px 0 0;border-top:1px solid var(--line)}.property-page .retailer-heading{display:block;margin-bottom:22px;min-height:0}.property-page .retailer-heading h2{font-size:15px;margin:0 0 7px}.property-page .retailer-heading>span{font-size:11px}.property-page .retailer-rail{display:grid;grid-template-columns:1fr 1fr;gap:20px}.property-page .retailer{min-width:0;gap:8px}.property-page .retailer-mark{width:120px;height:44px}.property-page .retailer-mark img{max-width:110px;max-height:40px}.property-page .retailer .retailer-distance{font-size:11px}
.download-section{display:flex;align-items:center;justify-content:space-between;gap:32px;border:0}.download-actions{display:flex;gap:12px;flex-wrap:wrap}.download-actions .portal-button{font-size:13px;border-radius:10px;min-height:48px}.property-page .detail-footnote{font-size:11px;margin-top:12px}
@media(max-width:1050px){.property-hero-layout{gap:24px;grid-template-columns:minmax(0,1.5fr) minmax(270px,1fr)}.property-brief{padding:24px}.space-economics>div{padding:0 16px}.space-economics dd{font-size:16px}.property-page .detail-photo{aspect-ratio:4/3}.download-section{align-items:flex-start;flex-direction:column}}
@media(max-width:760px){.property-page .portal-shell{max-width:100%;padding:24px 20px 48px}.property-page h1{font-size:36px}.property-page #portal-status{font-size:14px;margin-bottom:24px}.property-hero-layout{display:flex;flex-direction:column;gap:22px}.property-page .detail-photo{aspect-ratio:4/3;border-radius:14px}.property-brief{width:100%;box-sizing:border-box;padding:24px;border-radius:14px}.property-brief h2{font-size:28px}.brief-facts{margin-bottom:20px}.property-page .property-brief .detail-actions{grid-template-columns:1fr 1fr}.property-jump{gap:24px;margin-top:26px}.property-jump a{font-size:12px}.property-section{padding:36px 0}.section-intro{margin-bottom:22px}.section-deck{font-size:14px}.space-card-heading{padding:20px;align-items:flex-start;gap:12px}.property-page .space-card h3{font-size:19px}.space-size{font-size:19px}.space-economics{grid-template-columns:1fr 1fr;gap:24px 0;padding:0 20px 22px}.space-economics>div{padding:0 0 0 18px}.space-economics>div:nth-child(odd){padding-left:0;border-left:0;padding-right:18px}.space-economics dd{font-size:16px}.space-economics small{font-size:10px}.space-card-footer{padding:10px 20px}.space-charges{margin:0 20px 18px}.property-page details.space-description{margin:0 20px 18px}.plan-grid{grid-template-columns:1fr;gap:18px}.plan-image{height:280px}.location-grid{grid-template-columns:1fr;gap:24px}.property-page .detail-map{height:285px}.neighborhood-panel{padding:0}.property-page .detail-retailers{margin-top:24px}.property-page .retailer-rail{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.property-page .retailer-mark{width:100%;height:36px}.property-page .retailer-mark img{max-width:100%;max-height:34px}.download-section{gap:20px}.download-actions{width:100%;display:grid;grid-template-columns:1fr}.detail-disclaimer{font-size:11px}}
@media(max-width:400px){.property-page h1{font-size:31px}.space-card-heading{flex-direction:column;gap:8px}.space-economics dd{font-size:15px}.property-page .retailer-rail{grid-template-columns:1fr 1fr}.property-page .property-brief .detail-actions{grid-template-columns:1fr}}
@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
@media print{.property-jump,.download-actions{display:none}.property-section{break-inside:avoid}.space-card{break-inside:avoid}}
/* Compact comparison layout with map directly below the opportunity brief. */
.property-hero-layout{grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);gap:24px;align-items:stretch}
.property-hero-side{display:grid;grid-template-rows:auto minmax(200px,1fr);gap:16px;min-width:0}
.property-page .detail-gallery{min-width:0;display:flex;flex-direction:column}
.property-page .detail-photo{flex:1;min-height:390px;aspect-ratio:auto}
.property-brief{padding:20px 22px;border-radius:16px}.property-brief h2{font-size:27px;margin-bottom:12px}.property-brief .detail-eyebrow{margin-bottom:8px}
.brief-facts{margin-bottom:14px}.brief-facts>div{padding:7px 0}.property-page .property-brief .detail-actions{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.property-page .property-brief .detail-actions a{min-height:40px;padding:9px 8px;font-size:12px}
.property-hero-side .detail-location{position:relative;min-height:220px;scroll-margin-top:100px}.property-page .property-hero-side .detail-map{height:100%;min-height:220px;border-radius:16px}.property-hero-side .detail-location>a{position:absolute;bottom:14px;right:14px;z-index:10;font-size:11px;padding:8px 12px;min-height:32px}
.space-card-list{gap:12px}.space-card-heading{padding:16px 20px 12px;gap:12px}.property-page .space-card h3{font-size:20px}.space-type{display:inline-block;font-size:13px;line-height:1.4;letter-spacing:0;text-transform:none;font-weight:600;color:var(--teal);margin:7px 0 0}.space-size{font-size:21px}
.space-economics{padding:0 20px 14px;grid-template-columns:repeat(3,minmax(0,1fr))}.space-economics>div{padding:0 18px}.space-economics dt{font-size:11px;margin-bottom:5px}.space-economics dd{font-size:18px}.space-economics small{font-size:11px;max-width:none}.space-charges{margin:0 20px 12px}.property-page details.space-description{margin:0 20px 12px}.space-card-footer{padding:8px 20px;gap:12px}.property-page .space-card-footer a.portal-button{display:inline-flex;flex:0 0 auto;min-width:0;width:auto;min-height:36px;padding:8px 12px;white-space:nowrap;font-size:12px;border:1px solid var(--line);border-radius:8px;line-height:1.2}
.location-grid{grid-template-columns:1fr}.neighborhood-panel>h3,.neighborhood-panel>.portal-button{display:none}.property-page .detail-retailers{margin:0;padding:0;border:0}.property-page .retailer-rail{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.property-page .retailer{display:flex;flex-direction:column;align-items:center;text-align:center;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);gap:10px}
.property-page .retailer-mark{display:flex;align-items:center;justify-content:center;width:100%;max-width:180px;height:64px;padding:10px;box-sizing:border-box;background:#fff!important;border:1px solid #e4e7e9;border-radius:8px}.property-page .retailer-mark img{object-fit:contain;max-width:100%;width:120px;height:42px;max-height:42px;filter:none!important;mix-blend-mode:normal!important;opacity:1!important}.property-page .retailer-name{display:block;color:var(--ink);font-size:12px;font-weight:600;margin-bottom:4px}.property-page .retailer-name-fallback{color:#16252c}.property-section{padding:36px 0}.section-intro{margin-bottom:20px}
@media(max-width:900px){.property-hero-layout{grid-template-columns:1fr 1fr;gap:18px}.property-brief{padding:18px}.property-brief h2{font-size:24px}.property-page .property-brief .detail-actions{grid-template-columns:1fr}.space-economics>div{padding:0 12px}}
@media(max-width:760px){.property-hero-layout{display:grid;grid-template-columns:1fr;gap:18px}.property-page .detail-photo{min-height:0;aspect-ratio:4/3;flex:auto}.property-hero-side{grid-template-rows:auto 220px}.property-page .property-brief .detail-actions{grid-template-columns:1fr 1fr}.space-card-heading{padding:14px 16px 12px;flex-direction:row}.space-type{font-size:12px}.space-size{font-size:18px}.space-economics{grid-template-columns:1fr;gap:10px;padding:0 16px 14px}.space-economics>div,.space-economics>div:nth-child(odd){border:0;border-top:1px solid var(--line);padding:10px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:4px 10px}.space-economics dt{margin:0}.space-economics dd{text-align:right;font-size:17px}.space-economics small{grid-column:1/-1;text-align:right;margin:0}.space-charges{margin:0 16px 12px}.property-page details.space-description{margin:0 16px 12px}.space-card-footer{padding:8px 16px}.space-use{font-size:11px}.property-page .retailer-rail{grid-template-columns:1fr 1fr;gap:12px}.property-page .retailer-mark{height:64px}.property-page .retailer-mark img{max-height:42px}.property-page .retailer{padding:12px}.property-page .detail-retailers{margin:0}.property-page h1{font-size:34px}}
@media(min-width:761px){.property-page .portal-shell{padding-top:20px}.property-page .property-return{margin-bottom:14px}.property-page h1{font-size:clamp(34px,3.5vw,48px);margin:4px 0 10px}.property-page #portal-status{margin-bottom:20px}.property-page .detail-kind{margin-bottom:6px}.property-hero-layout{align-items:stretch}.property-hero-side{grid-template-rows:auto minmax(180px,1fr);gap:12px}.property-page .property-hero-side .detail-map,.property-hero-side .detail-location{min-height:180px}.property-page .detail-photo{min-height:330px}.property-page .property-brief{padding:16px 20px}.property-page .property-brief h2{margin:0 0 10px;font-size:25px}.property-page .property-brief .detail-eyebrow{margin:0 0 7px}.property-page .brief-facts>div{padding:6px 0}.property-page .brief-facts{margin-bottom:12px}.property-page .property-brief .detail-actions{margin:0 0 8px}.property-page .gallery-thumbnails{height:48px;margin-top:8px}.property-page .gallery-thumbnail{height:46px}.property-page .detail-location{padding:0;margin:0;border:0;background:transparent}}
.property-page .space-card .space-type{margin:5px 0 0;font-size:13px;line-height:1.4}.property-page .space-card .space-charges{font-size:11px;line-height:1.4;margin:0 20px 10px}.property-page .space-card .space-card-heading{padding:14px 20px 12px}.property-page .space-card .space-economics{padding-bottom:12px}.property-page .space-card details.space-description{margin-bottom:10px}.property-page .space-card .space-card-footer{padding:6px 20px}.property-page .space-card-footer .portal-button{border-radius:8px!important;min-height:32px!important;padding:7px 10px!important}.property-page .retailer-mark img{filter:none!important}
.property-page .retailer-mark.retailer-mark-reversed{background:#243b35!important;border-color:#243b35}.property-page .retailer::after{display:none}.property-page .retailer-mark-home-depot img{width:44px;height:44px}
@media(min-width:901px){.property-hero-layout{align-items:start}.property-hero-side{height:460px;grid-template-rows:auto minmax(160px,1fr)}.property-page .detail-photo{height:460px;min-height:0;flex:none}.property-page .property-hero-side .detail-map,.property-hero-side .detail-location{min-height:160px}}
.property-share{display:flex;align-items:center;gap:12px;margin:0 0 12px;flex-wrap:wrap}.property-share-button{font:500 12px/1.2 var(--ui);color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:9px 13px;min-height:36px;cursor:pointer}.property-share-button:hover{border-color:var(--teal)}.property-share-button:focus-visible{outline:2px solid var(--teal);outline-offset:3px}.share-feedback{font-size:12px;color:var(--muted);max-width:100%}.share-feedback input{display:block;width:min(400px,80vw);max-width:100%;font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line);padding:8px;box-sizing:border-box}.property-page #portal-status{margin-top:0}
/* Keep sharing within the title block without adding a desktop row. */
.property-title-row{display:flex;align-items:center;justify-content:space-between;gap:20px;min-width:0}.property-title-row h1{min-width:0}.property-title-row .property-share{margin:0;justify-content:flex-end;flex-shrink:0}.property-share-button:disabled{opacity:.65;cursor:progress}.property-title-row .share-feedback{max-width:240px}
@media(max-width:760px){.property-title-row{align-items:flex-start;flex-direction:column;gap:4px;margin-bottom:14px}.property-title-row .property-share{justify-content:flex-start}.property-title-row .share-feedback{max-width:100%}}
@media print{.property-share{display:none}}
/* Compact, explicit primary actions and true edge-to-edge map frame. */
.property-page .property-brief .detail-actions{grid-template-columns:1fr 1fr!important}.property-page .property-brief .detail-actions>a:first-child{grid-column:1/-1}.property-page .property-brief .detail-actions>a{min-height:36px!important;padding:9px 8px!important;font-size:12px!important}
.property-page .property-hero-side .detail-location{padding:0!important;margin:0!important;border:0!important;box-shadow:none!important;background:transparent!important;overflow:hidden;border-radius:var(--frame-radius,12px)!important}.property-page .property-hero-side .detail-map{padding:0!important;margin:0!important;box-sizing:border-box;width:100%;height:100%;border:1px solid var(--line);border-radius:var(--frame-radius,12px)!important;overflow:hidden}
.property-page .property-directions{display:flex!important;align-items:center;justify-content:center;min-width:36px!important;width:36px!important;height:36px!important;min-height:36px!important;padding:7px!important;right:10px!important;bottom:26px!important;border-radius:8px!important;box-sizing:border-box}.property-directions svg,.property-share-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;display:block}.property-directions::after{display:none!important}
.property-share-button{display:flex;align-items:center;justify-content:center;width:38px;height:38px;padding:8px;min-height:38px;border-radius:8px}.property-page .retailer-mark.retailer-mark-reversed{background:#fff!important;border-color:#e4e7e9}.property-page .retailer-mark.retailer-mark-reversed img{filter:brightness(0) saturate(100%)!important}
.property-page .gallery-thumbnails{height:auto!important;min-height:0;max-height:none;overflow-y:hidden;overflow-x:auto;flex-wrap:nowrap;box-sizing:content-box;padding:3px 3px 8px}.property-page .gallery-thumbnail{height:46px;flex-shrink:0}
.detail-gallery .gallery-fullsize,.card-gallery .gallery-fullsize{min-height:24px!important;font-size:10px!important;line-height:1.2!important;padding:5px 7px!important;border-radius:6px!important;bottom:8px!important;right:8px!important}.detail-gallery .gallery-fullsize::after{display:none!important}
@media(min-width:901px){.property-hero-side{height:480px}.property-page .detail-photo{height:480px}}
.property-page .retailer-mark img{padding:0!important}.property-page .retailer-mark.retailer-mark-reversed img[alt="Chipotle"]{filter:none!important}.property-page .retailer-mark img[alt="Vons"]{transform:scale(1.8)}.property-page .retailer-mark img[alt="Albertsons"]{transform:scale(1.4)}.property-page .retailer-mark{overflow:hidden}
.property-page .retailer .site-external-icon{display:none}.property-page .gallery-fullsize .site-external-icon{display:none}

/* interface-polish.css */
/* Shared corner system, loaded last on every public and portal page.
   Only corner geometry is normalized. Keep existing overflow, positioning,
   touch targets, focus rings, PDF fields, and native map controls unchanged. */
:root {
  --radius-frame: 12px;
  --radius-control: 8px;
  --radius-inset: 6px;
}

/* Named surfaces only: never round the page shell or every descendant. */
:is(
  .card, .portal-panel, .application-section, .detail-summary,
  .detail-location, .detail-retailers, .inbox-row, .privacy-content,
  .property-brief, .space-card, .plan-card, .detail-photo,
  .geo-card, .geo-listing, .geo-case-facts, .geo-contact,
  .geo-metrics > div, .home-resource-links > a, .server-property,
  .tenant-tool, .tenant-help, .plan-panel, .plan-saved-card,
  .plan-export, .application-next-steps, .docusign-start, .pdf-editor,
  .pdf-application dialog, #filter-panel, #property-map, #coverage-map,
  .detail-map, .maplibregl-popup-content, .property-map-tag,
  .coverage-apple-popup
) {
  border-radius: var(--radius-frame) !important;
}

/* A single modest shape for rectangular actions and form controls. The explicit
   list excludes map pins, circular popup dismiss buttons and numbered steps. */
:is(
  .portal-button, .application-primary, .application-link,
  .browse-toolbar > button, #done-filters, .location-tools button,
  .vector-map-tools button, .business-planner button, .open-draft,
  .gallery-control, .property-lightbox-button, .gallery-thumbnail,
  .site-nav a, .geo-nav a, .tenant-tool-nav a, .property-back,
  .pdf-toolbar button, .pdf-toolbar select, .recipient button,
  .geo-contact-links a:first-child, .tenant-help > a,
  .search-input-wrap, .browse-toolbar .view-toggle,
  .theme-control select, .theme-control.theme-icon-control,
  .filter-bar select, .location-controls input,
  .portal-field input:not([type="checkbox"]):not([type="radio"]),
  .portal-field textarea, .portal-field select, .portal-code,
  .plan-field input, .plan-field textarea, .plan-field select,
  .plan-money-grid input, .docusign-start select,
  .application-context input, .application-context select, #field-value,
  .portal-banner, .portal-error, #plan-error, #pdf-error,
  .location-tools, .detail-spaces, .plan-budget > div,
  .site-skip-map, .geo-skip
) {
  border-radius: var(--radius-control) !important;
}

/* Inset controls fit their parent frames without becoming tiny capsules. */
html[data-theme] .listings-page .browse-toolbar .view-toggle button,
:is(.availability-kind, .map-thumbnail, .gallery-thumbnail img) {
  border-radius: var(--radius-inset) !important;
}

/* Notes keep the straight edge that carries their accent rule. */
.plan-note {
  border-radius: 0 var(--radius-control) var(--radius-control) 0;
}

/* Match inset focus outlines to the card and photo corners. */
.listings-page .card-body:focus-visible {
  border-radius: 0 0 var(--radius-frame) var(--radius-frame);
}
.gallery-edge:focus-visible {
  border-radius: var(--radius-frame);
}
