/* Floor plan import: the dialog that turns a DXF or SVG drawing into a scaled plan with editable walls. */
.fp-dialog{width:900px}
.fp-dialog.drop .ev-dialog-body{outline:2px dashed var(--accent);outline-offset:-8px}
.fp-body{display:flex;flex-direction:column;gap:12px;padding:18px 26px 16px}
.fp-pick{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.fp-file{font-size:var(--text-xs);color:var(--dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.fp-msg{padding:8px 12px;border-radius:9px;background:#eef3f8;color:var(--ink);font-size:var(--text-xs);line-height:1.45}
.fp-msg.warn{background:#fff4e5;color:#6b3d00}
.fp-row{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.fp-units{display:flex;align-items:center;gap:8px;font-size:var(--text-ui);font-weight:600;color:var(--ink)}
.fp-units select{font:inherit;font-size:var(--text-ui);font-weight:500;padding:7px 10px;border:1px solid var(--field-border);border-radius:9px;background:#fff;color:var(--ink)}
.fp-summary{font-size:var(--text-xs);color:var(--dim);text-align:right;flex:1;min-width:0}
.fp-main{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:12px}
.fp-preview{position:relative;height:min(52dvh,460px);min-height:220px;border-radius:12px;overflow:hidden;background:#f3f5f8;border:1px solid var(--line)}
.fp-preview canvas{display:block;width:100%;height:100%}
.fp-side{display:flex;flex-direction:column;gap:8px;min-width:0}
.fp-side-h{font-size:var(--text-ui);font-weight:600;color:var(--ink)}
.fp-side-h small{display:block;font-weight:400;font-size:var(--text-2xs);color:var(--dim)}
.fp-layers{display:flex;flex-direction:column;gap:4px;max-height:min(40dvh,360px);overflow:auto;border:1px solid var(--line);border-radius:9px;padding:6px;background:#fff}
.fp-layer{display:flex;align-items:center;gap:6px;font-size:var(--text-xs);color:var(--ink);padding:3px 4px;border-radius:6px}
.fp-layer:hover{background:#f3f5f8}
.fp-lname{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fp-lcount{color:var(--faint);font-size:var(--text-2xs)}
.fp-wall{display:flex;align-items:center;gap:4px;font-size:var(--text-2xs);color:var(--dim);padding-left:6px;border-left:1px solid var(--line)}
.fp-keep{display:flex;align-items:center;gap:6px;font-size:var(--text-xs);color:var(--ink)}
.fp-hint,.fp-foot{margin:0;font-size:var(--text-xs);color:var(--dim);line-height:1.5}
@media(max-width:700px){.fp-body{padding:14px 16px 12px;gap:10px}.fp-summary{flex-basis:100%;text-align:left}.fp-main{grid-template-columns:1fr}.fp-preview{height:42dvh;min-height:200px}.fp-layers{max-height:160px}.ev-backdrop:has(.fp-dialog){padding:0}.fp-dialog{max-height:100dvh;border-radius:0}}
