/* Surveyor — catálogo de camadas do mapa. */
body.georural-map-page #layerCatalogDialog.layer-catalog-dialog{
  width:min(1160px,calc(100vw - 36px))!important;height:min(720px,calc(100vh - 36px))!important;max-width:1160px!important;max-height:720px!important;
  padding:0!important;border:1px solid #d4dfec!important;border-radius:14px!important;background:#fff!important;box-shadow:0 28px 80px rgba(15,23,42,.25)!important;overflow:hidden!important;color:#10243c!important;
}
body.georural-map-page #layerCatalogDialog::backdrop{background:rgba(20,39,65,.50)!important;backdrop-filter:blur(1.5px)}
body.georural-map-page #layerCatalogDialog .catalog-dialog-header{
  min-height:66px!important;padding:11px 14px 10px 18px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;border-bottom:1px solid #e2e9f2!important;background:#fff!important;
}
body.georural-map-page #layerCatalogDialog .catalog-dialog-header>div:first-child{display:grid!important;gap:3px!important}
body.georural-map-page #layerCatalogDialog .catalog-dialog-header b{font-size:18px!important;line-height:1.15!important;font-weight:850!important;letter-spacing:-.015em!important;color:#10243c!important}
body.georural-map-page #layerCatalogDialog .catalog-dialog-header span{font-size:10.5px!important;line-height:1.3!important;color:#718096!important;margin:0!important}
body.georural-map-page #layerCatalogDialog .catalog-dialog-header-actions{display:flex!important;align-items:center!important;gap:8px!important}
body.georural-map-page #layerCatalogDialog .catalog-location-button{min-height:32px!important;padding:0 10px!important;border:1px solid #c9d9ec!important;border-radius:8px!important;background:#fff!important;color:#0f63e9!important;font-size:10px!important;font-weight:800!important}
body.georural-map-page #layerCatalogDialog .catalog-dialog-header .close{width:34px!important;height:34px!important;display:grid!important;place-items:center!important;border:1px solid #d4dfec!important;border-radius:9px!important;background:#fff!important;color:#17314c!important;font-size:20px!important}
body.georural-map-page #layerCatalogDialog .catalog-dialog-tabs{min-height:46px!important;padding:7px 16px!important;display:flex!important;align-items:center!important;gap:6px!important;border-bottom:1px solid #e3eaf3!important;background:#fff!important}
body.georural-map-page #layerCatalogDialog .catalog-dialog-tabs button{min-height:32px!important;padding:0 12px!important;border:1px solid transparent!important;border-radius:8px!important;background:transparent!important;color:#52667e!important;font-size:10.5px!important;font-weight:800!important}
body.georural-map-page #layerCatalogDialog .catalog-dialog-tabs button.active{border-color:#91b7ef!important;background:#eef5ff!important;color:#0f63e9!important}
body.georural-map-page #layerCatalogDialog .catalog-dialog-panel{display:none!important;height:calc(100% - 112px)!important;min-height:0!important}
body.georural-map-page #layerCatalogDialog .catalog-dialog-panel.active{display:grid!important;grid-template-rows:minmax(0,1fr) 58px!important}
body.georural-map-page #layerCatalogDialog .catalog-dialog-layout{display:grid!important;grid-template-columns:minmax(0,1fr) 320px!important;min-height:0!important;height:100%!important}
body.georural-map-page #layerCatalogDialog .catalog-dialog-list{min-height:0!important;overflow:auto!important;padding:12px 10px 12px 16px!important;border-right:1px solid #e3eaf3!important;background:#fff!important;scrollbar-gutter:stable!important}
body.georural-map-page #layerCatalogDialog .catalog-search-row{display:grid!important;grid-template-columns:minmax(0,1fr) 42px!important;gap:8px!important;margin-bottom:10px!important}
body.georural-map-page #layerCatalogDialog .catalog-search-row input{height:36px!important;min-height:36px!important;padding:0 11px!important;border:1px solid #cbd8e7!important;border-radius:8px!important;background:#fff!important;color:#17314c!important;font-size:10.5px!important;outline:none!important}
body.georural-map-page #layerCatalogDialog .catalog-search-row input:focus{border-color:#7baaf0!important;box-shadow:0 0 0 3px rgba(15,99,233,.08)!important}
body.georural-map-page #layerCatalogDialog .catalog-search-row span{height:36px!important;display:grid!important;place-items:center!important;border:1px solid #cbd8e7!important;border-radius:8px!important;background:#fff!important;color:#52667e!important;font-size:16px!important}
body.georural-map-page #layerCatalogDialog .map-layer-catalog{display:grid!important;gap:8px!important}
body.georural-map-page #layerCatalogDialog .map-catalog-group{border:1px solid #d9e3ef!important;border-radius:10px!important;background:#fff!important;overflow:hidden!important}
body.georural-map-page #layerCatalogDialog .map-catalog-group>button{width:100%!important;min-height:36px!important;padding:0 10px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;border:0!important;background:#f9fbfd!important;color:#17314c!important;font-size:10.5px!important;font-weight:850!important;text-align:left!important}
body.georural-map-page #layerCatalogDialog .map-catalog-items{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;padding:7px!important}
body.georural-map-page #layerCatalogDialog .map-catalog-item{min-height:54px!important;display:grid!important;grid-template-columns:14px minmax(0,1fr) 18px!important;align-items:flex-start!important;gap:8px!important;padding:8px!important;border:1px solid #dce5ef!important;border-radius:9px!important;background:#fff!important;cursor:pointer!important}
body.georural-map-page #layerCatalogDialog .map-catalog-item:hover{border-color:#abc9f3!important;background:#f8fbff!important}
body.georural-map-page #layerCatalogDialog .map-catalog-item.selected{border-color:#4e91ee!important;background:#eef5ff!important;box-shadow:0 0 0 2px rgba(15,99,233,.07)!important}
body.georural-map-page #layerCatalogDialog .map-catalog-color{width:12px!important;height:12px!important;margin-top:2px!important;border-radius:4px!important;background:var(--layer-color,#2563eb)!important;box-shadow:none!important}
body.georural-map-page #layerCatalogDialog .map-catalog-copy b{display:block!important;color:#17314c!important;font-size:10px!important;line-height:1.2!important;font-weight:850!important}
body.georural-map-page #layerCatalogDialog .map-catalog-copy small{display:block!important;margin-top:2px!important;color:#718096!important;font-size:8.5px!important;line-height:1.25!important}
body.georural-map-page #layerCatalogDialog .map-catalog-toggle{width:16px!important;height:16px!important;min-height:16px!important;margin-top:0!important;accent-color:#0f63e9!important}
body.georural-map-page #layerCatalogDialog .catalog-layer-preview{min-height:0!important;overflow:auto!important;padding:12px!important;background:#fbfcfe!important}
body.georural-map-page #layerCatalogDialog .catalog-preview-map-container{position:relative!important;width:100%!important;height:188px!important;margin-bottom:10px!important;overflow:hidden!important;border:1px solid #d4dfeb!important;border-radius:10px!important;background:#dce7ef!important}
body.georural-map-page #layerCatalogDialog .catalog-preview-mini-map{width:100%!important;height:100%!important}
body.georural-map-page #layerCatalogDialog .catalog-preview-map-badge{position:absolute!important;left:7px!important;bottom:7px!important;z-index:450!important;padding:4px 7px!important;border-radius:6px!important;background:rgba(15,23,42,.78)!important;color:#fff!important;font-size:8.5px!important;font-weight:750!important;pointer-events:none!important}
body.georural-map-page #layerCatalogDialog .catalog-preview-map-status{position:absolute!important;left:50%!important;top:50%!important;z-index:455!important;transform:translate(-50%,-50%)!important;max-width:calc(100% - 20px)!important;padding:6px 8px!important;border-radius:7px!important;background:rgba(15,23,42,.82)!important;color:#fff!important;font-size:9px!important;font-weight:750!important;text-align:center!important}
body.georural-map-page #layerCatalogDialog .catalog-preview-content h3{margin:0 0 5px!important;color:#17314c!important;font-size:13.5px!important;line-height:1.2!important;font-weight:850!important}
body.georural-map-page #layerCatalogDialog .catalog-preview-content p{margin:0 0 10px!important;color:#65758a!important;font-size:9.5px!important;line-height:1.4!important}
body.georural-map-page #layerCatalogDialog .catalog-preview-meta{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important}
body.georural-map-page #layerCatalogDialog .catalog-preview-meta div{padding:7px!important;border:1px solid #dae4ef!important;border-radius:8px!important;background:#fff!important}
body.georural-map-page #layerCatalogDialog .catalog-preview-meta span{display:block!important;color:#718096!important;font-size:8px!important}
body.georural-map-page #layerCatalogDialog .catalog-preview-meta b{display:block!important;margin-top:2px!important;color:#17314c!important;font-size:9.5px!important;line-height:1.2!important}
body.georural-map-page #layerCatalogDialog .catalog-dialog-footer{min-height:58px!important;padding:9px 14px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;border-top:1px solid #e1e8f0!important;background:#fff!important;color:#18324e!important;font-size:11px!important;font-weight:800!important}
body.georural-map-page #layerCatalogDialog .catalog-dialog-footer button{min-height:38px!important;padding:0 18px!important;border:1px solid #0f63e9!important;border-radius:8px!important;background:#0f63e9!important;color:#fff!important;font-size:10.5px!important;font-weight:850!important}
body.georural-map-page #layerCatalogDialog .catalog-dialog-footer button:disabled{opacity:.45!important;cursor:not-allowed!important}
body.georural-map-page #layerCatalogDialog .catalog-dialog-panel[data-catalog-panel=import].active,
body.georural-map-page #layerCatalogDialog .catalog-dialog-panel[data-catalog-panel=service].active{display:block!important;height:auto!important;padding:14px!important;overflow:auto!important}
body.georural-map-page #layerCatalogDialog .catalog-import-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important}
body.georural-map-page #layerCatalogDialog .catalog-import-card,
body.georural-map-page #layerCatalogDialog .geoservice-form{padding:14px!important;border:1px solid #dbe5ef!important;border-radius:10px!important;background:#fff!important}
body.georural-map-page #layerCatalogDialog .catalog-import-card strong{font-size:12px!important}
body.georural-map-page #layerCatalogDialog .catalog-import-card span,
body.georural-map-page #layerCatalogDialog .geoservice-form label{font-size:10px!important;color:#64748b!important}
body.georural-map-page #layerCatalogDialog .catalog-import-card button,
body.georural-map-page #layerCatalogDialog .geoservice-form button,
body.georural-map-page #layerCatalogDialog .geoservice-form input,
body.georural-map-page #layerCatalogDialog .geoservice-form select{min-height:36px!important;border-radius:8px!important;font-size:10px!important}
@media(max-width:820px){
  body.georural-map-page #layerCatalogDialog.layer-catalog-dialog{width:calc(100vw - 12px)!important;height:calc(100vh - 12px)!important;max-width:none!important;max-height:none!important}
  body.georural-map-page #layerCatalogDialog .catalog-dialog-layout{grid-template-columns:1fr!important}
  body.georural-map-page #layerCatalogDialog .catalog-layer-preview{display:none!important}
  body.georural-map-page #layerCatalogDialog .map-catalog-items{grid-template-columns:1fr!important}
}

/* Cotas topográficas: texto paralelo ao segmento, sem balão, com halo claro. */
body.georural-map-page .surveyor-cad-dimension-anchor,
body.georural-map-page .surveyor-measure-segment-anchor,
body.georural-map-page .gleba-measure-anchor{
  width:1px!important;height:1px!important;border:0!important;background:transparent!important;
  overflow:visible!important;pointer-events:none!important;
}
body.georural-map-page .surveyor-cad-dimension-label{
  position:absolute;
  left:0;top:0;
  display:inline-block;
  transform:translate(-50%,-50%) rotate(var(--surveyor-cad-angle,0deg));
  transform-origin:center;
  padding:0!important;margin:0!important;
  border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
  color:#111827;
  font:800 9.5px/1.05 Arial,Helvetica,sans-serif;
  white-space:nowrap;
  -webkit-text-stroke:1.8px rgba(255,255,255,.96);
  paint-order:stroke fill;
  text-shadow:0 0 1px #fff,0 1px 1px rgba(255,255,255,.9);
  letter-spacing:.01em;
  pointer-events:none;
}
body.georural-map-page .surveyor-measure-pill{
  display:inline-block;transform:translate(-50%,-50%);padding:2px 5px;
  background:rgba(255,255,255,.94);color:#111827;font:800 11px/1.2 Arial,sans-serif;
  border:1px solid #cbd5e1;border-radius:5px;box-shadow:0 3px 10px rgba(15,23,42,.14);white-space:nowrap;
}

@media(max-width:820px){
  body.georural-map-page #layerCatalogDialog.layer-catalog-dialog{width:calc(100vw - 12px)!important;height:calc(100vh - 12px)!important;max-width:none!important;max-height:none!important}
  body.georural-map-page #layerCatalogDialog .catalog-dialog-layout{grid-template-columns:1fr!important}
  body.georural-map-page #layerCatalogDialog .catalog-layer-preview{display:none!important}
  body.georural-map-page #layerCatalogDialog .map-catalog-items{grid-template-columns:1fr!important}
}
body.georural-map-page #layerCatalogDialog .catalog-footer-actions{display:flex;align-items:center;gap:8px}
body.georural-map-page #layerCatalogDialog .catalog-dialog-footer .secondary{border-color:#cbd8e7!important;background:#fff!important;color:#0f63e9!important}
