/* Shared with the approved home: charcoal, Manrope and quiet controls.
   Layout and the compact unit sheet remain independent of the visual theme. */
:root{--ink:#f5f5f2;--muted:#a9adb2;--line:#f5f5f21a;--panel:#15171af7;--yellow:#d5c082;--navy:#111214}
body,.scene-loading{background:#111214}
.experience:after,.day-mode .experience:after{background:linear-gradient(180deg,#0b0d1077,transparent 25%,transparent 70%,#0b0d10aa)}
/* Only the lower caption area gets contrast over the landscaped ground. */
.day-mode .experience:after{background:linear-gradient(0deg,#111b1a85,transparent 20%)}
.day-mode .wordmark,.day-mode .wordmark small{color:#363733}
.day-mode .brand-symbol{stroke:#363733}
.day-mode .scene-caption{text-shadow:0 1px 7px #111b1a70}
.day-mode .scene-caption p{color:#f5f5f2}
.day-mode .scene-caption p span,.day-mode .footer,.day-mode .footer a,.day-mode .interaction-hint{color:#e3e8e4}
.day-mode .caption-line{background:#dfe7dd8c}
.day-mode .compass{color:#e3e8e4}.day-mode .compass svg{fill:#e3e8e4}
@media(min-width:901px){
  .scene-caption{left:28px;bottom:77px;transform:none;text-align:left;max-width:300px}
  .scene-caption p{font-size:20px;letter-spacing:-.035em;font-weight:400}
  .scene-caption p span{font-size:9px;letter-spacing:.04em;margin-top:10px}
  .caption-line{margin:0 0 14px}
  .inventory-open .scene-caption{visibility:hidden}
}
@media(max-width:900px){.scene-caption{display:none}}
.view-toolbar,.icon-button,.utility-button{background:#15171af2;border-color:transparent;box-shadow:none;backdrop-filter:none}
.view-toolbar{border-radius:0}
.control-group button{border-radius:0;color:#bfc4ca;font-weight:450}
.control-group button.active,.control-group button.active.accent{background:transparent;color:#f5f5f2;box-shadow:inset 0 -1px 0 currentColor;font-weight:550}
.control-group button:hover{background:#f5f5f20a;color:#fff}
.control-group+.control-group:before{background:#f5f5f21a}
.icon-button{border-radius:50%;border-color:#ffffff38}
.utility-button{border-radius:0;color:#d7dadd}
.utility-button.active{background:#15171af2;border-color:transparent;box-shadow:inset 0 -1px 0 #d7dadd}
.utility-button:hover,.icon-button:hover{background:#2a2d31;color:#fff;border-color:transparent}
.brand-symbol{stroke:#e0e3e6}.wordmark small{color:#d8dadd}
.floating-panel{background:var(--panel);border:0;border-radius:0;box-shadow:none;backdrop-filter:none;scrollbar-color:#a9adb250 transparent}
.eyebrow,.inventory-filter label,.inventory-count,.table-legend,.sold-stat span,.floor-number,.table-header,.detail-final,.unit-location,.unit-specs dt,.payment-list dt,.price-caption,.plan-copy>p:nth-child(2),.footer,.footer a,.interaction-hint,.scene-caption p span,.filter-result,.inventory-empty{color:#a9adb2}
.sold-stat strong,.unit-specs dd,.payment-list dd,.scene-caption p,.unit-price{color:#f5f5f2}
.sold-stat strong{font-weight:450}.detail-heading h1{font-weight:450}
.subtle-close,.unit-location svg,.money-note,.price-block>.eyebrow,.plan-copy>span{color:#9ba2aa}
.inventory-filter select{color-scheme:dark;background:transparent;border:0;border-bottom:1px solid #ffffff25;border-radius:0;color:#e0e3e6}
.inventory-filter option{background:#1b1e22;color:#f5f5f2}
.count-separator{color:#747b84}
.sales-progress{height:2px;background:#ffffff12}.sales-progress span{background:#aeb4bb}
.unit-table{scrollbar-color:#a9adb245 transparent}
.unit-button{background:#d5c082;border-color:transparent;color:#282a25;border-radius:0}
.unit-button.sold,.legend-dot.sold{background:#ffffff08;color:#90969d;border-color:transparent}
.unit-button.sold:disabled:after{opacity:.3}
.unit-button[aria-pressed=true]{outline:1px solid #fff;outline-offset:1px;border-color:#fff;box-shadow:none;background:#ead9a7;color:#252722}
.unit-button:not(:disabled):hover{background:#ecd9a0;border-color:transparent;color:#252722}
.legend-dot{background:#d5c082;border-color:transparent;border-radius:0}
.detail-status{color:#d5c082;border-color:transparent}
.plan-building{background:transparent;border-color:#b4bac24d}.plan-building:after{background:#9aa2ac55}
.plan-building span{background:#ffffff08;color:#a9adb2;border-color:#ffffff12}
.plan-building span.active{background:#dce0e4;color:#1b1e22;border-color:transparent;box-shadow:none}
.plan-copy>span span{color:#dce0e4}
.hover-label{background:#15171af7;border:0;border-radius:0;box-shadow:none}
.hover-label span{color:#a9adb2}.hover-label.available span{color:#d5c082}
.caption-line{background:#e2e5e85c}.scene-caption{text-shadow:0 2px 7px #0006}
.compass{color:#dce0e4}.compass svg{fill:#dce0e4}.interaction-hint i{color:#737a82}
.scene-error{background:#15171af7;border:0;border-radius:0;color:#dce0e4}
.loading-mark{color:#e1e4e7}.scene-loading i{background:#bfc4ca}
.decorado-open-button{border:0;border-radius:0;background:#e1e4e7;color:#17191d;font-weight:550}
.decorado-open-button:hover{background:#fff}
.mobile-detail-toggle,.mobile-detail-toggle span{color:#d7dadd}
.embedded .header>.wordmark{opacity:.92}.embedded .footer>a{display:none}
button:focus-visible,a:focus-visible,select:focus-visible,canvas:focus-visible{outline-color:#f5f5f2}
@media(max-width:620px){.control-group.views{border-top-color:#ffffff14}}

/* Compact unit sheet: every specification stays visible without a nested scroll area. */
#details{top:92px;right:28px;width:316px;padding:17px;max-height:none;overflow:visible}
#details .sheet-handle{display:none}
#details .detail-heading{gap:12px;align-items:center}
#details .detail-heading>div{display:flex;align-items:center;gap:13px;min-width:0}
#details .detail-heading .eyebrow{font-size:7px;letter-spacing:.12em;line-height:1.5;max-width:131px}
#details .detail-heading h1{order:-1;font-size:34px;line-height:1.05;letter-spacing:-.055em;margin:0;font-weight:400}
#details .subtle-close{width:24px;height:30px;margin:0 -5px 0 0;flex:none;font-size:22px}
#details .detail-subheading{gap:10px;margin:9px 0 13px;min-height:16px}
#details .detail-status{font-size:9px;padding:0;border:0;background:none;gap:5px;line-height:1.3}
#details .detail-final{font-size:9px;line-height:1.3}
#details .unit-location{margin:0 0 0 auto;gap:5px;font-size:9px;line-height:1.3;white-space:nowrap}
#details .unit-location svg{width:12px;height:12px}
#details .detail-actions{display:grid;grid-template-columns:1fr;gap:13px;align-items:center;margin:0 0 14px}
#details .decorado-open-button{min-height:38px;padding:10px 12px;margin:0;font-size:11px;line-height:1.4}
#details .decorado-open-button svg{height:14px;width:14px}
#details .detail-body{display:block;padding-top:0}
#details .unit-specs{grid-template-columns:1.28fr 1.16fr .73fr .66fr;gap:8px;margin:0 0 14px}
#details .unit-specs dt{font-size:9px;line-height:1.25;margin-bottom:5px;white-space:nowrap}
#details .unit-specs dd{font-size:17px;line-height:1.15;font-weight:500;letter-spacing:-.03em}
#details .price-block{padding-top:12px;border-top:1px solid var(--line)}
#details .price-summary{display:grid;grid-template-columns:minmax(0,1fr) 78px;gap:12px;align-items:center;margin-bottom:13px}
#details .price-copy>.eyebrow{font-size:7px;letter-spacing:.11em;color:#a5b29a;line-height:1.3}
#details .unit-price{font-size:25px;line-height:1.15;letter-spacing:-.045em;margin:5px 0 5px}
#details .price-caption{font-size:8px;line-height:1.5;margin:0;max-width:145px}
#details .payment-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 17px;margin:0}
#details .payment-list>div{display:block;font-size:11px;line-height:1.3}
#details .payment-list dt{font-size:9px;line-height:1.3;margin:0 0 3px}
#details .payment-list dd{font-size:11px;font-weight:500;line-height:1.35;margin:0;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
#details .money-note{font-size:7.5px;line-height:1.5;margin:10px 0 0}
#details .unit-plan{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:5px;padding:0;border:0;min-width:0}
#details .plan-copy{display:flex;align-items:center;justify-content:space-between;gap:3px}
#details .plan-copy>.eyebrow{font-size:5.5px;letter-spacing:.055em;line-height:1.25;white-space:nowrap}
#details .plan-copy>span{font-size:7px;white-space:nowrap}
#details .plan-copy>span span{padding-left:1px}
#details .plan-building{width:78px;height:54px;padding:4px;gap:4px}
#details .plan-building span{font-size:8px}
#details .plan-building:after{width:5px;height:10px}
.has-selection .compass{right:366px}
@media(min-width:901px) and (max-height:760px){#details{top:91px}}
@media(min-width:901px) and (max-width:1150px){#details{right:22px;width:302px;padding:15px}.has-selection .compass{right:346px}}
@media(max-width:900px){
  #details{top:auto;bottom:47px;left:18px;right:18px;width:auto;padding:15px 17px;max-height:none;overflow:visible}
  #details .detail-heading h1{font-size:32px}
  #details .detail-heading .eyebrow{font-size:7px;max-width:none}
  #details .detail-subheading{margin-top:8px;margin-bottom:12px}
  #details .detail-actions{grid-template-columns:minmax(0,1fr) auto;gap:17px;margin-bottom:0}
  #details .decorado-open-button{min-height:40px;font-size:11px}
  #details .mobile-detail-toggle{display:flex;position:static;align-items:center;justify-content:center;gap:9px;padding:9px 0;min-height:40px;font-size:9px;line-height:1.3;white-space:nowrap}
  #details .mobile-detail-toggle span{font-size:15px}
  #details .detail-body{display:none}
  .details-expanded #details .detail-body{display:block;padding-top:15px}
  .details-expanded #details{overflow:visible}
  #details .unit-specs{margin-bottom:13px;gap:9px}
  #details .unit-specs dt{font-size:9px}
  #details .unit-specs dd{font-size:17px}
  #details .price-summary{grid-template-columns:minmax(0,1fr) 78px;gap:15px;margin-bottom:12px}
  #details .unit-price{font-size:25px}
  #details .price-caption{max-width:none;font-size:8px}
  #details .payment-list{gap:9px 18px}
  #details .payment-list dd{font-size:11px}
  #details .money-note{font-size:7px;margin-top:9px}
}
@media(max-width:900px) and (max-height:720px){
  #details{bottom:16px;padding:13px 16px}
  #details .detail-heading h1{font-size:29px}
  #details .detail-subheading{margin:7px 0 10px}
  #details .decorado-open-button,#details .mobile-detail-toggle{min-height:36px;padding-top:8px;padding-bottom:8px}
  .details-expanded #details .detail-body{padding-top:12px}
  #details .unit-specs{margin-bottom:10px}
  #details .unit-specs dd{font-size:16px}
  #details .price-block{padding-top:10px}
  #details .price-summary{margin-bottom:10px}
  #details .unit-price{font-size:24px}
  #details .payment-list{gap:8px 16px}
  #details .money-note{margin-top:8px}
  .has-selection:not(.inventory-open) .footer{display:none}
}
@media(max-width:900px) and (max-height:590px){
  #details{top:65px;bottom:auto;left:auto;right:18px;width:min(360px,calc(100vw - 36px));padding:12px 15px}
  #details .detail-heading h1{font-size:27px}
  #details .detail-subheading{margin:6px 0 8px}
  #details .decorado-open-button,#details .mobile-detail-toggle{min-height:34px;font-size:9px}
  #details .detail-actions{gap:12px}
  .details-expanded #details .detail-body{padding-top:10px}
  #details .unit-specs{margin-bottom:8px}
  #details .unit-specs dt{font-size:8px;margin-bottom:4px}
  #details .unit-specs dd{font-size:15px}
  #details .price-block{padding-top:9px}
  #details .price-summary{margin-bottom:9px}
  #details .unit-price{font-size:23px}
  #details .payment-list{gap:7px 15px}
  #details .money-note{margin-top:7px}
}
@media(min-width:621px) and (max-width:900px) and (max-height:450px){
  .details-expanded #details{width:min(580px,calc(100vw - 250px));top:65px;padding:12px 15px}
  .details-expanded #details .detail-body{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);column-gap:18px;align-items:start}
  .details-expanded #details .unit-specs{grid-template-columns:1fr 1fr;gap:13px 10px;margin:0;padding-top:4px}
  .details-expanded #details .price-block{border-top:0;padding-top:0}
  .details-expanded #details .price-summary{grid-template-columns:1fr 60px;gap:8px;margin-bottom:8px}
  .details-expanded #details .unit-price{font-size:21px}
  .details-expanded #details .plan-building{width:60px;height:44px;padding:3px;gap:3px}
  .details-expanded #details .plan-copy>.eyebrow{font-size:4.5px}
  .details-expanded #details .plan-copy>span{font-size:6px}
  .details-expanded #details .price-caption{font-size:7px}
  .details-expanded #details .payment-list{gap:7px 10px}
  .details-expanded #details .payment-list dt{font-size:8px}
  .details-expanded #details .payment-list dd{font-size:10px}
}


/* Keep small labels neutral inside the already approved compact sheet. */
#details .price-copy>.eyebrow,#details .plan-copy>span{color:#a9adb2}

/* A distinct roof selection has its own visits, without an invented price or unit. */
.viewport canvas.is-selectable:not(.dragging){cursor:pointer}
#penthouse-details{top:92px;right:28px;width:316px;padding:19px;max-height:none;overflow:visible}
#penthouse-details h2{margin:5px 0 0;font-size:29px;font-weight:450;letter-spacing:-.045em;line-height:1.15}
#penthouse-summary{font-size:11px;line-height:1.65;color:#bfc4ca;margin:13px 0 19px}
.penthouse-specs{display:grid;grid-template-columns:1fr 1.3fr;gap:15px;margin:0 0 19px}
.penthouse-specs dt{font-size:9px;color:#a9adb2;margin-bottom:5px}
.penthouse-specs dd{font-size:20px;font-weight:500;margin:0;letter-spacing:-.025em}
.penthouse-actions{display:grid;gap:8px}
.penthouse-actions a{display:flex;justify-content:space-between;align-items:center;min-height:42px;padding:11px 13px;font-size:11px;background:#e1e4e7;color:#17191d}
.penthouse-actions a+a{background:#ffffff0c;color:#e1e4e7}
.penthouse-actions a:hover{background:#fff;color:#17191d}
.penthouse-note{font-size:8px;color:#a9adb2;line-height:1.5;margin:13px 0 0}
@media(min-width:901px) and (max-width:1150px){#penthouse-details{right:22px;width:302px}}
@media(max-width:900px){#penthouse-details{top:auto;bottom:47px;left:18px;right:18px;width:auto;padding:17px;border-radius:0;background:var(--panel)}#penthouse-details h2{font-size:27px}#penthouse-summary{margin:9px 0 13px}.penthouse-specs{margin-bottom:14px}.penthouse-actions{grid-template-columns:1fr 1fr}.penthouse-note{margin-top:10px}}
@media(max-width:900px) and (max-height:590px){#penthouse-details{top:65px;bottom:auto;left:auto;right:18px;width:310px;padding:14px}#penthouse-summary{font-size:10px}.penthouse-specs{margin-bottom:12px}.penthouse-specs dd{font-size:18px}}
@media(max-width:620px) and (max-height:590px){#penthouse-details{top:auto;bottom:18px;left:18px;right:18px;width:auto;padding:13px 15px}.penthouse-specs{display:none}#penthouse-details h2{font-size:23px}#penthouse-summary{margin:8px 0 11px}.penthouse-actions a{min-height:40px;font-size:10px}.penthouse-note{margin-top:8px}}

/* In the page preview, show the building until the visitor chooses to explore. */
.embedded:not(.host-interaction-active) .header,.embedded:not(.host-interaction-active) .quick-actions,.embedded:not(.host-interaction-active) .inventory,.embedded:not(.host-interaction-active) .details,.embedded:not(.host-interaction-active) .scene-caption,.embedded:not(.host-interaction-active) .compass,.embedded:not(.host-interaction-active) .footer{visibility:hidden;pointer-events:none}

/* Camera height is independent of apartment selection and page scrolling. */
.elevation-nav{position:absolute;z-index:4;right:28px;top:50%;transform:translateY(-50%);width:48px;display:flex;flex-direction:column;align-items:center;gap:7px;padding:6px 0 10px;background:#15171af2;color:#e1e4e7}
.elevation-nav button{display:grid;place-items:center;background:none;border:0;width:44px;height:38px;font-size:24px;font-weight:300;line-height:1}
.elevation-nav button:hover{background:#ffffff0d}.elevation-nav button:disabled{opacity:.25}
.elevation-nav input{writing-mode:vertical-lr;direction:rtl;appearance:auto;accent-color:#e1e4e7;width:26px;height:140px;margin:0;cursor:ns-resize;touch-action:none}
.elevation-end{font-size:6px;letter-spacing:.13em;color:#a9adb2}
.elevation-nav output{font-size:8px;font-weight:600;letter-spacing:.07em;font-variant-numeric:tabular-nums;padding-top:3px}
.has-selection .elevation-nav{right:366px}
.build-player{position:absolute;z-index:4;bottom:67px;left:50%;transform:translateX(-50%);width:min(460px,calc(100% - 48px));padding:20px 23px 15px;background:#15171af5}
.build-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.build-heading .eyebrow{font-size:7px;color:#a9adb2;margin-bottom:6px}.build-heading strong{font-size:19px;font-weight:500;letter-spacing:-.025em}.build-heading>span{font-size:30px;font-weight:400;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.build-player input{display:block;width:100%;height:20px;margin:16px 0 3px;accent-color:#e1e4e7;cursor:ew-resize;touch-action:none}
.build-milestones{display:flex;justify-content:space-between;color:#969da6;font-size:8px}
.build-actions{display:flex;gap:17px;align-items:center;margin-top:20px}.build-actions button{border:0;background:none;font-size:10px;padding:7px 0;color:#c5cad0}.build-actions #build-play{background:#e1e4e7;color:#15171a;padding:9px 14px;min-width:84px}.build-actions a{margin-left:auto;font-size:9px;border-bottom:1px solid #ffffff40;padding-bottom:3px}
.build-note{font-size:7px;color:#858d97;margin:13px 0 0}
.construction-mode .scene-caption,.construction-mode .compass{display:none}
.embedded:not(.host-interaction-active) .elevation-nav,.embedded:not(.host-interaction-active) .build-player{visibility:hidden;pointer-events:none}
.elevation-nav input:focus-visible,.build-player input:focus-visible{outline:2px solid #f5f5f2;outline-offset:5px}
@media(min-width:901px) and (max-width:1150px){.elevation-nav{right:22px}.has-selection .elevation-nav{right:344px}}
@media(max-width:900px){.elevation-nav,.has-selection .elevation-nav{right:18px;top:235px;transform:none;width:42px;gap:5px;padding-bottom:9px}.elevation-nav button{width:40px;height:36px;font-size:22px}.elevation-nav input{height:110px;width:26px}.elevation-nav output{font-size:7px}.build-player{bottom:65px;padding:18px;width:min(440px,calc(100% - 36px))}.build-actions{gap:13px}.build-actions a{font-size:8px}.footer .owner-access{font-size:8px;gap:6px}.footer .owner-access span{font-size:13px}.details-expanded .elevation-nav input{height:64px}.details-expanded .elevation-nav{top:224px;gap:3px}}
@media(max-width:900px) and (max-height:590px){.elevation-nav,.has-selection .elevation-nav{top:100px;right:18px}.has-selection .elevation-nav{right:calc(min(360px,100vw - 36px) + 32px)}.elevation-nav input{height:70px}.build-player{bottom:46px;width:min(380px,calc(100% - 36px));padding:12px 18px}.build-heading strong{font-size:15px}.build-heading>span{font-size:24px}.build-player input{margin-top:9px}.build-actions{margin-top:9px}.build-note{margin-top:8px}.details-expanded .elevation-nav{top:100px}.details-expanded .elevation-nav input{height:70px}}
@media(max-width:380px){.footer>span{max-width:170px;font-size:7px}.build-actions{gap:10px}.build-actions a{font-size:7px}}
@media(max-width:620px) and (max-height:590px){.has-selection .elevation-nav{right:18px}}
@media(min-width:901px){.build-player{left:28px;transform:none;width:330px;padding:20px}.build-actions{gap:12px}.build-actions a{font-size:8px}.build-actions button{font-size:9px}.build-actions #build-play{min-width:75px;padding-left:11px;padding-right:11px}}
/* Short portrait screens still use the two-row mobile toolbar, never the
   landscape strip. The expanded sheet can scroll only when height is scarce. */
@media(max-width:620px) and (max-height:590px){
  .header{top:14px}.view-toolbar{top:49px;left:50%;right:auto;transform:translateX(-50%);flex-wrap:wrap;justify-content:center;width:calc(100vw - 36px);max-width:400px;overflow:visible;padding:4px 6px;gap:3px 9px}.control-group.views{flex-basis:100%;border-top:1px solid #ffffff14;padding-top:4px}.control-group button,.control-group.views button{padding:8px 10px;font-size:9px}
  .quick-actions{top:157px;left:18px;right:18px;justify-content:space-between}.inventory{top:200px;max-height:calc(100dvh - 239px);width:230px}
  .elevation-nav,.has-selection .elevation-nav{top:206px;right:18px;gap:2px;padding:3px 0}.elevation-nav button{height:30px}.elevation-nav input{height:44px}.elevation-end{font-size:5px}.elevation-nav output{padding:3px 0;font-size:6px}
  #details{top:auto;bottom:34px;left:18px;right:18px;width:auto}.details-expanded #details{top:201px;bottom:34px;overflow:auto}.details-expanded .elevation-nav{visibility:hidden}
  .build-player{bottom:40px;padding:12px 16px}.build-actions{gap:9px}.build-actions a{font-size:7px}.build-note{font-size:6px}
}
