.fx{align-items:start;gap:var(--space-10);max-width:1440px;padding:var(--space-6) var(--gutter) var(--space-24);grid-template-columns:minmax(0,1fr) 360px;margin:0 auto;display:grid}.fx__floors{gap:var(--space-16);flex-direction:column;min-width:0;display:flex}.fx-floor{gap:var(--space-5);scroll-margin-top:calc(var(--nav-h) + var(--space-6));flex-direction:column;display:flex}.fx-floor__head{justify-content:space-between;align-items:flex-end;gap:var(--space-6);display:flex}.fx-floor__title{margin-top:var(--space-1);font-family:var(--ff-display);font-weight:var(--fw-light);font-size:var(--fs-44);line-height:var(--lh-heading);letter-spacing:var(--tracking-tight)}.fx-floor__count{font-size:var(--fs-14);letter-spacing:var(--tracking-body);color:var(--color-text-muted)}.fx-plan{padding:var(--space-6);background:var(--white);border:1px solid var(--color-line);border-radius:var(--radius-xl)}.fx-plan__canvas{width:100%;position:relative}.fx-plan__img,.fx-plan__svg{width:100%;height:100%;display:block;position:absolute;inset:0}.fx-plan__svg{overflow:visible}.fx-shape{cursor:pointer;outline:none}.fx-shape__room,.fx-shape__out{fill:#0000;stroke:#0000;stroke-width:2px;vector-effect:non-scaling-stroke;stroke-linejoin:round;transition:fill var(--dur-base) var(--ease-out), stroke var(--dur-base) var(--ease-out)}.fx-shape--reserved .fx-shape__room{fill:#d977061a}.fx-shape--sold .fx-shape__room,.fx-shape--preparing .fx-shape__room{fill:rgb(var(--white-rgb) / .55)}.fx-shape:hover .fx-shape__room,.fx-shape.is-active .fx-shape__room,.fx-position .fx-shape__room{fill:rgb(var(--ink-rgb) / .14);stroke:var(--color-ink)}.fx-shape:hover .fx-shape__out,.fx-shape.is-active .fx-shape__out,.fx-position .fx-shape__out{fill:rgb(var(--ink-rgb) / .05);stroke:var(--color-ink);stroke-dasharray:6 5}.fx-pin{min-width:30px;height:30px;padding:0 var(--space-2);font-size:var(--fs-13);font-weight:var(--fw-semibold);color:var(--color-ink);background:var(--white);border:2px solid var(--color-status-available);border-radius:var(--radius-pill);box-shadow:var(--shadow-xs);pointer-events:none;transition:color var(--dur-base) var(--ease-out), background-color var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);place-items:center;line-height:1;display:grid;position:absolute;transform:translate(-50%,-50%)}.fx-pin--reserved{border-color:var(--color-status-reserved)}.fx-pin--sold,.fx-pin--preparing{color:var(--color-text-muted);border-color:var(--color-status-sold)}.fx-pin--preparing{border-style:dashed}.fx-pin.is-active{color:var(--white);background:var(--color-ink);transform:translate(-50%,-50%)scale(1.12)}.fx-list{border-top:1px solid var(--color-line);margin:0;padding:0;list-style:none}.fx-row{align-items:center;gap:var(--space-4);padding:var(--space-3-5) var(--space-3);font-size:var(--fs-14);letter-spacing:var(--tracking-body);color:var(--color-text-2);border-bottom:1px solid var(--color-line);transition:background-color var(--dur-base) var(--ease-out);grid-template-columns:.8fr .8fr .7fr 1.6fr 1.1fr 1fr;display:grid}.fx-row:hover,.fx-row.is-active{background:var(--color-surface)}.fx-row:focus-visible{outline:1px solid var(--color-ink);outline-offset:-1px}.fx-row__code{font-weight:var(--fw-semibold);color:var(--color-ink)}.fx-row>span{white-space:nowrap}.fx-row__price{font-weight:var(--fw-medium);color:var(--color-ink);text-align:right}.fx-row--sold .fx-row__price,.fx-row--preparing .fx-row__price{font-weight:var(--fw-regular);color:var(--color-text-muted)}.fx-row__status{justify-self:end}.fx-cards{--media-max:220px;display:none}.fx__aside{top:calc(var(--nav-h) + var(--space-6));position:sticky}.fx-panel{--media-max:clamp(140px, 100svh - 690px, 300px);max-height:calc(100svh - var(--nav-h) - var(--space-12));overscroll-behavior:contain;padding:var(--space-6);background:var(--white);border:1px solid var(--color-line);border-radius:var(--radius-xl);overflow-y:auto}.fx-panel__hint{gap:var(--space-2);padding:var(--space-6) 0;flex-direction:column;display:flex}.fx-panel__hint-title{font-family:var(--ff-display);font-weight:var(--fw-light);font-size:var(--fs-26);line-height:var(--lh-heading);letter-spacing:var(--tracking-tight)}.fx-panel__hint-text{font-size:var(--fs-14);line-height:var(--lh-text-sm);color:var(--color-text-muted)}.fx-panel__unit{gap:var(--space-5);animation:fade var(--dur-base) var(--ease-out);flex-direction:column;display:flex}.fx-panel__media{aspect-ratio:4/3;max-height:var(--media-max);border-radius:var(--radius-md);place-items:center;display:grid;overflow:hidden}.fx-panel__media--position{aspect-ratio:auto;min-height:min(160px, var(--media-max))}.fx-panel__plan{object-fit:contain;width:100%;height:100%}.fx-position{width:min(100%, calc(var(--media-max) * var(--ratio)));height:auto;aspect-ratio:var(--ratio);display:block;overflow:hidden}.fx-position__fade{fill:rgb(var(--white-rgb) / .62)}.fx-panel__head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.fx-panel__type{font-size:var(--fs-12);letter-spacing:var(--tracking-badge);text-transform:uppercase;color:var(--color-text-muted)}.fx-panel__name{margin-top:var(--space-1);font-family:var(--ff-display);font-weight:var(--fw-light);font-size:var(--fs-36);line-height:var(--lh-heading);letter-spacing:var(--tracking-tight)}.fx-panel__kv .kv__row:first-child{border-top:1px solid var(--color-line)}.fx-panel__price{justify-content:space-between;align-items:baseline;gap:var(--space-4);font-size:var(--fs-14);color:var(--color-text-muted);display:flex}.fx-panel__price strong{font-family:var(--ff-display);font-weight:var(--fw-light);font-size:var(--fs-30);line-height:var(--lh-tight);letter-spacing:var(--tracking-tight);color:var(--color-ink)}@media (max-height:820px){.fx-panel{padding:var(--space-5)}.fx-panel__unit{gap:var(--space-3)}.fx-panel__name{font-size:var(--fs-30)}.fx-panel__kv .kv__row{padding:var(--space-2) 0}}@media (max-width:1280px){.fx{gap:var(--space-8);grid-template-columns:minmax(0,1fr) 320px}.fx-row{grid-template-columns:.8fr .8fr .7fr 1.6fr 1.1fr}.fx-row__status{display:none}}@media (max-width:1024px){.fx{grid-template-columns:minmax(0,1fr)}.fx__aside,.fx-list{display:none}.fx-cards{display:grid}}@media (max-width:720px){.fx__floors{gap:var(--space-12)}.fx-floor__title{font-size:var(--fs-36)}.fx-plan{padding:var(--space-3);border-radius:var(--radius-lg)}.fx-pin{min-width:22px;height:22px;padding:0 var(--space-1-5);font-size:var(--fs-11);border-width:1.5px}.fx-cards{--media-max:170px}}
