/* Setores: editor sobre a imagem da câmera, sinais e antes/depois na Vistoria. */
.zone-dialog{width:min(980px,96vw);max-height:92vh;overflow:auto}
.zone-stage{position:relative;width:100%;border-radius:12px;overflow:hidden;background:#000;touch-action:none;user-select:none;-webkit-user-select:none}
.zone-stage img{display:block;width:100%;height:auto;pointer-events:none}
.zone-overlay{position:absolute;inset:0;cursor:crosshair}
.zone-box{position:absolute;border:2px solid #7CFC5A;background:rgba(124,252,90,.12);border-radius:4px;box-sizing:border-box}
.zone-box span{position:absolute;left:0;top:0;transform:translateY(-100%);max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.3;padding:1px 5px;background:rgba(0,0,0,.75);color:#d9ffd0;border-radius:4px 4px 0 0}
.zone-box.k-totem{border-color:#4FC3F7;background:rgba(79,195,247,.14)}
.zone-box.k-door{border-color:#FFD54F;background:rgba(255,213,79,.12)}
.zone-box.k-freezer{border-color:#B39DDB;background:rgba(179,157,219,.14)}
.zone-box.selected{border-width:3px;border-style:dashed;background:rgba(255,255,255,.18)}
.zone-box.drawing{border-color:#fff;border-style:dashed;background:rgba(255,255,255,.15)}
.zone-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0}
.zone-form{display:grid;gap:8px;margin:8px 0 12px;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:12px}
.zone-form-actions{display:flex;gap:8px;flex-wrap:wrap}
.zone-form textarea{width:100%;box-sizing:border-box}
.zone-list .list-item{cursor:pointer;min-height:48px}
.zone-signal{margin-top:6px;padding:8px 10px;border-radius:10px;font-size:13px;line-height:1.35;border:1px solid rgba(255,255,255,.12)}
.zone-signal.lv-alta{border-color:#ff6b6b;background:rgba(255,107,107,.10)}
.zone-signal.lv-atencao{border-color:#ffc857;background:rgba(255,200,87,.10)}
.zone-signal.lv-info{opacity:.85}
.zone-signal b{display:block;margin-bottom:2px}
.zone-pairs{display:grid;gap:10px;margin-top:8px}
.zone-pair{border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:8px}
.zone-pair-imgs{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.zone-pair-imgs figure{margin:0}
.zone-pair-imgs img{width:100%;border-radius:6px;display:block;background:#111;min-height:60px;object-fit:contain}
.zone-pair-imgs figcaption{font-size:11px;opacity:.75;margin-top:2px;text-align:center}
@media (max-width:640px){
  .zone-dialog{width:100vw;max-width:100vw;max-height:100vh;border-radius:0;padding:14px 12px}
  .zone-box span{font-size:10px;max-width:140px}
  .zone-form-actions button,.zone-toolbar button{min-height:44px;flex:1}
}
