.floor-feature{margin:22px 0;border:1px solid #cddbd2;border-radius:14px;background:#f8fbf9;overflow:hidden}.floor-opt-in{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px}.floor-opt-in h3,.floor-editor h3{margin:0 0 5px}.floor-opt-in p,.floor-editor p{margin:0;color:var(--muted);font-size:14px}.floor-editor{padding:20px}.floor-editor-head{display:flex;justify-content:space-between;gap:16px;margin-bottom:17px}.floor-remove{border:0;background:transparent;color:#7a3329;font-weight:750;cursor:pointer}.floor-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.floor-controls label,.floor-action label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:750;color:#4f5b55}.floor-controls select,.floor-action select,.floor-action input{width:100%;padding:10px;border:1px solid #bdc7c1;border-radius:8px;background:#fff;font:inherit}.floor-disclaimer{margin:14px 0!important;padding:12px;border-radius:8px;background:#fff3c4;color:#514619!important}.floor-status{min-height:22px;margin:10px 0;font-size:13px;font-weight:700}.floor-status[data-tone=error]{color:#9d2c1d}.floor-status[data-tone=ok]{color:var(--green)}.floor-plan-card{border:1px solid var(--line);border-radius:10px;background:#fff;padding:12px}.floor-plan-scroll{overflow:auto;touch-action:pan-x pan-y}.floor-plan-scroll svg{display:block;width:100%;min-width:620px;height:auto}.floor-outline{fill:#f9fbf9;stroke:#174f37;stroke-width:3}.floor-perimeter{stroke:#174f37;stroke-width:7}.floor-perimeter.layer-2{stroke:#48745e;stroke-width:3}.floor-joist line{stroke:#687b70;stroke-width:3}.floor-joist:focus line{stroke:#d99b10;stroke-width:7}.floor-blocking{stroke:#8a9a91;stroke-width:4}.floor-support{stroke-width:4}.floor-support.recommended{stroke:#d99b10;stroke-dasharray:10 7}.floor-support.selected{stroke:#168649}.floor-joint{fill:#b43b2b}.floor-support+text{font-size:12px;fill:#174f37}.floor-legend{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px;font-size:12px;color:var(--muted)}.floor-legend i{display:inline-block;width:24px;border-top:3px solid;margin-right:5px}.floor-legend .recommended{border-style:dashed;border-color:#d99b10}.floor-legend .selected{border-color:#168649}.floor-legend .joint{border-color:#b43b2b}.floor-facts{display:grid;gap:7px;padding:12px 0}.floor-facts div{display:flex;justify-content:space-between}.floor-facts small{color:var(--muted)}.floor-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.floor-action{border:1px solid var(--line);border-radius:10px;padding:13px;background:#fff}.floor-action h4{margin:0 0 10px}.floor-action-grid{display:grid;grid-template-columns:1fr auto;gap:8px}.floor-action-grid .wide{grid-column:1/-1}.floor-action button,.floor-supports button{border:0;border-radius:7px;background:#e8efe9;color:var(--green);padding:9px;font-weight:750;cursor:pointer}.floor-supports{margin-top:8px}.floor-supports div{display:flex;justify-content:space-between;align-items:center;padding:6px 0;border-top:1px solid #edf0ee}.floor-warnings{display:grid;gap:8px;margin-top:12px}.floor-warning{display:flex;gap:9px;padding:11px;background:#fff1e8;border:1px solid #edc3ac;border-radius:8px;font-size:13px}.floor-warning span{display:flex;flex-direction:column}.floor-ok{padding:10px;background:#e8f4ec;color:#28583d!important;border-radius:8px}
.floor-action .floor-check{display:flex;flex-direction:row;align-items:center;font-weight:600}.floor-check input{width:auto}.floor-facts details{padding:8px 0;border-top:1px solid #e6ebe7}.floor-facts summary{cursor:pointer;font-weight:750}.floor-facts details p{margin-top:7px;font-size:13px}
.floor-status[data-tone=error] button{border:0;padding:0;background:transparent;color:inherit;font:inherit;font-weight:inherit;text-align:left;text-decoration:underline;cursor:pointer}
@media(max-width:700px){.floor-opt-in,.floor-editor-head{align-items:flex-start;flex-direction:column}.floor-controls,.floor-actions{grid-template-columns:1fr}.floor-opt-in button{width:100%}.floor-editor{padding:15px}.floor-plan-card{margin-inline:-5px}.floor-plan-scroll svg{min-width:560px}}
