:root{--fp-ease:cubic-bezier(0.22,1,0.36,1);--fp-ink:#111111;--fp-label:#4b5563;--fp-page:#f6f6f7;--fp-card:#ffffff;--fp-border:rgba(0,0,0,0.06);--fp-rule:rgba(0,0,0,0.05)}body,html{margin:0}body.fp-body{background:var(--fp-page);color:var(--fp-ink);font-family:var(--font-dm-sans),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}.fp-page{max-width:560px;margin:0 auto;padding:28px 20px 40px}.fp-page,.fp-page *{-webkit-user-select:none;-moz-user-select:none;user-select:none}.fpv-svg,.fpv-svg text{cursor:default}.fp-heading{margin:0 0 14px;font-size:15px;font-weight:600;letter-spacing:-.01em}.fpv{background:var(--fp-card);border:1px solid var(--fp-border);border-radius:16px;overflow:hidden}.fpv-plan{position:relative;display:flex;flex-direction:column}.fpv-plan,.fpv-plan>*{min-width:0}.fpv-svg{display:block;order:1;width:100%;height:auto;max-width:calc(var(--fpv-cap, 440px) * var(--fpv-ar, 1.65));margin-inline:auto}.fpv-furniture{--fpv-f-op:0.05;--fpv-f-op-hover:0.11;--fpv-f-occ-op:1;--fpv-f-occ-op-hover:0.82;stroke:var(--fp-ink)}.fpv-f-item{fill:var(--fp-ink);fill-opacity:var(--fpv-f-op);transition:fill-opacity .16s var(--fp-ease),stroke-opacity .16s var(--fp-ease)}.fpv-f-item:hover{fill-opacity:var(--fpv-f-op-hover);stroke-opacity:1}.fpv-f-item:hover .fpv-f-occluder{fill-opacity:var(--fpv-f-occ-op-hover)}.fpv-f-item .fpv-f-hit{fill:transparent;fill-opacity:1;stroke:none;pointer-events:all}.fpv-furniture .fpv-f-occluder{fill:#ffffff;fill-opacity:var(--fpv-f-occ-op);transition:fill-opacity .16s var(--fp-ease)}.fpv-room{fill:var(--fp-ink);fill-opacity:0;pointer-events:none;transition:fill-opacity .18s var(--fp-ease)}.fpv-room[data-active]{fill-opacity:.045}.fpv-badge{cursor:default;transform-box:view-box;transition:transform .18s var(--fp-ease)}.fpv-badge-disc{fill:rgba(255,255,255,.9);stroke:rgba(0,0,0,.2);stroke-width:.5;transition:fill .18s var(--fp-ease),stroke .18s var(--fp-ease)}.fpv-badge[data-active]{transform:scale(1.18)}.fpv-badge[data-active] .fpv-badge-disc{fill:#ffffff;stroke:rgba(0,0,0,.55)}@keyframes fpDoorSwing{0%{transform:rotate(var(--fp-door-from))}to{transform:rotate(0deg)}}@keyframes fpDoorArc{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}.fpv-door-arc,.fpv-door-leaf{transform-box:view-box}.fpv-door-leaf{animation:fpDoorSwing .72s var(--fp-ease) both;animation-delay:var(--fp-door-delay,0s)}.fpv-door-arc{stroke-dasharray:1;animation:fpDoorArc .72s var(--fp-ease) both;animation-delay:var(--fp-door-delay,0s)}.fpv-compass{position:absolute;top:14px;right:14px;width:36px;height:36px;overflow:visible;transform-origin:50% 50%;transition:transform .18s var(--fp-ease)}.fpv-compass:hover{transform:scale(1.07)}.fpv-compass-ring{fill:var(--fp-card);stroke:var(--fp-ink);stroke-opacity:.5;stroke-width:1.1;transition:stroke-opacity .18s var(--fp-ease)}.fpv-compass:hover .fpv-compass-ring{stroke-opacity:.8}.fpv-compass-n{fill:var(--fp-ink);fill-opacity:.78;transition:fill-opacity .18s var(--fp-ease)}.fpv-compass:hover .fpv-compass-n{fill-opacity:1}.fpv-compass-s{fill:none;stroke:var(--fp-ink);stroke-opacity:.32;stroke-width:.8;transition:stroke-opacity .18s var(--fp-ease)}.fpv-compass:hover .fpv-compass-s{stroke-opacity:.5}.fpv-compass-label{fill:var(--fp-ink);fill-opacity:.78;transition:fill-opacity .18s var(--fp-ease)}.fpv-compass:hover .fpv-compass-label{fill-opacity:1}.fpv-total{order:2;margin:0;padding:0 16px 12px;font-size:14px;font-weight:600;color:var(--fp-ink);pointer-events:none}.fpv-legend{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(var(--fpv-legend-rows,3),auto);grid-auto-flow:column;grid-column-gap:24px;column-gap:24px;grid-row-gap:6px;row-gap:6px;padding:10px 16px 12px;border-top:1px solid var(--fp-rule)}.fpv-row{display:flex;align-items:center;gap:8px;min-width:0;margin:0 -6px;padding:2px 6px;border-radius:6px;outline:none;transition:background-color .18s var(--fp-ease)}.fpv-row[data-active]{background:rgba(0,0,0,.045)}.fpv-row[data-active] .fpv-name{color:var(--fp-ink)}.fpv-row[data-active] .fpv-n{background:rgba(0,0,0,.12)}.fpv-row:focus-visible{box-shadow:0 0 0 2px rgba(17,17,17,.45)}.fpv-n{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;background:rgba(0,0,0,.06);font-size:12px;font-weight:700;color:var(--fp-ink)}.fpv-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;color:rgba(17,17,17,.75)}.fpv-area{margin-left:auto;flex:0 0 auto;font-size:12px;color:var(--fp-label);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (max-width:640px){.fpv-legend{grid-template-columns:1fr;grid-template-rows:none;grid-auto-flow:row}.fpv-total{padding-bottom:10px;font-size:13px}.fpv-svg{max-width:100%}.fpv-compass{top:10px;right:10px;width:30px;height:30px}.fp-page{padding:16px 12px 28px}}.fpv{--fpv-stroke:0.85;--fpv-f-stroke:0.72}.fpv-line{stroke-width:var(--fpv-stroke)}.fpv-f-item{stroke-width:calc(var(--fpv-f-stroke) * var(--fpv-item-scale, 1))}@media (max-width:640px){.fpv{--fpv-stroke:0.6;--fpv-f-stroke:0.5}}.fpv--embed{border:none;border-radius:0;background:transparent;width:100%}@media (prefers-reduced-motion:reduce){.fpv-door-arc,.fpv-door-leaf{animation:none;stroke-dashoffset:0}.fpv-badge,.fpv-badge-disc,.fpv-compass,.fpv-compass-label,.fpv-compass-n,.fpv-compass-ring,.fpv-compass-s,.fpv-f-item,.fpv-furniture .fpv-f-occluder,.fpv-room,.fpv-row{transition:none}}