:root{--b3d-font-family:"Manrope", system-ui, sans-serif;--b3d-color-accent:#5e7a63;--b3d-color-accent-strong:#2f4a35;--b3d-color-surface:#ffffffe0;--b3d-color-text:#1f2328;--b3d-color-muted:#5f646b;--b3d-color-line:#1f23281f;--b3d-color-bg:#eef1f3;--b3d-radius:14px;--b3d-shadow:0 10px 30px #141e281f;--b3d-focus:0 0 0 3px #5e7a6373;--st-available:#7fcfa6;--st-reserved:#e9b949;--st-sold:#8a8f98;--st-unavailable:#b5b5b5;--st-hidden:#b5b5b5;--b3d-gap:16px}*{box-sizing:border-box}html,body,#root{background:var(--b3d-color-bg);height:100%;color:var(--b3d-color-text);font-family:var(--b3d-font-family);margin:0}button,select,input{font:inherit;color:inherit}:focus-visible{box-shadow:var(--b3d-focus);outline:none}h1,h2,h3{margin:0}.b3d-app{position:fixed;inset:0;overflow:hidden}.b3d-stage{position:absolute;inset:0}.b3d-panel{background:var(--b3d-color-surface);-webkit-backdrop-filter:blur(14px);border-radius:var(--b3d-radius);box-shadow:var(--b3d-shadow);border:1px solid #fff9;position:absolute}fieldset{border:0;min-width:0;margin:0;padding:0}.b3d-chips legend{width:100%;padding:0}.b3d-sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.b3d-dot{border-radius:50%;flex:none;width:10px;height:10px;display:inline-block}.b3d-brand{top:var(--b3d-gap);left:var(--b3d-gap);width:268px;padding:14px 16px}.b3d-brand-name{letter-spacing:.2px;font-size:18px;font-weight:700}.b3d-brand-sub{color:var(--b3d-color-muted);margin-top:2px;font-size:13px}.b3d-toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.b3d-select{border:1px solid var(--b3d-color-line);background:#fff;border-radius:8px;max-width:100%;padding:4px 6px;font-size:13px}.b3d-brand>.b3d-select{margin-top:4px}.b3d-project{max-width:150px;font-size:12px}.b3d-seg{border:1px solid var(--b3d-color-line);background:#fff;border-radius:8px;display:inline-flex;overflow:hidden}.b3d-seg button{cursor:pointer;background:0 0;border:0;min-height:28px;padding:4px 10px;font-size:12px;font-weight:600}.b3d-seg button[aria-pressed=true]{background:var(--b3d-color-accent);color:#fff}.b3d-filters{top:178px;left:var(--b3d-gap);width:268px;padding:14px 16px}.b3d-filters h3{text-transform:uppercase;letter-spacing:1px;color:var(--b3d-color-muted);margin:0 0 8px;font-size:12px;font-weight:600}.b3d-chips{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.b3d-chip{border:1px solid var(--b3d-color-line);cursor:pointer;background:#fff;border-radius:999px;min-height:32px;padding:5px 11px;font-size:13px}.b3d-chip[aria-pressed=true]{background:var(--b3d-color-accent);color:#fff;border-color:var(--b3d-color-accent)}.b3d-switch{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:13px;display:flex}.b3d-switch input{accent-color:var(--b3d-color-accent);width:16px;height:16px}.b3d-count{color:var(--b3d-color-muted);flex-wrap:wrap;align-items:baseline;gap:4px 6px;margin-top:12px;font-size:13px;display:flex}.b3d-count b{color:var(--b3d-color-text);font-size:16px}.b3d-link{color:var(--b3d-color-accent-strong);cursor:pointer;background:0 0;border:0;margin-left:auto;padding:0;font-size:12px;text-decoration:underline}.b3d-legend{left:var(--b3d-gap);bottom:var(--b3d-gap);gap:14px;margin:0;padding:10px 14px;font-size:13px;list-style:none;display:flex}.b3d-legend li{align-items:center;gap:6px;display:inline-flex}.b3d-rail{right:var(--b3d-gap);max-height:80vh;padding:8px;top:50%;overflow:auto;transform:translateY(-50%)}.b3d-rail ul{grid-template-columns:max-content 1fr;gap:2px 0;margin:0;padding:0;list-style:none;display:grid}.b3d-rail li{grid-column:1/-1;grid-template-columns:subgrid;display:grid}.b3d-rail button{grid-column:1/-1;grid-template-columns:subgrid;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:8px;width:100%;padding:6px 10px 6px 6px;display:grid}.b3d-rail button:hover,.b3d-rail button[aria-current=true]{background:#5e7a631f}.b3d-rail .num{box-sizing:border-box;white-space:nowrap;border:1px solid var(--b3d-color-line);background:#fff;border-radius:15px;place-items:center;min-width:30px;height:30px;padding:0 8px;font-size:12px;font-weight:700;display:grid;overflow:hidden}.b3d-rail button[aria-current=true] .num{background:var(--b3d-color-accent);color:#fff;border-color:var(--b3d-color-accent)}.b3d-rail .meta{color:var(--b3d-color-muted);white-space:nowrap;font-size:11px}.b3d-pins{pointer-events:none;position:absolute;inset:0}.b3d-pin{background:var(--b3d-color-accent);color:#fff;pointer-events:auto;cursor:pointer;border:0;border-radius:13px;place-items:center;min-width:26px;height:26px;padding:0 6px;font-size:12px;font-weight:700;transition:transform .12s;display:grid;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 3px #ffffffd9}.b3d-pin:hover,.b3d-pin.on{background:var(--b3d-color-accent-strong);transform:translate(-50%,-50%)scale(1.15)}.b3d-unit-pin{height:24px;color:var(--b3d-color-text,#1d2420);font-variant-numeric:tabular-nums;pointer-events:auto;cursor:pointer;background:#fffffff0;border:0;border-radius:12px;align-items:center;gap:5px;padding:0 8px 0 7px;font-size:12px;font-weight:700;transition:transform .12s,opacity .12s;display:inline-flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 4px #0000002e}.b3d-unit-pin .b3d-dot{width:8px;height:8px}.b3d-unit-pin-lv{color:var(--b3d-color-muted);font-size:10px;font-weight:600}.b3d-unit-pin.upper{background:#fffc}.b3d-unit-pin.dim{opacity:.45}.b3d-unit-pin:hover,.b3d-unit-pin.hot,.b3d-unit-pin.on{background:var(--b3d-color-accent);color:#fff;transform:translate(-50%,-50%)scale(1.12)}.b3d-unit-pin:hover .b3d-unit-pin-lv,.b3d-unit-pin.hot .b3d-unit-pin-lv,.b3d-unit-pin.on .b3d-unit-pin-lv{color:#fffc}.b3d-stepper{left:50%;bottom:var(--b3d-gap);align-items:center;gap:6px;padding:6px;display:flex;transform:translate(-50%)}.b3d-stepper button{border:1px solid var(--b3d-color-line);cursor:pointer;background:#fff;border-radius:50%;width:40px;height:40px;font-size:18px;line-height:1}.b3d-stepper button:disabled{opacity:.35;cursor:default}.b3d-stepper .label{text-align:center;letter-spacing:1.5px;text-transform:uppercase;border:1.5px solid var(--b3d-color-accent);min-width:150px;color:var(--b3d-color-accent-strong);border-radius:999px;padding:9px 16px;font-size:13px;font-weight:700}.b3d-tooltip{left:var(--tx);top:var(--ty);pointer-events:none;color:#fff;white-space:nowrap;z-index:5;background:#1f2328;border-radius:10px;padding:9px 12px;font-size:13px;line-height:1.45;position:absolute;transform:translate(14px,14px)}.b3d-tooltip .t-hint{opacity:.75;margin-top:4px;font-size:12px}.b3d-tooltip .t-title{font-weight:700}.b3d-tooltip .t-status{align-items:center;gap:6px;display:inline-flex}.b3d-card{right:96px;top:var(--b3d-gap);z-index:6;width:340px;max-height:calc(100% - 32px);padding:18px;overflow:auto}.mode-list .b3d-card{right:calc(var(--b3d-gap) * 2 + 470px)}.b3d-card .head{justify-content:space-between;align-items:start;gap:8px;display:flex}.b3d-card .code{margin-bottom:4px;font-size:22px;font-weight:700}.b3d-card .close{cursor:pointer;width:36px;height:36px;color:var(--b3d-color-muted);background:0 0;border:0;border-radius:50%;font-size:24px}.b3d-badge{background:#0000000d;border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.b3d-card .price{margin:10px 0 2px;font-size:24px;font-weight:700}.b3d-card .price s{color:var(--b3d-color-muted);margin-left:8px;font-size:15px;font-weight:500}.b3d-card .ppa{color:var(--b3d-color-muted);font-size:13px}.b3d-card .facts{grid-template-columns:1fr 1fr;gap:12px 16px;margin:14px 0;display:grid}.b3d-card .facts dt{text-transform:uppercase;letter-spacing:1px;color:var(--b3d-color-muted);font-size:11px}.b3d-card .facts dd{margin:2px 0 0;font-weight:600}.b3d-card .type{color:var(--b3d-color-muted);margin:-2px 0 6px;font-size:13px;font-weight:600}.b3d-card .tagline{color:var(--b3d-color-muted);margin:10px 0 0;font-size:13px;line-height:1.45}.b3d-plan-image{cursor:zoom-in;display:block}.b3d-plan-image img{object-fit:contain;background:#fff;border-radius:8px;width:100%;height:auto;max-height:52vh;display:block}.b3d-plan-stack{gap:14px;display:grid}.b3d-plan-level{min-width:0}.b3d-plan-level+.b3d-plan-level{border-top:1px solid var(--b3d-color-line);padding-top:14px}.b3d-plan-level figcaption{color:var(--b3d-color-muted);margin:0 0 8px;font-size:12px;font-weight:700}.b3d-card .rooms{margin-top:12px;font-size:13px}.b3d-card .rooms summary{cursor:pointer;text-transform:uppercase;letter-spacing:1px;color:var(--b3d-color-muted);padding:4px 0;font-size:11px}.b3d-card .rooms ul{margin:0;padding:0;list-style:none}.b3d-card .rooms li{border-bottom:1px solid var(--b3d-color-line);justify-content:space-between;gap:12px;padding:4px 0;display:flex}.b3d-card .room-area{font-variant-numeric:tabular-nums;white-space:nowrap}.b3d-card .room-level{margin:8px 0 2px;font-weight:600}.b3d-plan{border:1px solid var(--b3d-color-line);background:#fbfaf7;border-radius:12px;margin:0;padding:8px}.b3d-plan svg{width:100%;height:auto;font-family:var(--b3d-font-family);display:block}.b3d-levels{flex-wrap:wrap;margin-bottom:6px}.b3d-cta{background:var(--b3d-color-accent-strong);color:#fff;cursor:pointer;border:0;border-radius:12px;width:100%;min-height:44px;margin-top:14px;padding:12px;font-weight:700}.b3d-list{top:var(--b3d-gap);right:var(--b3d-gap);bottom:var(--b3d-gap);width:470px;padding:6px 8px;overflow:auto}.b3d-list table{border-collapse:collapse;width:100%;font-size:13px}.b3d-list thead th{background:var(--b3d-color-surface);text-align:left;text-transform:uppercase;letter-spacing:.8px;color:var(--b3d-color-muted);padding:8px 6px;font-size:11px;font-weight:600;position:sticky;top:0}.b3d-list td,.b3d-list tbody th{border-top:1px solid var(--b3d-color-line);text-align:left;white-space:nowrap;padding:6px;font-weight:400}.b3d-list tbody th button{cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;min-height:32px;padding:6px 8px;font-weight:700;display:inline-flex}.b3d-list tbody tr:hover,.b3d-list tbody tr[aria-selected=true]{background:#5e7a631a}.b3d-empty{color:var(--b3d-color-muted);padding:16px}.b3d-loading{color:var(--b3d-color-muted);pointer-events:none;place-items:center;margin:0;font-weight:600;display:grid;position:absolute;inset:0}.b3d-scene{left:var(--b3d-gap);flex-direction:column;width:268px;min-height:0;max-height:calc(100% - 520px);padding:6px;display:flex;bottom:64px}.b3d-scene.open{max-height:calc(100% - 140px)}.b3d-scene-toggle{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;min-height:32px;padding:6px 8px;font-size:13px;font-weight:600}.b3d-scene-body{gap:12px;padding:4px 10px 8px;display:grid;overflow:auto}.b3d-section-title{text-transform:uppercase;letter-spacing:1px;color:var(--b3d-color-muted);margin:0 0 6px;font-size:12px;font-weight:600}.b3d-scene .b3d-chips{margin-bottom:8px}.b3d-chip.active{background:var(--b3d-color-accent);color:#fff;border-color:var(--b3d-color-accent)}.b3d-field input[type=date]{border:1px solid var(--b3d-color-line);background:#fff;border-radius:8px;min-height:32px;padding:4px 8px}.b3d-field input[type=range]{width:100%;accent-color:var(--b3d-color-accent);min-height:28px}.b3d-time-out{font-variant-numeric:tabular-nums;font-weight:700}.b3d-sun-meta{color:var(--b3d-color-muted);margin:0;font-size:12px}.b3d-check{cursor:pointer;align-items:center;gap:8px;min-height:28px;font-size:13px;display:flex}.b3d-check input{accent-color:var(--b3d-color-accent);width:16px;height:16px}.b3d-render-layer{z-index:0;background:#20252b;position:absolute;inset:0}.mode-3d .b3d-render-layer,.mode-list .b3d-render-layer{opacity:0;visibility:hidden;pointer-events:none}.mode-render .b3d-stage{visibility:hidden}.mode-3d.fade-to3d .b3d-render-layer{visibility:visible;z-index:1;animation:.4s ease-in-out forwards b3d-fade-out}.mode-render.fade-toRender .b3d-stage{visibility:visible}.mode-render.fade-toRender .b3d-render-layer{z-index:1;animation:.4s ease-in-out both b3d-fade-in}.mode-render.fade-flyToRender .b3d-stage{visibility:visible}.mode-render.fade-flyToRender .b3d-render-layer{opacity:0}@keyframes b3d-fade-out{0%{opacity:1}to{opacity:0}}@keyframes b3d-fade-in{0%{opacity:0}to{opacity:1}}.b3d-render{touch-action:none;-webkit-user-select:none;user-select:none;cursor:default;position:absolute;inset:0;overflow:hidden}.b3d-render:focus-visible{box-shadow:inset 0 0 0 3px #5e7a6399}.b3d-render.is-turntable{cursor:grab}.b3d-render.is-turntable:active{cursor:grabbing}.b3d-render-frame{transform-origin:0 0;position:absolute}.b3d-render-frame img,.b3d-render-frame picture,.b3d-render-ov{width:100%;height:100%;display:block;position:absolute;inset:0}.b3d-render-img{opacity:0;transition:opacity .16s ease-out}.b3d-render-img.is-loaded{opacity:1}.b3d-render-ov path{vector-effect:non-scaling-stroke;cursor:pointer;outline:none;transition:fill-opacity .12s ease-out,stroke-width .12s ease-out}.b3d-ov-unit{stroke:#fff0;stroke-width:0;pointer-events:all}.b3d-ov-unit.is-hover,.b3d-ov-unit:focus-visible{stroke:#fff;stroke-width:1.5px}.b3d-ov-unit.is-selected{stroke:#fff;stroke-width:2.5px}.b3d-ov-floor{fill:#fff;fill-opacity:0;stroke:none;pointer-events:all}.level-building .b3d-ov-floor{pointer-events:none}.b3d-ov-floor:focus-visible,.b3d-ov-floor.is-hover{fill-opacity:.18}.b3d-ov-band{fill:#fff;fill-opacity:.16;stroke:#fff;stroke-width:1.5px;pointer-events:none}.b3d-ov-focus{fill:none;stroke:#fff;stroke-width:2px;pointer-events:none}.b3d-ov-dim{fill:#11161c;fill-opacity:.42;pointer-events:none}.b3d-ov-building{fill:#fff;fill-opacity:0;pointer-events:all}.b3d-ov-building:hover,.b3d-ov-building:focus-visible{fill-opacity:.22;stroke:#fff;stroke-width:2px}.b3d-stage-ctl{right:var(--b3d-gap);bottom:calc(var(--b3d-gap) + 56px);z-index:2;flex-direction:column;gap:6px;display:flex;position:absolute}.b3d-icon-btn{border:1px solid var(--b3d-color-line);background:var(--b3d-color-surface);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;border-radius:50%;place-items:center;width:36px;height:36px;font-size:18px;line-height:1;display:grid}.b3d-icon-btn:disabled{opacity:.4;cursor:default}.b3d-views{left:50%;top:var(--b3d-gap);z-index:2;gap:6px;padding:6px;display:flex;transform:translate(-50%)}.b3d-tt-hint{left:50%;bottom:calc(var(--b3d-gap) + 60px);color:#fff;pointer-events:none;background:#14181c9e;border-radius:999px;gap:10px;padding:6px 12px;font-size:12px;display:flex;position:absolute;transform:translate(-50%)}.b3d-tt-frame{opacity:.75;font-variant-numeric:tabular-nums}.b3d-render-unseen{z-index:3;gap:8px;width:min(300px,100% - 32px);padding:12px;font-size:13px;display:grid;position:absolute;top:72px;left:50%;transform:translate(-50%)}.b3d-live{color:#8a5a00;margin:8px 0 0;font-size:12px}.b3d-live span{color:#e0a100}.b3d-skip{z-index:20;background:#fff;border-radius:8px;padding:8px 12px;position:absolute;top:-60px;left:8px}.b3d-skip:focus{top:8px}.b3d-render-mood{left:var(--b3d-gap);bottom:calc(var(--b3d-gap) + 56px);z-index:2;padding:8px 12px}.b3d-lead{background:#fff;border:none;width:min(420px,100% - 24px);max-height:calc(100% - 24px);margin:auto;padding:18px 20px 20px;position:fixed;inset:0;overflow:auto}.b3d-lead::backdrop{background:#0f141973}.b3d-lead-head{justify-content:space-between;align-items:center;display:flex}.b3d-lead-head h2{font-size:18px}.b3d-lead-unit{color:var(--b3d-color-muted);margin:4px 0 12px}.b3d-field{gap:4px;margin-bottom:10px;font-size:14px;display:grid}.b3d-field input:not([type=checkbox]),.b3d-field textarea{border:1px solid var(--b3d-color-line);width:100%;font:inherit;border-radius:10px;padding:9px 11px}.b3d-field [aria-invalid=true]{border-color:#b3261e}.b3d-consent label{align-items:flex-start;gap:8px;font-size:13px;display:flex}.b3d-err{color:#b3261e;margin:0;font-size:12px}.b3d-hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.b3d-lead-ok{font-size:15px}.b3d-captcha{min-height:65px;margin-bottom:10px}@media (max-width:760px){:root{--b3d-gap:8px}.b3d-brand{width:auto;padding:10px 12px;left:8px;right:8px}.b3d-brand-name{font-size:16px}.b3d-toolbar{margin-top:6px}.b3d-filters{flex-wrap:wrap;align-items:center;gap:6px 12px;width:auto;padding:8px 10px;display:flex;inset:auto 8px 64px}.b3d-filters .b3d-chips{flex-wrap:nowrap;width:100%;margin:0;overflow-x:auto}.b3d-filters legend{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.b3d-chips .b3d-chip{flex:none}.b3d-count{margin:0}.b3d-render-mood{padding:6px;top:150px;bottom:auto;left:8px}.b3d-render-mood .b3d-section-title{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.b3d-rail{max-height:calc(100% - 380px);top:150px;right:8px;transform:none}.b3d-rail .meta{display:none}.b3d-rail ul{grid-template-columns:max-content}.b3d-rail button{padding:4px}.b3d-legend,.b3d-tooltip,.b3d-pins:not(.b3d-unit-pins){display:none}.b3d-unit-pin{gap:3px;height:20px;padding:0 6px;font-size:11px}.b3d-unit-pin-lv{display:none}.mode-render .b3d-tooltip,.mode-3d .b3d-tooltip{white-space:normal;display:block;position:fixed;inset:auto 8px 64px;transform:none}.b3d-views{max-width:calc(100% - 16px);top:auto;bottom:168px;overflow-x:auto}.b3d-views .b3d-chip{white-space:nowrap;flex:none}.b3d-stage-ctl{display:none}.b3d-tt-hint{bottom:226px}.b3d-render-unseen{width:calc(100% - 156px);top:200px;left:8px;transform:none}.b3d-stepper .label{min-width:120px}.b3d-scene{width:min(260px,100% - 80px);max-height:44px;top:150px;bottom:auto;left:8px}.b3d-scene.open{max-height:calc(100% - 380px)}.mode-list .b3d-scene{display:none}.b3d-card,.mode-list .b3d-card{border-radius:18px 18px var(--b3d-radius) var(--b3d-radius);width:auto;max-height:50%;inset:auto 8px 8px}.b3d-list{width:auto;inset:150px 8px 168px}.b3d-list td:nth-child(3),.b3d-list th:nth-child(3){display:none}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.mode-3d[data-engine=loading] .b3d-render-layer,.mode-3d[data-engine=idle] .b3d-render-layer{opacity:1;pointer-events:none}
