#plan-selection-layer{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:12;overflow:hidden}
.plan-selected-outline{fill:#2563eb0b;stroke:#2563eb;stroke-width:1.4;vector-effect:non-scaling-stroke}
polyline.plan-selected-outline{fill:none;stroke-width:3}
.plan-selection-frame{fill:none;stroke:#2563eb;stroke-width:1.2;stroke-dasharray:5 4}
.plan-selection-marquee{fill:#2563eb18;stroke:#2563eb;stroke-width:1}
.plan-scale-handle{fill:#fff;stroke:#2563eb;stroke-width:2;pointer-events:all;touch-action:none}.plan-scale-handle:hover{fill:#dbe7ff}
.plan-scale-label{font:600 12px var(--font-mono,monospace);fill:#2563eb;paint-order:stroke;stroke:#fff;stroke-width:3px;pointer-events:none}
@media(pointer:coarse){.plan-scale-handle{r:15px}}
#plan-selection-indicator{position:absolute;right:18px;bottom:64px;z-index:24;display:flex;align-items:center;gap:12px;max-width:calc(100% - 36px);padding:10px 12px;border:1px solid var(--border-default);border-radius:10px;background:var(--bg-panel,#fff);box-shadow:0 4px 20px #0000000b;font:12px var(--font-ui,Inter,sans-serif)}
#plan-selection-indicator[hidden]{display:none}
#plan-selection-indicator strong{display:block;font-size:12px;font-weight:600}
#plan-selection-indicator small{display:block;margin-top:3px;color:var(--text-3);font-size:11px}
#plan-selection-indicator button{border:0;border-radius:6px;padding:9px 11px;font:500 12px var(--font-ui,Inter,sans-serif);cursor:pointer;white-space:nowrap}
.plan-smart-action{background:#ffc824;color:#151515}.plan-selection-edit{background:var(--bg-hover,#f1f2ef);color:var(--text-1)}
.multi-smart-button{display:block;width:100%;padding:12px;border:0;border-radius:8px;background:#ffc824;color:#151515;font:600 13px var(--font-ui,Inter,sans-serif);cursor:pointer}
.multi-smart-button:disabled{background:var(--bg-hover,#f1f2ef);color:var(--text-3);cursor:default}
.multi-smart-hint{margin:9px 0 0;font-size:12px;line-height:1.5;color:var(--text-2)}
#props-multi .align-btn:disabled{opacity:.4;cursor:default}
#sidebar.smart-drawing-sidebar{display:flex;width:clamp(360px,32vw,440px);min-width:clamp(360px,32vw,440px);overflow:hidden}
#sidebar.smart-drawing-sidebar>:not(#smart-drawing-panel){display:none!important}
#sidebar.smart-drawing-sidebar>#smart-drawing-panel{display:flex!important}
#smart-drawing-panel{position:relative;flex:1 1 auto;min-height:0;width:100%;z-index:35;background:var(--bg-panel,#fff);display:flex;flex-direction:column;overflow:hidden;font-family:var(--font-ui,Inter,sans-serif);color:var(--text-1)}
#smart-drawing-panel header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:18px 18px 14px;border-bottom:1px solid var(--border-hairline)}
#smart-drawing-panel header small{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:var(--text-3)}
#smart-drawing-panel h2{font-size:20px;letter-spacing:-.5px;margin:5px 0 0;font-weight:600}
#smart-drawing-panel button{font:500 12px var(--font-ui,Inter,sans-serif);cursor:pointer;border:1px solid var(--border-default);border-radius:7px;background:var(--bg-panel,#fff);color:var(--text-1);padding:9px 11px}
#smart-drawing-panel button:disabled{opacity:.45;cursor:default}
#smart-drawing-panel .smart-close{font-size:23px;background:transparent;border:0;padding:4px 8px}
.smart-content{padding:16px 18px;overflow-y:auto;flex:1;min-height:0}
.smart-styles{display:flex;gap:7px}.smart-styles button{flex:1}
#smart-drawing-panel button[aria-pressed=true]{background:#242820;color:#fff;border-color:#242820}
.smart-materials{font-size:11px;color:var(--text-3);margin:13px 0}.smart-notice{font-size:12px;line-height:1.5;background:#fff5d8;color:#665222;padding:10px;border-radius:6px;margin:0 0 15px}
.smart-variants{display:grid;gap:9px;min-height:100px}.smart-variants>p{font-size:12px;color:var(--text-3)}
.smart-variant{display:flex;align-items:center;text-align:left;gap:12px;width:100%;min-height:75px}
.smart-variant svg{width:62px;height:48px;flex:0 0 62px;fill:#bd7564}.smart-variant[aria-pressed=true] svg{fill:#dea793}
.smart-variant span{min-width:0}.smart-variant strong{font-size:13px;display:block;font-weight:600}.smart-variant small{font-size:11px;font-weight:400;display:block;line-height:1.5;margin-top:5px;opacity:.8}
.smart-metric{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;margin-top:18px}.smart-metric+.smart-metric{margin-top:10px}.smart-metric strong{font:500 15px var(--font-mono,monospace)}
.smart-error{font-size:12px;line-height:1.5;color:#a63225}
.smart-warning{font-size:12px;line-height:1.5;color:#8a5200;background:#fff3cd;border:1px solid #ffd977;border-radius:8px;padding:8px 10px;margin-top:14px}
#smart-drawing-panel footer{display:flex;gap:8px;justify-content:flex-end;padding:14px;border-top:1px solid var(--border-hairline)}
#smart-drawing-panel .smart-apply{background:#ffc824;border-color:#ffc824;color:#151515}
@media(max-width:1000px){#sidebar.smart-drawing-sidebar{top:var(--toolbar-height);bottom:0;left:0;width:360px;min-width:0;z-index:35}}
@media(max-width:700px){
  #plan-selection-indicator{right:10px;bottom:90px;max-width:calc(100% - 20px);gap:8px;flex-wrap:wrap}
  #sidebar.smart-drawing-sidebar{position:fixed;top:auto;bottom:70px;left:10px;right:10px;width:auto;min-width:0;height:52dvh;border-radius:12px}
  #smart-drawing-panel header{padding:10px 14px}#smart-drawing-panel h2{font-size:17px}.smart-content{padding:10px 14px}
  .smart-variants{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.smart-variant{flex-direction:column;gap:4px;min-height:100px;padding:7px!important}
  .smart-variant svg{height:36px;flex-basis:36px;width:55px}.smart-variant strong{font-size:12px}.smart-variant small{font-size:11px}.smart-metric{margin-top:10px}#smart-drawing-panel footer{padding:10px}
}
@media(pointer:coarse){#plan-selection-indicator button,#smart-drawing-panel button{min-height:44px}}
.smart-material-picker{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;margin-bottom:12px}
.smart-material-picker select{max-width:190px;padding:8px;border:1px solid var(--border-default);border-radius:7px;background:var(--bg-panel,#fff);color:var(--text-1)}
.smart-colors{margin:0 0 20px}.smart-colors p{font-size:12px;margin:0 0 8px}
.smart-palette{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}
#smart-drawing-panel .smart-swatch{padding:0;min-height:36px;aspect-ratio:1;background:var(--swatch);border:2px solid transparent;border-radius:6px}
#smart-drawing-panel .smart-swatch[aria-pressed=true]{background:var(--swatch);border-color:var(--text-1);box-shadow:inset 0 0 0 2px #fff}
#smart-drawing-panel button:focus-visible{outline:3px solid #2563eb;outline-offset:2px}
.smart-color-name{display:block;min-height:16px;margin-top:8px;font-size:11px;color:var(--text-2)}
@media(pointer:coarse){.smart-palette{grid-template-columns:repeat(6,minmax(0,1fr))}#smart-drawing-panel .smart-swatch{min-height:44px}}
