/* Shared disclosure layout: native keyboard and screen-reader behaviour stays intact. */
body details{min-width:0;max-width:100%;margin-block:12px;border:1px solid var(--line,#71809655)!important;border-radius:16px!important;background:var(--panel,var(--white,transparent));padding:0!important;box-shadow:none!important;color:inherit;}
body details>summary{position:relative;display:block!important;min-height:56px;padding:17px 54px 17px 18px!important;margin:0!important;border:0!important;border-radius:15px!important;background:transparent!important;color:inherit!important;font-family:inherit;font-size:1rem;line-height:1.45;font-weight:700;letter-spacing:normal;list-style:none!important;cursor:pointer;overflow-wrap:anywhere;box-shadow:none!important;}
body details>summary::-webkit-details-marker{display:none;}
body details>summary::marker{content:'';}
body details>summary::after{content:''!important;position:absolute!important;inset-inline-end:22px;top:24px;width:8px!important;height:8px!important;margin:0!important;border:solid currentColor;border-width:0 2px 2px 0;transform:rotate(45deg);opacity:.7;transition:transform .16s;}
body details[open]>summary{border-bottom:1px solid var(--line,#71809655)!important;border-radius:15px 15px 0 0!important;background:color-mix(in srgb,currentColor 4%,transparent)!important;}
body details[open]>summary::after{transform:rotate(225deg);top:28px;}
body details>summary:hover{background:color-mix(in srgb,currentColor 4%,transparent)!important;}
body details>summary:focus-visible{outline:3px solid var(--accent,#598cd0);outline-offset:3px;}
body details[open]{padding-bottom:18px!important;}
body details[open]>:not(summary){margin:16px 18px 0!important;max-width:calc(100% - 36px);}
body details[open]>details{background:transparent;border-radius:12px!important;}
body details details>summary{font-size:.94rem;min-height:50px;padding:14px 46px 14px 15px!important;}
body details details>summary::after{top:20px;inset-inline-end:18px;}
body details details[open]>summary::after{top:24px;}
body details form{min-width:0;}
body details :is(input,select,textarea){max-width:100%;min-width:0;}
body details select{min-height:46px;border-radius:10px;}
body details :is(p,small,label){overflow-wrap:anywhere;}
body details .row,body details .property-actions{gap:10px;flex-wrap:wrap;}
body details>summary :is(h2,h3){font-size:inherit;margin:0;}
body .tenant-full-details>summary>span[aria-hidden=true]{display:none!important;}
body .tenant-edit-group>div{padding:0!important;}
body .tenant-edit-group .field{margin-block:16px;}
body .tenant-edit-group p{font-size:.94rem;line-height:1.6;}
body .tenant-notification-contacts>details{margin-top:12px!important;}
body .tenant-message-menu a{display:flex;justify-content:flex-start;}
body .tenant-tools{display:grid;gap:0;margin-top:20px;}
body .tenant-tools>h2{font-size:1rem;margin:8px 0;color:var(--muted,inherit);font-weight:650;}
body .tenant-tools .property-chat-entry{margin:0;}
body .tenant-tools .tenant-chat>summary{padding-inline-end:86px!important;}
body .tenant-tools .tenant-chat>summary::after{inset-inline-end:58px;}
body .tenant-tools .chat-notification-button{top:9px;}
@media(max-width:480px){body details>summary{font-size:.96rem;padding-inline-start:15px!important;}body details[open]>:not(summary){margin-inline:14px!important;max-width:calc(100% - 28px);}body details .tenant-detail-row{align-items:flex-start;gap:10px;}body details .tenant-detail-row button{white-space:normal;}body details>summary .badge{display:inline-block;margin:6px 0 0;}}
@media(prefers-reduced-motion:reduce){body details>summary::after{transition:none;}}
@media(forced-colors:active){body details,body details[open]>summary{border-color:CanvasText!important;}body details>summary::after{color:CanvasText;}}

.property-house-hero{position:relative;isolation:isolate;max-width:640px;width:100%;min-height:250px;margin:24px auto 28px;display:grid;place-items:center;padding:105px 17% 42px;}
.property-house-art{position:absolute;inset:0;width:100%;height:100%;z-index:-1;overflow:visible;filter:drop-shadow(0 12px 18px #0002);}
.house-wall{fill:var(--panel2,var(--white,#1b2d47));stroke:var(--accent,#74d8c6);stroke-width:1.5;}
.house-roof{fill:var(--accent,#74d8c6);fill-opacity:.17;}
.house-roofline{fill:none;stroke:var(--accent,#74d8c6);stroke-width:3;stroke-linecap:round;stroke-dasharray:30 650;animation:houseLight 9s linear infinite;}
.house-floor{stroke:var(--accent,#74d8c6);stroke-width:2;opacity:.5;}
.house-window{fill:var(--accent,#74d8c6);fill-opacity:.24;animation:houseWindows 5s ease-in-out infinite;}
.house-window:last-child{animation-delay:1.5s;}
.property-house-label{min-width:0;text-align:center;width:100%;}
.property-house-label>span{display:block;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted,inherit);margin-bottom:10px;}
.property-house-label :is(h1,h2){font-size:clamp(1.35rem,4vw,2.2rem)!important;line-height:1.2;overflow-wrap:anywhere;margin:0!important;color:inherit;}
.property-house-label p{font-size:.95rem;margin:12px 0 0;color:var(--muted,inherit);}
.property-house-compact{min-height:220px;max-width:480px;padding-top:86px;padding-bottom:34px;}
@keyframes houseLight{to{stroke-dashoffset:-680;}}
@keyframes houseWindows{50%{fill-opacity:.65;}}
@media(max-width:480px){.property-house-hero{min-height:225px;padding-top:86px;padding-bottom:34px;}.property-house-label>span{font-size:.65rem;}}
@media(prefers-reduced-motion:reduce){.house-roofline,.house-window{animation:none;}.house-roofline{stroke-dasharray:none;}}

body .property-house-hero{padding-inline:clamp(45px,10vw,80px);}
body .property-building-fold>summary>span{display:block;width:100%;}
body .property-building-fold>summary>span>div{width:100%;}
body .property-building-fold>summary .building-mini{display:none;}

.property-house-label>.house-tenant-count{display:inline-flex;align-items:center;justify-content:center;gap:7px;margin:16px 0 0;padding:8px 14px;border:1px solid var(--accent,#74d8c6);border-radius:24px;background:var(--panel,var(--white,#162a3b));color:inherit;font-size:.88rem;letter-spacing:normal;text-transform:none;line-height:1.4;animation:tenantCountGlow 4s ease-in-out infinite;}
.house-tenant-count strong{font-size:1rem;}
@keyframes tenantCountGlow{50%{box-shadow:0 0 0 5px #68c6b41a;}}
@media(prefers-reduced-motion:reduce){.property-house-label>.house-tenant-count{animation:none;}}
