.plan-svg line,.plan-svg rect,.plan-svg path,.plan-svg circle{vector-effect:non-scaling-stroke}.plan-svg pattern line{vector-effect:none}.plan-svg .g-minor{fill:var(--grid-dot-minor,var(--grid-major));stroke:none}.plan-svg .g-major{fill:var(--grid-dot-major,var(--grid-major));stroke:none}.plan-svg .g-dots{stroke:none;pointer-events:none}.plan-svg .ghost{fill:none;stroke:var(--muted);stroke-width:1px;stroke-dasharray:3 3;opacity:.55}.plan-svg .base-floor{fill:var(--grid-minor);stroke:none}.plan-svg .room{fill:var(--room);stroke:none}.plan-svg .room.nofloor{fill:#0000}.plan-svg .room.sel{fill:color-mix(in srgb, var(--sel) 14%, transparent)}.plan-svg text{font-family:var(--body);paint-order:stroke;stroke:var(--plan-bg);stroke-linejoin:round}.plan-svg .rlabel text{text-anchor:middle;fill:var(--ink);pointer-events:none}.plan-svg .rname{letter-spacing:.03em;font-weight:700}.plan-svg .room-level,.plan-svg .rarea{fill:var(--muted)}.plan-svg .rlabel.sel text{fill:var(--sel)}.plan-svg .w-out{fill:none;stroke:var(--ink);stroke-width:3.2px;pointer-events:none}.plan-svg .w-fill{stroke:none;pointer-events:all}.plan-svg .w-fill.hatched{fill:url(#hatched)}.plan-svg .w-fill.solid{fill:var(--ink)}.plan-svg .w-fill.partition{fill:var(--plan-bg)}.plan-svg .w-fill.sel{fill:color-mix(in srgb, var(--sel) 50%, var(--plan-bg))}.plan-svg .p-cut{stroke:var(--ink);stroke-width:2px}.plan-svg .p-cut.hatched{fill:url(#hatched)}.plan-svg .p-cut.solid{fill:var(--ink)}.plan-svg .seen{fill:none;stroke:var(--ink);stroke-width:.9px}.plan-svg .pool{fill:#4696c81f}.plan-svg .hatch-bg{fill:var(--plan-bg)}.plan-svg .hatch{stroke:var(--ink)}.plan-svg .post{fill:var(--ink);pointer-events:none}.plan-svg .gap{fill:var(--plan-bg);stroke:none;pointer-events:all}.plan-svg .hit{fill:#0000;pointer-events:all}.plan-svg .jamb{fill:var(--plan-bg);stroke:var(--ink);stroke-width:1px}.plan-svg .leaf{fill:var(--plan-bg);stroke:var(--ink);stroke-width:1.2px}.plan-svg .arc{fill:none;stroke:var(--ink);stroke-width:.7px}.plan-svg .frame,.plan-svg .sill{stroke:var(--ink);stroke-width:.9px}.plan-svg .glass{stroke:var(--ink);stroke-width:.6px}.plan-svg .hidden-line{stroke:var(--ink);stroke-width:1.3px;stroke-dasharray:5 3}.plan-svg .opening.sel :is(.jamb,.leaf,.arc,.frame,.glass,.sill,.hidden-line){stroke:var(--sel)}.plan-svg .opening.sel .gap{fill:color-mix(in srgb, var(--sel) 18%, var(--plan-bg))}.plan-svg .tag circle{fill:var(--plan-bg);stroke:var(--ink);stroke-width:.8px}.plan-svg .tag-t,.plan-svg .axis-t{text-anchor:middle;dominant-baseline:central;fill:var(--ink);font-weight:700}.plan-svg .opening.sel .tag circle{stroke:var(--sel)}.plan-svg .stair-box{fill:var(--plan-bg);stroke:var(--ink);stroke-width:1px}.plan-svg .tread{stroke:var(--ink);stroke-width:.7px}.plan-svg .tread.above{stroke-dasharray:4 3}.plan-svg .break{fill:none;stroke:var(--ink);stroke-width:1px}.plan-svg .stair-arrow{stroke:var(--ink);stroke-width:.9px}.plan-svg .stair-dot,.plan-svg .stair-head{fill:var(--ink)}.plan-svg .stair-label{text-anchor:middle;dominant-baseline:central;fill:var(--ink);font-weight:700}.plan-svg .stair.arriving{opacity:.5;pointer-events:none}.plan-svg .stair.sel .stair-box{stroke:var(--sel);stroke-width:2.5px}.plan-svg .d-line{stroke:var(--ink);stroke-width:.6px}.plan-svg .d-ext{stroke:var(--ink);stroke-width:.5px;opacity:.55;stroke-dasharray:10 3 2 3}.plan-svg .d-tick{stroke:var(--ink);stroke-width:1.4px}.plan-svg .axis{fill:var(--plan-bg);stroke:var(--ink);stroke-width:.8px}.plan-svg .dim{fill:var(--ink);text-anchor:middle;dominant-baseline:middle;font-variant-numeric:tabular-nums;pointer-events:none}.plan-overlay{pointer-events:none;color:var(--ink);position:absolute;inset:0}.plan-overlay .ttl{font:700 13px / 1.25 var(--display);letter-spacing:.05em;background:var(--panel);border-radius:6px;padding:5px 9px;position:absolute;top:10px;left:12px}.plan-overlay .ttl small{font:400 11px / 1.3 var(--body);letter-spacing:0;color:var(--muted);display:block}.plan-overlay .north{text-align:center;background:var(--panel);border-radius:8px;width:44px;padding:4px 0 2px;position:absolute;top:10px;right:14px}.plan-overlay .north svg{width:36px;height:36px;margin:0 auto;display:block}.plan-overlay .north circle{fill:none;stroke:var(--ink);stroke-width:1.4px}.plan-overlay .north path{fill:var(--ink)}.plan-overlay .north b{font:700 12px / 1 var(--body)}.plan-overlay .scale{background:var(--panel);border-radius:6px;padding:5px 7px 3px;position:absolute;bottom:48px;right:14px}.plan-overlay .sbar{border:1px solid var(--ink);height:6px;display:flex}.plan-overlay .sbar i{display:block}.plan-overlay .sbar i.f{background:var(--ink)}.plan-overlay .scale .lbl{font:10px / 1.4 var(--body);justify-content:space-between;display:flex}.plan-svg .furniture-ghost{pointer-events:none}.plan-svg .ghost-label{fill:var(--sel,#127b74);text-anchor:middle;dominant-baseline:middle;pointer-events:none;font-weight:600}.plan-svg .furniture,.plan-svg .furniture-ghost{--f-line:#716b60;--f-fill:transparent;--f-accent:#716b601a}.plan-svg .f-body{fill:var(--f-fill);stroke:var(--f-line);stroke-width:1.2px;stroke-linejoin:round;pointer-events:visible}.plan-svg .f-detail,.plan-svg .f-hidden{fill:none;stroke:var(--f-line);stroke-width:.8px;pointer-events:none}.plan-svg .f-hidden{stroke-dasharray:4 3}.plan-svg .f-accent{fill:var(--f-accent);stroke:var(--f-line);stroke-width:.8px}.plan-svg .furniture.above :is(.f-body,.f-detail,.f-accent){stroke-dasharray:4 3}.plan-svg .furniture.sel,.plan-svg .furniture-ghost{--f-line:#127b74;--f-fill:#127b740f;--f-accent:#127b7424}.plan-svg .furniture-ghost{opacity:.7}.plan-svg .f-bounds{fill:none;stroke:#127b74;stroke-width:.8px;stroke-dasharray:4 3;pointer-events:none}.plan-svg .f-use{fill:#d6a853;fill-opacity:.1;stroke:#a27225;stroke-width:.8px;stroke-dasharray:5 4;pointer-events:none}.plan-svg .f-front{fill:none;stroke:#127b74;stroke-width:1.5px;pointer-events:none}.plan-svg .f-size,.plan-svg .f-use-label{text-anchor:middle;dominant-baseline:central;pointer-events:none;vector-effect:non-scaling-stroke;stroke-width:3px}.plan-svg .f-size{fill:#127b74}.plan-svg .f-use-label{fill:#865b1c}.plan-svg .column{pointer-events:all}.plan-svg .col-cut{fill:var(--ink);stroke:var(--ink);stroke-width:1.6px}.plan-svg .col-cut.hatched{fill:url(#hatched)}.plan-svg .column:is(.steel,.timber) .col-cut{fill:var(--plan-bg)}.plan-svg .col-inner{fill:none;stroke:var(--ink);stroke-width:.9px;pointer-events:none}.plan-svg .col-grain{stroke:var(--ink);stroke-width:.7px;pointer-events:none}.plan-svg .column.concrete.through .col-cut{fill:color-mix(in srgb, var(--ink) 80%, var(--plan-bg))}.plan-svg .column.through:not(.concrete){opacity:.6}.plan-svg .column.sel :is(.col-cut,.col-inner,.col-grain){stroke:var(--sel)}.plan-svg .column.sel:is(.concrete,.brick) .col-cut{fill:var(--sel)}.plan-svg .column.sel:is(.steel,.timber) .col-cut{fill:color-mix(in srgb, var(--sel) 14%, var(--plan-bg))}.plan-svg .col-tag{fill:var(--ink);text-anchor:start;dominant-baseline:central;pointer-events:none;font-weight:700}.plan-svg .column.sel .col-tag{fill:var(--sel)}.plan-svg .w-fill.solid.shear{fill:var(--ink)}.plan-svg .st-hit{fill:#0000;stroke:none;pointer-events:all}.plan-svg .st-line{fill:none;stroke:var(--ink);stroke-width:1.1px;stroke-dasharray:6 3;pointer-events:none}.plan-svg .beam.ringBeam .st-line{stroke-dasharray:10 3 2 3}.plan-svg .beam.groundBeam .st-line{stroke-dasharray:3 3}.plan-svg .brace-line{stroke-width:1.6px;stroke-dasharray:8 3 2 3}.plan-svg .footing .st-line{stroke-width:.9px;stroke-dasharray:4 3}.plan-svg :is(.beam,.footing).sel .st-line{stroke:var(--sel);stroke-width:2.2px}.plan-svg :is(.beam,.footing).sel .st-hit{fill:color-mix(in srgb, var(--sel) 16%, transparent)}.plan-svg .st-tag{fill:var(--ink);text-anchor:middle;dominant-baseline:central;pointer-events:none;font-weight:700}.plan-svg :is(.beam,.footing).sel .st-tag{fill:var(--sel)}.plan-svg .s-earth{fill:url(#s-earth);stroke:none}.plan-svg .s-earth-edge{fill:none;stroke:var(--ink);stroke-width:.6px;stroke-dasharray:2 3}.plan-svg .s-ground{stroke:var(--ink);stroke-width:2.2px}.plan-svg .s-dot{fill:var(--ink);stroke:none}.plan-svg .s-face{fill:var(--plan-bg);stroke:var(--ink);stroke-width:.7px;stroke-linejoin:round}.plan-svg .s-seen.glass .s-face{fill:none}.plan-svg .s-seen.plant .s-face{fill:none;stroke-dasharray:3 2}.plan-svg .s-seen.far .s-face,.plan-svg .s-seen.far .s-detail{stroke:var(--muted)}.plan-svg .s-detail{stroke:var(--ink);stroke-width:.5px}.plan-svg .s-seen.timber .s-detail,.plan-svg .s-seen.steel .s-detail{stroke-width:.9px}.plan-svg .s-out{fill:none;stroke:var(--ink);stroke-width:2.4px;stroke-linejoin:round}.plan-svg .s-cut{stroke:none}.plan-svg .s-cut:is(.masonry.solid,.concrete,.steel,.roof){fill:var(--ink)}.plan-svg .s-cut.masonry.hatched{fill:url(#hatched)}.plan-svg .s-cut.partition,.plan-svg .s-cut.timber{fill:var(--plan-bg)}.plan-svg .s-cut.stone{fill:url(#s-stone)}.plan-svg .s-cut.fill{fill:url(#s-fill)}.plan-svg .s-cut.finish{fill:var(--muted)}.plan-svg .s-cut.ceiling{fill:var(--ink)}.plan-svg .s-cut.glass{fill:var(--ink);opacity:.6}.plan-svg .s-cut.water{fill:#4696c82e;stroke:var(--ink);stroke-width:.7px}.plan-svg .s-cut.plant{fill:none;stroke:var(--ink);stroke-width:.7px;stroke-dasharray:3 2}.plan-svg .s-grain{stroke:var(--ink);stroke-width:.6px}.plan-svg .s-under{stroke:var(--ink);stroke-width:.8px}.plan-svg .s-room{fill:var(--ink);letter-spacing:.03em;text-anchor:middle;font-weight:700}.plan-svg .s-axis{stroke:var(--muted);stroke-width:.5px;stroke-dasharray:10 3 2 3}.plan-svg .s-mark-line{stroke:var(--ink);stroke-width:.6px}.plan-svg .s-peil{fill:var(--plan-bg);stroke:var(--ink);stroke-width:.9px}.plan-svg .s-peil-t{fill:var(--ink);text-anchor:end;dominant-baseline:central;font-variant-numeric:tabular-nums}.plan-svg .s-leader{fill:none;stroke:var(--ink);stroke-width:.5px}.plan-svg .s-leader-dot{fill:var(--ink)}.plan-svg .s-note{fill:var(--ink);dominant-baseline:central}.plan-svg .s-title{fill:var(--ink);letter-spacing:.06em;text-anchor:middle;font-weight:700}.plan-svg .s-title-line{stroke:var(--ink);stroke-width:1.4px}.plan-svg .s-scale{fill:var(--ink);text-anchor:middle;dominant-baseline:central}.plan-svg .cut-line{stroke:var(--ink);stroke-width:.7px;stroke-dasharray:14 3 2 3;pointer-events:none}.plan-svg .cut-end{stroke:var(--ink);stroke-width:3px}.plan-svg .cut-arrow{stroke:var(--ink);stroke-width:1px}.plan-svg .cut-head{fill:var(--ink)}
