/* Gestión de cobertura exclusiva del mapa de OT. */
body.ot-map-page { margin:0; padding:0; overflow:hidden; }
#mapHdr { height:auto; min-height:58px; flex-wrap:wrap; padding:8px 14px; gap:10px; }
#mapHdr > div:first-child { margin-right:auto; }
#mapHdr #mapCount { margin-left:0; }
#mapHdr .back { margin-left:0; order:5; }
#mapHdr .map-sello, #mapHdr .map-btn { margin-left:0; }
body.has-hdr #m { top:var(--ot-map-header,58px); }
body.has-hdr #zoomRapido { top:calc(var(--ot-map-header,58px) + 10px); }
#zoomRapido { max-width:calc(100% - 100px); flex-wrap:wrap; justify-content:center; }
#zoomRapido .geo-open { margin:0; }
#geoPanel { position:fixed; top:calc(var(--ot-map-header,0px) + 64px); right:14px; bottom:14px; width:370px; max-width:calc(100% - 28px); z-index:1100; padding:18px; overflow:auto; background:var(--et-surface,#fff); color:var(--et-ink,#1a2236); border:1px solid var(--et-line,#e4e9f2); border-radius:12px; box-shadow:0 8px 32px #1a223629; font-size:13px; }
#geoPanel[hidden], #geoPanel [hidden] { display:none !important; }
.geo-heading, .geo-actions, .geo-title-row { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.geo-heading { justify-content:space-between; margin-bottom:12px; }
.geo-heading h2 { font-size:17px; color:var(--et-primary); margin:0; }
.geo-help { font-size:12px; color:var(--et-ink-soft); line-height:1.5; margin:10px 0; }
#geoPanel label { display:block; margin:12px 0 5px; font-size:12px; font-weight:600; }
#geoPanel .geo-check { display:flex; gap:8px; align-items:center; }
#geoPanel input[type=checkbox] { accent-color:var(--et-primary); flex:none; }
.geo-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.geo-grid > * { min-width:0; }
.geo-item { border:1px solid var(--et-line); border-left:4px solid var(--geo-color); border-radius:9px; margin:10px 0; padding:12px; }
.geo-name { border:0; padding:0; background:none; color:var(--et-primary); font-weight:700; text-align:left; cursor:pointer; }
.geo-meta { font-size:12px; color:var(--et-ink-soft); margin:6px 0 10px; overflow-wrap:anywhere; }
#geoStatus { padding:10px 12px; margin:10px 0; background:var(--et-surface-2,#f5f7fb); border-radius:8px; font-size:12px; }
#geoStatus:empty { display:none; }
#geoStatus[data-error=true] { color:#a1253b; background:#fff1f3; border:1px solid #f0c6cc; }
#geoRoster { max-height:180px; overflow:auto; border:1px solid var(--et-line); border-radius:8px; padding:6px 10px; margin:8px 0 14px; }
#geoRoster label { margin:6px 0; }
#geoPanel fieldset { border:0; padding:0; margin:0; min-width:0; }
#geoPanel legend { font-size:13px; font-weight:700; margin:16px 0 0; }
#geoPanel .btn { font-size:12px; }
#geoPanel :is(button,input,select):focus-visible, #zoomRapido button:focus-visible, #mapHdr a:focus-visible { outline:2px solid var(--et-primary); outline-offset:3px; }
#geoPanel .geo-actions { margin:12px 0; }
#geoPanel .geo-selected { color:var(--et-primary); font-weight:600; }
@media(max-width:700px) {
 #mapHdr .map-sello { display:none; }
 #mapHdr #mapCount { font-size:11px; }
 #zoomRapido { left:10px; right:10px; transform:none; max-width:none; gap:6px; }
 #zoomRapido select { max-width:115px; }
 #geoPanel { top:auto; bottom:8px; right:8px; max-width:calc(100% - 16px); width:390px; max-height:52dvh; padding:14px; }
 #mapHdr .back { padding:7px 10px; margin-left:auto; }
}
