/* ============================================================================
   LINHA · Admin Master (#view-master) no modelo global de painel
   ============================================================================ */
.mst-marca{ display:flex; align-items:center; gap:var(--l-e2) }
.mst-marca > div{ display:flex; align-items:baseline; gap:var(--l-e2) }
.mst-marca img{ width:22px; height:22px; object-fit:contain; align-self:center }
.mst-conta{ order:-2 }
.mst-sub-secoes{ display:flex; gap:var(--l-e5) }
.mst-sub{ font-size:var(--l-t-peq); color:var(--l-texto-3) }
.master-tab{ display:flex; flex-direction:column; gap:var(--l-e5); min-width:0 }
.master-tab.hidden{ display:none !important }

/* centro de comando */
.mst-mapa-grade{ display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:var(--l-e5); align-items:start }
.mst-mapa-area{ position:relative; height:520px; background:var(--l-sup-3) }
.mst-mapa-area .master-map, .mst-mapa-area .master-map-fallback{ position:absolute; inset:0 }
.mst-legenda{ display:flex; align-items:center; gap:var(--l-e4); font-size:var(--l-t-peq); color:var(--l-texto-2) }
.mst-legenda span{ display:flex; align-items:center; gap:6px }
.mst-atencao{ display:flex; flex-direction:column; gap:var(--l-e4) }
.mst-clicavel{ width:100%; border:0; background:none; text-align:left; color:inherit; cursor:pointer }
.mst-clicavel meter{ width:100%; height:5px; margin-top:4px }
.mst-cobertura{ padding:var(--l-e4) var(--l-e5); flex-direction:column; gap:var(--l-e2) }

/* marcador no mapa */
.master-marker{ width:34px; height:34px; display:grid; place-items:center }
.master-marker span{ width:14px; height:14px; border-radius:50%; background:var(--status-color); box-shadow:0 0 0 3px var(--l-sup), 0 0 0 7px color-mix(in srgb, var(--status-color) 25%, transparent) }
.master-popup{ display:flex; flex-direction:column; gap:2px; font-family:var(--l-fonte); font-size:var(--l-t-peq); color:var(--l-texto) }
.master-popup strong{ font-size:var(--l-t-corpo) }
.master-popup span{ color:var(--l-texto-3) }
.leaflet-container{ font-family:var(--l-fonte) }
.leaflet-popup-content-wrapper{ border-radius:var(--l-raio-3); box-shadow:var(--l-sombra-flutua) }

/* acessos */
.mst-form-admin .mst-form-fim{ justify-content:flex-end }

/* análises */
.mst-partes{ display:flex; flex-direction:column; gap:var(--l-e6) }
.mrede{ width:100%; border-collapse:collapse; font-size:var(--l-t-corpo) }
.mrede th{ text-align:left; padding:0; border-bottom:1px solid var(--l-borda); background:var(--l-sup-2) }
.mrede th.num, .mrede td.num{ text-align:right }
.mrede td{ padding:11px var(--l-e5); border-bottom:1px solid var(--l-fio); font-variant-numeric:tabular-nums }
.mrede tbody tr:last-child td{ border-bottom:0 }
.mrede tbody tr:hover{ background:var(--l-sup-2) }
.mrede-sort{ display:inline-flex; align-items:center; gap:4px; width:100%; padding:10px var(--l-e5); border:0; background:none; font-size:var(--l-t-peq); font-weight:500; color:var(--l-texto-3); justify-content:inherit }
.mrede th.num .mrede-sort{ justify-content:flex-end }
.mrede-sort.is-on{ color:var(--l-texto) }
.mrede-seta{ font-size:9px }
.mrede-risco{ font-style:normal; font-size:var(--l-t-peq); font-weight:500 }
.mrede-risco.is-ok{ color:var(--l-ok) } .mrede-risco.is-warn{ color:var(--l-atencao) } .mrede-risco.is-bad{ color:var(--l-erro) }
.mrede-vazio{ text-align:center; color:var(--l-texto-3); padding:var(--l-e6) !important }

@media (max-width:1200px){
  .mst-mapa-grade{ grid-template-columns:1fr }
}
#master-analytics-insights .st{ font-size:0 } #master-analytics-insights .st::before{ width:9px; height:9px }

/* Financeiro (aba do Master) */
.fin{ display:flex; flex-direction:column; gap:var(--l-e5) }
.fin .l-barra, .fin .l-resumo{ margin:0 }
.fin-neg, .fin-neg b{ color:var(--l-erro) }
.l-tab :is(th, td).fin-dir{ text-align:right }
.l-tab td.fin-cat{ color:var(--l-texto-3); font-size:var(--l-t-peq) }
.fin-check{ display:flex; align-items:center; gap:var(--l-e2); font-size:var(--l-t-corpo); color:var(--l-texto-2) }
.fin-anexo{ display:flex; flex-wrap:wrap; align-items:center; gap:var(--l-e2) }
.fin-pad{ padding:var(--l-e4) var(--l-e5); margin:0 }
.fin-inativa .l-item-corpo b{ color:var(--l-texto-3) }

/* "Ir para as unidades": botão de verdade no cabeçalho (era rótulo + link solto) */
.mst-ir-btn{ display:inline-flex; align-items:center; gap:8px; height:36px; padding:0 14px; border:1px solid var(--l-borda); border-radius:var(--l-raio-2); background:var(--l-sup); color:var(--l-texto); font:inherit; font-size:var(--l-t-peq); font-weight:500; cursor:pointer; transition:border-color var(--l-rapido), background var(--l-rapido) }
.mst-ir-btn:hover{ border-color:var(--l-aba-ativa, var(--l-marca)); background:var(--l-marca-suave) }
.mst-ir-btn svg, .mst-ir-btn i{ width:16px; height:16px; color:var(--l-aba-ativa, var(--l-marca-tinta)) }
/* sem menu lateral: o cabeçalho flutuante ganha a mesma margem dos dois lados */
@media (min-width:981px){ #view-master .l-secoes{ margin-left:var(--l-flut, 12px) } }
