#aiviz{--a:#00868b}.av-card{border:1px solid #e8ebed;border-radius:18px;padding:22px;background:#fff;min-width:0}.av-gate{max-width:460px;margin:0 auto}.av-gate h3,.av-card h3{margin:0 0 4px}
.av-top{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.av-top h3{margin:0;flex:1}.av-badge{background:#effafa;color:#00686c;border-radius:99px;padding:5px 12px;font:700 12px Manrope,sans-serif}.av-badge.zero{background:#fdecea;color:#8c1d18}
.av-tabs{display:flex;gap:6px;margin:14px 0}.av-tabs button,.av-seg button{flex:1;padding:9px;border:1px solid #e8ebed;border-radius:99px;background:#fff;font:600 13px Manrope,sans-serif;cursor:pointer}.av-tabs .on,.av-seg .on{background:#15191c;color:#fff}.av-seg{display:flex;gap:6px;margin-bottom:12px;max-width:300px}
.av-gate form{display:grid;gap:10px}.av-chk{display:flex;gap:8px;font-size:12px;font-weight:500;align-items:flex-start}.av-chk input{width:auto;margin:3px 0 0}
.av-btn{background:var(--a);color:#fff;border:0;border-radius:99px;padding:13px 22px;font:700 14px Manrope,sans-serif;cursor:pointer}.av-btn[disabled]{opacity:.45;cursor:not-allowed}.av-btn.g{background:#fff;color:#15191c;border:1px solid #e8ebed}
.av-err{background:#fdecea;color:#8c1d18;border-radius:12px;padding:10px 14px;font-size:13px;margin-top:10px}
.av-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:22px;align-items:start}@media(max-width:850px){.av-grid{grid-template-columns:1fr}}
.av-drop{display:flex;align-items:center;justify-content:center;text-align:center;min-height:170px;border:2px dashed #cdd3d6;border-radius:16px;background:#fafbfb;cursor:pointer;overflow:hidden;color:#6b7378;padding:10px}.av-drop.over{border-color:var(--a);background:#effafa}.av-drop img{max-width:100%;max-height:260px;border-radius:10px}
.av-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;max-height:250px;overflow:auto;padding:2px}.av-t{border:2px solid transparent;border-radius:12px;padding:0;background:#fff;cursor:pointer;text-align:left;overflow:hidden}.av-t.on{border-color:var(--a)}.av-t i{display:block;aspect-ratio:1;background-size:cover;background-position:center}.av-t span{display:block;font:600 10.5px/1.2 Manrope,sans-serif;padding:4px 5px;color:#15191c}
.av-lab{font:700 11px Manrope,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#6b7378;margin:16px 0 6px}#avtx{width:100%;font:inherit;padding:10px 12px;border:1px solid #e8ebed;border-radius:12px;resize:vertical}
.av-opts{display:grid;gap:8px;margin-top:10px}.av-opt{text-align:left;border:1px solid #e8ebed;border-radius:12px;padding:10px 12px;background:#fff;cursor:pointer;font-family:inherit}.av-opt.on{border-color:var(--a);background:#f3fafa}.av-opt b{display:block;font-size:13px}.av-opt span{display:block;font-size:11.5px;color:#6b7378;margin-top:3px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.av-out{min-height:300px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#6b7378;border:1px dashed #dfe4e6;border-radius:16px;padding:16px}.av-out small{display:block;margin-top:4px}
.av-spin{width:44px;height:44px;border:4px solid #dff1f1;border-top-color:var(--a);border-radius:50%;animation:avs .9s linear infinite;margin-bottom:14px}@keyframes avs{to{transform:rotate(360deg)}}
.av-cmp{position:relative;width:100%;border-radius:16px;overflow:hidden;background:#eee;user-select:none}.av-cmp img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.av-cmp input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}
.av-h{position:absolute;top:0;bottom:0;width:3px;background:#fff;box-shadow:0 0 6px #0006;transform:translateX(-50%)}.av-h:after{content:"↔";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#fff;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;font-size:16px}
.av-cmp b{position:absolute;top:10px;background:#000a;color:#fff;border-radius:99px;padding:3px 10px;font:600 11px Manrope,sans-serif}.av-side{display:grid;grid-template-columns:1fr 1fr;gap:10px}.av-side figure{margin:0}.av-side img{width:100%;border-radius:12px;display:block}.av-side figcaption{text-align:center;font:600 12px Manrope,sans-serif;color:#6b7378;margin-top:4px}.av-note{font-size:11.5px;color:#6b7378;margin:10px 0}
@media(max-width:520px){.av-side{grid-template-columns:1fr}}
/* v3: measuring, two tiles, grout grid */
.av-btn.sm{padding:8px 14px;font-size:12px}.av-btn.g.on{border-color:var(--a);background:#effafa}.av-btn i,.av-tg i{display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:6px;vertical-align:middle}
.av-meas{background:#f3f4f4;border:1px solid #e8ebed}#avm{display:block;width:100%;height:auto;cursor:crosshair;touch-action:manipulation}
.av-mtools{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.av-hint{font-size:12.5px;color:#4b5358;margin:8px 0}
.av-area{display:grid;grid-template-columns:auto auto 1fr 1fr auto;gap:8px;align-items:end;border:1px solid #e8ebed;border-radius:12px;padding:8px 10px;margin-bottom:6px}
.av-area>b{color:#fff;border-radius:50%;width:24px;height:24px;display:grid;place-items:center;font-size:12px;align-self:center}.av-area>span{font:600 13px Manrope,sans-serif;align-self:center}
.av-area label{font-size:11px;margin:0}.av-area input{padding:6px 8px;margin-top:2px}.av-area small{grid-column:1/-1;color:#00686c;font-size:11.5px}.av-area .x{align-self:center;margin:0}
.av-mode{max-width:none;margin:0 0 10px}.av-tg{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}.av-tg button{text-align:left;border:1px solid #e8ebed;border-radius:12px;padding:8px 10px;background:#fff;cursor:pointer;font:700 13px Manrope,sans-serif}.av-tg button.on{border-color:var(--a);background:#f3fafa}.av-tg small{display:block;font-weight:500;font-size:11px;color:#6b7378;margin-top:2px}
.av-gridctl{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-bottom:10px}.av-gridctl label{font-size:12px;margin:0}.av-gridctl select{margin-top:2px;padding:5px 8px}.av-gridctl input[type=range]{width:110px}
.av-ov{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.av-rel{position:relative}.av-rel img{width:100%;height:100%;object-fit:cover;border-radius:12px;display:block}.av-side img{object-fit:cover}
@media(max-width:520px){.av-area{grid-template-columns:auto 1fr 1fr auto}.av-area>span{display:none}}
/* v4: estimate result, "want to see more" contact card, My visualisations */
.av-estok{background:#effafa;color:#00585c;border-radius:12px;padding:10px 14px;font-size:12.5px;margin-top:10px;line-height:1.5}
.av-more{margin-top:14px;border:1px solid #bfe3e4;background:linear-gradient(135deg,#f3fbfb,#fff);border-radius:16px;padding:16px 18px}.av-more b{font-size:16px;display:block}.av-more p{margin:6px 0 12px;font-size:13px;color:#4b5358;line-height:1.5}.av-more .av-btn{display:inline-block;text-decoration:none;margin:0 6px 6px 0;padding:10px 16px;font-size:13px}
.av-gal{margin-top:22px}.av-gal h3{margin-bottom:8px}.av-gl{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}.av-gl figure{margin:0;border:1px solid #e8ebed;border-radius:14px;overflow:hidden;background:#fff}.av-gl img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#f3f4f4}
.av-gl figcaption{padding:10px 12px;display:grid;gap:3px}.av-gl figcaption b{font-size:13px}.av-gl figcaption small{color:#6b7378;font-size:11.5px}.av-gl figcaption span{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:6px}.av-gl .av-btn.sm{text-decoration:none;padding:6px 12px}.av-gl .x{margin:0 0 0 auto;font-size:12px}
