.eai-box{max-width:none;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:12px 18px;border:0;border-radius:0;background:#fff;font-family:inherit;color:#1f2937;box-sizing:border-box}.eai-head{max-width:none;margin:0 auto 12px}.eai-head h2{margin:0 0 4px;color:#334155}.eai-head p{margin:0 0 12px;color:#526070}.eai-label{font-weight:700;display:block;margin:0 auto 6px;max-width:none;color:#334155}.eai-search-wrap{position:relative;max-width:none;margin:0 auto}.eai-input{width:100%;box-sizing:border-box;padding:12px 14px;border:1px solid #c8d1dc;border-radius:10px;font-size:16px;background:#fff;color:#111827}.eai-suggestions{position:absolute;z-index:99999;left:0;right:0;top:calc(100% + 4px);background:#fff!important;color:#111827!important;border:1px solid #94a3b8;border-radius:10px;overflow:hidden;box-shadow:0 16px 36px rgba(15,23,42,.22)}.eai-suggestions button{display:block;width:100%;padding:12px 14px;text-align:left;border:0;border-bottom:1px solid #e5e7eb;background:#fff!important;color:#111827!important;cursor:pointer;font-size:14px;line-height:1.35}.eai-suggestions button:hover{background:#eaf2ff!important}.eai-status{min-height:22px;margin:10px auto;color:#526070;max-width:none}.eai-workbench{position:relative;width:100%;min-height:calc(100vh - 160px);}.eai-sidebar{position:absolute;z-index:20;left:16px;top:16px;width:330px;max-height:calc(100vh - 205px);overflow:auto;display:flex;flex-direction:column;gap:10px;padding-right:4px}.eai-browser{width:100%;min-width:0}.eai-card{border:1px solid #e2e8f0;border-radius:14px;padding:14px;background:rgba(248,250,252,.94);color:#1f2937;backdrop-filter:blur(3px)}.eai-card h3{margin:0 0 10px;color:#334155}.eai-map-card{padding:10px;background:#f8fafc;overflow:visible;display:flex;flex-direction:column;gap:8px}.eai-browser-head{position:relative;z-index:15;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:0;background:rgba(248,250,252,.98);border:1px solid #e2e8f0;border-radius:14px;padding:10px 12px;backdrop-filter:blur(3px)}.eai-browser-head h3{margin:0 0 4px}.eai-actions{text-align:right;white-space:nowrap}.eai-dl{display:grid;grid-template-columns:105px minmax(0,1fr);gap:5px 10px;margin:0}.eai-dl dt{font-weight:700;color:#334155}.eai-dl dd{margin:0;word-break:break-word;color:#1f2937}.eai-building{padding:9px 0;border-top:1px solid #e2e8f0}.eai-building:first-child{border-top:0;padding-top:0}.eai-btn{display:inline-block;margin:0 6px 8px 0;padding:9px 12px;border-radius:9px;background:#0f172a;color:#fff!important;text-decoration:none;font-weight:700;border:0;cursor:pointer;font-size:13px}.eai-secondary{background:#475569}.eai-note{color:#64748b;font-size:12px;margin:3px 0}.eai-pre{max-height:180px;overflow:auto;background:#0f172a;color:#e2e8f0;padding:12px;border-radius:12px;font-size:10px}.eai-kpi-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.eai-kpi-grid div{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:8px}.eai-kpi-grid span{display:block;font-size:11px;color:#64748b;margin-bottom:3px}.eai-kpi-grid strong{display:block;color:#0f172a;font-size:14px}.eai-prefill summary{cursor:pointer;font-weight:700;color:#334155}.eai-prefill pre{max-height:180px;overflow:auto;background:#111827;color:#e5e7eb;border-radius:10px;padding:10px}.eai-map{position:relative;width:100%;height:calc(100vh - 260px);min-height:660px;overflow:hidden;border:1px solid #cbd5e1;border-radius:14px;background:#e2e8f0}.eai-map:before{content:attr(data-status);position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:0;color:#334155;font-weight:700}.eai-map img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block;z-index:1}.eai-map.eai-load-error img{display:none}.eai-map.eai-load-error{background:#fef2f2}.eai-map.eai-load-error:before{color:#991b1b;text-align:center;max-width:620px;line-height:1.4}.eai-map svg{position:absolute;inset:0;width:100%;height:100%;cursor:crosshair;z-index:2}.eai-building-poly{fill:rgba(37,99,235,.14);stroke:#2563eb;stroke-width:2;vector-effect:non-scaling-stroke}.eai-poly-label{fill:#0f172a;paint-order:stroke;stroke:#fff;stroke-width:3;font-size:18px;font-weight:800}.eai-roof-line{fill:none;stroke:#f97316;stroke-width:2;vector-effect:non-scaling-stroke}.eai-roof-poly{fill:rgba(249,115,22,.065);stroke:#f97316;stroke-width:2;vector-effect:non-scaling-stroke}.eai-roof-point{fill:#fff;stroke:#f97316;stroke-width:2;vector-effect:non-scaling-stroke}.eai-drawbar{position:sticky;z-index:16;bottom:8px;margin:0;background:rgba(248,250,252,.98);border:1px solid #e2e8f0;border-radius:14px;padding:10px;backdrop-filter:blur(3px);box-shadow:0 10px 28px rgba(15,23,42,.12)}.eai-drawbar span{font-weight:700;color:#334155}.eai-frame{width:100%;height:calc(100vh - 260px);min-height:660px;border:1px solid #cbd5e1;border-radius:14px;background:#fff}.eai-photo-grid{position:absolute;z-index:18;right:16px;bottom:16px;display:grid;grid-template-columns:repeat(3,130px);gap:8px;margin:0}.eai-photo-card{display:block;border:1px solid #cbd5e1;border-radius:12px;overflow:hidden;background:#fff;color:#0f172a;padding:0;cursor:pointer;text-align:left}.eai-photo-card img{display:block;width:100%;height:78px;object-fit:cover;background:#e2e8f0}.eai-photo-card span{display:block;padding:6px 8px;font-weight:700;font-size:12px}@media(max-width:1100px){.eai-sidebar{position:relative;left:auto;top:auto;width:auto;max-height:none;display:grid;grid-template-columns:1fr 1fr}.eai-browser-head{position:relative;right:auto;top:auto;max-width:none;margin-bottom:10px}.eai-map,.eai-frame{height:70vh;min-height:520px}.eai-drawbar{position:relative;left:auto;bottom:auto;margin:10px 0}.eai-photo-grid{position:relative;right:auto;bottom:auto;grid-template-columns:repeat(2,minmax(0,1fr));margin:8px 0 14px}}@media(max-width:650px){.eai-box{padding:10px}.eai-sidebar{grid-template-columns:1fr}.eai-kpi-grid{grid-template-columns:1fr}.eai-dl{grid-template-columns:1fr}.eai-map,.eai-frame{min-height:420px;height:60vh}.eai-browser-head{display:block}.eai-actions{text-align:left;white-space:normal}}

.eai-map img,.eai-map svg{will-change:transform}.eai-map svg{touch-action:none}.eai-map:not(.eai-load-error){cursor:grab}.eai-map svg:active{cursor:grabbing}.eai-drawbar{max-width:none}.eai-draw-controls{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.eai-roof-editor{display:grid;grid-template-columns:220px 180px;gap:10px;align-items:center;margin-top:8px}.eai-roof-editor label{font-weight:700;color:#334155}.eai-roof-editor input{width:100%;display:block;margin-top:4px}.eai-tilt-sketch{width:180px;height:90px;background:#fff;border:1px solid #e2e8f0;border-radius:10px}.eai-sketch-base{stroke:#64748b;stroke-width:2}.eai-sketch-tri{fill:rgba(14,165,233,.12);stroke:#cbd5e1;stroke-width:1}.eai-sketch-roof{stroke:#f97316;stroke-width:4}.eai-sketch-text{font-size:16px;font-weight:800;fill:#0f172a}.eai-roof-list{margin-top:8px;font-size:13px;color:#334155;display:grid;gap:3px}.eai-roof-total{border-top:1px solid #cbd5e1;margin-top:4px;padding-top:4px}.eai-roof-active{color:#ea580c;font-weight:700}.eai-roof-saved{fill:rgba(34,197,94,.075);stroke:#22c55e}.eai-roof-label{fill:#0f172a;paint-order:stroke;stroke:#fff;stroke-width:3;font-size:16px;font-weight:800}
@media(max-width:1100px){.eai-drawbar{max-width:none}.eai-roof-editor{grid-template-columns:1fr}}

/* v0.2.13: stable v0.2.7 layout, but with a permanent left sidebar and search to the right */
.eai-box{
  width:100%;
  max-width:none;
  margin:0;
  padding:18px 24px;
  box-sizing:border-box;
}
.eai-layout{
  display:flex;
  align-items:flex-start;
  gap:22px;
  width:100%;
}
.eai-maincol{
  flex:1 1 auto;
  min-width:0;
}
.eai-head{
  max-width:980px;
  margin:0 0 14px;
}
.eai-label{
  max-width:780px;
  margin:0 0 6px;
}
.eai-search-wrap{
  max-width:780px;
  margin:0 0 0;
}
.eai-input{
  width:100%;
}
.eai-suggestions{
  min-width:100%;
  width:100%;
  max-width:780px;
}
.eai-status{
  max-width:980px;
  margin:10px 0 14px;
}
.eai-workbench{
  position:relative;
  width:100%;
  min-height:auto;
}
.eai-sidebar{
  position:sticky;
  top:16px;
  left:auto;
  z-index:20;
  flex:0 0 315px;
  width:315px;
  max-width:315px;
  height:calc(100vh - 42px);
  max-height:none;
  overflow:auto;
  display:flex;
  flex-direction:column;
  gap:10px;
  padding:0 4px 10px 0;
  box-sizing:border-box;
}
.eai-sidebar .eai-card{
  padding:11px 12px;
  border-radius:12px;
}
.eai-sidebar .eai-card h3{
  font-size:18px;
  margin-bottom:8px;
}
.eai-sidebar,
.eai-sidebar .eai-dl,
.eai-sidebar .eai-note,
.eai-sidebar .eai-building{
  font-size:12px;
  line-height:1.32;
}
.eai-sidebar .eai-dl{
  grid-template-columns:86px minmax(0,1fr);
  gap:4px 7px;
}
.eai-pre{
  max-height:150px;
  font-size:9px;
}
.eai-browser{
  width:100%;
}
.eai-map,
.eai-frame{
  height:calc(100vh - 355px);
  min-height:560px;
}
.eai-browser-head{
  margin-bottom:8px;
}
.eai-actions .eai-btn{
  min-width:118px;
  text-align:center;
}
@media(max-width:1100px){
  .eai-layout{display:block;}
  .eai-sidebar{position:relative;top:auto;width:auto;max-width:none;height:auto;max-height:none;display:grid;grid-template-columns:1fr 1fr;margin-bottom:12px;}
  .eai-search-wrap,.eai-label,.eai-head,.eai-status{max-width:none;}
  .eai-map,.eai-frame{height:70vh;min-height:520px;}
}
@media(max-width:650px){
  .eai-box{padding:12px;}
  .eai-sidebar{grid-template-columns:1fr;}
}


/* v0.2.14: reclaim vertical space and improve drawing controls */
.eai-head-compact{display:none!important;margin:0!important;padding:0!important;height:0!important;}
.eai-maincol > .eai-label{margin-top:0;}
.eai-browser-head{padding:8px 12px;align-items:center;}
.eai-browser-head h3{font-size:24px;margin:0;}
.eai-browser-note{margin:0;font-size:11px;}
.eai-roof-editor{grid-template-columns:220px 260px minmax(260px,1fr);align-items:center;gap:12px;margin-top:6px;}
.eai-tilt-sketch{width:170px;height:170px;}
.eai-draw-help{font-size:12px;line-height:1.35;color:#475569;max-width:520px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:9px 10px;}
.eai-drawbar > span[data-eai-draw-info]{display:none;}
.eai-map,.eai-frame{height:calc(100vh - 330px);min-height:590px;}
@media(max-width:1100px){.eai-roof-editor{grid-template-columns:1fr 260px;}.eai-draw-help{grid-column:1 / -1;}.eai-map,.eai-frame{height:70vh;min-height:520px;}}
@media(max-width:650px){.eai-roof-editor{grid-template-columns:1fr;}.eai-tilt-sketch{width:170px;height:170px;max-width:100%;}}

/* v0.2.15: BBR building polygons and PV suitability */
.eai-building-title{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:6px}
.eai-suit-badge{display:inline-block;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:800;white-space:nowrap;border:1px solid transparent}
.eai-suit-candidate{background:#dcfce7;color:#166534;border-color:#86efac}
.eai-suit-caution{background:#fef3c7;color:#92400e;border-color:#fcd34d}
.eai-suit-unsuitable{background:#fee2e2;color:#991b1b;border-color:#fca5a5}
.eai-suit-unknown{background:#e2e8f0;color:#334155;border-color:#cbd5e1}
.eai-small-btn{margin-top:7px;padding:6px 8px;border:0;border-radius:8px;background:#334155;color:#fff;font-size:11px;font-weight:800;cursor:pointer;width:100%;text-align:center}
.eai-small-btn:hover{background:#0f172a}
.eai-building-candidate{fill:rgba(34,197,94,.10);stroke:#22c55e;stroke-width:2;stroke-dasharray:8 5;vector-effect:non-scaling-stroke}
.eai-building-caution{fill:rgba(245,158,11,.12);stroke:#f59e0b;stroke-width:2;stroke-dasharray:8 5;vector-effect:non-scaling-stroke}
.eai-building-unsuitable{fill:rgba(239,68,68,.12);stroke:#ef4444;stroke-width:2;stroke-dasharray:8 5;vector-effect:non-scaling-stroke}
.eai-building-unknown{fill:rgba(37,99,235,.10);stroke:#2563eb;stroke-width:2;stroke-dasharray:8 5;vector-effect:non-scaling-stroke}


/* v0.2.16: visible BBR footprint overlay interaction */
.eai-building-poly{cursor:pointer;transition:stroke-width .12s ease, fill .12s ease;}
.eai-building-poly:hover{stroke-width:4;filter:drop-shadow(0 1px 2px rgba(15,23,42,.35));}
.eai-building-selected{stroke-width:5!important;stroke-dasharray:none!important;filter:drop-shadow(0 2px 4px rgba(15,23,42,.45));}
.eai-poly-label{cursor:pointer;pointer-events:auto;}
.eai-building-popover{position:absolute;z-index:25;left:14px;bottom:14px;width:280px;max-width:calc(100% - 28px);background:rgba(255,255,255,.96);border:1px solid #cbd5e1;border-radius:14px;padding:10px 12px;box-shadow:0 18px 42px rgba(15,23,42,.22);backdrop-filter:blur(4px);font-size:12px;line-height:1.32;}
.eai-building-popover .eai-dl{grid-template-columns:78px minmax(0,1fr);gap:4px 7px;}
.eai-pop-title{font-weight:900;font-size:15px;color:#0f172a;margin-bottom:8px;}
.eai-building-title strong{font-size:13px;}
.eai-roof-row{border:1px solid #d9e2ec;border-radius:8px;padding:6px 8px;margin:6px 0;background:#fff;font-size:12px;}
.eai-roof-row label{display:flex;gap:6px;align-items:center;margin-top:4px;font-size:11px;color:#334155;}
.eai-roof-row select{max-width:100%;font-size:11px;padding:3px 5px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;}
.eai-roof-meta{margin-top:3px;font-size:11px;color:#64748b;line-height:1.25;}
.eai-warn{color:#b91c1c;font-weight:700;}
.eai-caution{color:#a16207;font-weight:700;}
.eai-building-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;}

.eai-building-popover{pointer-events:auto;}
.eai-pop-actions{display:grid;grid-template-columns:1fr;gap:6px;margin-top:8px;}
.eai-pop-actions .eai-small-btn{width:100%;margin:0;text-align:center;}
.eai-pop-note{margin-top:6px;color:#b45309;font-size:11px;font-weight:700;}

/* v0.2.28 stable drawing/assessment additions */
.eai-energy-box{margin-top:8px;padding:8px;border:1px solid #e5e7eb;border-radius:8px;background:#f9fafb;font-size:12px;}
.eai-energy-flags{display:flex;flex-wrap:wrap;gap:4px;margin:6px 0;}
.eai-energy-flags span{display:inline-flex;align-items:center;padding:3px 6px;border-radius:999px;background:#eef6ff;border:1px solid #bfdbfe;font-size:11px;}
.eai-compact-list{margin:6px 0 0 16px;padding:0;font-size:11px;line-height:1.35;}
.eai-building-actions .eai-small-btn{white-space:normal;}

/* v0.2.29: put output/sidebar to the right of the browser for a wider working view */
@media (min-width: 1101px){
  .eai-box{
    padding:12px 16px;
  }
  .eai-layout{
    display:grid;
    grid-template-columns:minmax(0, 1fr) 305px;
    gap:16px;
    align-items:start;
    width:100%;
  }
  .eai-maincol{
    grid-column:1;
    grid-row:1;
    min-width:0;
  }
  .eai-sidebar{
    grid-column:2;
    grid-row:1;
    position:sticky;
    top:12px;
    left:auto;
    flex:none;
    width:305px;
    max-width:305px;
    height:calc(100vh - 24px);
    max-height:none;
    overflow:auto;
    z-index:20;
  }
  .eai-search-wrap,
  .eai-label,
  .eai-head,
  .eai-status{
    max-width:880px;
  }
  .eai-browser{
    width:100%;
    min-width:0;
  }
  .eai-map-card{
    padding:8px;
  }
  .eai-browser-head{
    padding:7px 10px;
    margin-bottom:6px;
  }
  .eai-browser-head h3{
    font-size:22px;
  }
  .eai-map,
  .eai-frame{
    height:calc(100vh - 315px);
    min-height:610px;
  }
  .eai-drawbar{
    padding:8px;
  }
  .eai-roof-editor{
    grid-template-columns:220px 170px minmax(240px,1fr);
    gap:10px;
  }
  .eai-tilt-sketch{
    width:160px;
    height:160px;
  }
}
@media (min-width: 1500px){
  .eai-layout{
    grid-template-columns:minmax(0, 1fr) 330px;
  }
  .eai-sidebar{
    width:330px;
    max-width:330px;
  }
}

/* v0.2.30: BBR data left, browser center, result list right */
@media (min-width: 1101px){
  .eai-layout{
    display:grid!important;
    grid-template-columns:300px minmax(760px, 1fr) 300px!important;
    gap:16px!important;
    align-items:start!important;
    width:100%!important;
  }
  .eai-bbr-sidebar{
    grid-column:1!important;
    grid-row:1!important;
    position:sticky!important;
    top:12px!important;
    width:300px!important;
    max-width:300px!important;
    height:calc(100vh - 24px)!important;
    max-height:none!important;
    overflow:auto!important;
  }
  .eai-maincol{
    grid-column:2!important;
    grid-row:1!important;
    min-width:0!important;
  }
  .eai-resultsbar{
    grid-column:3!important;
    grid-row:1!important;
    position:sticky!important;
    top:12px!important;
    width:300px!important;
    max-width:300px!important;
    height:calc(100vh - 24px)!important;
    overflow:auto!important;
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
    padding-right:4px!important;
    box-sizing:border-box!important;
  }
  .eai-resultsbar .eai-card{
    padding:11px 12px!important;
    border-radius:12px!important;
  }
  .eai-resultsbar .eai-card h3{
    font-size:18px!important;
    margin-bottom:8px!important;
  }
  .eai-resultsbar,
  .eai-resultsbar .eai-roof-list,
  .eai-resultsbar .eai-note{
    font-size:12px!important;
    line-height:1.32!important;
  }
  .eai-search-wrap,
  .eai-label,
  .eai-head,
  .eai-status{
    max-width:100%!important;
  }
  .eai-map,.eai-frame{
    height:calc(100vh - 315px)!important;
    min-height:610px!important;
  }
  .eai-drawbar .eai-roof-list{
    display:none!important;
  }
  .eai-roof-row{
    margin:7px 0!important;
  }
}
@media (max-width: 1100px){
  .eai-resultsbar{
    display:block!important;
    margin-top:12px!important;
  }
}


/* v0.2.31: more air between BBR column and browser + clearer BBR numbers */
@media (min-width: 1101px){
  .eai-layout{
    grid-template-columns:315px minmax(760px, 1fr) 300px!important;
    column-gap:28px!important;
  }
  .eai-bbr-sidebar{
    width:315px!important;
    max-width:315px!important;
  }
  .eai-maincol{
    padding-left:4px!important;
  }
}
.eai-building-num-bg{
  fill:#fff;
  stroke:#0f172a;
  stroke-width:1.5;
  vector-effect:non-scaling-stroke;
  filter:drop-shadow(0 1px 2px rgba(15,23,42,.35));
}
.eai-building-num-candidate{stroke:#16a34a;}
.eai-building-num-caution{stroke:#d97706;}
.eai-building-num-unsuitable{stroke:#dc2626;}
.eai-building-num{
  text-anchor:middle;
  dominant-baseline:central;
  font-size:14px;
  font-weight:900;
  fill:#0f172a;
  stroke:none;
  paint-order:normal;
  pointer-events:auto;
}


/* v0.2.32: stronger layout spacing and always-visible BBR numbers */
@media (min-width: 1101px){
  .eai-layout{
    display:grid!important;
    grid-template-columns:315px minmax(820px, 1fr) 310px!important;
    column-gap:34px!important;
    row-gap:0!important;
    align-items:start!important;
  }
  .eai-bbr-sidebar{
    grid-column:1!important;
    margin-right:0!important;
  }
  .eai-maincol{
    grid-column:2!important;
    padding-left:14px!important;
    border-left:1px solid rgba(203,213,225,.75)!important;
    min-width:0!important;
  }
  .eai-resultsbar{
    grid-column:3!important;
    margin-left:0!important;
  }
  .eai-map-card{
    margin-left:0!important;
  }
}
.eai-building-num-bg{
  display:block!important;
  opacity:1!important;
  fill:#ffffff!important;
  stroke:#0f172a!important;
  stroke-width:2!important;
  vector-effect:non-scaling-stroke!important;
  pointer-events:auto!important;
}
.eai-building-num{
  display:block!important;
  opacity:1!important;
  text-anchor:middle!important;
  dominant-baseline:central!important;
  font-size:15px!important;
  font-weight:900!important;
  fill:#0f172a!important;
  stroke:#ffffff!important;
  stroke-width:0.8!important;
  paint-order:stroke!important;
  pointer-events:auto!important;
}
.eai-building-poly{
  pointer-events:auto!important;
}

/* v0.2.33: slightly more margin, safer drawing UI, and clearer action buttons */
@media (min-width: 1101px){
  .eai-layout{
    column-gap:42px!important;
    grid-template-columns:315px minmax(820px, 1fr) 310px!important;
  }
  .eai-maincol{
    padding-left:22px!important;
  }
}
.eai-pop-actions{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  margin-top:10px!important;
}
.eai-pop-actions .eai-small-btn{
  width:100%!important;
  text-align:center!important;
}
.eai-roof-row-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:8px!important;
}
.eai-small-btn.eai-danger{
  background:#7f1d1d!important;
  color:#fff!important;
  padding:5px 9px!important;
  line-height:1.2!important;
  min-width:auto!important;
}
.eai-roof-row .eai-danger{
  flex:0 0 auto!important;
}


/* v0.2.38: layout refinements requested 2026-06-17 */
@media (min-width: 1101px){
  .eai-layout{
    column-gap:50px!important;
    grid-template-columns:315px minmax(840px, 1fr) 310px!important;
  }
  .eai-maincol{
    padding-left:28px!important;
  }
}
/* Keep BBR popup inside the image browser/map instead of over the control bar */
.eai-building-popover{
  top:18px!important;
  bottom:auto!important;
  left:18px!important;
  width:310px!important;
  max-width:calc(100% - 36px)!important;
  max-height:calc(100% - 36px)!important;
  overflow:auto!important;
  box-sizing:border-box!important;
}
/* Compact remove button in result list */
.eai-roof-row-head .eai-danger,
.eai-roof-row button[data-eai-delete-roof]{
  width:auto!important;
  min-width:54px!important;
  max-width:72px!important;
  padding:4px 8px!important;
  margin:0!important;
  line-height:1.15!important;
  font-size:10px!important;
  white-space:nowrap!important;
  align-self:flex-start!important;
}
.eai-roof-row-head > div{
  min-width:0!important;
  flex:1 1 auto!important;
}


/* v0.2.39: browser gesture fixes */
.eai-map,
.eai-map img,
.eai-map svg{
  touch-action:none !important;
  overscroll-behavior:contain !important;
  user-select:none !important;
}
.eai-map{cursor:grab;}
.eai-map:active{cursor:grabbing;}


/* v0.2.43: address search in left address card and browser higher */
.eai-address-card .eai-search-wrap{
  margin-bottom:8px!important;
}
.eai-address-card .eai-status{
  margin:6px 0 8px!important;
  font-size:12px!important;
}
.eai-maincol > .eai-head-compact{
  display:none!important;
}
.eai-browser-note{
  display:none!important;
}
@media (min-width:1101px){
  .eai-maincol{
    padding-top:0!important;
  }
  .eai-workbench{
    margin-top:0!important;
  }
  .eai-map-card{
    margin-top:0!important;
  }
}


/* v0.2.44: compact browser controls and inline angle sketch */
.eai-browser-head{
  align-items:center!important;
  padding:8px 10px!important;
}
.eai-browser-note{
  margin:0!important;
  font-size:13px!important;
  font-weight:600!important;
  color:#475569!important;
}
.eai-draw-controls{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:7px!important;
  align-items:center!important;
}
.eai-draw-controls .eai-btn{
  padding:7px 12px!important;
  font-size:11px!important;
  line-height:1.15!important;
  margin:0!important;
  min-width:auto!important;
  white-space:nowrap!important;
}
.eai-roof-editor{
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  margin-top:8px!important;
}
.eai-roof-editor label{
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  white-space:nowrap!important;
  margin:0!important;
}
.eai-roof-editor label input[type=range]{
  width:165px!important;
  margin:0!important;
}
.eai-tilt-sketch{
  width:118px!important;
  height:80px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  flex:0 0 auto!important;
}
.eai-draw-help{
  margin-left:auto!important;
  font-size:12px!important;
  line-height:1.25!important;
  max-width:420px!important;
  background:#fff!important;
  border:1px solid #e2e8f0!important;
  border-radius:8px!important;
  padding:7px 9px!important;
}
@media (max-width: 1350px){
  .eai-draw-controls{flex-wrap:wrap!important;}
  .eai-draw-help{margin-left:0!important;max-width:100%!important;}
}


/* v0.2.45: autocomplete stacking + clearer roof measurements */
.eai-address-card,
.eai-search-wrap{
  position:relative!important;
  z-index:200!important;
  overflow:visible!important;
}
.eai-sidebar,
.eai-bbr-sidebar{
  overflow:visible!important;
}
.eai-suggestions{
  z-index:999999!important;
}
.eai-roof-measure{
  line-height:1.35!important;
  font-size:12px!important;
}
.eai-roof-row-head{
  align-items:flex-start!important;
  gap:8px!important;
}
.eai-roof-row-head .eai-danger{
  width:auto!important;
  min-width:58px!important;
  max-width:78px!important;
  padding:6px 10px!important;
  flex:0 0 auto!important;
}
.eai-roof-active{
  background:#f8fafc!important;
  border:1px solid #e2e8f0!important;
  border-radius:8px!important;
  padding:7px 9px!important;
  margin-top:8px!important;
}


/* v0.2.46: source-aware measurements using BBR/Skråfoto references */
.eai-source-badge{display:inline-block;margin-top:4px;padding:2px 6px;border-radius:999px;background:#dcfce7;color:#166534;border:1px solid #86efac;font-size:10px;font-weight:800;}
.eai-source-manual{background:#eff6ff;color:#1e40af;border-color:#bfdbfe;}
.eai-ref-note{margin:6px 0;padding:6px 8px;border-radius:8px;background:#f8fafc;border:1px solid #cbd5e1;font-size:11px;line-height:1.25;color:#334155;}
.eai-ref-ok{border-color:#86efac;background:#f0fdf4;color:#166534;}
.eai-ref-caution{border-color:#fcd34d;background:#fffbeb;color:#92400e;}
.eai-ref-warn{border-color:#fca5a5;background:#fef2f2;color:#991b1b;font-weight:700;}
.eai-skraa-dims{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:7px 0;padding:7px;border:1px solid #dbe5ef;border-radius:8px;background:#f8fafc;align-items:end;}
.eai-skraa-dims strong{grid-column:1 / -1;font-size:11px;color:#334155;}
.eai-skraa-dims label{display:block!important;margin:0!important;font-size:10px!important;color:#475569!important;}
.eai-skraa-dims input{width:100%;height:28px;border:1px solid #cbd5e1;border-radius:6px;padding:3px 5px;font-size:12px;box-sizing:border-box;}
.eai-skraa-dims button{grid-column:1 / -1;margin-top:0!important;}

/* v0.2.48: keep the ortofoto visually correct. JS maps measurements to the actual contained image rectangle. */
.eai-map img[data-eai-map-img]{object-fit:fill!important;width:100%!important;height:100%!important;}
.eai-map{touch-action:none;}

/* v0.2.50 stable fill map model */
.eai-map img[data-eai-map-img]{object-fit:fill!important;width:100%!important;height:100%!important;}


/* v0.3.0 OpenLayers map engine */
.eai-map{position:relative;overflow:hidden;background:#e2e8f0;touch-action:none;}
.eai-ol-map{position:absolute;inset:0;width:100%;height:100%;}
.eai-ol-map .ol-viewport{border-radius:10px;}
.eai-ol-map canvas{image-rendering:auto;}
.eai-map > img[data-eai-map-img],
.eai-map > svg[data-eai-map-svg]{display:none!important;}
.eai-map .ol-scale-line{background:rgba(15,23,42,.65);border-radius:5px;}
.eai-map .ol-zoom{top:8px;left:8px;}
.eai-map .ol-control button{background:#fff;color:#0f172a;border:1px solid #cbd5e1;}
.eai-map .ol-control button:hover{background:#f8fafc;}
.eai-browser-note::after{content:' · OpenLayers';font-weight:700;color:#16a34a;}


/* v0.3.2 OpenLayers diagnostics */
.eai-ol-diagnostic{
  position:absolute;right:10px;bottom:10px;z-index:1000;
  max-width:430px;max-height:260px;overflow:auto;
  background:rgba(15,23,42,.90);color:#e2e8f0;border:1px solid rgba(226,232,240,.25);
  border-radius:10px;padding:10px 12px;font-size:11px;line-height:1.35;box-shadow:0 16px 35px rgba(15,23,42,.30);
}
.eai-ol-diagnostic strong{display:block;color:#fff;margin-bottom:6px;font-size:12px;}
.eai-ol-diagnostic div{display:grid;grid-template-columns:125px minmax(0,1fr);gap:6px;border-top:1px solid rgba(226,232,240,.12);padding:3px 0;}
.eai-ol-diagnostic div:first-of-type{border-top:0;}
.eai-ol-diagnostic span{color:#93c5fd;}
.eai-ol-diagnostic code{white-space:normal;word-break:break-all;color:#f8fafc;background:transparent;padding:0;}
.eai-ol-diagnostic-fallback{bottom:auto;top:10px;}


/* v0.3.5: OpenLayers layer visibility fix */
.eai-map{
  background:#f8fafc!important;
}
.eai-map::before{
  display:none!important;
  content:none!important;
}
.eai-ol-map{
  z-index:5!important;
  background:transparent!important;
}
.eai-ol-map .ol-viewport,
.eai-ol-map .ol-layers,
.eai-ol-map .ol-layer,
.eai-ol-map canvas{
  background:transparent!important;
  opacity:1!important;
  visibility:visible!important;
}
.eai-ol-map .ol-overlaycontainer,
.eai-ol-map .ol-overlaycontainer-stopevent{
  z-index:50!important;
}
.eai-ol-diagnostic{
  z-index:1000!important;
}

/* v0.3.6 raw image diagnostics */
.eai-ol-raw{display:block!important;margin-top:8px;padding-top:8px;border-top:1px solid rgba(226,232,240,.18)!important;}
.eai-ol-raw a{display:inline-block;color:#bfdbfe!important;text-decoration:underline!important;margin-bottom:6px;font-weight:700;}
.eai-ol-raw img{position:relative!important;display:block!important;width:180px!important;height:auto!important;max-height:110px!important;object-fit:contain!important;border:1px solid rgba(226,232,240,.25)!important;border-radius:6px!important;background:#111827!important;z-index:auto!important;inset:auto!important;}

/* v0.3.8 raw ortofoto overlay test. Shows the same AJAX image directly in the map container while OL ImageStatic rendering is verified. */
.eai-ol-bg-img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:fill!important;z-index:1!important;display:block!important;pointer-events:none!important;opacity:1!important;}
.eai-ol-map{z-index:2!important;}
.eai-ol-diagnostic{z-index:80!important;}


/* v0.3.9: raw ortofoto is the temporary visual base, OL sits transparent above it */
.eai-map{background:#f8fafc!important;}
.eai-ol-bg-img{z-index:1!important;display:block!important;opacity:1!important;object-fit:fill!important;}
.eai-ol-map{z-index:2!important;background:transparent!important;pointer-events:auto!important;}
.eai-ol-map .ol-viewport,
.eai-ol-map .ol-layers,
.eai-ol-map .ol-layer,
.eai-ol-map canvas{background:transparent!important;}
.eai-ol-map canvas{mix-blend-mode:normal!important;}
.eai-ol-diagnostic{z-index:80!important;}


/* v0.3.11: OL controls pan/zoom; raw ortofoto is positioned from OL map coordinates */
.eai-ol-bg-img{
  inset:auto!important;
  left:0;top:0;
  width:auto!important;height:auto!important;
  max-width:none!important;max-height:none!important;
  object-fit:fill!important;
  transform:none!important;
  transform-origin:0 0!important;
}
.eai-ol-map{position:absolute!important;inset:0!important;}
.eai-ol-map .ol-viewport,
.eai-ol-map .ol-layers,
.eai-ol-map .ol-layer,
.eai-ol-map canvas{background:transparent!important;}

/* v0.3.12 direct OpenLayers navigation fallback */
.eai-ol-map{cursor:grab!important;touch-action:none!important;}
.eai-ol-map:active{cursor:grabbing!important;}
.eai-ol-bg-img{user-select:none!important;-webkit-user-drag:none!important;}

/* v0.3.13 minimal OpenLayers navigation */
.eai-ol-bg-img{pointer-events:none!important;z-index:1!important;}
.eai-ol-map{pointer-events:auto!important;z-index:5!important;cursor:grab!important;touch-action:none!important;}
.eai-ol-map:active{cursor:grabbing!important;}
.eai-ol-map .ol-viewport,
.eai-ol-map .ol-overlaycontainer-stopevent,
.eai-ol-map .ol-overlaycontainer{pointer-events:auto!important;}
.eai-ol-diagnostic{pointer-events:auto!important;}

/* v0.3.14 hard minimal OpenLayers mode */
.eai-ol-bg-img{display:none!important;}
.eai-ol-map{
  position:absolute!important;
  inset:0!important;
  z-index:5!important;
  width:100%!important;
  height:100%!important;
  background:#e2e8f0!important;
  pointer-events:auto!important;
  touch-action:none!important;
  cursor:grab!important;
}
.eai-ol-map:active{cursor:grabbing!important;}
.eai-ol-map .ol-viewport,
.eai-ol-map .ol-layers,
.eai-ol-map .ol-layer,
.eai-ol-map canvas{
  background:transparent!important;
  opacity:1!important;
  visibility:visible!important;
}
.eai-ol-diagnostic{z-index:100!important;}

/* v0.3.15 true OpenLayers WMS mode */
.eai-ol-bg-img{display:none!important;}
.eai-ol-map{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  z-index:5!important;
  background:#e2e8f0!important;
  pointer-events:auto!important;
  touch-action:none!important;
  cursor:grab!important;
}
.eai-ol-map:active{cursor:grabbing!important;}
.eai-ol-map .ol-viewport,
.eai-ol-map .ol-layers,
.eai-ol-map .ol-layer,
.eai-ol-map canvas{
  opacity:1!important;
  visibility:visible!important;
}

/* v0.3.17 OL fallback image preview for diagnosis */
.eai-ol-fallback-preview{
  position:absolute!important;
  left:0!important;top:0!important;width:100%!important;height:100%!important;
  object-fit:cover!important;z-index:1!important;opacity:.92!important;pointer-events:none!important;
}
.eai-ol-map canvas{position:relative;z-index:2;}

.eai-ol-diagnostic,.eai-ol-raw{display:none!important;}

/* v0.3.21: OpenLayers owns pan/zoom */
.eai-ol-map{pointer-events:auto!important;touch-action:none!important;}
.eai-ol-map *{pointer-events:auto;}
.eai-map > svg[data-eai-map-svg],
.eai-map > img[data-eai-map-img]{display:none!important;pointer-events:none!important;}

/* v0.3.22 hard reset: plain OpenLayers map */
.eai-map{background:#e2e8f0!important;}
.eai-map::before{display:none!important;content:none!important;}
.eai-ol-map{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  z-index:5!important;
  background:#e2e8f0!important;
  pointer-events:auto!important;
  touch-action:none!important;
}
.eai-ol-bg-img,
.eai-ol-fallback-preview,
.eai-map > img[data-eai-map-img],
.eai-map > svg[data-eai-map-svg]{display:none!important;}
.eai-ol-map .ol-viewport,
.eai-ol-map .ol-layers,
.eai-ol-map .ol-layer,
.eai-ol-map canvas{
  opacity:1!important;
  visibility:visible!important;
  background:transparent!important;
}

/* v0.3.23: enable OL pointer/wheel interaction over the map */
.eai-ol-map{pointer-events:auto!important;touch-action:none!important;cursor:grab!important;}
.eai-ol-map:active{cursor:grabbing!important;}
.eai-map > svg[data-eai-map-svg],
.eai-map > img[data-eai-map-img]{display:none!important;pointer-events:none!important;}

/* v0.3.24: use Elitag controls only */
.eai-ol-map .ol-zoom,
.eai-ol-map .ol-control{
  display:none!important;
}
.eai-ol-map{cursor:grab!important;}
.eai-ol-map:active{cursor:grabbing!important;}


/* v0.4.0: native OpenLayers tile/vector architecture */
.eai-map{background:#dfe7ef!important;}
.eai-ol-map{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;z-index:5!important;touch-action:none!important;cursor:grab!important;}
.eai-ol-map:active{cursor:grabbing!important;}
.eai-ol-map .ol-viewport,.eai-ol-map .ol-layers,.eai-ol-map .ol-layer,.eai-ol-map canvas{opacity:1!important;visibility:visible!important;background:transparent!important;}
.eai-ol-map .ol-viewport{pointer-events:auto!important;touch-action:none!important;}
.eai-map > img[data-eai-map-img],.eai-map > svg[data-eai-map-svg],.eai-ol-bg-img,.eai-ol-fallback-preview{display:none!important;pointer-events:none!important;}


/* v0.4.2: restore native OpenLayers event routing.
   Full-size overlay containers must not intercept map pan/wheel events. */
.eai-ol-map,
.eai-ol-map .ol-viewport{
  pointer-events:auto!important;
  touch-action:none!important;
}
.eai-ol-map .ol-overlaycontainer,
.eai-ol-map .ol-overlaycontainer-stopevent{
  pointer-events:none!important;
}
.eai-ol-map .ol-overlaycontainer > *,
.eai-ol-map .ol-overlaycontainer-stopevent > *{
  pointer-events:auto!important;
}
.eai-ol-map .ol-layers,
.eai-ol-map .ol-layer,
.eai-ol-map canvas{
  pointer-events:auto!important;
}


/* v0.4.3 address marker and roof slope direction controls */
.eai-direction-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin:8px 0;
  padding:8px;
  border:1px solid #d7e0ea;
  border-radius:8px;
  background:#f8fafc;
}
.eai-direction-row > div{display:grid;gap:1px;min-width:0;}
.eai-direction-row span{font-size:11px;color:#64748b;}
.eai-direction-row strong{font-size:13px;color:#0f172a;}
.eai-direction-row small{font-size:10px;color:#64748b;line-height:1.25;}
.eai-direction-row .eai-small-btn{flex:0 0 auto;white-space:nowrap;}


/* v0.4.4 Danish measurement UX and PV screenshot integration */
.eai-source-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:5px;}
.eai-source-actions .eai-source-badge{margin-top:0;}
.eai-source-actions .eai-small-btn{padding:3px 7px!important;font-size:10px!important;line-height:1.2!important;white-space:nowrap;}
.eai-direction-row{margin-top:5px;}
.eai-skraa-dims > small{grid-column:1 / -1;color:#64748b;font-size:10px;line-height:1.25;}
.eai-skraa-dims input::placeholder{color:#94a3b8;opacity:1;}
.eai-pv-export-card{margin-top:9px;padding:8px;border:1px solid #cbd5e1;border-radius:9px;background:#f8fafc;display:grid;gap:6px;}
.eai-pv-export-card > strong{font-size:11px;color:#334155;}
.eai-pv-export-card a{display:grid;gap:5px;color:#1d4ed8;text-decoration:none;font-weight:700;font-size:11px;}
.eai-pv-export-card img{display:block;width:100%;height:auto;max-height:170px;object-fit:cover;border-radius:6px;border:1px solid #cbd5e1;background:#e2e8f0;}
button[data-eai-export-pv][disabled]{opacity:.65;cursor:wait;}


/* v0.4.5 persistent drafts, confirmation status and automatic panel fit */
.eai-panel-config{display:flex;align-items:end;gap:7px;flex-wrap:wrap;padding:9px;border:1px solid #d7e0ea;border-radius:9px;background:#f8fafc;margin-top:8px;}
.eai-panel-config>strong{width:100%;font-size:12px;color:#0f172a;}
.eai-panel-config label{display:grid;gap:2px;font-size:10px;color:#64748b;min-width:82px;}
.eai-panel-config input,.eai-panel-config select{width:92px;min-height:30px;border:1px solid #cbd5e1;border-radius:6px;padding:4px 6px;background:#fff;font-size:11px;}
.eai-panel-config select{width:105px;}
.eai-panel-config .eai-btn{padding:7px 10px!important;font-size:10px!important;}
.eai-panel-summary{display:grid;gap:2px;margin:6px 0;padding:7px;border:1px solid #bfdbfe;border-radius:7px;background:#eff6ff;}
.eai-panel-summary strong{font-size:12px;color:#1e3a8a;}
.eai-panel-summary span{font-size:10px;color:#475569;}


/* v0.4.8 Solar Designer panel catalogue */
.eai-panel-config .eai-panel-product-label{min-width:245px;flex:1 1 245px;}
.eai-panel-config .eai-panel-product-label select{width:100%;min-width:235px;}
.eai-panel-product-meta{flex:2 1 310px;align-self:center;font-size:10px;line-height:1.35;color:#475569;padding:5px 7px;background:#eef4f8;border-radius:6px;}
.eai-panel-config button[disabled]{opacity:.58;cursor:progress;}


/* v0.4.8 directional roof clearances and panel fitting */
.eai-panel-config label{min-width:88px;}
.eai-panel-config input[data-eai-panel-rail-gap]{width:82px;}


/* v0.4.9 roof editing and vertex deletion */
.eai-roof-actions{display:flex;flex-direction:column;align-items:stretch;gap:5px;flex:0 0 78px;}
.eai-roof-actions .eai-small-btn{width:100%!important;min-width:0!important;max-width:none!important;margin:0!important;padding:5px 6px!important;font-size:10px!important;white-space:nowrap!important;}
.eai-roof-actions .eai-secondary{background:#475569!important;color:#fff!important;}
.eai-roof-actions .eai-secondary:hover{background:#1e293b!important;}

/* v0.4.10: direct map editing and subtle raised-panel rendering */
.eai-roof-actions{flex-basis:72px;}
.eai-ol-map canvas{image-rendering:auto;}


/* v0.4.11: clearer blue panel extrusion and wider result column */
@media (min-width: 1101px){
  .eai-layout{
    grid-template-columns:315px minmax(800px, 1fr) 370px!important;
    column-gap:18px!important;
  }
  .eai-resultsbar{
    width:370px!important;
    max-width:370px!important;
    padding-right:2px!important;
  }
  .eai-maincol{
    padding-left:18px!important;
  }
}


/* v0.4.12: larger BBR/result columns and tighter use of desktop width */
@media (min-width: 1101px){
  .eai-box{padding-left:10px!important;padding-right:10px!important;}
  .eai-layout{
    grid-template-columns:330px minmax(700px, 1fr) 430px!important;
    column-gap:10px!important;
  }
  .eai-bbr-sidebar{width:330px!important;max-width:330px!important;}
  .eai-resultsbar{width:430px!important;max-width:430px!important;padding-right:1px!important;}
  .eai-maincol{padding-left:0!important;}
  .eai-resultsbar .eai-card{padding:12px 13px!important;}
}
@media (min-width: 1800px){
  .eai-layout{grid-template-columns:350px minmax(760px, 1fr) 460px!important;}
  .eai-bbr-sidebar{width:350px!important;max-width:350px!important;}
  .eai-resultsbar{width:460px!important;max-width:460px!important;}
}

/* 0.4.14: keep secondary integration actions next to panel calculation. */
.eai-panel-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-left:auto}.eai-panel-actions .eai-btn{margin:0!important;white-space:nowrap}@media(max-width:1250px){.eai-panel-actions{width:100%;justify-content:flex-end}}


/* v0.4.16: embedded Lead Import layout. Keep BBR, map and live results visible together. */
@media (min-width:900px) and (max-width:1499px){
  .eai-box{padding-left:7px!important;padding-right:7px!important;}
  .eai-layout{
    display:grid!important;
    grid-template-columns:clamp(200px,19vw,260px) minmax(0,1fr) clamp(310px,27vw,360px)!important;
    column-gap:8px!important;
    align-items:start!important;
    width:100%!important;
  }
  .eai-bbr-sidebar{
    grid-column:1!important;
    grid-row:1!important;
    position:sticky!important;
    top:7px!important;
    width:auto!important;
    max-width:none!important;
    height:calc(100vh - 14px)!important;
    max-height:none!important;
    overflow:auto!important;
    display:flex!important;
    flex-direction:column!important;
    margin:0!important;
  }
  .eai-maincol{
    grid-column:2!important;
    grid-row:1!important;
    min-width:0!important;
    padding-left:0!important;
  }
  .eai-resultsbar{
    grid-column:3!important;
    grid-row:1!important;
    position:sticky!important;
    top:7px!important;
    width:auto!important;
    max-width:none!important;
    height:calc(100vh - 14px)!important;
    overflow:auto!important;
    display:flex!important;
    flex-direction:column!important;
    gap:8px!important;
    margin:0!important;
    padding-right:1px!important;
    box-sizing:border-box!important;
  }
  .eai-bbr-sidebar .eai-card,
  .eai-resultsbar .eai-card{padding:9px 10px!important;}
  .eai-bbr-sidebar,
  .eai-resultsbar,
  .eai-resultsbar .eai-note,
  .eai-resultsbar .eai-roof-list{font-size:11px!important;line-height:1.28!important;}
  .eai-bbr-sidebar .eai-dl{grid-template-columns:68px minmax(0,1fr)!important;gap:3px 5px!important;}
  .eai-map,.eai-frame{min-height:540px!important;}
}


/* v0.4.17: deterministic Lead Import embed columns. Do not let the map consume
   the BBR or live result columns, regardless of browser zoom or iframe width. */
body.eli-address-intel-embed .eai-box{
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:8px!important;
  overflow-x:hidden!important;
}
body.eli-address-intel-embed .eai-layout,
body.eli-address-intel-embed .eai-layout>*{
  min-width:0!important;
  box-sizing:border-box!important;
}
body.eli-address-intel-embed .eai-maincol,
body.eli-address-intel-embed .eai-browser,
body.eli-address-intel-embed .eai-map-card,
body.eli-address-intel-embed .eai-panel-config{
  min-width:0!important;
  max-width:100%!important;
}
@media(min-width:980px){
  body.eli-address-intel-embed .eai-layout{
    display:grid!important;
    grid-template-columns:minmax(170px,210px) minmax(0,1fr) minmax(310px,350px)!important;
    column-gap:8px!important;
    width:100%!important;
    max-width:100%!important;
  }
  body.eli-address-intel-embed .eai-bbr-sidebar{
    grid-column:1!important;width:auto!important;max-width:none!important;min-width:0!important;
  }
  body.eli-address-intel-embed .eai-maincol{grid-column:2!important;padding-left:0!important;border-left:0!important;}
  body.eli-address-intel-embed .eai-resultsbar{
    grid-column:3!important;display:flex!important;width:auto!important;max-width:none!important;min-width:0!important;
  }
}
@media(max-width:979px) and (min-width:650px){
  body.eli-address-intel-embed .eai-layout{display:grid!important;grid-template-columns:180px minmax(0,1fr)!important;gap:10px 8px!important;}
  body.eli-address-intel-embed .eai-bbr-sidebar{grid-column:1!important;grid-row:1!important;width:auto!important;max-width:none!important;}
  body.eli-address-intel-embed .eai-maincol{grid-column:2!important;grid-row:1!important;padding-left:0!important;border-left:0!important;}
  body.eli-address-intel-embed .eai-resultsbar{grid-column:1 / -1!important;grid-row:2!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:auto!important;max-width:none!important;position:relative!important;height:auto!important;max-height:none!important;}
}
@media(max-width:649px){
  body.eli-address-intel-embed .eai-resultsbar{display:block!important;width:auto!important;max-width:none!important;}
}


/* v0.4.21: compact BBR controls, explicit PV direction and change-aware save */
.eai-draw-controls{gap:5px!important;align-items:center!important;position:relative;}
.eai-draw-controls .eai-btn,
.eai-action-menu>summary{
  padding:5px 8px!important;
  min-height:28px!important;
  border-radius:7px!important;
  font-size:10px!important;
  line-height:1.1!important;
  margin:0!important;
  white-space:nowrap!important;
}
.eai-action-menu{position:relative;z-index:90;}
.eai-action-menu>summary{
  list-style:none;
  display:inline-flex;
  align-items:center;
  gap:5px;
  background:#475569;
  color:#fff;
  font-weight:800;
  cursor:pointer;
  user-select:none;
}
.eai-action-menu>summary::-webkit-details-marker{display:none;}
.eai-action-menu>summary::after{content:'▾';font-size:9px;}
.eai-action-menu[open]>summary::after{content:'▴';}
.eai-action-menu-panel{
  position:absolute;
  left:0;
  bottom:calc(100% + 6px);
  width:230px;
  display:grid;
  gap:5px;
  padding:7px;
  border:1px solid #cbd5e1;
  border-radius:9px;
  background:#fff;
  box-shadow:0 14px 34px rgba(15,23,42,.2);
}
.eai-action-menu-panel .eai-btn{width:100%!important;text-align:left!important;color:#fff!important;}
.eai-action-menu-panel .eai-danger{background:#991b1b!important;}
.eai-save-dirty{
  background:#f59e0b!important;
  color:#111827!important;
  box-shadow:0 0 0 3px rgba(245,158,11,.24),0 0 16px rgba(245,158,11,.48)!important;
  animation:eai-save-pulse 1.5s ease-in-out infinite;
}
@keyframes eai-save-pulse{0%,100%{filter:brightness(1)}50%{filter:brightness(1.12)}}
.eai-active-direction-control{display:grid!important;grid-template-columns:auto minmax(112px,145px)!important;align-items:center!important;gap:4px 7px!important;white-space:normal!important;}
.eai-active-direction-control select{min-height:29px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;padding:3px 6px;font-size:11px;}
.eai-active-direction-control small{grid-column:1 / -1;color:#64748b;font-size:9px;line-height:1.2;font-weight:500;}
.eai-roof-direction-select{display:grid!important;gap:2px!important;min-width:126px;margin:0!important;font-size:9px!important;color:#64748b!important;}
.eai-roof-direction-select select{width:100%!important;min-width:126px!important;font-size:10px!important;padding:3px 5px!important;}
.eai-direction-row{align-items:end!important;}
.eai-transfer-mode-label{min-width:145px!important;}
.eai-transfer-mode-label select{width:145px!important;}
.eai-panel-config .eai-btn{padding:5px 8px!important;font-size:10px!important;min-height:28px!important;}
@media(max-width:760px){
  .eai-action-menu-panel{left:auto;right:0;width:min(250px,calc(100vw - 34px));}
  .eai-active-direction-control{grid-template-columns:1fr!important;width:100%;}
  .eai-active-direction-control small{grid-column:1;}
}


/* v0.4.21: WordPress-style delete control for saved image previews. */
.eai-pv-export-card{position:relative;}
.eai-image-delete{
  position:absolute;
  top:5px;
  right:5px;
  z-index:3;
  width:22px;
  height:22px;
  min-width:22px;
  padding:0;
  border:1px solid #c3c4c7;
  border-radius:50%;
  background:#fff;
  color:#646970;
  font:700 18px/18px Arial,sans-serif;
  text-align:center;
  cursor:pointer;
  box-shadow:0 1px 2px rgba(0,0,0,.08);
}
.eai-image-delete:hover,.eai-image-delete:focus{border-color:#d63638;color:#d63638;outline:none;box-shadow:0 0 0 1px #d63638;}
.eai-image-delete:disabled{opacity:.55;cursor:wait;}
@media(prefers-reduced-motion:reduce){.eai-save-dirty{animation:none!important;}}


/* v0.4.22: make the Solar Designer transfer choice explicit and place it between the actions. */
.eai-panel-actions{
  width:100%;
  margin-left:0!important;
  padding-top:3px;
  justify-content:flex-end;
  align-items:end;
}
.eai-transfer-mode-label{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:3px!important;
  min-width:260px!important;
  max-width:330px;
  margin:0!important;
  padding:5px 7px!important;
  border:1px solid #6f9fa6;
  border-radius:7px;
  background:#eef7f8;
  color:#155e67!important;
  font-weight:700!important;
  line-height:1.15;
}
.eai-transfer-mode-label span{font-size:10px;color:#155e67;}
.eai-transfer-mode-label select{
  width:100%!important;
  min-width:0!important;
  min-height:28px!important;
  border-color:#86aeb4!important;
  color:#0f172a!important;
  background:#fff!important;
  font-weight:600;
}
@media(max-width:760px){
  .eai-panel-actions{justify-content:stretch;}
  .eai-panel-actions>.eai-btn,.eai-transfer-mode-label{width:100%!important;max-width:none!important;}
}

/* v0.4.23: compact, structured BBR design controls without removing any functions. */
.eai-drawbar{
  padding:8px!important;
  display:grid!important;
  gap:7px!important;
}
.eai-toolbar-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-width:0;
}
.eai-draw-controls{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:5px!important;
  min-width:0;
}
.eai-toolbar-group{
  display:inline-flex;
  align-items:center;
  gap:3px;
}
.eai-toolbar-divider{
  display:block;
  width:1px;
  height:22px;
  margin:0 2px;
  background:#cbd5e1;
}
.eai-draw-controls .eai-btn,
.eai-action-menu>summary{
  min-height:29px!important;
  padding:5px 9px!important;
  border-radius:6px!important;
  font-size:10px!important;
  line-height:1.1!important;
}
.eai-draw-controls .eai-icon-btn{
  width:29px!important;
  min-width:29px!important;
  padding:0!important;
  font-size:17px!important;
  font-weight:800!important;
}
.eai-help-menu{
  position:relative;
  z-index:95;
  flex:0 0 auto;
}
.eai-help-menu>summary{
  box-sizing:border-box;
  display:grid;
  place-items:center;
  width:29px;
  height:29px;
  list-style:none;
  border:1px solid #94a3b8;
  border-radius:50%;
  background:#fff;
  color:#334155;
  font-size:13px;
  font-weight:900;
  cursor:pointer;
  user-select:none;
}
.eai-help-menu>summary::-webkit-details-marker{display:none;}
.eai-help-menu[open]>summary{
  border-color:#6f9fa6;
  background:#eef7f8;
  color:#155e67;
}
.eai-help-popover{
  position:absolute;
  right:0;
  top:calc(100% + 6px);
  width:min(330px,calc(100vw - 38px));
  padding:9px 10px;
  border:1px solid #cbd5e1;
  border-radius:9px;
  background:#fff;
  box-shadow:0 14px 34px rgba(15,23,42,.2);
}
.eai-help-popover>strong{
  display:block;
  margin-bottom:4px;
  color:#0f172a;
  font-size:11px;
}
.eai-help-popover .eai-draw-help{
  display:block!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  font-size:11px!important;
  line-height:1.35!important;
}

.eai-roof-settings{
  margin:0;
  padding:7px 9px;
  border:1px solid #d7e0ea;
  border-radius:9px;
  background:#fff;
}
.eai-roof-settings .eai-roof-editor{
  display:grid!important;
  grid-template-columns:minmax(230px,1fr) minmax(210px,280px) 92px!important;
  align-items:center!important;
  gap:12px!important;
  margin:0!important;
}
.eai-roof-settings .eai-roof-editor label{
  margin:0!important;
  min-width:0;
  color:#334155;
  font-size:10px!important;
  font-weight:700!important;
}
.eai-roof-settings .eai-tilt-control{
  display:grid!important;
  grid-template-columns:auto minmax(120px,1fr)!important;
  align-items:center!important;
  gap:8px!important;
  white-space:nowrap!important;
}
.eai-roof-settings .eai-tilt-control>span{
  display:inline-flex;
  align-items:baseline;
  gap:5px;
}
.eai-roof-settings .eai-tilt-control strong{
  color:#0f766e;
  font-size:12px;
}
.eai-roof-settings .eai-tilt-control input[type=range]{
  width:100%!important;
  min-width:120px;
  margin:0!important;
}
.eai-roof-settings .eai-active-direction-control{
  display:grid!important;
  grid-template-columns:auto minmax(120px,1fr)!important;
  align-items:center!important;
  gap:3px 7px!important;
  white-space:normal!important;
}
.eai-roof-settings .eai-active-direction-control>span{white-space:nowrap;}
.eai-roof-settings .eai-active-direction-control select{
  width:100%!important;
  min-width:0!important;
  min-height:29px!important;
  padding:3px 6px!important;
  font-size:11px!important;
}
.eai-roof-settings .eai-active-direction-control small{
  grid-column:1 / -1!important;
  margin:0!important;
  font-size:9px!important;
  line-height:1.2!important;
}
.eai-roof-settings .eai-tilt-sketch{
  width:92px!important;
  height:58px!important;
  justify-self:end;
}

.eai-panel-config{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-areas:
    "head head"
    "note note"
    "primary advanced"
    "actions actions";
  align-items:end!important;
  gap:7px 10px!important;
  margin:0!important;
  padding:8px 9px!important;
  border:1px solid #d7e0ea!important;
  border-radius:9px!important;
  background:#f8fafc!important;
}
.eai-panel-config-head{
  grid-area:head;
  display:flex;
  align-items:baseline;
  gap:6px;
  min-width:0;
}
.eai-panel-config-head strong{
  color:#0f172a;
  font-size:11px;
}
.eai-panel-config-head span{
  color:#64748b;
  font-size:9px;
}
.eai-panel-primary-grid{
  grid-area:primary;
  display:grid;
  grid-template-columns:minmax(260px,1fr) minmax(105px,135px);
  align-items:start;
  gap:8px;
  min-width:0;
}
.eai-panel-config .eai-panel-product-label,
.eai-panel-config .eai-panel-orientation-label{
  display:grid!important;
  gap:3px!important;
  min-width:0!important;
  color:#64748b!important;
  font-size:9px!important;
}
.eai-panel-config .eai-panel-product-label select,
.eai-panel-config .eai-panel-orientation-label select{
  box-sizing:border-box;
  width:100%!important;
  min-width:0!important;
  min-height:30px!important;
  padding:4px 7px!important;
  font-size:11px!important;
}
.eai-panel-config .eai-panel-product-meta{
  display:block!important;
  min-width:0!important;
  padding:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#64748b!important;
  font-size:9px!important;
  line-height:1.25!important;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.eai-panel-advanced{
  grid-area:advanced;
  align-self:start;
  width:190px;
  min-width:0;
}
.eai-panel-advanced>summary{
  box-sizing:border-box;
  min-height:30px;
  padding:7px 9px;
  list-style:none;
  border:1px solid #cbd5e1;
  border-radius:7px;
  background:#fff;
  color:#334155;
  font-size:10px;
  font-weight:800;
  cursor:pointer;
  white-space:nowrap;
}
.eai-panel-advanced>summary::-webkit-details-marker{display:none;}
.eai-panel-advanced>summary::after{
  content:'▾';
  float:right;
  margin-left:8px;
  color:#64748b;
}
.eai-panel-advanced[open]>summary::after{content:'▴';}
.eai-panel-distance-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px;
  margin-top:6px;
  padding:7px;
  border:1px solid #d7e0ea;
  border-radius:7px;
  background:#fff;
}
.eai-panel-distance-grid label{
  display:grid!important;
  gap:2px!important;
  min-width:0!important;
  color:#64748b!important;
  font-size:9px!important;
}
.eai-panel-distance-grid input{
  box-sizing:border-box;
  width:100%!important;
  min-width:0!important;
  min-height:28px!important;
  padding:3px 6px!important;
  font-size:10px!important;
}
.eai-panel-actions{
  grid-area:actions;
  display:grid!important;
  grid-template-columns:auto minmax(250px,1fr) auto!important;
  align-items:end!important;
  gap:8px!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
.eai-panel-actions>.eai-btn{
  min-height:31px!important;
  margin:0!important;
  padding:6px 11px!important;
  border-radius:7px!important;
  font-size:10px!important;
  white-space:nowrap!important;
}
.eai-transfer-mode-label{
  position:relative;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:6px!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#334155!important;
  font-weight:700!important;
}
.eai-transfer-mode-label>span{
  color:#64748b!important;
  font-size:9px!important;
  white-space:nowrap;
}
.eai-transfer-segments{
  display:grid;
  grid-template-columns:1fr 1fr;
  min-width:0;
  padding:2px;
  border:1px solid #86aeb4;
  border-radius:8px;
  background:#eef7f8;
}
.eai-transfer-segments button{
  min-width:0;
  min-height:27px;
  padding:4px 8px;
  border:0;
  border-radius:6px;
  background:transparent;
  color:#155e67;
  font-size:10px;
  font-weight:800;
  line-height:1.1;
  cursor:pointer;
  white-space:nowrap;
}
.eai-transfer-segments button:hover{background:rgba(255,255,255,.65);}
.eai-transfer-segments button.is-active,
.eai-transfer-segments button[aria-pressed="true"]{
  background:#fff;
  color:#0f172a;
  box-shadow:0 1px 3px rgba(15,23,42,.16);
}
.eai-transfer-mode-native{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  margin:-1px!important;
  padding:0!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
  opacity:0!important;
  pointer-events:none!important;
}

@media(max-width:980px){
  .eai-roof-settings .eai-roof-editor{
    grid-template-columns:minmax(200px,1fr) minmax(190px,1fr) 78px!important;
    gap:8px!important;
  }
  .eai-roof-settings .eai-tilt-sketch{width:78px!important;height:52px!important;}
  .eai-panel-config{
    grid-template-columns:1fr!important;
    grid-template-areas:"head" "note" "primary" "advanced" "actions"!important;
  }
  .eai-panel-advanced{width:100%;}
  .eai-panel-distance-grid{grid-template-columns:repeat(4,minmax(0,1fr));}
  .eai-panel-actions{
    grid-template-columns:auto minmax(230px,1fr) auto!important;
  }
}
@media(max-width:700px){
  .eai-toolbar-row{align-items:flex-start;}
  .eai-toolbar-divider{display:none;}
  .eai-panel-primary-grid{grid-template-columns:1fr 120px;}
  .eai-panel-distance-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:560px){
  .eai-roof-settings .eai-roof-editor{
    grid-template-columns:1fr 1fr!important;
  }
  .eai-roof-settings .eai-tilt-sketch{
    grid-column:1 / -1;
    justify-self:start;
  }
  .eai-panel-actions{
    grid-template-columns:1fr!important;
    align-items:stretch!important;
  }
  .eai-panel-actions>.eai-btn,
  .eai-transfer-mode-label{width:100%!important;max-width:none!important;}
  .eai-transfer-mode-label{grid-template-columns:1fr!important;gap:3px!important;}
}
@media(max-width:480px){
  .eai-roof-settings .eai-roof-editor,
  .eai-panel-primary-grid{grid-template-columns:1fr!important;}
  .eai-roof-settings .eai-tilt-control,
  .eai-roof-settings .eai-active-direction-control{grid-template-columns:1fr!important;}
  .eai-roof-settings .eai-active-direction-control small{grid-column:1!important;}
  .eai-toolbar-group{flex-wrap:wrap;}
}

/* v0.4.24: readable transfer choice and PV-direction-based panel rotation. */
.eai-panel-primary-grid{
  grid-template-columns:minmax(260px,1fr) minmax(155px,190px)!important;
}
.eai-panel-orientation-label small{
  display:block!important;
  color:#64748b!important;
  font-size:9px!important;
  line-height:1.2!important;
  font-weight:500!important;
}
.eai-panel-actions{
  grid-template-columns:auto minmax(360px,1fr) auto!important;
  align-items:center!important;
}
.eai-transfer-mode-label{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:4px!important;
  min-width:360px!important;
}
.eai-transfer-mode-label>.eai-transfer-mode-title{
  display:block!important;
  color:#334155!important;
  font-size:10px!important;
  line-height:1.15!important;
  font-weight:800!important;
  text-align:center!important;
  white-space:normal!important;
}
.eai-transfer-segments{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:3px!important;
  min-width:0!important;
  padding:3px!important;
  border:1px solid #5c8f96!important;
  border-radius:8px!important;
  background:#dfeff1!important;
}
.eai-transfer-segments button{
  box-sizing:border-box!important;
  display:grid!important;
  place-content:center!important;
  gap:1px!important;
  min-width:0!important;
  min-height:42px!important;
  margin:0!important;
  padding:5px 10px!important;
  border:1px solid transparent!important;
  border-radius:6px!important;
  background:#fff!important;
  color:#1f2937!important;
  box-shadow:none!important;
  opacity:1!important;
  visibility:visible!important;
  font-family:inherit!important;
  font-size:11px!important;
  font-weight:800!important;
  line-height:1.1!important;
  letter-spacing:0!important;
  text-align:center!important;
  text-indent:0!important;
  text-transform:none!important;
  text-shadow:none!important;
  white-space:normal!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
.eai-transfer-segments button strong{
  display:block!important;
  color:inherit!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1.1!important;
  white-space:nowrap!important;
}
.eai-transfer-segments button small{
  display:block!important;
  margin:0!important;
  color:#526070!important;
  font-size:9px!important;
  font-weight:700!important;
  line-height:1.15!important;
  white-space:nowrap!important;
}
.eai-transfer-segments button:hover{
  border-color:#5c8f96!important;
  background:#f8fbfc!important;
  color:#134e4a!important;
}
.eai-transfer-segments button.is-active,
.eai-transfer-segments button[aria-pressed="true"]{
  border-color:#155e67!important;
  background:#155e67!important;
  color:#fff!important;
  box-shadow:0 1px 4px rgba(15,23,42,.22)!important;
}
.eai-transfer-segments button.is-active small,
.eai-transfer-segments button[aria-pressed="true"] small{
  color:#dff4f6!important;
}
@media(max-width:980px){
  .eai-panel-actions{
    grid-template-columns:auto minmax(330px,1fr) auto!important;
  }
}
@media(max-width:760px){
  .eai-panel-actions{
    grid-template-columns:1fr 1fr!important;
  }
  .eai-transfer-mode-label{
    grid-column:1 / -1!important;
    grid-row:1!important;
    min-width:0!important;
  }
  .eai-panel-actions>[data-eai-fit-panels]{
    grid-column:1!important;
    grid-row:2!important;
  }
  .eai-panel-actions>[data-eai-open-solar]{
    grid-column:2!important;
    grid-row:2!important;
  }
}
@media(max-width:560px){
  .eai-panel-primary-grid{
    grid-template-columns:1fr!important;
  }
  .eai-panel-actions{
    grid-template-columns:1fr!important;
  }
  .eai-transfer-mode-label,
  .eai-panel-actions>[data-eai-fit-panels],
  .eai-panel-actions>[data-eai-open-solar]{
    grid-column:1!important;
    grid-row:auto!important;
  }
}

/* v0.4.25: roof-aligned panel geometry and compact undo control. */
.eai-undo-btn:disabled{
  opacity:.45!important;
  cursor:not-allowed!important;
  filter:saturate(.45);
}
.eai-panel-orientation-label small{
  white-space:normal!important;
}

/* v0.4.27: compact free-form / rotated-rectangle drawing choice. */
.eai-draw-shape-control{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  min-width:0!important;
  margin:0!important;
  color:#475569!important;
  font-size:10px!important;
  font-weight:800!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.eai-draw-shape-control span{font-size:10px!important;color:#64748b!important;}
.eai-draw-shape-control select{
  box-sizing:border-box!important;
  width:auto!important;
  max-width:132px!important;
  height:30px!important;
  min-height:30px!important;
  margin:0!important;
  padding:3px 25px 3px 7px!important;
  border:1px solid #94a3b8!important;
  border-radius:7px!important;
  background-color:#fff!important;
  color:#1f2937!important;
  font-family:inherit!important;
  font-size:11px!important;
  font-weight:750!important;
  line-height:1.1!important;
}
.eai-draw-shape-control select:focus{
  border-color:#2563eb!important;
  box-shadow:0 0 0 2px rgba(37,99,235,.16)!important;
  outline:0!important;
}
@media(max-width:620px){
  .eai-draw-shape-control span{display:none!important;}
  .eai-draw-shape-control select{max-width:118px!important;}
}


/* v0.4.28: stable WMS alignment, hidden result scrollbar and draggable pane borders. */
.eai-layout{
  --eai-left-pane:300px;
  --eai-right-pane:400px;
  --eai-pane-splitter:8px;
}
.eai-pane-resizer{display:none;box-sizing:border-box;}
.eai-resultsbar{
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
  overscroll-behavior:contain;
}
.eai-resultsbar::-webkit-scrollbar{width:0!important;height:0!important;display:none!important;}
.eai-pane-resizing,.eai-pane-resizing *{cursor:col-resize!important;user-select:none!important;}
@media(min-width:1101px){
  body:not(.eli-address-intel-embed) .eai-layout{
    display:grid!important;
    grid-template-columns:var(--eai-left-pane) var(--eai-pane-splitter) minmax(430px,1fr) var(--eai-pane-splitter) var(--eai-right-pane)!important;
    column-gap:0!important;
    row-gap:0!important;
    align-items:start!important;
  }
  body:not(.eli-address-intel-embed) .eai-bbr-sidebar{grid-column:1!important;width:100%!important;max-width:none!important;margin:0!important;}
  body:not(.eli-address-intel-embed) .eai-pane-resizer-left{grid-column:2!important;}
  body:not(.eli-address-intel-embed) .eai-maincol{grid-column:3!important;padding-left:0!important;border-left:0!important;}
  body:not(.eli-address-intel-embed) .eai-pane-resizer-right{grid-column:4!important;}
  body:not(.eli-address-intel-embed) .eai-resultsbar{grid-column:5!important;width:100%!important;max-width:none!important;margin:0!important;padding-right:0!important;}
  body:not(.eli-address-intel-embed) .eai-pane-resizer{display:block!important;}
}
body.eli-address-intel-embed .eai-layout{
  --eai-left-pane:190px;
  --eai-right-pane:350px;
}
@media(min-width:760px){
  body.eli-address-intel-embed .eai-layout{
    display:grid!important;
    grid-template-columns:var(--eai-left-pane) var(--eai-pane-splitter) minmax(280px,1fr) var(--eai-pane-splitter) var(--eai-right-pane)!important;
    column-gap:0!important;
    row-gap:0!important;
    align-items:start!important;
    width:100%!important;
    max-width:100%!important;
  }
  body.eli-address-intel-embed .eai-bbr-sidebar{grid-column:1!important;grid-row:1!important;width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;}
  body.eli-address-intel-embed .eai-pane-resizer-left{grid-column:2!important;grid-row:1!important;}
  body.eli-address-intel-embed .eai-maincol{grid-column:3!important;grid-row:1!important;min-width:0!important;padding-left:0!important;border-left:0!important;}
  body.eli-address-intel-embed .eai-pane-resizer-right{grid-column:4!important;grid-row:1!important;}
  body.eli-address-intel-embed .eai-resultsbar{grid-column:5!important;grid-row:1!important;display:flex!important;width:100%!important;max-width:none!important;min-width:0!important;position:sticky!important;height:calc(100vh - 14px)!important;max-height:none!important;margin:0!important;padding-right:0!important;}
  body.eli-address-intel-embed .eai-pane-resizer{display:block!important;}
}
@media(min-width:1101px), (min-width:760px){
  .eai-pane-resizer{
    position:sticky;
    top:7px;
    z-index:70;
    width:var(--eai-pane-splitter);
    height:calc(100vh - 14px);
    min-height:420px;
    cursor:col-resize;
    touch-action:none;
    user-select:none;
    outline:0;
  }
  .eai-pane-resizer::before{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    left:50%;
    width:1px;
    transform:translateX(-50%);
    background:#cbd5e1;
    transition:width .12s ease,background .12s ease,box-shadow .12s ease;
  }
  .eai-pane-resizer::after{
    content:"";
    position:absolute;
    left:50%;
    top:50%;
    width:3px;
    height:34px;
    transform:translate(-50%,-50%);
    border-radius:999px;
    background:repeating-linear-gradient(to bottom,#94a3b8 0 2px,transparent 2px 5px);
    opacity:.65;
  }
  .eai-pane-resizer:hover::before,
  .eai-pane-resizer:focus-visible::before,
  .eai-pane-resizer.is-active::before{
    width:4px;
    background:#0f766e;
    box-shadow:0 0 0 2px rgba(15,118,110,.12);
  }
  .eai-pane-resizer:focus-visible{outline:2px solid rgba(15,118,110,.28);outline-offset:-2px;}
}
@media(max-width:1100px){
  body:not(.eli-address-intel-embed) .eai-pane-resizer{display:none!important;}
}
@media(max-width:759px){
  body.eli-address-intel-embed .eai-pane-resizer{display:none!important;}
}

/* v0.4.29: make the active roof surface explicit and keep per-surface controls isolated. */
.eai-active-surface-context{
  display:grid;
  grid-template-columns:auto auto minmax(160px,1fr);
  align-items:center;
  gap:4px 8px;
  margin:0 0 7px;
  padding:5px 7px;
  border:1px solid #99d5cc;
  border-radius:7px;
  background:#ecfdf8;
  color:#134e4a;
  font-size:10px;
  line-height:1.2;
}
.eai-active-surface-context>span{
  color:#0f766e;
  font-size:9px;
  font-weight:800;
  letter-spacing:.02em;
  text-transform:uppercase;
  white-space:nowrap;
}
.eai-active-surface-context>strong{
  color:#0f172a;
  font-size:11px;
  white-space:nowrap;
}
.eai-active-surface-context>small{
  min-width:0;
  color:#475569;
  font-size:9px;
  line-height:1.25;
}
.eai-active-surface-context.is-editing{
  border-color:#f59e0b;
  background:#fffbeb;
}
.eai-active-surface-context.is-drawing{
  border-color:#60a5fa;
  background:#eff6ff;
}
.eai-roof-row.is-active{
  border-color:#0f766e!important;
  box-shadow:0 0 0 2px rgba(15,118,110,.12);
}
@media(max-width:760px){
  .eai-active-surface-context{grid-template-columns:auto 1fr;}
  .eai-active-surface-context>small{grid-column:1 / -1;}
}

/* v0.4.29: explicit per-tagflade panel target. */
.eai-panel-config-head{
  justify-content:space-between!important;
  align-items:center!important;
  flex-wrap:wrap!important;
}
.eai-panel-config-title{
  display:flex;
  align-items:baseline;
  gap:6px;
  min-width:0;
}
.eai-panel-surface-control{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  margin:0!important;
  color:#475569!important;
  font-size:9px!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
.eai-panel-surface-control>span{
  color:#0f766e!important;
  font-size:9px!important;
  font-weight:800!important;
  text-transform:uppercase;
  letter-spacing:.02em;
}
.eai-panel-surface-control select{
  box-sizing:border-box!important;
  width:auto!important;
  min-width:150px!important;
  max-width:220px!important;
  height:28px!important;
  min-height:28px!important;
  margin:0!important;
  padding:3px 25px 3px 7px!important;
  border:1px solid #75b9ad!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#134e4a!important;
  font-size:10px!important;
  font-weight:800!important;
}
.eai-panel-surface-control select:disabled{
  opacity:1!important;
  background:#ecfdf8!important;
  color:#0f172a!important;
  cursor:default!important;
}
.eai-panel-target-note{
  grid-area:note;
  min-width:0;
  margin:-2px 0 0;
  padding:5px 7px;
  border:1px solid #a7d8cf;
  border-radius:7px;
  background:#ecfdf8;
  color:#475569;
  font-size:9px;
  line-height:1.25;
}
.eai-panel-target-note strong{color:#0f766e;font-size:10px;}
.eai-roof-row.is-panel-active{
  border-color:#0f766e!important;
  box-shadow:0 0 0 2px rgba(15,118,110,.12)!important;
}
.eai-active-surface-badge{
  display:inline-flex;
  align-items:center;
  width:max-content;
  margin:3px 0 0;
  padding:2px 6px;
  border:1px solid #6fb7aa;
  border-radius:999px;
  background:#ecfdf8;
  color:#0f766e;
  font-size:8px;
  font-weight:900;
  line-height:1.2;
  text-transform:uppercase;
  letter-spacing:.025em;
}
@media(max-width:700px){
  .eai-panel-config-head{align-items:stretch!important;}
  .eai-panel-surface-control{width:100%;justify-content:space-between;}
  .eai-panel-surface-control select{flex:1;max-width:none!important;min-width:0!important;}
}


/* v0.4.31: viewport-fitting, reliable vertically resizable ortofoto and compact direction confirmation. */
.eai-layout{--eai-map-height:500px;}
body.eli-address-intel-embed .eai-layout{--eai-map-height:420px;}
.eai-map,
.eai-frame{
  box-sizing:border-box!important;
  height:var(--eai-map-height)!important;
  min-height:0!important;
}
.eai-map-resizer{
  position:relative;
  display:block;
  flex:0 0 16px;
  width:100%;
  height:16px;
  margin:0;
  cursor:row-resize;
  touch-action:none;
  user-select:none;
  outline:0;
  z-index:95;
  pointer-events:auto!important;
  background:transparent;
}
.eai-map[hidden]+.eai-map-resizer{display:none!important;}
.eai-map-resizer::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:50%;
  height:1px;
  transform:translateY(-50%);
  background:#cbd5e1;
  transition:height .12s ease,background .12s ease,box-shadow .12s ease;
}
.eai-map-resizer::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:42px;
  height:4px;
  transform:translate(-50%,-50%);
  border-radius:999px;
  background:repeating-linear-gradient(to right,#94a3b8 0 3px,transparent 3px 6px);
  opacity:.78;
}
.eai-map-resizer:hover::before,
.eai-map-resizer:focus-visible::before,
.eai-map-resizer.is-active::before{
  height:4px;
  background:#0f766e;
  box-shadow:0 0 0 2px rgba(15,118,110,.12);
}
.eai-map-resizer:focus-visible{outline:2px solid rgba(15,118,110,.28);outline-offset:-2px;}
.eai-map-height-resizing,
.eai-map-height-resizing *{cursor:row-resize!important;user-select:none!important;}

.eai-resultsbar{
  overflow-x:hidden!important;
  overflow-y:auto!important;
}
.eai-resultsbar .eai-card,
.eai-resultsbar .eai-roof-list,
.eai-resultsbar .eai-roof-row{
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.eai-roof-row{overflow:hidden;}
.eai-direction-row.eai-direction-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  align-items:stretch!important;
  gap:4px!important;
  width:100%!important;
  min-width:0!important;
  margin:6px 0!important;
  padding:7px!important;
  box-sizing:border-box!important;
}
.eai-direction-card .eai-direction-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:6px;
  min-width:0;
}
.eai-direction-card .eai-direction-value{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:2px 6px;
  min-width:0;
}
.eai-direction-card .eai-direction-value>span{
  flex:1 1 100%;
  min-width:0;
  font-size:9px!important;
  line-height:1.15!important;
}
.eai-direction-card .eai-direction-value>strong{
  font-size:14px!important;
  line-height:1.05!important;
  white-space:nowrap;
}
.eai-direction-status{
  display:inline-flex;
  align-items:center;
  min-height:20px;
  padding:2px 6px;
  border:1px solid #cbd5e1;
  border-radius:999px;
  background:#fff;
  color:#475569!important;
  font-size:8px!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap;
}
.eai-direction-status.is-pending{border-color:#f6c453;background:#fffbeb;color:#92400e!important;}
.eai-direction-status.is-confirmed{border-color:#86d5a3;background:#f0fdf4;color:#166534!important;}
.eai-direction-method{
  display:block;
  min-width:0;
  overflow-wrap:anywhere;
  color:#64748b!important;
  font-size:9px!important;
  line-height:1.2!important;
}
.eai-direction-controls{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:6px;
  min-width:0;
  margin-top:2px;
}
.eai-direction-controls>.eai-roof-direction-select:only-child{grid-column:1 / -1;}
.eai-direction-card .eai-roof-direction-select{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:2px!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
}
.eai-direction-card .eai-roof-direction-select>span{
  color:#64748b!important;
  font-size:8px!important;
  font-weight:700!important;
  line-height:1!important;
}
.eai-direction-card .eai-roof-direction-select select{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  height:29px!important;
  min-height:29px!important;
  margin:0!important;
  padding:3px 23px 3px 6px!important;
  font-size:9px!important;
}
.eai-direction-card .eai-direction-confirm{
  box-sizing:border-box!important;
  width:auto!important;
  min-width:74px!important;
  max-width:88px!important;
  height:29px!important;
  min-height:29px!important;
  margin:0!important;
  padding:4px 7px!important;
  border-radius:6px!important;
  font-size:9px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
@media(max-width:430px){
  .eai-direction-controls{grid-template-columns:minmax(0,1fr) 68px;gap:4px;}
  .eai-direction-card .eai-direction-confirm{min-width:68px!important;max-width:68px!important;padding:4px!important;font-size:8px!important;}
}


/* v0.4.33: clearer roof/panel preview and compact 90-degree direction action. */
.eai-panel-visual-control{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  margin-left:auto!important;
  min-width:0!important;
  color:#475569!important;
  font-size:9px!important;
  font-weight:800!important;
  white-space:nowrap;
  cursor:pointer;
}
.eai-panel-visual-control input{
  width:14px!important;
  height:14px!important;
  min-height:14px!important;
  margin:0!important;
  accent-color:#0f766e;
}
.eai-direction-row.eai-direction-rotate-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:7px!important;
  padding:6px 7px!important;
  background:rgba(248,250,252,.72)!important;
}
.eai-direction-rotate-card .eai-direction-value{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:1px!important;
  min-width:0!important;
}
.eai-direction-rotate-card .eai-direction-value>span{
  font-size:9px!important;
  line-height:1.15!important;
}
.eai-direction-rotate-card .eai-direction-value>strong{
  font-size:14px!important;
  line-height:1.05!important;
  white-space:nowrap;
}
.eai-direction-rotate-card .eai-direction-rotate{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  width:auto!important;
  min-width:78px!important;
  max-width:none!important;
  min-height:29px!important;
  height:29px!important;
  margin:0!important;
  padding:4px 7px!important;
  border-radius:6px!important;
  background:#475569!important;
  font-size:9px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.eai-direction-rotate-card .eai-direction-rotate:hover{background:#1e293b!important;}
.eai-direction-rotate-card .eai-direction-rotate>span{font-size:15px!important;line-height:1!important;color:#fff!important;}
@media(max-width:430px){
  .eai-panel-config-head{flex-wrap:wrap!important;}
  .eai-panel-visual-control{margin-left:0!important;}
  .eai-direction-rotate-card .eai-direction-rotate{min-width:70px!important;padding:4px 5px!important;font-size:8px!important;}
}

/* v0.4.34: clean native selects, flatter UI, lighter panel preview and merged direction controls. */
.eai-box select,
body.wp-admin .eai-box select,
body.eli-address-intel-embed .eai-box select{
  -webkit-appearance:menulist!important;
  appearance:auto!important;
  background-image:none!important;
  background-repeat:no-repeat!important;
  background-position:right 7px center!important;
  background-size:0!important;
}
.eai-box .eai-card,
.eai-box .eai-browser-head,
.eai-box .eai-drawbar,
.eai-box .eai-action-menu-panel,
.eai-box .eai-help-popover,
.eai-box .eai-building-popover,
.eai-box .eai-suggestions{
  box-shadow:0 1px 2px rgba(15,23,42,.055)!important;
}
.eai-box .eai-building-poly:hover,
.eai-box .eai-building-selected{filter:none!important;}
.eai-box .eai-roof-row.is-active,
.eai-box .eai-roof-row.is-panel-active{box-shadow:0 0 0 1px rgba(15,118,110,.18)!important;}
.eai-box .eai-transfer-segments button.is-active,
.eai-box .eai-transfer-segments button[aria-pressed="true"]{box-shadow:none!important;}
.eai-report-view-control{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  width:100%!important;
  box-sizing:border-box!important;
  margin:1px 0 4px!important;
  padding:6px 7px!important;
  border:1px solid #cbd5e1!important;
  border-radius:6px!important;
  background:#fff!important;
  color:#334155!important;
  font-size:9px!important;
  font-weight:800!important;
  line-height:1.2!important;
  cursor:pointer!important;
}
.eai-report-view-control input{
  width:14px!important;
  height:14px!important;
  min-height:14px!important;
  margin:0!important;
  accent-color:#0f766e;
}
.eai-report-view-control span{font-size:9px!important;color:#334155!important;font-weight:800!important;}
.eai-active-direction-actions{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:5px;
  min-width:0;
}
.eai-roof-settings .eai-active-direction-control .eai-active-direction-actions{width:100%;min-width:0;}
.eai-roof-settings .eai-active-direction-control .eai-active-direction-actions select{width:100%!important;min-width:0!important;}
.eai-direction-step{
  box-sizing:border-box!important;
  min-width:52px!important;
  height:29px!important;
  min-height:29px!important;
  margin:0!important;
  padding:3px 6px!important;
  border:0!important;
  border-radius:6px!important;
  background:#475569!important;
  color:#fff!important;
  font-size:9px!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
  cursor:pointer!important;
  box-shadow:none!important;
}
.eai-direction-step:hover{background:#1e293b!important;}
.eai-direction-combined-card{
  display:grid!important;
  grid-template-columns:minmax(74px,.7fr) minmax(0,1.3fr)!important;
  align-items:end!important;
  gap:7px!important;
  padding:6px 7px!important;
  background:rgba(248,250,252,.55)!important;
}
.eai-direction-combined-controls{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 48px!important;
  align-items:end!important;
  gap:5px!important;
  min-width:0!important;
}
.eai-direction-combined-card .eai-roof-direction-select{
  min-width:0!important;
  width:100%!important;
}
.eai-direction-combined-card .eai-roof-direction-select select{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  height:29px!important;
  min-height:29px!important;
  margin:0!important;
  padding:3px 6px!important;
  font-size:9px!important;
}
.eai-direction-combined-card .eai-direction-rotate{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:2px!important;
  width:48px!important;
  min-width:48px!important;
  max-width:48px!important;
  height:29px!important;
  min-height:29px!important;
  margin:0!important;
  padding:3px 4px!important;
  border-radius:6px!important;
  background:#475569!important;
  font-size:9px!important;
  line-height:1!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
.eai-direction-combined-card .eai-direction-rotate:hover{background:#1e293b!important;}
.eai-direction-combined-card .eai-direction-rotate>span:first-child{font-size:14px!important;color:#fff!important;line-height:1!important;}
.eai-direction-combined-card .eai-direction-step-label{font-size:8px!important;color:#fff!important;font-weight:900!important;}
@media(max-width:430px){
  .eai-direction-combined-card{grid-template-columns:1fr!important;}
  .eai-active-direction-actions{grid-template-columns:minmax(0,1fr) 48px;}
}


/* v0.4.35: approved compact five-row panel workbench. */
.eai-box .eai-drawbar{
  position:relative!important;
  bottom:auto!important;
  margin:0!important;
  padding:8px!important;
  border:1px solid #d8e1ea!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 1px 2px rgba(15,23,42,.035)!important;
  backdrop-filter:none!important;
  container-type:inline-size;
}
.eai-box .eai-panel-workbench{
  display:block!important;
  width:100%!important;
  margin:8px 0 0!important;
  padding:0!important;
  border:1px solid #d8e1ea!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
.eai-box .eai-panel-work-row{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:9px 11px!important;
  border:0!important;
  border-top:1px dashed #cbd5e1!important;
  background:#fff!important;
  align-items:center!important;
  gap:8px 12px!important;
}
.eai-box .eai-panel-work-row:first-child{border-top:0!important;}
.eai-box .eai-panel-work-head{
  display:grid!important;
  grid-template-columns:28px auto minmax(180px,1fr) auto!important;
}
.eai-box .eai-panel-work-direction{
  display:grid!important;
  grid-template-columns:28px minmax(190px,1fr) 76px minmax(112px,.62fr) auto minmax(145px,.75fr)!important;
}
.eai-box .eai-panel-work-product{
  display:grid!important;
  grid-template-columns:28px minmax(280px,1.15fr) minmax(315px,1fr)!important;
  align-items:end!important;
}
.eai-box .eai-panel-work-distances{
  display:grid!important;
  grid-template-columns:28px 74px minmax(0,1fr)!important;
  align-items:end!important;
}
.eai-box .eai-panel-work-actions{
  display:grid!important;
  grid-template-columns:28px minmax(155px,.48fr) minmax(220px,1fr) minmax(220px,1fr)!important;
}
.eai-box .eai-panel-step{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  margin:0!important;
  border:1px solid #94a3b8!important;
  border-radius:999px!important;
  background:#fff!important;
  color:#334155!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1!important;
}
.eai-box .eai-panel-work-title,
.eai-box .eai-distance-title{
  margin:0!important;
  color:#1e293b!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.025em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}
.eai-box .eai-panel-surface-control{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
.eai-box .eai-panel-surface-control select{
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  height:34px!important;
  min-height:34px!important;
  margin:0!important;
  padding:5px 28px 5px 9px!important;
  border:1px solid #cbd5e1!important;
  border-radius:7px!important;
  background-color:#fff!important;
  color:#0f172a!important;
  font-size:11px!important;
  font-weight:700!important;
  box-shadow:none!important;
}
.eai-box .eai-panel-primary-action{
  min-width:88px!important;
  min-height:34px!important;
  margin:0!important;
  padding:6px 12px!important;
  border-radius:7px!important;
  font-size:10px!important;
  box-shadow:none!important;
}
.eai-box .eai-panel-primary-action.is-calculate{background:#0f766e!important;}
.eai-box .eai-tilt-control{
  display:grid!important;
  grid-template-columns:auto auto!important;
  align-items:center!important;
  gap:4px 9px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  color:#334155!important;
  font-size:10px!important;
  font-weight:800!important;
}
.eai-box .eai-tilt-control>span{display:flex!important;gap:6px!important;align-items:baseline!important;white-space:nowrap!important;}
.eai-box .eai-tilt-control input[type="range"]{
  grid-column:1 / -1!important;
  box-sizing:border-box!important;
  width:100%!important;
  min-width:130px!important;
  height:20px!important;
  min-height:20px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.eai-box .eai-panel-work-direction .eai-tilt-sketch{
  width:76px!important;
  height:58px!important;
  min-width:76px!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}
.eai-box .eai-physical-direction-control{
  display:grid!important;
  gap:3px!important;
  min-width:0!important;
  color:#64748b!important;
  font-size:9px!important;
  line-height:1.15!important;
}
.eai-box .eai-physical-direction-control strong{
  color:#0f172a!important;
  font-size:12px!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
.eai-box .eai-panel-work-direction .eai-direction-step{
  align-self:end!important;
  min-width:56px!important;
  width:56px!important;
  height:34px!important;
  min-height:34px!important;
  margin:0!important;
  padding:5px 7px!important;
  border-radius:7px!important;
  font-size:10px!important;
}
.eai-box .eai-active-direction-control{
  display:grid!important;
  gap:3px!important;
  min-width:0!important;
  margin:0!important;
  color:#64748b!important;
  font-size:9px!important;
  font-weight:800!important;
}
.eai-box .eai-active-direction-control select{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  height:34px!important;
  min-height:34px!important;
  margin:0!important;
  padding:5px 28px 5px 8px!important;
  border:1px solid #cbd5e1!important;
  border-radius:7px!important;
  background-color:#fff!important;
  color:#0f172a!important;
  font-size:11px!important;
  font-weight:700!important;
  box-shadow:none!important;
}
.eai-box .eai-panel-product-label{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:4px!important;
  min-width:0!important;
  margin:0!important;
  color:#475569!important;
  font-size:9px!important;
  font-weight:800!important;
}
.eai-box .eai-panel-product-label select{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  height:34px!important;
  min-height:34px!important;
  margin:0!important;
  padding:5px 28px 5px 8px!important;
  border:1px solid #cbd5e1!important;
  border-radius:7px!important;
  background-color:#fff!important;
  color:#0f172a!important;
  font-size:11px!important;
  font-weight:700!important;
  box-shadow:none!important;
}
.eai-box .eai-panel-product-meta{
  display:block!important;
  min-width:0!important;
  margin:0!important;
  color:#64748b!important;
  font-size:8.5px!important;
  font-weight:500!important;
  line-height:1.25!important;
  white-space:normal!important;
  overflow:visible!important;
}
.eai-box .eai-panel-orientation-control{
  display:grid!important;
  gap:4px!important;
  min-width:0!important;
  color:#475569!important;
  font-size:9px!important;
  font-weight:800!important;
}
.eai-box .eai-panel-orientation-segments{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  min-width:0!important;
  border:1px solid #cbd5e1!important;
  border-radius:7px!important;
  overflow:hidden!important;
  background:#fff!important;
}
.eai-box .eai-panel-orientation-segments button{
  box-sizing:border-box!important;
  min-width:0!important;
  min-height:34px!important;
  margin:0!important;
  padding:5px 8px!important;
  border:0!important;
  border-left:1px solid #cbd5e1!important;
  border-radius:0!important;
  background:#fff!important;
  color:#334155!important;
  font-size:9px!important;
  font-weight:900!important;
  line-height:1.15!important;
  text-transform:uppercase!important;
  box-shadow:none!important;
  cursor:pointer!important;
}
.eai-box .eai-panel-orientation-segments button:first-child{border-left:0!important;}
.eai-box .eai-panel-orientation-segments button.is-active,
.eai-box .eai-panel-orientation-segments button[aria-pressed="true"]{
  background:#25344d!important;
  color:#fff!important;
}
.eai-box .eai-panel-orientation-segments button.is-automatic::after{
  content:" AUTO";
  font-size:7px;
  opacity:.7;
}
.eai-box .eai-panel-orientation-native,
.eai-box .eai-transfer-mode-native,
.eai-box .eai-visually-hidden{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  margin:-1px!important;
  padding:0!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.eai-box .eai-panel-target-note{
  grid-column:2 / -1!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#64748b!important;
  font-size:8.5px!important;
  font-weight:500!important;
  line-height:1.25!important;
}
.eai-box .eai-panel-target-note strong{color:#0f766e!important;font-size:8.5px!important;}
.eai-box .eai-panel-distance-grid{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(86px,1fr))!important;
  align-items:end!important;
  gap:7px!important;
  min-width:0!important;
}
.eai-box .eai-panel-distance-grid label{
  display:grid!important;
  gap:3px!important;
  min-width:0!important;
  margin:0!important;
  color:#64748b!important;
  font-size:8.5px!important;
  font-weight:800!important;
  line-height:1.15!important;
}
.eai-box .eai-panel-distance-grid input,
.eai-box .eai-panel-distance-grid select{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  height:34px!important;
  min-height:34px!important;
  margin:0!important;
  padding:5px 7px!important;
  border:1px solid #cbd5e1!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#0f172a!important;
  font-size:11px!important;
  box-shadow:none!important;
}
.eai-box .eai-panel-distance-grid [hidden]{display:none!important;}
.eai-box .eai-panel-visual-control{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-width:0!important;
  margin:0!important;
  color:#334155!important;
  font-size:10px!important;
  font-weight:800!important;
  white-space:nowrap!important;
}
.eai-box .eai-panel-visual-control input{
  width:15px!important;
  height:15px!important;
  min-width:15px!important;
  min-height:15px!important;
  margin:0!important;
  padding:0!important;
  accent-color:#0f766e!important;
}
.eai-box .eai-panel-work-actions>.eai-btn{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  min-height:38px!important;
  margin:0!important;
  padding:7px 10px!important;
  border-radius:7px!important;
  font-size:10px!important;
  line-height:1.15!important;
  box-shadow:none!important;
}
.eai-box .eai-panel-work-actions>.eai-secondary{
  border:1px solid #94a3b8!important;
  background:#fff!important;
  color:#1e293b!important;
}
.eai-box .eai-panel-work-actions>.eai-primary{background:#0f6670!important;}
.eai-box .eai-panel-workbench [hidden]{display:none!important;}
.eai-box .eai-map-card,
.eai-box .eai-card,
.eai-box .eai-roof-row{
  box-shadow:none!important;
}
.eai-box .eai-frame{
  order:2!important;
  display:block;
  width:100%!important;
  margin:0!important;
  border:1px solid #cbd5e1!important;
  border-radius:10px!important;
  box-shadow:none!important;
}
.eai-box .eai-frame[hidden],
.eai-box .eai-map[hidden]{display:none!important;}
.eai-box .eai-map-resizer{order:3!important;}
.eai-box .eai-drawbar{order:4!important;}
.eai-box .eai-photo-grid{order:5!important;}

@container (max-width:980px){
  .eai-box .eai-panel-work-direction{grid-template-columns:28px minmax(180px,1fr) 72px minmax(110px,.65fr) auto minmax(130px,.8fr)!important;}
  .eai-box .eai-panel-work-product{grid-template-columns:28px minmax(235px,1fr) minmax(265px,1fr)!important;}
  .eai-box .eai-panel-distance-grid{grid-template-columns:repeat(3,minmax(90px,1fr))!important;}
  .eai-box .eai-panel-work-actions{grid-template-columns:28px minmax(140px,.45fr) minmax(190px,1fr) minmax(190px,1fr)!important;}
}
@container (max-width:760px){
  .eai-box .eai-panel-work-head{grid-template-columns:28px 1fr auto!important;}
  .eai-box .eai-panel-work-title{grid-column:2!important;}
  .eai-box .eai-panel-surface-control{grid-column:2 / -1!important;grid-row:2!important;}
  .eai-box .eai-panel-primary-action{grid-column:3!important;grid-row:1!important;}
  .eai-box .eai-panel-work-direction{grid-template-columns:28px minmax(180px,1fr) 70px auto!important;}
  .eai-box .eai-panel-work-direction .eai-physical-direction-control{grid-column:2!important;}
  .eai-box .eai-panel-work-direction .eai-direction-step{grid-column:3!important;}
  .eai-box .eai-panel-work-direction .eai-active-direction-control{grid-column:4!important;}
  .eai-box .eai-panel-work-product{grid-template-columns:28px minmax(0,1fr)!important;}
  .eai-box .eai-panel-product-label,
  .eai-box .eai-panel-orientation-control,
  .eai-box .eai-panel-target-note{grid-column:2!important;}
  .eai-box .eai-panel-work-distances{grid-template-columns:28px minmax(0,1fr)!important;}
  .eai-box .eai-distance-title{grid-column:2!important;}
  .eai-box .eai-panel-distance-grid{grid-column:2!important;grid-template-columns:repeat(3,minmax(82px,1fr))!important;}
  .eai-box .eai-panel-work-actions{grid-template-columns:28px repeat(2,minmax(0,1fr))!important;}
  .eai-box .eai-panel-visual-control{grid-column:2 / -1!important;}
  .eai-box .eai-panel-work-actions>.eai-btn:first-of-type{grid-column:2!important;}
  .eai-box .eai-panel-work-actions>.eai-btn:last-of-type{grid-column:3!important;}
}
@container (max-width:540px){
  .eai-box .eai-panel-work-row{padding:8px!important;gap:7px!important;}
  .eai-box .eai-panel-work-direction{grid-template-columns:24px 1fr auto!important;}
  .eai-box .eai-panel-work-direction .eai-tilt-control{grid-column:2 / -1!important;}
  .eai-box .eai-panel-work-direction .eai-tilt-sketch{display:none!important;}
  .eai-box .eai-panel-work-direction .eai-physical-direction-control{grid-column:2!important;}
  .eai-box .eai-panel-work-direction .eai-direction-step{grid-column:3!important;}
  .eai-box .eai-panel-work-direction .eai-active-direction-control{grid-column:2 / -1!important;}
  .eai-box .eai-panel-orientation-segments{grid-template-columns:1fr!important;}
  .eai-box .eai-panel-orientation-segments button{border-left:0!important;border-top:1px solid #cbd5e1!important;}
  .eai-box .eai-panel-orientation-segments button:first-child{border-top:0!important;}
  .eai-box .eai-panel-distance-grid{grid-template-columns:repeat(2,minmax(82px,1fr))!important;}
  .eai-box .eai-panel-work-actions{grid-template-columns:24px 1fr!important;}
  .eai-box .eai-panel-visual-control,
  .eai-box .eai-panel-work-actions>.eai-btn{grid-column:2!important;}
}
.eai-box .eai-map[hidden]+.eai-frame[hidden]+.eai-map-resizer{display:none!important;}

/* v0.4.44: visible confirmation while Ctrl orthogonal drawing is active. */
[data-eai-root].eai-orthogonal-ctrl [data-eai-draw-info]::after{content:' · Ctrl: 90°';font-weight:700;color:#0f766e;}

/* v0.4.49 restricted/no-panel zones */
.eai-restricted-poly{fill:rgba(220,38,38,.16);stroke:#b91c1c;stroke-width:2;stroke-dasharray:8 5;vector-effect:non-scaling-stroke}

/* v0.4.56 - embedded Solar Designer workspace.
   Address Intel stays the BBR/map/geometry engine; Solar Designer owns the case. */
.eai-box.eai-integrated{
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  box-shadow:none;
  background:transparent;
}
.eai-box.eai-integrated .eai-layout{
  --eai-left-pane:240px;
  --eai-right-pane:205px;
  gap:8px;
}
.eai-box.eai-integrated .eai-panel-work-actions [data-eai-open-solar],
.eai-box.eai-integrated .eai-transfer-mode-native{
  display:none!important;
}
.eai-box.eai-integrated .eai-panel-work-actions{
  grid-template-columns:auto 1fr!important;
}
.eai-box.eai-integrated .eai-resultsbar .eai-card:last-child{
  display:none!important;
}
.eai-box.eai-integrated .eai-resultsbar{
  min-width:0;
}
.eai-box.eai-integrated .eai-map-card,
.eai-box.eai-integrated .eai-card{
  box-shadow:none;
}
.eai-box.eai-integrated .eai-browser-note::before{
  content:'Integreret Montage · ';
  font-weight:600;
}
@media (max-width:1180px){
  .eai-box.eai-integrated .eai-layout{
    --eai-left-pane:210px;
    --eai-right-pane:180px;
  }
}

/* v0.4.58 integrated lower-workbench montage selector */
.eai-box.eai-integrated .eai-panel-mount-control{display:flex;align-items:center;gap:6px;min-width:190px;font-size:11px;font-weight:600;}
.eai-box.eai-integrated .eai-panel-mount-control[hidden]{display:none!important;}
.eai-box.eai-integrated .eai-panel-mount-control select{min-width:150px;max-width:260px;height:30px;font-size:11px;}
@media (max-width:1100px){.eai-box.eai-integrated .eai-panel-mount-control{min-width:150px}.eai-box.eai-integrated .eai-panel-mount-control select{min-width:120px;max-width:190px}}


/* v0.4.59 integrated lower workbench: clear active edit target on one line. */
.eai-box.eai-integrated .eai-panel-work-head{
  grid-template-columns:28px 108px minmax(170px,.65fr) minmax(330px,1.45fr) 92px!important;
  align-items:center!important;
  column-gap:10px!important;
}
.eai-box.eai-integrated .eai-panel-work-title{
  text-transform:none!important;
  font-size:12px!important;
  letter-spacing:0!important;
}
.eai-box.eai-integrated .eai-panel-surface-control{
  width:100%!important;
  max-width:360px!important;
}
.eai-box.eai-integrated .eai-panel-mount-control{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:7px!important;
  width:100%!important;
  min-width:0!important;
  font-size:12px!important;
  font-weight:700!important;
  color:#334155!important;
}
.eai-box.eai-integrated .eai-panel-mount-control select{
  width:100%!important;
  min-width:260px!important;
  max-width:none!important;
  height:34px!important;
  min-height:34px!important;
  font-size:12px!important;
}
.eai-box.eai-integrated .eai-panel-primary-action{
  grid-column:5!important;
  grid-row:1!important;
  width:92px!important;
  min-width:92px!important;
}
@container (max-width:900px){
  .eai-box.eai-integrated .eai-panel-work-head{
    grid-template-columns:28px 100px minmax(145px,.7fr) minmax(220px,1.25fr) 82px!important;
    column-gap:7px!important;
  }
  .eai-box.eai-integrated .eai-panel-mount-control select{min-width:170px!important;font-size:11px!important;}
  .eai-box.eai-integrated .eai-panel-primary-action{width:82px!important;min-width:82px!important;}
}


/* v0.4.60 distance reset + fixed flat-roof orientation. */
.eai-panel-work-distances .eai-distance-reset{justify-self:start;white-space:nowrap;padding:5px 9px;font-size:11px;line-height:1.15;}
.eai-panel-orientation-segments button.is-disabled,
.eai-panel-orientation-segments button:disabled{opacity:.32;cursor:not-allowed;pointer-events:none;}
.eai-box.eai-integrated .eai-panel-work-distances{grid-template-columns:28px auto auto minmax(0,1fr)!important;column-gap:8px!important;align-items:end!important;}
.eai-box.eai-integrated .eai-panel-work-distances .eai-panel-distance-grid{grid-column:4!important;}
@container (max-width:900px){
  .eai-box.eai-integrated .eai-panel-work-distances{grid-template-columns:28px auto 1fr!important;}
  .eai-box.eai-integrated .eai-panel-work-distances .eai-distance-reset{grid-column:3!important;}
  .eai-box.eai-integrated .eai-panel-work-distances .eai-panel-distance-grid{grid-column:2 / -1!important;}
}

/* v0.4.71: direct map editing and shared row-selection affordance. */
.eai-box .eai-ol-map{cursor:default;}
.eai-box.eai-integrated .eai-roof-row.is-panel-active{outline:1px solid rgba(14,116,144,.24);}


/* v0.4.73: one shared configurator owns panel/product choices in integrated mode. */
.eai-box .eai-panel-visual-control-toolbar{display:inline-flex!important;align-items:center!important;gap:5px!important;white-space:nowrap!important;font-size:11px!important;font-weight:700!important;color:#334155!important;padding:5px 8px!important;border:1px solid #cbd5e1!important;border-radius:7px!important;background:#fff!important;min-height:30px!important;box-sizing:border-box!important;}
.eai-box .eai-panel-visual-control-toolbar input{margin:0!important;}
.eai-box .eai-panel-distance-primary{display:grid;grid-template-columns:repeat(2,minmax(115px,180px));gap:7px;align-items:end;}
.eai-box .eai-panel-distance-primary label{display:flex;flex-direction:column;gap:3px;font-size:10px;font-weight:700;color:#475569;}
.eai-box .eai-panel-distance-primary input,.eai-box .eai-panel-distance-primary select{min-height:31px;padding:4px 7px;font-size:11px;border:1px solid #cbd5df;border-radius:6px;background:#fff;}
.eai-box .eai-secondary-distances{min-width:150px;align-self:end;}
.eai-box .eai-secondary-distances>summary{cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:5px 9px;border:1px solid #cbd5e1;border-radius:6px;background:#f8fafc;color:#475569;font-size:10px;font-weight:800;box-sizing:border-box;}
.eai-box .eai-secondary-distances>summary::-webkit-details-marker{display:none;}
.eai-box .eai-secondary-distances>summary::after{content:'▾';font-size:9px;}
.eai-box .eai-secondary-distances[open]>summary::after{content:'▴';}
.eai-box .eai-secondary-distances .eai-panel-distance-grid{margin-top:7px;}
.eai-box.eai-integrated .eai-panel-work-product{display:none!important;}
.eai-box.eai-integrated .eai-panel-work-actions{display:none!important;}
.eai-box.eai-integrated .eai-panel-work-head .eai-panel-step,
.eai-box.eai-integrated .eai-panel-work-head .eai-panel-work-title,
.eai-box.eai-integrated .eai-panel-work-head .eai-panel-mount-control{display:none!important;}
.eai-box.eai-integrated .eai-panel-work-head{grid-template-columns:minmax(190px,1fr) auto!important;padding:7px 9px!important;gap:8px!important;}
.eai-box.eai-integrated .eai-panel-work-head .eai-panel-surface-control{grid-column:1!important;}
.eai-box.eai-integrated .eai-panel-work-head .eai-panel-primary-action{grid-column:2!important;}
.eai-box.eai-integrated .eai-panel-work-distances{grid-template-columns:28px auto auto minmax(150px,1fr)!important;align-items:end!important;}
.eai-box.eai-integrated .eai-panel-work-distances .eai-panel-distance-primary{grid-column:3!important;}
.eai-box.eai-integrated .eai-panel-work-distances .eai-secondary-distances{grid-column:4!important;}
@media(max-width:900px){
  .eai-box.eai-integrated .eai-panel-work-distances{grid-template-columns:24px 1fr!important;}
  .eai-box.eai-integrated .eai-panel-work-distances .eai-distance-title{grid-column:2!important;}
  .eai-box.eai-integrated .eai-panel-work-distances .eai-distance-reset{grid-column:2!important;}
  .eai-box.eai-integrated .eai-panel-work-distances .eai-panel-distance-primary{grid-column:2!important;}
  .eai-box.eai-integrated .eai-panel-work-distances .eai-secondary-distances{grid-column:2!important;}
}


/* v0.4.77: roof-direction semantics + compact controls matching the annotated Ortofoto layout. */
.eai-box .eai-panel-work-direction{
  grid-template-columns:28px minmax(245px,1.15fr) minmax(155px,.72fr) 64px minmax(150px,.72fr)!important;
  gap:8px 12px!important;
}
.eai-box .eai-panel-work-direction .eai-tilt-sketch{display:none!important;}
.eai-box .eai-physical-direction-control{
  box-sizing:border-box!important;
  min-height:58px!important;
  padding:7px 10px!important;
  border:1px solid #93c5d3!important;
  border-radius:7px!important;
  background:#f8fbfc!important;
  align-content:center!important;
}
.eai-box .eai-physical-direction-control small{
  display:block!important;
  margin-top:2px!important;
  color:#64748b!important;
  font-size:8.5px!important;
  font-weight:700!important;
  line-height:1.15!important;
  white-space:nowrap!important;
}
.eai-box .eai-panel-work-direction .eai-direction-step{align-self:center!important;}
.eai-box .eai-panel-work-product{
  grid-template-columns:28px minmax(360px,1.35fr) minmax(330px,1fr)!important;
  column-gap:14px!important;
}
.eai-box .eai-panel-work-distances{
  grid-template-columns:28px 74px 118px minmax(330px,1fr) auto!important;
  column-gap:9px!important;
  align-items:end!important;
}
.eai-box .eai-panel-work-distances .eai-distance-reset{
  width:118px!important;
  min-width:118px!important;
  max-width:118px!important;
  justify-self:start!important;
}
.eai-box .eai-panel-distance-primary{
  grid-template-columns:repeat(2,minmax(150px,220px))!important;
  gap:9px!important;
}
.eai-box .eai-panel-distance-primary input,
.eai-box .eai-panel-distance-primary select{width:100%!important;}
@container (max-width:980px){
  .eai-box .eai-panel-work-direction{grid-template-columns:28px minmax(210px,1fr) minmax(140px,.7fr) 60px minmax(140px,.8fr)!important;}
  .eai-box .eai-panel-work-product{grid-template-columns:28px minmax(280px,1fr) minmax(280px,1fr)!important;}
  .eai-box .eai-panel-work-distances{grid-template-columns:28px 70px 110px minmax(280px,1fr)!important;}
  .eai-box .eai-panel-work-distances .eai-secondary-distances{grid-column:4!important;}
}
@container (max-width:720px){
  .eai-box .eai-panel-work-direction{grid-template-columns:28px 1fr 60px!important;}
  .eai-box .eai-panel-work-direction .eai-tilt-control{grid-column:2 / -1!important;}
  .eai-box .eai-panel-work-direction .eai-physical-direction-control{grid-column:2!important;}
  .eai-box .eai-panel-work-direction .eai-direction-step{grid-column:3!important;}
  .eai-box .eai-panel-work-direction .eai-active-direction-control{grid-column:2 / -1!important;}
  .eai-box .eai-panel-work-product{grid-template-columns:28px 1fr!important;}
  .eai-box .eai-panel-product-label,.eai-box .eai-panel-orientation-control,.eai-box .eai-panel-target-note{grid-column:2!important;}
  .eai-box .eai-panel-work-distances{grid-template-columns:28px 1fr!important;}
  .eai-box .eai-distance-title,.eai-box .eai-distance-reset,.eai-box .eai-panel-distance-primary,.eai-box .eai-secondary-distances{grid-column:2!important;}
  .eai-box .eai-panel-distance-primary{grid-template-columns:repeat(2,minmax(130px,1fr))!important;}
}

.eai-box .eai-panel-work-direction .eai-physical-direction-control{
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr)!important;
  grid-template-rows:auto auto auto!important;
  column-gap:8px!important;
  row-gap:1px!important;
}
.eai-box .eai-panel-work-direction .eai-physical-direction-control .eai-tilt-sketch{
  display:block!important;
  grid-column:1!important;
  grid-row:1 / 4!important;
  width:44px!important;
  height:38px!important;
  min-width:44px!important;
  align-self:center!important;
}
.eai-box .eai-panel-work-direction .eai-physical-direction-control>span,
.eai-box .eai-panel-work-direction .eai-physical-direction-control>strong,
.eai-box .eai-panel-work-direction .eai-physical-direction-control>small{grid-column:2!important;}


/* v0.4.78: flat-roof pitch controls belong to panel setup (step 3), and model changes redraw immediately. */
.eai-box .eai-panel-work-product{
  grid-template-columns:28px minmax(330px,1.25fr) minmax(330px,1fr)!important;
  grid-template-rows:auto auto auto!important;
  align-items:end!important;
  row-gap:7px!important;
}
.eai-box .eai-panel-work-product .eai-panel-product-flat-controls{
  grid-column:2 / -1!important;
  grid-row:2!important;
  justify-self:start!important;
  grid-template-columns:repeat(2,minmax(170px,220px))!important;
  gap:9px!important;
  width:auto!important;
}
.eai-box .eai-panel-work-product .eai-panel-target-note{
  grid-column:2 / -1!important;
  grid-row:3!important;
}
.eai-box .eai-panel-work-distances{
  grid-template-columns:28px 74px 118px minmax(150px,1fr)!important;
}
.eai-box .eai-panel-work-distances .eai-secondary-distances{grid-column:4!important;justify-self:end!important;}
@container (max-width:980px){
  .eai-box .eai-panel-work-product{grid-template-columns:28px minmax(280px,1fr) minmax(280px,1fr)!important;}
  .eai-box .eai-panel-work-product .eai-panel-product-flat-controls{grid-column:2 / -1!important;}
  .eai-box .eai-panel-work-distances{grid-template-columns:28px 70px 110px minmax(150px,1fr)!important;}
}
@container (max-width:720px){
  .eai-box .eai-panel-work-product{grid-template-columns:28px 1fr!important;}
  .eai-box .eai-panel-work-product .eai-panel-product-flat-controls{grid-column:2!important;grid-template-columns:repeat(2,minmax(130px,1fr))!important;width:100%!important;}
  .eai-box .eai-panel-work-product .eai-panel-target-note{grid-column:2!important;}
}


/* v0.4.81 - one authoritative panel azimuth drives arrow, layout and production. */
.eai-box .eai-panel-product-flat-controls{grid-template-columns:repeat(3,minmax(120px,1fr))!important;max-width:560px!important;}
.eai-box .eai-panel-product-flat-controls [data-eai-flat-panel-azimuth-field] select{font-variant-numeric:tabular-nums;}
@container (max-width:900px){.eai-box .eai-panel-product-flat-controls{grid-template-columns:repeat(2,minmax(110px,1fr))!important;max-width:none!important;}}
@container (max-width:540px){.eai-box .eai-panel-product-flat-controls{grid-template-columns:1fr!important;}}

/* v0.4.82 - restricted areas are first-class removable geometry. */
.eai-restricted-row{border-color:#f0b6b6;background:#fff8f8}.eai-restricted-row .eai-roof-area strong{color:#8f2f2f}
