:root{
  --bg:#f3f7fb;
  --surface:#ffffff;
  --line:#dbe6f2;
  --line-soft:#edf3f9;
  --text:#0f2a44;
  --muted:#607089;
  --primary:#2563eb;
  --primary-600:#1d4ed8;
  --primary-soft:#eaf2ff;
  --success:#059669;
  --danger:#c2410c;
  --shadow:0 10px 24px rgba(15,23,42,.08);
  --radius:13px;
  --nav-w:252px;
  --panel-w:310px;
}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);overflow:hidden}button,input,select,textarea{font:inherit}.hidden{display:none!important}img,svg,canvas{max-width:100%;height:auto}.georural-map-page{background:var(--bg)}
.map-global-nav{position:fixed;z-index:3000;inset:0 auto 0 0;width:var(--nav-w);display:flex;flex-direction:column;background:#fff;border-right:1px solid var(--line);transform:translateX(-105%);transition:.18s ease;box-shadow:12px 0 30px rgba(15,23,42,.14)}.map-global-nav.open{transform:translateX(0)}.map-global-nav .brand{display:flex;align-items:center;gap:11px;padding:16px;border-bottom:1px solid var(--line)}.map-global-nav .brand-mark{width:40px;height:40px;border-radius:12px;background:var(--primary-soft);border:1px solid #d7e6ff;display:grid;place-items:center;overflow:hidden}.map-global-nav .brand-mark img{width:28px;height:28px;object-fit:contain}.map-global-nav strong{display:block;font-size:18px}.map-global-nav small{display:block;margin-top:3px;color:var(--muted);font-size:11px}.map-global-nav-close{margin-left:auto;width:34px;height:34px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--text)}.map-global-nav .nav{padding:14px 10px;display:flex;flex-direction:column;gap:5px;overflow:auto;min-height:0}.map-global-nav .nav a{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:9px;min-height:40px;padding:8px 10px;border-radius:11px;border:1px solid transparent;color:#334155;text-decoration:none;font-size:14px;font-weight:700}.map-global-nav .nav a:hover,.map-global-nav .nav a.active{background:var(--primary-soft);border-color:#d7e6ff;color:var(--primary)}.map-global-nav .side-note{margin:auto 12px 14px;padding:13px;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:12px;color:var(--muted)}.sv-icon{width:17px;height:17px;stroke:currentColor;stroke-width:1.9;fill:none;stroke-linecap:round;stroke-linejoin:round}.map-nav-open .geo-app{margin-left:var(--nav-w)}
.geo-app{height:100vh;display:grid;grid-template-rows:52px 54px minmax(0,1fr);background:var(--bg);transition:.18s ease}.geo-brandbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 10px;background:#fff;border-bottom:1px solid var(--line)}.geo-brand-left,.geo-brand-actions{display:flex;align-items:center;gap:8px}.geo-brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--text);font-weight:850}.geo-brand-plate{width:34px;height:34px;border:1px solid #d7e6ff;border-radius:11px;background:var(--primary-soft);display:grid;place-items:center;overflow:hidden}.geo-brand-plate img{width:24px!important;height:24px!important;object-fit:contain}.geo-brand::after{content:'Surveyor';font-size:18px}.map-global-nav-toggle,.geo-brand-actions a,.geo-brand-actions button{height:36px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--text);font-weight:800;text-decoration:none;white-space:nowrap}.geo-brand-actions .map-admin-link{background:var(--primary-soft);color:var(--primary);border-color:#d7e6ff}
.geo-toolstrip{display:grid;grid-template-columns:210px minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 10px;background:#fff;border-bottom:1px solid var(--line);min-width:0}.geo-layers-trigger,.geo-tool,.geo-toolbar-right button{height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 11px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--text);font-weight:800;white-space:nowrap}.geo-layers-trigger{justify-content:space-between;width:100%;color:var(--primary);background:var(--primary-soft);border-color:#d7e6ff}.geo-layers-trigger b{font-size:18px}.geo-toolbar-center{display:flex;align-items:center;gap:7px;min-width:0;overflow:auto;padding-bottom:2px}.geo-tool-group{display:flex;align-items:center;gap:7px}.geo-tool svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.8}.geo-tool.active,.geo-toolbar-right .toolbar-primary,#saveBtn{background:var(--primary);border-color:var(--primary);color:#fff}.geo-tool-danger{color:var(--danger)}.geo-toolbar-right{display:flex;align-items:center;gap:7px}
.geo-workspace{min-height:0;display:grid;grid-template-columns:var(--panel-w) minmax(0,1fr);background:var(--bg)}.geo-sidepanel{position:relative;min-height:0;background:#fff;border-right:1px solid var(--line);display:grid;grid-template-rows:44px minmax(0,1fr) auto;overflow:hidden}.geo-sidepanel.collapsed{width:0;min-width:0;border-right:0}.sidepanel-collapse-btn{position:absolute;right:8px;top:8px;z-index:5;width:28px;height:28px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--primary)}.sidepanel-tabs{display:flex;gap:6px;padding:7px;border-bottom:1px solid var(--line);background:#fff}.sidepanel-tabs button{flex:1;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--muted);font-size:11px;font-weight:850}.sidepanel-tabs button.active{background:var(--primary-soft);border-color:#d7e6ff;color:var(--primary)}.sidepanel-scroll{overflow:auto;padding:10px}.compact-section{margin-bottom:10px;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.compact-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;background:#f8fbff;border-bottom:1px solid var(--line-soft);font-size:13px}.collapse-btn{border:0;background:transparent;color:var(--muted)}.compact-fields{display:grid;gap:10px;padding:12px}.compact-fields label{display:grid;gap:6px;font-size:12px;font-weight:750;color:#334155}.compact-fields input,.compact-fields select,.compact-fields textarea{width:100%;min-height:38px;padding:0 10px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--text);outline:none}.compact-fields textarea{padding:10px;min-height:90px;resize:vertical}.row{display:grid;grid-template-columns:1fr 88px;gap:8px}.field-hint{margin:0;color:var(--muted);font-size:12px;line-height:1.45}.layer-count,.segment-badge{display:inline-flex;align-items:center;justify-content:center;min-height:24px;padding:0 8px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:12px;font-weight:800}.layer-list{display:grid;gap:8px}.layer-card,.layer-item{padding:10px;border:1px solid var(--line);border-radius:10px;background:#fff}.geo-side-footer{padding:10px 12px;background:#fff;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.geo-map-stage{position:relative;min-width:0;min-height:0;background:#dbe4ee;overflow:hidden}#map{width:100%;height:100%}#map img,.leaflet-container img{max-width:none!important}.leaflet-container{font:inherit}
.geo-searchbar{position:absolute;z-index:900;left:14px;top:14px;display:flex;gap:8px;align-items:center;padding:8px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:var(--shadow)}.geo-searchbar input{width:300px;min-height:38px;padding:0 10px;border:1px solid var(--line);border-radius:10px}.geo-searchbar button,.map-switcher button,.details button,.metrics button{border:1px solid var(--line);background:#fff;border-radius:10px;min-height:36px;padding:0 10px;font-weight:750}.map-menu{position:absolute;z-index:920;right:14px;top:14px;display:grid;gap:8px;justify-items:end}.map-switcher,.map-file-actions{display:flex;gap:8px;align-items:center;padding:7px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:var(--shadow)}.map-switcher label{font-size:12px;color:var(--muted);font-weight:800}.map-switcher select{min-height:34px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:0 9px}.file-btn{position:relative;min-height:34px;display:inline-flex;align-items:center;justify-content:center;padding:0 11px;border:1px solid #d7e6ff;border-radius:10px;background:var(--primary-soft);color:var(--primary);font-weight:850;font-size:13px;overflow:hidden}.file-btn input{position:absolute;inset:0;opacity:0;cursor:pointer}.map-download-menu{position:relative}.map-download-menu summary{list-style:none;min-height:34px;display:inline-flex;align-items:center;padding:0 11px;border:1px solid var(--line);border-radius:10px;background:#fff;font-weight:850}.map-download-menu summary::-webkit-details-marker{display:none}.map-download-list{position:absolute;right:0;top:calc(100% + 6px);display:grid;gap:6px;width:190px;padding:8px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow)}.map-download-list button{min-height:34px;border:1px solid var(--line);border-radius:9px;background:#fff;text-align:left;padding:0 10px}.metrics{position:absolute;z-index:850;left:14px;bottom:14px;display:grid;grid-template-columns:repeat(4,minmax(90px,1fr));gap:8px;max-width:min(660px,calc(100% - 28px));padding:10px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:var(--shadow)}.metrics div{padding:8px;background:#f8fafc;border-radius:10px}.metrics span{display:block;color:var(--muted);font-size:11px}.metrics b{display:block;font-size:14px}.details{position:absolute;z-index:1000;right:14px;bottom:14px;width:min(380px,calc(100% - 28px));max-height:70%;overflow:auto;padding:14px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:var(--shadow)}.details .close{float:right;width:32px;height:32px}.detail-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.detail-stats div{padding:8px;border:1px solid var(--line);border-radius:10px;background:#f8fafc}.detail-actions,.dialog-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;margin-top:12px}.detail-actions button,.dialog-actions button{min-height:36px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0 10px;font-weight:750}.detail-actions .green,.dialog-actions .green{background:#ecfdf5;border-color:#b7f3d1;color:#047857}.detail-actions .danger,.dialog-actions .danger{background:#fff7ed;border-color:#fed7aa;color:var(--danger)}
.draw-tools-popover{position:absolute;z-index:1600;top:112px;left:50%;transform:translateX(-50%);display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:6px;padding:10px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:var(--shadow)}.draw-tools-popover button{min-height:36px;border:1px solid var(--line);border-radius:10px;background:#fff}.draw-tools-popover button:hover{background:var(--primary-soft);color:var(--primary)}
dialog{color:var(--text)}.layer-catalog-dialog{width:min(1120px,calc(100vw - 32px));height:min(760px,calc(100vh - 32px));max-width:none;max-height:none;border:0;border-radius:16px;padding:0;background:#fff;box-shadow:0 24px 80px rgba(15,23,42,.24);overflow:hidden}.layer-catalog-dialog::backdrop{background:rgba(15,23,42,.45)}.layer-catalog-dialog[open]{display:grid;grid-template-rows:auto auto minmax(0,1fr)}.catalog-dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid var(--line)}.catalog-dialog-header b{display:block;font-size:20px}.catalog-dialog-header span{display:block;margin-top:3px;color:var(--muted);font-size:13px}.close,.dialog-close{width:34px;height:34px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--text)}.catalog-dialog-tabs{display:flex;gap:8px;padding:10px 14px;border-bottom:1px solid var(--line);background:#f8fbff}.catalog-dialog-tabs button{min-height:36px;padding:0 12px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);font-weight:850}.catalog-dialog-tabs button.active{background:#fff;border-color:#d7e6ff;color:var(--primary)}.catalog-dialog-panel{display:none;min-height:0}.catalog-dialog-panel.active{display:grid;grid-template-rows:minmax(0,1fr) auto}.catalog-dialog-panel[data-catalog-panel="import"].active,.catalog-dialog-panel[data-catalog-panel="service"].active{display:block;overflow:auto;padding:16px}.catalog-dialog-layout{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 300px}.catalog-dialog-list{min-height:0;overflow:auto;padding:14px;border-right:1px solid var(--line)}.catalog-search-row{display:grid;grid-template-columns:minmax(0,1fr) 38px;gap:8px;margin-bottom:12px}.catalog-search-row input{min-height:40px;border:1px solid var(--line);border-radius:10px;padding:0 12px}.catalog-search-row span{display:grid;place-items:center;border:1px solid var(--line);border-radius:10px;color:var(--muted)}.map-layer-catalog{display:grid;gap:10px}.catalog-group{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}.catalog-group>button,.catalog-group-title{width:100%;display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border:0;background:#f8fbff;color:var(--text);font-weight:850;text-align:left}.catalog-layer-row,.catalog-layer-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:start;padding:9px 12px;border-top:1px solid var(--line-soft)}.catalog-layer-row:hover,.catalog-layer-item:hover{background:#fbfdff}.catalog-layer-row label,.catalog-layer-item label{display:flex;gap:8px;align-items:flex-start}.catalog-layer-row small,.catalog-layer-item small{color:var(--muted)}.catalog-layer-preview{padding:14px;background:#fff;overflow:auto}.catalog-preview-empty{height:100%;display:grid;place-items:center;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:12px;padding:18px}.catalog-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-top:1px solid var(--line);background:#fff}.catalog-dialog-footer button,.geoservice-form button{min-height:38px;padding:0 13px;border:1px solid var(--primary);border-radius:10px;background:var(--primary);color:#fff;font-weight:850}.catalog-import-grid,.geoservice-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.catalog-import-card,.geoservice-form{padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff}.catalog-import-card label,.geoservice-form label{display:grid;gap:6px;font-size:12px;font-weight:750}.catalog-import-card input,.catalog-import-card select,.geoservice-form input,.geoservice-form select{min-height:38px;border:1px solid var(--line);border-radius:10px;padding:0 10px}.catalog-import-card button{min-height:36px;border:1px solid #d7e6ff;border-radius:10px;background:var(--primary-soft);color:var(--primary);font-weight:850}.confrontante-dialog,#validationDialog{border:0;border-radius:16px;padding:18px;background:#fff;box-shadow:0 24px 80px rgba(15,23,42,.22);width:min(720px,calc(100vw - 32px))}.confrontante-dialog::backdrop,#validationDialog::backdrop{background:rgba(15,23,42,.45)}.confrontante-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.confrontante-grid label{display:grid;gap:6px;font-size:12px;font-weight:750}.confrontante-grid input,.confrontante-grid select,.confrontante-grid textarea{min-height:38px;border:1px solid var(--line);border-radius:10px;padding:0 10px}.confrontante-grid textarea{padding:10px}.full{grid-column:1/-1}.warning{padding:12px;border-radius:12px;background:#fffbeb;border:1px solid #fde68a;color:#92400e}.toast{position:fixed;right:16px;bottom:16px;z-index:9999;padding:12px 14px;border-radius:12px;background:#0f172a;color:#fff;opacity:0;transform:translateY(10px);transition:.18s ease}.toast.show{opacity:1;transform:translateY(0)}.toast.error{background:#991b1b}.toast.success{background:#047857}
@media(max-width:1160px){.map-nav-open .geo-app{margin-left:0}.geo-toolstrip{grid-template-columns:180px minmax(0,1fr) auto}.geo-tool span{display:none}.catalog-dialog-layout{grid-template-columns:1fr}.catalog-layer-preview{display:none}}
@media(max-width:820px){:root{--panel-w:300px}.geo-app{grid-template-rows:52px 94px minmax(0,1fr)}.geo-brandbar{padding:0 8px}.geo-brand-actions a{display:none}.geo-brand::after{font-size:15px}.geo-toolstrip{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"layers actions" "tools tools";gap:6px;padding:6px}.geo-layers-trigger{grid-area:layers}.geo-toolbar-right{grid-area:actions}.geo-toolbar-center{grid-area:tools;white-space:nowrap}.geo-workspace{grid-template-columns:1fr;position:relative}.geo-sidepanel{position:absolute;z-index:1500;left:0;top:0;bottom:0;width:min(var(--panel-w),88vw);max-width:88vw;box-shadow:10px 0 25px rgba(15,23,42,.14)}.geo-sidepanel.collapsed{transform:translateX(-105%);width:min(var(--panel-w),88vw);border-right:1px solid var(--line)}.geo-workspace.panel-collapsed{grid-template-columns:1fr}.geo-searchbar{left:8px;right:8px;top:8px}.geo-searchbar input{width:auto;min-width:0;flex:1}.map-menu{top:60px;right:8px;left:8px;align-items:end}.map-switcher,.map-file-actions{max-width:100%;overflow:auto}.metrics{grid-template-columns:repeat(2,1fr);left:8px;right:8px;bottom:8px;max-width:none}.details{right:8px;left:8px;width:auto}.layer-catalog-dialog{width:calc(100vw - 16px);height:calc(100vh - 16px)}.catalog-dialog-tabs{overflow:auto}.catalog-import-grid,.geoservice-form,.confrontante-grid{grid-template-columns:1fr}}
@media(max-width:560px){.geo-brand-actions button{display:none}.geo-toolstrip{grid-template-rows:auto auto}.geo-searchbar{flex-wrap:wrap}.geo-searchbar input{flex-basis:100%}.metrics{display:none}.catalog-dialog-header{padding:12px}.catalog-dialog-tabs button{white-space:nowrap}.catalog-dialog-footer{align-items:flex-start;flex-direction:column}.catalog-dialog-footer button{width:100%}}

/* ==========================================================
   v21.9.61 — Correções do Mapa/Catálogo marcadas pelo Kaua
   ========================================================== */
.side-tab-panel{display:none!important;min-height:0}.side-tab-panel.active{display:block!important}.side-tab-panel.active[data-side-panel="layers"],.side-tab-panel.active[data-side-panel="glebas"]{display:block!important}.geo-sidepanel.collapsed{width:0!important;min-width:0!important;max-width:0!important;overflow:hidden!important;border-right:0!important;box-shadow:none!important}.geo-sidepanel.collapsed .sidepanel-tabs,.geo-sidepanel.collapsed .sidepanel-scroll,.geo-sidepanel.collapsed .geo-side-footer{display:none!important}.geo-workspace.panel-collapsed{grid-template-columns:0 minmax(0,1fr)!important}.geo-workspace.panel-collapsed .geo-map-stage{grid-column:2!important}.sidepanel-collapse-btn{transition:transform .16s ease,background-color .16s ease}.sidepanel-collapse-btn:hover{transform:translateX(-1px);background:var(--primary-soft)!important}.sidepanel-tabs button{position:relative;overflow:hidden}.sidepanel-tabs button::after,.geo-tool::after,.geo-toolbar-right button::after,.file-btn::after{content:"";position:absolute;inset:auto 50% 0 50%;height:2px;background:currentColor;opacity:0;transition:.18s ease}.sidepanel-tabs button:hover::after,.sidepanel-tabs button.active::after{left:12px;right:12px;opacity:.55}.geo-sidepanel{transition:width .2s ease,min-width .2s ease,max-width .2s ease,transform .2s ease}.leaflet-container svg{max-width:none!important;height:initial!important;overflow:visible!important}.leaflet-overlay-pane svg{max-width:none!important;height:initial!important;overflow:visible!important}.leaflet-overlay-pane path,.leaflet-interactive{stroke-opacity:1!important;vector-effect:non-scaling-stroke}.leaflet-overlay-pane .leaflet-interactive{stroke-width:3px}.leaflet-draw-guide-dash{background:#2563eb!important;opacity:.9!important}.leaflet-draw-tooltip{background:#0f2a44!important;color:#fff!important;border-radius:8px!important;border:0!important;box-shadow:0 8px 20px rgba(15,23,42,.18)!important}.leaflet-draw-tooltip:before{border-right-color:#0f2a44!important}.leaflet-draw-actions a{background:#2563eb!important;color:#fff!important}.layer-card,.layer-item{display:grid!important;gap:9px!important;padding:12px!important;border:1px solid var(--line)!important;border-radius:14px!important;background:#fff!important;box-shadow:0 6px 16px rgba(15,23,42,.045)!important;font-size:13px!important}.layer-card.selected{border-color:#2563eb!important;box-shadow:0 0 0 3px rgba(37,99,235,.12)!important}.layer-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:8px!important}.layer-name{display:flex!important;align-items:flex-start!important;gap:8px!important;min-width:0!important}.layer-name .dot{width:14px!important;height:14px!important;border-radius:4px!important;flex:0 0 14px!important;margin-top:2px!important}.layer-name b{display:block!important;font-size:14px!important;line-height:1.15!important;color:var(--text)!important;word-break:break-word!important}.layer-meta{color:var(--muted)!important;font-size:12px!important;line-height:1.35!important}.layer-head-tools{display:flex!important;align-items:center!important;gap:6px!important}.reference-layer-lock{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:24px!important;padding:0 8px!important;border-radius:999px!important;background:#eef4ff!important;color:#2563eb!important;font-size:11px!important;font-weight:850!important;white-space:nowrap!important}.layer-visibility-toggle{width:28px!important;height:28px!important;border:1px solid var(--line)!important;border-radius:9px!important;background:#fff!important}.layer-actions{display:flex!important;align-items:center!important;gap:6px!important;flex-wrap:wrap!important}.layer-actions button{min-height:30px!important;padding:0 9px!important;border:1px solid var(--line)!important;border-radius:9px!important;background:#fff!important;color:var(--text)!important;font-weight:800!important;font-size:12px!important}.layer-actions button:hover{background:var(--primary-soft)!important;color:var(--primary)!important;border-color:#cfe0ff!important}.layer-style-controls{display:grid!important;gap:7px!important;padding-top:6px!important;border-top:1px solid var(--line-soft)!important}.layer-style-controls label{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;gap:8px!important;font-size:12px!important;color:var(--muted)!important}.layer-style-controls input[type="color"]{width:38px!important;height:28px!important;min-height:28px!important;padding:2px!important;border:1px solid var(--line)!important;border-radius:8px!important;background:#fff!important}.layer-style-controls input[type="range"]{width:100%!important;min-height:28px!important;padding:0!important;accent-color:#2563eb!important}.layer-style-controls em{font-style:normal!important;color:var(--text)!important;min-width:38px!important;text-align:right!important}.catalog-load-progress{height:8px;border-radius:999px;background:#edf3f9;overflow:hidden}.catalog-load-progress span{display:block;height:100%;background:#2563eb}.map-layer-catalog{display:grid!important;gap:10px!important}.map-catalog-group{border:1px solid var(--line)!important;border-radius:14px!important;background:#fff!important;overflow:hidden!important}.map-catalog-group>button{width:100%!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;min-height:44px!important;padding:0 12px!important;border:0!important;background:#f8fbff!important;color:var(--text)!important;font-weight:850!important;text-align:left!important}.map-catalog-group.collapsed .map-catalog-items{display:none!important}.map-catalog-items{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;padding:10px!important}.map-catalog-item{display:grid!important;grid-template-columns:18px minmax(0,1fr) auto!important;align-items:flex-start!important;gap:10px!important;padding:10px!important;border:1px solid var(--line)!important;border-radius:12px!important;background:#fff!important;cursor:pointer!important;min-height:72px!important}.map-catalog-item:hover,.map-catalog-item.selected{border-color:#cfe0ff!important;background:#fbfdff!important}.map-catalog-color{width:14px!important;height:14px!important;border-radius:4px!important;background:var(--layer-color,#2563eb)!important;margin-top:3px!important;box-shadow:0 0 0 3px rgba(37,99,235,.12)!important}.map-catalog-copy b{display:block!important;font-size:13px!important;line-height:1.25!important;color:var(--text)!important}.map-catalog-copy small{display:block!important;margin-top:4px!important;color:var(--muted)!important;font-size:11px!important;line-height:1.35!important}.map-catalog-toggle{width:18px!important;height:18px!important;min-height:18px!important;margin-top:2px!important;accent-color:#2563eb!important}.catalog-preview-map{height:140px;border:1px solid var(--line)!important;border-radius:12px!important;background:linear-gradient(135deg,#f8fbff,#eef4ff)!important;display:grid!important;place-items:center!important;margin-bottom:12px!important}.catalog-preview-symbol{width:54px!important;height:54px!important;border-radius:16px!important;background:var(--layer-color,#2563eb)!important;box-shadow:0 0 0 8px color-mix(in srgb,var(--layer-color,#2563eb) 12%,transparent)!important}.catalog-preview-content h3{margin:0 0 8px!important;font-size:17px!important}.catalog-preview-content p{margin:0 0 12px!important;color:var(--muted)!important;font-size:13px!important;line-height:1.45!important}.catalog-preview-meta{display:grid!important;gap:8px!important}.catalog-preview-meta div{padding:8px;border:1px solid var(--line)!important;border-radius:10px!important;background:#f8fbff!important}.catalog-preview-meta span{display:block;color:var(--muted);font-size:11px}.catalog-preview-meta b{display:block;color:var(--text);font-size:13px}.map-file-actions .file-btn{height:40px!important}.map-file-actions{animation:fadeUp .22s ease}.map-download-menu[open] .map-download-list{animation:fadeUp .16s ease}.geo-tool:hover,.geo-toolbar-right button:hover,.file-btn:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(15,23,42,.1)!important}.geo-tool:active,.geo-toolbar-right button:active,.file-btn:active{transform:translateY(0) scale(.98)}@keyframes fadeUp{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1160px){.map-catalog-items{grid-template-columns:1fr!important}}
@media(max-width:820px){.geo-workspace.panel-collapsed{grid-template-columns:1fr!important}.geo-workspace.panel-collapsed .geo-map-stage{grid-column:1!important}.geo-sidepanel.collapsed{transform:translateX(-105%)!important;width:min(var(--panel-w),88vw)!important;min-width:0!important;max-width:88vw!important;border-right:1px solid var(--line)!important}.map-catalog-items{grid-template-columns:1fr!important}.map-file-actions{justify-content:flex-end}.file-btn{min-width:112px}}


/* ==========================================================
   v21.9.63 — Correção do painel GLEBAS e botão flutuante
   ========================================================== */
.geo-workspace{position:relative!important;}
.sidepanel-floating-toggle{
  position:absolute!important;
  left:12px!important;
  top:12px!important;
  z-index:1700!important;
  display:none!important;
  align-items:center!important;
  gap:8px!important;
  min-height:40px!important;
  padding:0 14px!important;
  border:1px solid #cfe0ff!important;
  border-radius:12px!important;
  background:#ffffff!important;
  color:#2563eb!important;
  font-weight:850!important;
  box-shadow:0 12px 30px rgba(15,23,42,.16)!important;
  cursor:pointer!important;
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease!important;
}
.sidepanel-floating-toggle span{font-size:16px!important;line-height:1!important;}
.sidepanel-floating-toggle.visible{display:inline-flex!important;animation:sv63PanelIn .18s ease both!important;}
.sidepanel-floating-toggle:hover{background:#eff6ff!important;transform:translateY(-1px)!important;box-shadow:0 16px 38px rgba(15,23,42,.2)!important;}
.sidepanel-floating-toggle:active{transform:scale(.97)!important;}
@keyframes sv63PanelIn{from{opacity:0;transform:translateX(-8px)}to{opacity:1;transform:translateX(0)}}

.geo-sidepanel{z-index:1600!important;}
.geo-sidepanel.collapsed{pointer-events:none!important;}
.geo-sidepanel.collapsed .sidepanel-collapse-btn{display:none!important;}
.geo-workspace.panel-collapsed{grid-template-columns:0 minmax(0,1fr)!important;}
.geo-workspace.panel-collapsed .geo-map-stage{grid-column:2!important;}
.sidepanel-collapse-btn{
  right:-16px!important;
  top:50px!important;
  z-index:1702!important;
  width:34px!important;
  height:34px!important;
  border-radius:999px!important;
  background:#fff!important;
  border:1px solid #cfe0ff!important;
  color:#2563eb!important;
  box-shadow:0 8px 18px rgba(15,23,42,.14)!important;
  pointer-events:auto!important;
}
.sidepanel-collapse-btn:hover{background:#eff6ff!important;transform:translateX(-1px) scale(1.03)!important;}

.sidepanel-tabs{
  position:sticky!important;
  top:0!important;
  z-index:6!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:6px!important;
  padding:8px!important;
  background:#fff!important;
  border-bottom:1px solid var(--line)!important;
}
.sidepanel-tabs button{
  min-width:0!important;
  min-height:34px!important;
  padding:0 8px!important;
  border-radius:10px!important;
  font-size:10px!important;
  letter-spacing:.02em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.sidepanel-tabs button:hover{background:#f8fbff!important;color:#2563eb!important;transform:translateY(-1px)!important;}
.sidepanel-tabs button:active{transform:scale(.97)!important;}
.sidepanel-tabs button.active{background:#eaf2ff!important;border-color:#cfe0ff!important;color:#2563eb!important;box-shadow:inset 0 -2px 0 #2563eb!important;}

/* Painel GLEBAS organizado */
.side-tab-panel[data-side-panel="glebas"] .compact-section{border-radius:14px!important;overflow:hidden!important;}
.map-glebas-panel .compact-fields{gap:12px!important;padding:12px!important;}
.map-glebas-panel .field-hint{
  padding:10px 12px!important;
  border:1px solid #e4edf8!important;
  border-radius:12px!important;
  background:#f8fbff!important;
  color:#536980!important;
  font-size:11px!important;
  line-height:1.45!important;
}
.map-glebas-panel label{font-size:11px!important;font-weight:850!important;color:#1f3552!important;}
.map-glebas-panel select,.map-glebas-panel input[type="text"],.map-glebas-panel input[type="number"],.map-glebas-panel input:not([type]){
  min-height:38px!important;
  border-radius:11px!important;
  border:1px solid #d7e3f1!important;
  background:#fff!important;
  font-size:12px!important;
}
.map-glebas-panel .row{grid-template-columns:1fr 1fr!important;gap:8px!important;}
.gleba-cut-draw-box{
  display:grid!important;
  gap:10px!important;
  padding:12px!important;
  border:1px solid #dbe7f3!important;
  border-radius:14px!important;
  background:#fbfdff!important;
}
.gleba-cut-draw-box b{display:block!important;margin-bottom:4px!important;font-size:13px!important;color:#0f2a44!important;}
.gleba-cut-draw-box small{display:block!important;color:#536980!important;font-size:11px!important;line-height:1.45!important;}
.gleba-cut-actions,.map-glebas-actions{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
.gleba-cut-actions button,.map-glebas-actions button,.map-glebas-heirs-head button{
  min-height:34px!important;
  padding:0 11px!important;
  border:1px solid #d7e3f1!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#0f2a44!important;
  font-size:11px!important;
  font-weight:850!important;
  cursor:pointer!important;
  transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease!important;
}
.gleba-cut-actions button:hover,.map-glebas-actions button:hover,.map-glebas-heirs-head button:hover{
  background:#eff6ff!important;
  border-color:#bfdbfe!important;
  color:#2563eb!important;
  transform:translateY(-1px)!important;
  box-shadow:0 8px 18px rgba(37,99,235,.1)!important;
}
.gleba-cut-actions button:active,.map-glebas-actions button:active,.map-glebas-heirs-head button:active{transform:scale(.97)!important;}
#glebaMapGenerate.toolbar-primary{background:#2563eb!important;color:#fff!important;border-color:#2563eb!important;}
#glebaMapClear{color:#b45309!important;background:#fff7ed!important;border-color:#fed7aa!important;}
#glebaMapExportKml,#glebaMapExportGeojson,#glebaMapExportCsv{background:#f8fbff!important;}
.gleba-cut-count{
  display:inline-flex!important;
  width:max-content!important;
  min-height:24px!important;
  align-items:center!important;
  padding:0 9px!important;
  border-radius:999px!important;
  background:#eaf2ff!important;
  color:#2563eb!important;
  font-size:11px!important;
  font-weight:850!important;
}
.gleba-cut-lines-list{display:grid!important;gap:6px!important;}
.gleba-cut-lines-list span{
  display:flex!important;
  justify-content:space-between!important;
  gap:8px!important;
  padding:7px 9px!important;
  border:1px solid #e4edf8!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#536980!important;
  font-size:11px!important;
}
.map-gleba-checks{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  padding:10px!important;
  border:1px solid #e4edf8!important;
  border-radius:14px!important;
  background:#f8fbff!important;
}
.map-gleba-checks label{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  min-height:34px!important;
  padding:0 8px!important;
  border-radius:10px!important;
  background:#fff!important;
  font-size:11px!important;
  color:#334155!important;
}
.map-gleba-checks input[type="checkbox"]{
  order:2!important;
  appearance:none!important;
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  min-height:22px!important;
  padding:0!important;
  margin:0!important;
  border:2px solid #bfdbfe!important;
  border-radius:7px!important;
  background:#fff!important;
  display:grid!important;
  place-items:center!important;
  cursor:pointer!important;
}
.map-gleba-checks input[type="checkbox"]:checked{background:#2563eb!important;border-color:#2563eb!important;}
.map-gleba-checks input[type="checkbox"]:checked::after{content:"✓";color:#fff;font-size:16px;font-weight:900;line-height:1;}
.map-glebas-heirs-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  padding-top:2px!important;
}
.map-glebas-heirs-head b{font-size:13px!important;color:#0f2a44!important;}
.map-glebas-heirs{display:grid!important;gap:8px!important;}
.map-glebas-heirs .heir-row,.map-glebas-heirs [data-heir-row]{
  display:grid!important;
  grid-template-columns:32px minmax(0,1fr)!important;
  gap:8px!important;
  align-items:start!important;
  padding:8px!important;
  border:1px solid #e4edf8!important;
  border-radius:12px!important;
  background:#fff!important;
}
.map-glebas-heirs input{min-height:34px!important;font-size:12px!important;}
.map-glebas-heirs button{
  min-height:32px!important;
  border:1px solid #fed7aa!important;
  border-radius:9px!important;
  background:#fff7ed!important;
  color:#c2410c!important;
  font-weight:850!important;
}
.gleba-map-summary{
  padding:10px!important;
  border:1px solid #e4edf8!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#536980!important;
  font-size:11px!important;
  line-height:1.4!important;
  overflow:auto!important;
}
.gleba-map-summary table{width:100%!important;border-collapse:collapse!important;font-size:10px!important;}
.gleba-map-summary th,.gleba-map-summary td{padding:5px!important;border-bottom:1px solid #edf2f7!important;text-align:left!important;}

@media(max-width:820px){
  .sidepanel-floating-toggle{top:104px!important;left:10px!important;}
  .geo-workspace.panel-collapsed{grid-template-columns:1fr!important;}
  .geo-workspace.panel-collapsed .geo-map-stage{grid-column:1!important;}
  .geo-sidepanel.collapsed{transform:translateX(-105%)!important;width:min(var(--panel-w),88vw)!important;min-width:0!important;max-width:88vw!important;border-right:1px solid var(--line)!important;}
}

/* ==========================================================
   v21.9.64 — Detalhes do elemento + seta flutuante do painel
   ========================================================== */
:root{
  --sv64-blue:#2563eb;
  --sv64-blue-dark:#1d4ed8;
  --sv64-soft:#eff6ff;
  --sv64-bg:#f6f9fd;
  --sv64-card:#ffffff;
  --sv64-text:#102a43;
  --sv64-muted:#64748b;
  --sv64-line:#d9e6f3;
  --sv64-line-soft:#edf3f8;
  --sv64-shadow:0 18px 48px rgba(15,23,42,.16);
}

/* Seta principal dentro do painel */
.sidepanel-collapse-btn{
  position:absolute!important;
  right:-18px!important;
  top:18px!important;
  z-index:1700!important;
  width:36px!important;
  height:48px!important;
  min-width:36px!important;
  border:1px solid #bfd4f4!important;
  border-left:0!important;
  border-radius:0 16px 16px 0!important;
  background:#fff!important;
  color:var(--sv64-blue)!important;
  font-size:22px!important;
  font-weight:900!important;
  line-height:1!important;
  display:grid!important;
  place-items:center!important;
  box-shadow:8px 8px 22px rgba(15,23,42,.12)!important;
  cursor:pointer!important;
  transition:transform .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease!important;
}
.sidepanel-collapse-btn:hover{
  background:var(--sv64-blue)!important;
  color:#fff!important;
  transform:translateX(2px)!important;
  box-shadow:10px 12px 26px rgba(37,99,235,.2)!important;
}
.geo-sidepanel.collapsed .sidepanel-collapse-btn{display:none!important;}

/* Seta flutuante quando o painel está recolhido */
.sidepanel-floating-toggle{
  position:absolute!important;
  left:12px!important;
  top:82px!important;
  z-index:1800!important;
  width:44px!important;
  height:54px!important;
  border:1px solid #bfd4f4!important;
  border-radius:0 18px 18px 0!important;
  background:#fff!important;
  color:var(--sv64-blue)!important;
  display:none!important;
  place-items:center!important;
  box-shadow:10px 12px 28px rgba(15,23,42,.16)!important;
  cursor:pointer!important;
  transition:transform .18s ease,background-color .18s ease,color .18s ease,box-shadow .18s ease!important;
}
.sidepanel-floating-toggle.visible,
.map-panel-collapsed .sidepanel-floating-toggle{display:grid!important;}
.sidepanel-floating-toggle span{font-size:28px!important;font-weight:950!important;line-height:1!important;}
.sidepanel-floating-toggle b{display:none!important;}
.sidepanel-floating-toggle:hover{
  background:var(--sv64-blue)!important;
  color:#fff!important;
  transform:translateX(3px)!important;
  box-shadow:12px 14px 32px rgba(37,99,235,.24)!important;
}
.geo-sidepanel{overflow:visible!important;}
.geo-sidepanel.collapsed{overflow:hidden!important;}
.geo-workspace.panel-collapsed{grid-template-columns:0 minmax(0,1fr)!important;}
.geo-workspace.panel-collapsed .geo-map-stage{grid-column:2!important;}

/* Painel: Elemento selecionado */
.details{
  width:min(430px,calc(100vw - 28px))!important;
  max-height:min(78vh,720px)!important;
  padding:0!important;
  border:1px solid var(--sv64-line)!important;
  border-radius:18px!important;
  background:#fff!important;
  color:var(--sv64-text)!important;
  box-shadow:var(--sv64-shadow)!important;
  overflow:hidden!important;
}
.details.hidden{display:none!important;}
.details-handle{
  padding:12px 16px!important;
  background:linear-gradient(135deg,#f8fbff,#eef5ff)!important;
  border-bottom:1px solid var(--sv64-line)!important;
  color:var(--sv64-blue)!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.details .close{
  position:absolute!important;
  right:12px!important;
  top:10px!important;
  z-index:3!important;
  width:34px!important;
  height:34px!important;
  border:1px solid var(--sv64-line)!important;
  border-radius:11px!important;
  background:#fff!important;
  color:var(--sv64-text)!important;
  font-weight:900!important;
  cursor:pointer!important;
  transition:background .16s ease,color .16s ease,transform .16s ease!important;
}
.details .close:hover{background:var(--sv64-blue)!important;color:#fff!important;transform:scale(1.04)!important;}
.details > .eyebrow{display:none!important;}
.details h2{
  margin:0!important;
  padding:16px 56px 10px 16px!important;
  font-size:20px!important;
  line-height:1.18!important;
  color:var(--sv64-text)!important;
  border-bottom:1px solid var(--sv64-line-soft)!important;
  background:#fff!important;
}
.details label{
  display:grid!important;
  gap:6px!important;
  padding:10px 16px 0!important;
  color:#30445f!important;
  font-size:12px!important;
  font-weight:850!important;
}
.details input,.details select,.details textarea{
  width:100%!important;
  min-height:40px!important;
  padding:0 11px!important;
  border:1px solid var(--sv64-line)!important;
  border-radius:12px!important;
  background:#fff!important;
  color:var(--sv64-text)!important;
  font:inherit!important;
  outline:none!important;
  box-shadow:none!important;
}
.details textarea{
  min-height:150px!important;
  padding:10px 11px!important;
  resize:vertical!important;
  font-family:"Cascadia Mono","Consolas",monospace!important;
  font-size:12px!important;
  line-height:1.45!important;
  background:#fbfdff!important;
}
.details input:focus,.details select:focus,.details textarea:focus{
  border-color:var(--sv64-blue)!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.12)!important;
}
.detail-stats{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  padding:12px 16px 2px!important;
}
.detail-stats div{
  padding:10px!important;
  border:1px solid var(--sv64-line)!important;
  border-radius:13px!important;
  background:#f8fbff!important;
}
.detail-stats span{display:block!important;color:var(--sv64-muted)!important;font-size:11px!important;font-weight:750!important;}
.detail-stats b{display:block!important;margin-top:3px!important;color:var(--sv64-text)!important;font-size:13px!important;font-weight:900!important;}
.confrontantes-section{
  margin:12px 16px!important;
  padding:12px!important;
  border:1px solid var(--sv64-line)!important;
  border-radius:14px!important;
  background:#fbfdff!important;
}
.confrontantes-title{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  margin-bottom:8px!important;
}
.confrontantes-title b{font-size:14px!important;color:var(--sv64-text)!important;}
.confrontantes-title span{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:34px!important;
  height:24px!important;
  padding:0 8px!important;
  border-radius:999px!important;
  background:var(--sv64-soft)!important;
  color:var(--sv64-blue)!important;
  font-size:12px!important;
  font-weight:900!important;
}
.confrontantes-help{margin:0 0 10px!important;color:var(--sv64-muted)!important;font-size:12px!important;line-height:1.45!important;}
.confrontantes-list{display:grid!important;gap:8px!important;max-height:210px!important;overflow:auto!important;padding-right:2px!important;}
.confrontante-row,
.confrontantes-list > div{
  padding:9px!important;
  border:1px solid var(--sv64-line)!important;
  border-radius:12px!important;
  background:#fff!important;
}
.confrontantes-list button,
.confrontante-row button{
  min-height:30px!important;
  padding:0 10px!important;
  border:1px solid #bfdbfe!important;
  border-radius:9px!important;
  background:var(--sv64-soft)!important;
  color:var(--sv64-blue)!important;
  font-weight:850!important;
  cursor:pointer!important;
}
.detail-actions{
  position:sticky!important;
  bottom:0!important;
  display:flex!important;
  justify-content:flex-end!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  margin:0!important;
  padding:12px 16px!important;
  border-top:1px solid var(--sv64-line)!important;
  background:#fff!important;
}
.detail-actions button{
  min-height:38px!important;
  padding:0 12px!important;
  border:1px solid var(--sv64-line)!important;
  border-radius:11px!important;
  background:#fff!important;
  color:var(--sv64-text)!important;
  font-weight:850!important;
  cursor:pointer!important;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease!important;
}
.detail-actions button:hover{transform:translateY(-1px)!important;box-shadow:0 8px 18px rgba(15,23,42,.08)!important;}
.detail-actions .green{background:#ecfdf5!important;border-color:#bbf7d0!important;color:#047857!important;}
.detail-actions .danger{background:#fff7ed!important;border-color:#fed7aa!important;color:#c2410c!important;}

@media(max-width:820px){
  .sidepanel-collapse-btn{right:-14px!important;width:30px!important;height:44px!important;}
  .sidepanel-floating-toggle{top:108px!important;left:8px!important;width:40px!important;height:50px!important;}
  .details{left:8px!important;right:8px!important;bottom:8px!important;width:auto!important;max-height:74vh!important;}
  .detail-stats{grid-template-columns:1fr!important;}
}


/* ==========================================================
   v21.9.65 — Correção do painel de detalhes e desenho em tempo real
   ========================================================== */

/* Painel de detalhes: agora o conteúdo realmente rola internamente */
.details:not(.hidden){
  position:absolute!important;
  top:clamp(118px, 15vh, 190px)!important;
  right:14px!important;
  bottom:16px!important;
  width:min(430px,calc(100vw - 28px))!important;
  max-height:none!important;
  height:auto!important;
  display:flex!important;
  flex-direction:column!important;
  padding:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  scrollbar-width:thin!important;
  scrollbar-color:#94a3b8 #eaf2ff!important;
}
.details::-webkit-scrollbar{width:10px!important;}
.details::-webkit-scrollbar-track{background:#eaf2ff!important;border-radius:999px!important;}
.details::-webkit-scrollbar-thumb{background:#94a3b8!important;border-radius:999px!important;border:2px solid #eaf2ff!important;}
.details .details-handle{
  position:sticky!important;
  top:0!important;
  z-index:4!important;
  flex:0 0 auto!important;
}
.details h2{flex:0 0 auto!important;}
.details .detail-actions{
  position:sticky!important;
  bottom:0!important;
  z-index:5!important;
  flex:0 0 auto!important;
  box-shadow:0 -10px 22px rgba(15,23,42,.08)!important;
}
.details label,
.details .detail-stats,
.details .confrontantes-section{flex:0 0 auto!important;}
.details .confrontantes-list{
  max-height:none!important;
  overflow:visible!important;
}

/* Modo desenho: linhas, guias e handles ficam visíveis em tempo real */
body.drawing-active #map{cursor:crosshair!important;}
.leaflet-overlay-pane svg{
  max-width:none!important;
  width:auto!important;
  height:auto!important;
  overflow:visible!important;
}
.leaflet-overlay-pane path.leaflet-interactive,
.leaflet-overlay-pane path.leaflet-draw-draw-polyline,
.leaflet-overlay-pane path.leaflet-draw-draw-polygon,
.leaflet-overlay-pane path.leaflet-draw-draw-rectangle,
.leaflet-overlay-pane path.leaflet-draw-draw-circle{
  stroke-opacity:1!important;
  stroke-width:5px!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  vector-effect:non-scaling-stroke!important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.35))!important;
}
.leaflet-overlay-pane path.leaflet-interactive[fill],
.leaflet-overlay-pane path.leaflet-interactive.leaflet-path-draggable{
  fill-opacity:.20!important;
}

/* Leaflet Draw usa dashes de guia entre o último ponto e o mouse.
   Eles estavam discretos demais; agora ficam azuis e visíveis. */
.leaflet-draw-guide-dash{
  width:9px!important;
  height:9px!important;
  margin-left:-4px!important;
  margin-top:-4px!important;
  border-radius:999px!important;
  background:#2563eb!important;
  opacity:1!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.22), 0 2px 6px rgba(0,0,0,.35)!important;
}

/* Vértices/handles do desenho e edição */
.leaflet-marker-icon.leaflet-div-icon,
.leaflet-editing-icon,
.leaflet-touch-icon,
.leaflet-draw-marker-icon{
  width:18px!important;
  height:18px!important;
  margin-left:-9px!important;
  margin-top:-9px!important;
  border:3px solid #2563eb!important;
  border-radius:6px!important;
  background:#fff!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.18),0 3px 8px rgba(0,0,0,.35)!important;
}
.leaflet-edit-move,
.leaflet-edit-resize{
  border-color:#f97316!important;
  box-shadow:0 0 0 4px rgba(249,115,22,.20),0 3px 8px rgba(0,0,0,.35)!important;
}

/* Tooltips do desenho */
.leaflet-draw-tooltip{
  background:#0f2a44!important;
  color:#fff!important;
  border:0!important;
  border-radius:10px!important;
  padding:7px 10px!important;
  font-weight:800!important;
  box-shadow:0 10px 24px rgba(15,23,42,.28)!important;
}
.leaflet-draw-tooltip:before{border-right-color:#0f2a44!important;}
.leaflet-draw-actions a{
  background:#2563eb!important;
  color:#fff!important;
  border-color:#1d4ed8!important;
}

/* Prévia do arco técnico também mais visível */
body.drawing-active .leaflet-pane .leaflet-interactive{
  outline:none!important;
}

/* Mobile/altura menor */
@media(max-width:820px){
  .details:not(.hidden){
    left:8px!important;
    right:8px!important;
    top:96px!important;
    bottom:8px!important;
    width:auto!important;
    max-height:none!important;
  }
}


/* ==========================================================
   v21.9.66 — Desenho em tempo real no estilo do vídeo
   ========================================================== */

.surveyor-live-draw-shape,
.leaflet-overlay-pane .surveyor-live-draw-shape{
  stroke:#facc15!important;
  stroke-width:5px!important;
  stroke-opacity:1!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  vector-effect:non-scaling-stroke!important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.45)) drop-shadow(0 0 4px rgba(250,204,21,.45))!important;
}
.leaflet-overlay-pane .surveyor-live-draw-shape[fill]{
  fill:#facc15!important;
  fill-opacity:.16!important;
}
.surveyor-live-draw-vertex,
.leaflet-overlay-pane .surveyor-live-draw-vertex{
  stroke:#2563eb!important;
  stroke-width:3px!important;
  fill:#fff!important;
  fill-opacity:1!important;
  filter:drop-shadow(0 2px 3px rgba(0,0,0,.55))!important;
}
.surveyor-live-draw-vertex.cursor{
  stroke:#f97316!important;
  stroke-width:3px!important;
}
.surveyor-live-draw-label{
  padding:2px 6px!important;
  border:0!important;
  border-radius:999px!important;
  background:#111827!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:900!important;
  box-shadow:0 4px 10px rgba(0,0,0,.25)!important;
}
.surveyor-live-draw-label:before{display:none!important;}

/* Também força os objetos temporários do Leaflet Draw nativo ficarem visíveis. */
.survey-live-drawing .leaflet-overlay-pane path,
.survey-live-editing .leaflet-overlay-pane path{
  stroke-opacity:1!important;
}
.survey-live-drawing .leaflet-overlay-pane path:not(.leaflet-interactive),
.survey-live-drawing .leaflet-overlay-pane path.leaflet-interactive{
  stroke:#facc15!important;
  stroke-width:5px!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  vector-effect:non-scaling-stroke!important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.45))!important;
}
.survey-live-drawing .leaflet-overlay-pane path[fill]{
  fill:#facc15!important;
  fill-opacity:.14!important;
}
.survey-live-editing .leaflet-overlay-pane path.leaflet-interactive{
  stroke:#facc15!important;
  stroke-width:5px!important;
  stroke-opacity:1!important;
  fill-opacity:.14!important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.45))!important;
}

/* Dashes de guia estilo Google Earth: pontos grandes e azuis no caminho do cursor. */
.survey-live-drawing .leaflet-draw-guide-dash,
.leaflet-draw-guide-dash{
  width:8px!important;
  height:8px!important;
  margin-left:-4px!important;
  margin-top:-4px!important;
  border-radius:999px!important;
  background:#2563eb!important;
  opacity:1!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.28),0 2px 5px rgba(0,0,0,.38)!important;
}

/* Handles de edição/vértices: quadrados brancos com borda azul, como no vídeo. */
.leaflet-marker-icon.leaflet-div-icon,
.leaflet-editing-icon,
.leaflet-touch-icon,
.leaflet-draw-marker-icon{
  width:18px!important;
  height:18px!important;
  margin-left:-9px!important;
  margin-top:-9px!important;
  border:3px solid #2563eb!important;
  border-radius:4px!important;
  background:#fff!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.18),0 3px 8px rgba(0,0,0,.45)!important;
}
.survey-live-editing .leaflet-editing-icon,
.survey-live-editing .leaflet-touch-icon{
  border-color:#facc15!important;
  box-shadow:0 0 0 4px rgba(250,204,21,.22),0 3px 8px rgba(0,0,0,.45)!important;
}

/* Tooltip do desenho com leitura melhor */
.leaflet-draw-tooltip{
  background:#111827!important;
  color:#fff!important;
  border:0!important;
  border-radius:10px!important;
  padding:7px 10px!important;
  font-size:12px!important;
  font-weight:850!important;
  box-shadow:0 10px 24px rgba(0,0,0,.28)!important;
}
.leaflet-draw-tooltip:before{border-right-color:#111827!important;}

/* Ações do desenho */
.leaflet-draw-actions a{
  background:#2563eb!important;
  color:#fff!important;
  border-color:#1d4ed8!important;
}


/* ==========================================================
   v21.9.67 — Desenho próprio em tempo real e geometria persistente
   ========================================================== */

.leaflet-pane[style*="z-index: 620"],
.leaflet-pane[style*="z-index: 650"]{
  pointer-events:auto!important;
}

.survey-live-drawing #map{
  cursor:crosshair!important;
}

.survey-live-drawing .leaflet-container{
  cursor:crosshair!important;
}

/* Prévia amarela ao estilo do vídeo: traço aparece enquanto marca os pontos */
.survey-live-drawing .surveyor-live-draw-shape,
.surveyor-live-draw-shape{
  stroke:#facc15!important;
  stroke-width:6px!important;
  stroke-opacity:1!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  vector-effect:non-scaling-stroke!important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.48)) drop-shadow(0 0 6px rgba(250,204,21,.5))!important;
}
.survey-live-drawing .surveyor-live-draw-shape[fill],
.surveyor-live-draw-shape[fill]{
  fill:#facc15!important;
  fill-opacity:.16!important;
}

/* Vértices da prévia */
.survey-live-drawing .surveyor-live-draw-vertex,
.surveyor-live-draw-vertex{
  stroke:#2563eb!important;
  stroke-width:3px!important;
  fill:#fff!important;
  fill-opacity:1!important;
  filter:drop-shadow(0 2px 3px rgba(0,0,0,.55))!important;
}
.surveyor-live-draw-vertex.cursor{
  stroke:#f97316!important;
  stroke-width:3px!important;
}

/* Tooltip numérico dos pontos */
.surveyor-live-draw-label{
  padding:2px 7px!important;
  border:0!important;
  border-radius:999px!important;
  background:#111827!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:900!important;
  box-shadow:0 4px 10px rgba(0,0,0,.28)!important;
}
.surveyor-live-draw-label::before{display:none!important;}

/* Geometria final desenhada pelo usuário fica por cima das camadas e bem visível */
.leaflet-pane path.leaflet-interactive{
  vector-effect:non-scaling-stroke!important;
}
.leaflet-pane path.leaflet-interactive[stroke="#2563eb"],
.leaflet-pane path.leaflet-interactive[stroke="#35c982"]{
  stroke-opacity:1!important;
  stroke-width:5px!important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.35))!important;
}

/* Edição: deixa a geometria destacada e os handles claros */
.survey-live-editing .leaflet-pane path.leaflet-interactive{
  stroke:#facc15!important;
  stroke-width:6px!important;
  stroke-opacity:1!important;
  fill-opacity:.14!important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.5))!important;
}
.leaflet-editing-icon,
.leaflet-div-icon.leaflet-editing-icon,
.leaflet-marker-icon.leaflet-div-icon{
  width:18px!important;
  height:18px!important;
  margin-left:-9px!important;
  margin-top:-9px!important;
  border:3px solid #2563eb!important;
  border-radius:6px!important;
  background:#fff!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.2),0 3px 8px rgba(0,0,0,.38)!important;
}

/* Dicas nativas ainda ficam legíveis quando usadas por medir/editar */
.leaflet-draw-tooltip{
  background:#0f2a44!important;
  color:#fff!important;
  border:0!important;
  border-radius:10px!important;
  padding:7px 10px!important;
  font-weight:800!important;
  box-shadow:0 10px 24px rgba(15,23,42,.28)!important;
}
.leaflet-draw-tooltip:before{border-right-color:#0f2a44!important;}



/* ==========================================================
   v21.9.68 — Traço final permanente e visível
   ========================================================== */
.surveyor-final-draw-shape,
.leaflet-overlay-pane .surveyor-final-draw-shape,
.leaflet-pane .surveyor-final-draw-shape{
  stroke:#facc15!important;
  stroke-width:6px!important;
  stroke-opacity:1!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  vector-effect:non-scaling-stroke!important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.55)) drop-shadow(0 0 5px rgba(250,204,21,.55))!important;
}
.surveyor-final-draw-shape[fill],
.leaflet-overlay-pane .surveyor-final-draw-shape[fill],
.leaflet-pane .surveyor-final-draw-shape[fill]{
  fill:#facc15!important;
  fill-opacity:.18!important;
}
.leaflet-pane path.surveyor-final-draw-shape.leaflet-interactive{
  stroke:#facc15!important;
  stroke-width:6px!important;
  stroke-opacity:1!important;
  fill:#facc15!important;
  fill-opacity:.18!important;
}
/* Enquanto desenha, o segmento entre pontos fica sólido e os pontos continuam aparecendo. */
.survey-live-drawing .surveyor-live-draw-shape{
  stroke:#facc15!important;
  stroke-width:6px!important;
  stroke-opacity:1!important;
}


/* ==========================================================
   v21.9.69 — correção real do SVG do mapa, desenho visível e Earth 3D
   ========================================================== */
/* O reset global de svg/canvas quebrava camadas vetoriais do Leaflet em alguns navegadores. */
.leaflet-container svg,
.leaflet-container canvas,
.leaflet-container img{
  max-width:none!important;
  max-height:none!important;
}
.leaflet-overlay-pane svg,
.leaflet-drawnPane-pane svg,
.leaflet-liveDrawPane-pane svg{
  width:100%!important;
  height:100%!important;
  overflow:visible!important;
  max-width:none!important;
  max-height:none!important;
}
.leaflet-drawnPane-pane,
.leaflet-liveDrawPane-pane{
  z-index:620!important;
  pointer-events:auto!important;
}
.leaflet-liveDrawPane-pane{z-index:650!important;}

/* Desenho ao vivo: agora os pontos e linhas são DIV + SVG explícito, sem depender do canvas antigo. */
.surveyor-live-draw-point{
  width:22px!important;
  height:22px!important;
  display:grid!important;
  place-items:center!important;
  background:transparent!important;
  border:0!important;
}
.surveyor-live-draw-point span{
  width:16px!important;
  height:16px!important;
  display:block!important;
  border:3px solid #2563eb!important;
  border-radius:5px!important;
  background:#fff!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.22),0 3px 9px rgba(0,0,0,.45)!important;
}
.surveyor-live-draw-point.first span{border-color:#16a34a!important;box-shadow:0 0 0 4px rgba(22,163,74,.22),0 3px 9px rgba(0,0,0,.45)!important;}
.surveyor-live-draw-point.cursor span{border-color:#f97316!important;box-shadow:0 0 0 4px rgba(249,115,22,.22),0 3px 9px rgba(0,0,0,.45)!important;}

.leaflet-liveDrawPane-pane path,
.leaflet-drawnPane-pane path,
path.surveyor-live-draw-shape,
path.surveyor-final-draw-shape{
  stroke:#facc15!important;
  stroke-width:6px!important;
  stroke-opacity:1!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  vector-effect:non-scaling-stroke!important;
  filter:drop-shadow(0 2px 2px rgba(0,0,0,.55)) drop-shadow(0 0 5px rgba(250,204,21,.55))!important;
}
.leaflet-liveDrawPane-pane path[fill],
.leaflet-drawnPane-pane path[fill],
path.surveyor-live-draw-shape[fill],
path.surveyor-final-draw-shape[fill]{
  fill:#facc15!important;
  fill-opacity:.18!important;
}
.surveyor-live-draw-label{
  background:#111827!important;
  color:#fff!important;
  border:0!important;
  border-radius:999px!important;
  padding:2px 7px!important;
  font-size:11px!important;
  font-weight:900!important;
  box-shadow:0 4px 10px rgba(0,0,0,.3)!important;
}
.surveyor-live-draw-label::before{display:none!important;}

/* Editar: mantém traço e vértices visíveis. */
.survey-live-editing .leaflet-drawnPane-pane path,
.survey-live-editing .leaflet-overlay-pane path.leaflet-interactive{
  stroke:#facc15!important;
  stroke-width:6px!important;
  stroke-opacity:1!important;
  fill-opacity:.18!important;
}
.leaflet-editing-icon,
.leaflet-div-icon.leaflet-editing-icon{
  width:20px!important;
  height:20px!important;
  margin-left:-10px!important;
  margin-top:-10px!important;
  border:3px solid #2563eb!important;
  border-radius:5px!important;
  background:#fff!important;
  box-shadow:0 0 0 4px rgba(37,99,235,.22),0 3px 9px rgba(0,0,0,.45)!important;
}

/* Earth 3D embutido precisa ser uma camada absoluta acima do mapa. */
.geo-map-stage{position:relative!important;}
.earth3d-panel{
  position:absolute!important;
  inset:12px!important;
  z-index:2400!important;
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
  min-height:0!important;
  background:#fff!important;
  border:1px solid #dbe7f3!important;
  border-radius:18px!important;
  box-shadow:0 24px 80px rgba(15,23,42,.30)!important;
  overflow:hidden!important;
}
.earth3d-panel.hidden{display:none!important;}
.earth3d-panel-head{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:12px 14px!important;
  border-bottom:1px solid #dbe7f3!important;
  background:#fff!important;
  color:#0f2a44!important;
}
.earth3d-panel-head strong{display:block!important;font-size:15px!important;font-weight:900!important;}
.earth3d-panel-head span{display:block!important;margin-top:2px!important;font-size:12px!important;color:#64748b!important;}
#closeEarth3dPanel{
  width:36px!important;height:36px!important;border:1px solid #dbe7f3!important;border-radius:11px!important;background:#fff!important;color:#0f2a44!important;font-weight:900!important;cursor:pointer!important;
}
#closeEarth3dPanel:hover{background:#2563eb!important;color:#fff!important;}
#earth3dFrame{
  flex:1 1 auto!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  border:0!important;
  background:#020617!important;
}

/* ==========================================================
   v21.9.70 — Linha sem sombra e corte curvo real
   ========================================================== */
/* Remove SOMENTE a sombra da ferramenta Linha e do Desenhar corte. */
.surveyor-line-draw,
.surveyor-line-final,
.surveyor-cut-line,
.surveyor-cut-live,
.no-shadow,
.leaflet-liveDrawPane-pane path.no-shadow,
.leaflet-drawnPane-pane path.no-shadow,
path.surveyor-line-draw,
path.surveyor-line-final,
path.surveyor-cut-line,
path.surveyor-cut-live{
  filter:none!important;
}

.surveyor-line-draw,
.surveyor-line-final,
.leaflet-liveDrawPane-pane path.surveyor-line-draw,
.leaflet-drawnPane-pane path.surveyor-line-final{
  stroke:#facc15!important;
  stroke-width:6px!important;
  stroke-opacity:1!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  vector-effect:non-scaling-stroke!important;
}

.surveyor-cut-line,
.surveyor-cut-live,
.leaflet-liveDrawPane-pane path.surveyor-cut-live,
.leaflet-drawnPane-pane path.surveyor-cut-line{
  stroke:#2563eb!important;
  stroke-width:5px!important;
  stroke-opacity:1!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  vector-effect:non-scaling-stroke!important;
  filter:none!important;
}

.surveyor-cut-live-point{
  filter:none!important;
}

body.survey-curve-cut-drawing #map,
body.survey-curve-cut-drawing .leaflet-container{
  cursor:crosshair!important;
}

/* Os pontos guia do corte curvo ficam discretos e sem sombra pesada. */
.survey-curve-cut-drawing .leaflet-liveDrawPane-pane circle,
.survey-curve-cut-drawing .surveyor-cut-live-point{
  filter:none!important;
}


/* v21.9.71 — leveza no desenho curvo de glebas */
.surveyor-cut-live.no-shadow,
.surveyor-cut-line.no-shadow,
path.surveyor-cut-live.no-shadow,
path.surveyor-cut-line.no-shadow{
  filter:none!important;
  will-change:auto!important;
}
.survey-curve-cut-drawing .leaflet-overlay-pane path,
.survey-curve-cut-drawing .leaflet-interactive{
  filter:none!important;
}


/* ==========================================================
   v21.9.78 — linha/medição/corte sem sombra e curva por 3 pontos
   ========================================================== */
/* O usuário pediu linha simples: sem halo, sem brilho e sem sombra. */
#map .surveyor-line-draw,
#map .surveyor-line-final,
#map .surveyor-cut-live,
#map .surveyor-cut-line,
#map .surveyor-cut-helper,
#map .surveyor-measure-live,
#map .surveyor-measure-line,
#map path.surveyor-line-draw,
#map path.surveyor-line-final,
#map path.surveyor-cut-live,
#map path.surveyor-cut-line,
#map path.surveyor-cut-helper,
#map path.surveyor-measure-live,
#map path.surveyor-measure-line,
#map .leaflet-liveDrawPane-pane path.surveyor-line-draw,
#map .leaflet-drawnPane-pane path.surveyor-line-final,
#map .leaflet-liveDrawPane-pane path.surveyor-cut-live,
#map .leaflet-drawnPane-pane path.surveyor-cut-line,
#map .leaflet-liveDrawPane-pane path.surveyor-cut-helper,
#map .leaflet-liveDrawPane-pane path.surveyor-measure-live,
#map .leaflet-drawnPane-pane path.surveyor-measure-line,
#map path.no-shadow{
  filter:none!important;
  box-shadow:none!important;
  text-shadow:none!important;
}

#map .leaflet-liveDrawPane-pane path.surveyor-line-draw,
#map .leaflet-drawnPane-pane path.surveyor-line-final,
#map path.surveyor-line-draw,
#map path.surveyor-line-final{
  stroke:#facc15!important;
  stroke-width:4px!important;
  stroke-opacity:1!important;
  fill:none!important;
  fill-opacity:0!important;
  vector-effect:non-scaling-stroke!important;
}

#map .leaflet-liveDrawPane-pane path.surveyor-measure-live,
#map .leaflet-drawnPane-pane path.surveyor-measure-line,
#map path.surveyor-measure-live,
#map path.surveyor-measure-line{
  stroke:#2563eb!important;
  stroke-width:4px!important;
  stroke-opacity:1!important;
  fill:none!important;
  fill-opacity:0!important;
  vector-effect:non-scaling-stroke!important;
}

#map .leaflet-liveDrawPane-pane path.surveyor-cut-live,
#map .leaflet-drawnPane-pane path.surveyor-cut-line,
#map path.surveyor-cut-live,
#map path.surveyor-cut-line{
  stroke:#2563eb!important;
  stroke-width:4px!important;
  stroke-opacity:1!important;
  fill:none!important;
  fill-opacity:0!important;
  vector-effect:non-scaling-stroke!important;
}

#map .leaflet-liveDrawPane-pane path.surveyor-cut-helper,
#map path.surveyor-cut-helper{
  stroke:#94a3b8!important;
  stroke-width:2px!important;
  stroke-opacity:.85!important;
  fill:none!important;
  fill-opacity:0!important;
  filter:none!important;
}

/* Marcadores do corte curvo por 3 pontos discretos, sem sombra pesada. */
#map .surveyor-cut-live-point,
#map .surveyor-cut-live-point *{
  filter:none!important;
  box-shadow:none!important;
}

/* ==========================================================
   v21.9.80 — Barra de coordenadas centralizada no topo do mapa
   ========================================================== */
.geo-map-stage .geo-searchbar{
  position:absolute!important;
  top:18px!important;
  left:50%!important;
  right:auto!important;
  transform:translateX(-50%)!important;
  z-index:930!important;
  width:min(620px, calc(100% - 560px))!important;
  min-width:460px!important;
  max-width:calc(100% - 32px)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  padding:8px!important;
  border:1px solid rgba(207,224,255,.98)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 14px 34px rgba(15,23,42,.16)!important;
  backdrop-filter:blur(8px)!important;
}
.geo-map-stage .geo-searchbar input{
  flex:1 1 auto!important;
  width:auto!important;
  min-width:0!important;
  height:42px!important;
  min-height:42px!important;
  border-radius:12px!important;
  font-weight:650!important;
}
.geo-map-stage .geo-searchbar button{
  height:42px!important;
  min-height:42px!important;
  padding:0 16px!important;
  border-radius:12px!important;
  white-space:nowrap!important;
}
.geo-map-stage .geo-searchbar button:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 10px 20px rgba(15,23,42,.11)!important;
}
.geo-map-stage .geo-searchbar button:active{
  transform:scale(.98)!important;
}

/* Evita choque com o seletor de mapa/ações à direita em telas médias. */
@media(max-width:1250px){
  .geo-map-stage .geo-searchbar{
    top:72px!important;
    width:min(620px, calc(100% - 32px))!important;
    min-width:0!important;
  }
}

@media(max-width:760px){
  .geo-map-stage .geo-searchbar{
    left:10px!important;
    right:10px!important;
    top:72px!important;
    transform:none!important;
    width:auto!important;
    max-width:none!important;
    flex-wrap:wrap!important;
    justify-content:stretch!important;
  }
  .geo-map-stage .geo-searchbar input{
    flex-basis:100%!important;
  }
  .geo-map-stage .geo-searchbar button{
    flex:1 1 150px!important;
  }
}


/* ==========================================================
   v21.9.92 — Busca de cidade na barra de coordenadas
   ========================================================== */
.geo-search-input-wrap{
  position:relative!important;
  flex:1 1 auto!important;
  min-width:0!important;
}
.geo-map-stage .geo-searchbar .geo-search-input-wrap input{
  width:100%!important;
}
.city-suggest{
  position:absolute;
  top:calc(100% + 8px);
  left:0;
  right:0;
  z-index:1600;
  display:grid;
  gap:4px;
  max-height:300px;
  overflow:auto;
  padding:8px;
  border:1px solid rgba(207,224,255,.98);
  border-radius:14px;
  background:#fff;
  box-shadow:0 18px 38px rgba(15,23,42,.18);
}
.city-suggest.hidden{
  display:none!important;
}
.city-suggest-item{
  display:grid!important;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:10px;
  min-height:46px!important;
  width:100%;
  padding:8px 10px!important;
  border:1px solid transparent!important;
  border-radius:11px!important;
  background:#fff!important;
  color:var(--text)!important;
  text-align:left;
  cursor:pointer;
}
.city-suggest-item strong{
  font-size:14px;
  font-weight:850;
}
.city-suggest-item small{
  color:var(--muted);
  font-size:12px;
  white-space:nowrap;
}
.city-suggest-item:hover,
.city-suggest-item.active{
  border-color:#bfdbfe!important;
  background:#eff6ff!important;
  transform:none!important;
  box-shadow:none!important;
}
.city-suggest-status{
  padding:12px;
  color:var(--muted);
  font-weight:700;
  font-size:13px;
}
@media(max-width:760px){
  .geo-search-input-wrap{
    flex-basis:100%!important;
  }
  .city-suggest{
    max-height:240px;
  }
}

/* ==========================================================
   v21.9.91 — Corrige botão fechar do painel de detalhes
   ========================================================== */
.details .close,
.details #closeDetails{
  position:sticky!important;
  top:10px!important;
  right:10px!important;
  float:right!important;
  z-index:50!important;
  margin:10px 10px -44px auto!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid #d7e6ff!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#0f2a44!important;
  font-size:18px!important;
  font-weight:950!important;
  line-height:1!important;
  box-shadow:0 10px 24px rgba(15,23,42,.12)!important;
  cursor:pointer!important;
  pointer-events:auto!important;
}
.details .close:hover,
.details #closeDetails:hover{
  background:#2563eb!important;
  border-color:#2563eb!important;
  color:#fff!important;
  transform:translateY(-1px) scale(1.03)!important;
}
.details .details-handle{
  padding-right:64px!important;
}
.details h2{
  padding-right:64px!important;
}


/* v21.9.129 — Mapa alinhado ao Workspace Design */
body.georural-map-page{background:#f7f9fc!important;color:#111827!important;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important;}
body.georural-map-page .geo-app{background:#f7f9fc!important;grid-template-rows:58px 52px minmax(0,1fr)!important;}
body.georural-map-page .geo-brandbar{height:58px!important;background:#fff!important;border-bottom:1px solid #dfe5ee!important;padding:0 18px!important;box-shadow:none!important;}
body.georural-map-page .geo-brand-plate{width:34px!important;height:34px!important;border-radius:6px!important;background:#ecf3ff!important;border:1px solid #d9e6fa!important;}
body.georural-map-page .geo-brand::after{content:'Surveyor';font-size:15px!important;font-weight:900!important;color:#0f172a!important;}
body.georural-map-page .map-global-nav-toggle,body.georural-map-page .geo-brand-actions a,body.georural-map-page .geo-brand-actions button{height:34px!important;border-radius:4px!important;border:1px solid #d9e1ec!important;background:#fff!important;color:#0f172a!important;font-size:12px!important;font-weight:800!important;}
body.georural-map-page .geo-toolstrip{background:#fff!important;border-bottom:1px solid #dfe5ee!important;padding:7px 10px!important;}
body.georural-map-page .geo-layers-trigger,body.georural-map-page .geo-tool,body.georural-map-page .geo-toolbar-right button{height:34px!important;border-radius:4px!important;border:1px solid #d9e1ec!important;background:#fff!important;color:#0f172a!important;font-size:12px!important;box-shadow:none!important;}
body.georural-map-page .geo-layers-trigger,body.georural-map-page .geo-tool.active,body.georural-map-page .geo-toolbar-right .toolbar-primary,body.georural-map-page #saveBtn{background:#0f5bdc!important;border-color:#0f5bdc!important;color:#fff!important;}
body.georural-map-page .geo-sidepanel,body.georural-map-page .details,body.georural-map-page .map-menu,body.georural-map-page .layer-catalog-dialog{border-color:#dfe5ee!important;border-radius:5px!important;box-shadow:none!important;background:#fff!important;}
body.georural-map-page .map-global-nav{background:#fff!important;border-right:1px solid #dfe5ee!important;box-shadow:12px 0 30px rgba(15,23,42,.08)!important;}
body.georural-map-page .map-global-nav .nav a{border-radius:3px!important;font-size:12px!important;}
body.georural-map-page .map-global-nav .nav a.active{background:#eef1f5!important;color:#0f172a!important;box-shadow:inset 3px 0 0 #0f5bdc!important;}

/* v21.9.130 — mapa alinhado ao workspace sem remendo antigo */
body.workspace-map-v130{background:#f7f9fc!important;color:#0b1220!important;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important;}
body.workspace-map-v130 .geo-app{grid-template-rows:56px 52px minmax(0,1fr)!important;background:#f7f9fc!important;}
body.workspace-map-v130 .geo-brandbar{height:56px!important;background:#fff!important;border-bottom:1px solid #d9e1ec!important;padding:0 16px!important;box-shadow:none!important;}
body.workspace-map-v130 .geo-brand-plate{width:34px!important;height:34px!important;border-radius:8px!important;border:1px solid #d9e6fa!important;background:#ecf3ff!important;}
body.workspace-map-v130 .geo-brand::after{content:'Surveyor'!important;font-size:15px!important;font-weight:900!important;color:#0f172a!important;}
body.workspace-map-v130 .map-global-nav-toggle,body.workspace-map-v130 .geo-brand-actions a,body.workspace-map-v130 .geo-brand-actions button{height:34px!important;border-radius:4px!important;border:1px solid #d9e1ec!important;background:#fff!important;color:#0f172a!important;font-size:12px!important;font-weight:850!important;box-shadow:none!important;}
body.workspace-map-v130 .geo-toolstrip{height:52px!important;background:#fff!important;border-bottom:1px solid #d9e1ec!important;padding:7px 12px!important;box-shadow:none!important;}
body.workspace-map-v130 .geo-tool,body.workspace-map-v130 .geo-toolbar-right button,body.workspace-map-v130 .geo-layers-trigger,body.workspace-map-v130 .file-btn{height:34px!important;border-radius:4px!important;border:1px solid #d9e1ec!important;background:#fff!important;color:#0f172a!important;font-size:12px!important;font-weight:850!important;box-shadow:none!important;}
body.workspace-map-v130 .geo-tool.active,body.workspace-map-v130 .geo-layers-trigger{background:#edf4ff!important;border-color:#cfe0ff!important;color:#0f5bdc!important;}
body.workspace-map-v130 .geo-sidepanel{background:#fff!important;border-right:1px solid #d9e1ec!important;box-shadow:none!important;}
body.workspace-map-v130 .compact-section,body.workspace-map-v130 .layer-card,body.workspace-map-v130 .layer-item{border-radius:5px!important;border:1px solid #d9e1ec!important;background:#fff!important;box-shadow:none!important;}
body.workspace-map-v130 .compact-heading{background:#f8fafc!important;border-bottom:1px solid #edf1f6!important;}
body.workspace-map-v130 .map-global-nav{width:210px!important;background:#fff!important;border-right:1px solid #d9e1ec!important;box-shadow:12px 0 30px rgba(15,23,42,.08)!important;}
body.workspace-map-v130 .map-global-nav .brand{height:72px!important;padding:14px 16px!important;border-bottom:1px solid #d9e1ec!important;}
body.workspace-map-v130 .map-global-nav .brand-mark{width:34px!important;height:34px!important;border-radius:8px!important;background:#ecf3ff!important;border:1px solid #d9e6fa!important;}
body.workspace-map-v130 .map-global-nav strong{font-size:15px!important;font-weight:900!important;color:#0f172a!important;}
body.workspace-map-v130 .map-global-nav small{font-size:9px!important;font-weight:700!important;color:#64748b!important;}
body.workspace-map-v130 .map-global-nav .nav{padding:12px 8px!important;gap:2px!important;}
body.workspace-map-v130 .map-global-nav .nav a{min-height:36px!important;grid-template-columns:24px minmax(0,1fr) 8px!important;gap:8px!important;padding:6px 8px!important;border:0!important;border-radius:3px!important;background:transparent!important;color:#344054!important;font-size:12px!important;font-weight:750!important;}
body.workspace-map-v130 .map-global-nav .nav a::after{content:""!important;width:4px!important;height:4px!important;border-right:1.5px solid #98a2b3!important;border-bottom:1.5px solid #98a2b3!important;transform:rotate(-45deg)!important;opacity:.55!important;justify-self:end!important;}
body.workspace-map-v130 .map-global-nav .nav a.active{background:#eef1f5!important;color:#0f172a!important;box-shadow:inset 3px 0 0 #0f5bdc!important;}
body.workspace-map-v130 .map-global-nav .nav-icon{width:22px!important;height:22px!important;border-radius:3px!important;background:#fff!important;border:1px solid #e3e8f0!important;color:#64748b!important;font-size:11px!important;}


/* v21.9.134 — Mapa mais limpo: controles no topo, abas quadradas e métricas compactas */
body.georural-map-page{
  --map-square-radius:3px;
}
body.georural-map-page .geo-toolstrip{
  grid-template-columns:210px minmax(0,1fr) auto!important;
  gap:8px!important;
  min-height:52px!important;
  overflow:visible!important;
}
body.georural-map-page .geo-toolbar-right-map{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:7px!important;
  overflow:visible!important;
  flex-wrap:nowrap!important;
  min-width:max-content!important;
}
body.georural-map-page .top-map-switcher{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  height:34px!important;
  padding:0 8px!important;
  border:1px solid #d9e1ec!important;
  border-radius:var(--map-square-radius)!important;
  background:#fff!important;
  box-shadow:none!important;
  white-space:nowrap!important;
}
body.georural-map-page .top-map-switcher label{
  color:#64748b!important;
  font-size:12px!important;
  font-weight:850!important;
}
body.georural-map-page .top-map-switcher select{
  min-width:185px!important;
  max-width:220px!important;
  height:30px!important;
  border:0!important;
  border-left:1px solid #e5eaf1!important;
  border-radius:0!important;
  padding:0 4px 0 8px!important;
  background:#fff!important;
  color:#0f172a!important;
  font-weight:750!important;
  outline:none!important;
}
body.georural-map-page .hidden-file-input{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}
body.georural-map-page .top-file-btn,
body.georural-map-page .top-download-menu summary,
body.georural-map-page .geo-toolbar-right-map button{
  height:34px!important;
  min-height:34px!important;
  border-radius:var(--map-square-radius)!important;
  box-shadow:none!important;
}
body.georural-map-page .top-file-btn{
  background:#edf4ff!important;
  color:#0f5bdc!important;
  border-color:#cfe0ff!important;
}
body.georural-map-page .top-download-menu{
  position:relative!important;
  height:34px!important;
}
body.georural-map-page .top-download-menu .map-download-list{
  z-index:5000!important;
  top:calc(100% + 8px)!important;
  right:0!important;
  border-radius:var(--map-square-radius)!important;
}
body.georural-map-page .map-menu{
  display:none!important;
}
body.georural-map-page .sidepanel-tabs{
  gap:5px!important;
  padding:6px!important;
}
body.georural-map-page .sidepanel-tabs button,
body.georural-map-page .compact-section,
body.georural-map-page .compact-fields input,
body.georural-map-page .compact-fields select,
body.georural-map-page .compact-fields textarea,
body.georural-map-page .layer-card,
body.georural-map-page .layer-item,
body.georural-map-page .map-catalog-group,
body.georural-map-page .map-catalog-item,
body.georural-map-page .catalog-import-card,
body.georural-map-page .geoservice-form input,
body.georural-map-page .geoservice-form select,
body.georural-map-page .geoservice-form button,
body.georural-map-page .layer-catalog-dialog,
body.georural-map-page .catalog-dialog-tabs button,
body.georural-map-page .catalog-dialog-footer button{
  border-radius:var(--map-square-radius)!important;
}
body.georural-map-page .sidepanel-tabs button.active{
  box-shadow:inset 0 -2px 0 #0f5bdc!important;
}
body.georural-map-page .geo-searchbar{
  top:12px!important;
  left:50%!important;
  transform:translateX(-50%)!important;
  max-width:min(620px,calc(100% - 440px))!important;
  border-radius:var(--map-square-radius)!important;
  padding:6px!important;
  box-shadow:0 8px 20px rgba(15,23,42,.10)!important;
}
body.georural-map-page .geo-searchbar input,
body.georural-map-page .geo-searchbar button{
  border-radius:var(--map-square-radius)!important;
}
body.georural-map-page .metrics{
  left:12px!important;
  bottom:12px!important;
  grid-template-columns:repeat(4,minmax(58px,1fr))!important;
  gap:5px!important;
  max-width:390px!important;
  padding:6px!important;
  border-radius:var(--map-square-radius)!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 8px 20px rgba(15,23,42,.12)!important;
}
body.georural-map-page .metrics div{
  padding:5px 7px!important;
  border-radius:var(--map-square-radius)!important;
  background:#f8fafc!important;
}
body.georural-map-page .metrics span{
  font-size:10px!important;
  line-height:1.1!important;
}
body.georural-map-page .metrics b{
  font-size:12px!important;
  line-height:1.15!important;
}
@media(max-width:1280px){
  body.georural-map-page .geo-toolstrip{grid-template-columns:185px minmax(0,1fr)!important;grid-template-areas:"layers actions" "tools tools"!important;height:auto!important;}
  body.georural-map-page .geo-layers-trigger{grid-area:layers!important;}
  body.georural-map-page .geo-toolbar-right-map{grid-area:actions!important;overflow:auto!important;min-width:0!important;justify-content:flex-end!important;}
  body.georural-map-page .geo-toolbar-center{grid-area:tools!important;}
  body.georural-map-page .geo-searchbar{max-width:min(620px,calc(100% - 30px))!important;top:64px!important;}
}
@media(max-width:820px){
  body.georural-map-page .top-map-switcher select{min-width:150px!important;}
  body.georural-map-page .geo-toolbar-right-map{justify-content:flex-start!important;}
  body.georural-map-page .metrics{grid-template-columns:repeat(2,1fr)!important;max-width:none!important;left:8px!important;right:8px!important;}
}


/* v21.9.136 — Mapa: botões e busca mais compactos para liberar área útil */
body.georural-map-page{
  --map-control-h:30px;
  --map-control-radius:3px;
}
body.georural-map-page .geo-app{
  grid-template-rows:48px 44px minmax(0,1fr)!important;
}
body.georural-map-page .geo-brandbar{
  height:48px!important;
  padding:0 10px!important;
}
body.georural-map-page .geo-brand-plate{
  width:30px!important;
  height:30px!important;
  border-radius:var(--map-control-radius)!important;
}
body.georural-map-page .geo-brand::after{
  font-size:13px!important;
}
body.georural-map-page .map-global-nav-toggle,
body.georural-map-page .geo-brand-actions a,
body.georural-map-page .geo-brand-actions button{
  height:30px!important;
  min-height:30px!important;
  padding:0 8px!important;
  border-radius:var(--map-control-radius)!important;
  font-size:11px!important;
}
body.georural-map-page .geo-toolstrip{
  min-height:44px!important;
  height:44px!important;
  grid-template-columns:160px minmax(0,1fr) auto!important;
  gap:5px!important;
  padding:5px 7px!important;
}
body.georural-map-page .geo-toolbar-center,
body.georural-map-page .geo-tool-group,
body.georural-map-page .geo-toolbar-right-map{
  gap:4px!important;
}
body.georural-map-page .geo-layers-trigger,
body.georural-map-page .geo-tool,
body.georural-map-page .geo-toolbar-right-map button,
body.georural-map-page .file-btn,
body.georural-map-page .top-file-btn,
body.georural-map-page .top-download-menu summary{
  height:var(--map-control-h)!important;
  min-height:var(--map-control-h)!important;
  padding:0 8px!important;
  border-radius:var(--map-control-radius)!important;
  font-size:11px!important;
  line-height:1!important;
}
body.georural-map-page .geo-layers-trigger{
  padding:0 10px!important;
}
body.georural-map-page .geo-layers-trigger b{
  font-size:15px!important;
}
body.georural-map-page .geo-tool svg{
  width:13px!important;
  height:13px!important;
}
body.georural-map-page .top-map-switcher{
  height:var(--map-control-h)!important;
  padding:0 6px!important;
  gap:5px!important;
  border-radius:var(--map-control-radius)!important;
}
body.georural-map-page .top-map-switcher label{
  font-size:10.5px!important;
}
body.georural-map-page .top-map-switcher select{
  height:26px!important;
  min-width:145px!important;
  max-width:185px!important;
  font-size:11px!important;
  padding-left:6px!important;
}
body.georural-map-page .geo-searchbar{
  top:8px!important;
  padding:4px!important;
  gap:5px!important;
  max-width:min(520px,calc(100% - 520px))!important;
  border-radius:var(--map-control-radius)!important;
  box-shadow:0 5px 14px rgba(15,23,42,.10)!important;
}
body.georural-map-page .geo-searchbar input{
  width:250px!important;
  min-height:30px!important;
  height:30px!important;
  padding:0 8px!important;
  font-size:12px!important;
  border-radius:var(--map-control-radius)!important;
}
body.georural-map-page .geo-searchbar button{
  min-height:30px!important;
  height:30px!important;
  padding:0 8px!important;
  font-size:12px!important;
  border-radius:var(--map-control-radius)!important;
}
body.georural-map-page .geo-sidepanel{
  top:0!important;
}
body.georural-map-page .sidepanel-tabs button{
  min-height:30px!important;
  font-size:10.5px!important;
  border-radius:var(--map-control-radius)!important;
}
body.georural-map-page .compact-heading{
  min-height:34px!important;
}
body.georural-map-page .compact-fields input,
body.georural-map-page .compact-fields select{
  min-height:34px!important;
  font-size:12px!important;
  border-radius:var(--map-control-radius)!important;
}
@media(max-width:1280px){
  body.georural-map-page .geo-toolstrip{height:auto!important;min-height:76px!important;grid-template-columns:160px minmax(0,1fr)!important;}
  body.georural-map-page .geo-searchbar{top:54px!important;max-width:min(520px,calc(100% - 30px))!important;}
}
@media(max-width:980px){
  body.georural-map-page .geo-tool span{display:none!important;}
  body.georural-map-page .geo-tool{width:32px!important;padding:0!important;}
  body.georural-map-page .top-map-switcher select{max-width:150px!important;}
}

/* v21.9.137 — Mapa: grupo de ferramentas principais deslocado levemente à direita */
body.georural-map-page .geo-toolbar-center{
  padding-left:22px!important;
}
body.georural-map-page .geo-toolstrip{
  column-gap:8px!important;
}
@media(max-width:1280px){
  body.georural-map-page .geo-toolbar-center{
    padding-left:0!important;
  }
}


/* v21.9.138 — Mapa: barra única no topo para liberar espaço vertical */
body.georural-map-page .geo-app{
  grid-template-rows:42px minmax(0,1fr)!important;
}
body.georural-map-page .geo-brandbar.map-onebar{
  height:42px!important;
  min-height:42px!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:8px!important;
  padding:0 6px!important;
  background:#fff!important;
  border-bottom:1px solid #d9e1ec!important;
  overflow:visible!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-brand-left{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  min-width:162px!important;
  max-width:162px!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-brand-plate{
  width:28px!important;
  height:28px!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-brand::after{
  font-size:13px!important;
}
body.georural-map-page .geo-brandbar.map-onebar .map-global-nav-toggle{
  height:28px!important;
  min-height:28px!important;
  padding:0 7px!important;
  font-size:11px!important;
  border-radius:3px!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip{
  width:100%!important;
  min-width:0!important;
  height:42px!important;
  min-height:42px!important;
  display:grid!important;
  grid-template-columns:150px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:6px!important;
  padding:4px 0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  overflow:visible!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-layers-trigger,
body.georural-map-page .geo-brandbar.map-onebar .geo-tool,
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map button,
body.georural-map-page .geo-brandbar.map-onebar .file-btn,
body.georural-map-page .geo-brandbar.map-onebar .top-file-btn,
body.georural-map-page .geo-brandbar.map-onebar .top-download-menu summary{
  height:28px!important;
  min-height:28px!important;
  padding:0 7px!important;
  font-size:10.5px!important;
  border-radius:3px!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center{
  padding-left:0!important;
  display:flex!important;
  justify-content:flex-start!important;
  overflow:visible!important;
  gap:4px!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-tool-group,
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map{
  gap:4px!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-tool svg{
  width:12px!important;
  height:12px!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-layers-trigger{
  width:150px!important;
  padding:0 8px!important;
}
body.georural-map-page .geo-brandbar.map-onebar .top-map-switcher{
  height:28px!important;
  padding:0 5px!important;
  gap:4px!important;
  border-radius:3px!important;
}
body.georural-map-page .geo-brandbar.map-onebar .top-map-switcher label{
  font-size:10px!important;
}
body.georural-map-page .geo-brandbar.map-onebar .top-map-switcher select{
  height:24px!important;
  min-width:130px!important;
  max-width:170px!important;
  font-size:10.5px!important;
}
body.georural-map-page .geo-brandbar.map-onebar .top-download-menu{
  height:28px!important;
}
body.georural-map-page .geo-brandbar.map-onebar .top-download-menu .map-download-list{
  top:calc(100% + 8px)!important;
}
body.georural-map-page .geo-searchbar{
  top:8px!important;
}
@media(max-width:1380px){
  body.georural-map-page .geo-brandbar.map-onebar .geo-tool span{display:none!important;}
  body.georural-map-page .geo-brandbar.map-onebar .geo-tool{width:30px!important;padding:0!important;}
  body.georural-map-page .geo-brandbar.map-onebar .top-map-switcher select{max-width:145px!important;}
}
@media(max-width:980px){
  body.georural-map-page .geo-app{grid-template-rows:74px minmax(0,1fr)!important;}
  body.georural-map-page .geo-brandbar.map-onebar{
    height:74px!important;
    grid-template-columns:1fr!important;
    grid-template-rows:32px 38px!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-brand-left{max-width:none!important;min-width:0!important;}
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip{height:38px!important;grid-template-columns:140px minmax(0,1fr) auto!important;overflow:auto!important;}
}


/* ==========================================================
   v21.9.155 — Desenhos editáveis: cor real e traço mais fino
   ========================================================== */
#map .leaflet-drawnPane-pane path.leaflet-interactive,
#map path.surveyor-final-draw-shape,
#map .leaflet-pane path.surveyor-final-draw-shape.leaflet-interactive{
  stroke:var(--surveyor-layer-stroke,#2563eb)!important;
  stroke-width:var(--surveyor-layer-weight,3.2px)!important;
  stroke-opacity:var(--surveyor-layer-stroke-opacity,.95)!important;
  vector-effect:non-scaling-stroke!important;
  filter:none!important;
}
#map .leaflet-drawnPane-pane path.leaflet-interactive:not([fill="none"]),
#map path.surveyor-final-draw-shape:not([fill="none"]),
#map .leaflet-pane path.surveyor-final-draw-shape.leaflet-interactive:not([fill="none"]){
  fill:var(--surveyor-layer-fill,var(--surveyor-layer-stroke,#2563eb))!important;
  fill-opacity:var(--surveyor-layer-fill-opacity,.18)!important;
}
#map .leaflet-drawnPane-pane path[fill="none"],
#map path.surveyor-line-final,
#map path.no-shadow{
  fill:none!important;
  fill-opacity:0!important;
}
#map .leaflet-liveDrawPane-pane path.surveyor-live-draw-shape{
  stroke-width:3.2px!important;
  filter:none!important;
}


/* ==========================================================
   v21.9.156 — Estilo separado do polígono e download individual
   ========================================================== */
.layer-style-controls label span{min-width:92px!important;}
.layer-style-controls input[data-style-field="stroke"],
.layer-style-controls input[data-style-field="fill"]{cursor:pointer!important;}
.layer-style-controls input[data-style-field="weight"]{accent-color:#0f5bdc!important;}
.details .detail-actions .hidden{display:none!important;}
body.georural-map-page .top-download-menu .map-download-list button#downloadSelectedBtn{
  border-top:1px solid #e5eaf1!important;
  margin-top:4px!important;
  padding-top:8px!important;
  font-weight:900!important;
  color:#0f5bdc!important;
}
#map .leaflet-drawnPane-pane path.leaflet-interactive,
#map path.surveyor-final-draw-shape,
#map .leaflet-pane path.surveyor-final-draw-shape.leaflet-interactive{
  stroke:var(--surveyor-layer-stroke,#2563eb)!important;
  stroke-width:var(--surveyor-layer-weight,2.2px)!important;
  stroke-opacity:var(--surveyor-layer-stroke-opacity,.95)!important;
  vector-effect:non-scaling-stroke!important;
  filter:none!important;
}
#map .leaflet-drawnPane-pane path.leaflet-interactive:not([fill="none"]),
#map path.surveyor-final-draw-shape:not([fill="none"]),
#map .leaflet-pane path.surveyor-final-draw-shape.leaflet-interactive:not([fill="none"]){
  fill:var(--surveyor-layer-fill,var(--surveyor-layer-stroke,#2563eb))!important;
  fill-opacity:var(--surveyor-layer-fill-opacity,.20)!important;
}


/* ==========================================================
   v21.9.157 — Download do elemento selecionado e transparência real
   ========================================================== */
#map .leaflet-drawnPane-pane path.leaflet-interactive,
#map path.surveyor-final-draw-shape,
#map .leaflet-pane path.surveyor-final-draw-shape.leaflet-interactive{
  stroke:var(--surveyor-layer-stroke,#2563eb)!important;
  stroke-width:var(--surveyor-layer-weight,2.2px)!important;
  stroke-opacity:var(--surveyor-layer-stroke-opacity,.95)!important;
  filter:none!important;
}
#map .leaflet-drawnPane-pane path.leaflet-interactive:not([fill="none"]),
#map path.surveyor-final-draw-shape:not([fill="none"]),
#map .leaflet-pane path.surveyor-final-draw-shape.leaflet-interactive:not([fill="none"]){
  fill:var(--surveyor-layer-fill,var(--surveyor-layer-stroke,#2563eb))!important;
  fill-opacity:var(--surveyor-layer-fill-opacity,.20)!important;
}
.details .compact-detail-actions{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  flex-wrap:wrap!important;
  padding:10px!important;
}
.details .compact-detail-actions > button,
.details .compact-detail-actions > details > summary{
  min-height:34px!important;
  height:34px!important;
  padding:0 12px!important;
  border-radius:8px!important;
  font-size:13px!important;
  font-weight:850!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.details .compact-detail-actions .selected-download-menu{
  position:relative!important;
}
.details .compact-detail-actions .selected-download-menu > summary{
  list-style:none!important;
  cursor:pointer!important;
  border:1px solid #d7e2ef!important;
  background:#fff!important;
  color:#0f172a!important;
}
.details .compact-detail-actions .selected-download-menu > summary::-webkit-details-marker{display:none!important;}
.details .compact-detail-actions .selected-download-list{
  position:absolute!important;
  right:0!important;
  bottom:calc(100% + 8px)!important;
  min-width:150px!important;
  z-index:5000!important;
  display:grid!important;
  gap:4px!important;
  padding:8px!important;
  border:1px solid #d7e2ef!important;
  background:#fff!important;
  box-shadow:0 16px 35px rgba(15,23,42,.16)!important;
}
.details .compact-detail-actions .selected-download-list button{
  width:100%!important;
  min-height:32px!important;
  border:1px solid #e5eaf1!important;
  background:#f8fbff!important;
  color:#0f172a!important;
  border-radius:6px!important;
  font-size:12px!important;
  font-weight:850!important;
  text-align:left!important;
  justify-content:flex-start!important;
}
.details .compact-detail-actions .selected-download-list button:hover{
  background:#eef4ff!important;
  color:#0f5bdc!important;
}
.details .compact-detail-actions #generateAppBtn.hidden{display:none!important;}
.details .compact-detail-actions #generateAppBtn,
.details .compact-detail-actions #deleteBtn,
.details .compact-detail-actions #copyBtn{
  flex:0 0 auto!important;
}
.layer-style-controls input[data-style-field="opacity"]{
  accent-color:#2563eb!important;
}


/* ==========================================================
   v21.9.160 — Pop-up WMS e atribuição do mapa compactos
   ========================================================== */
#map .leaflet-popup.surveyor-wms-popup .leaflet-popup-content-wrapper,
#map .leaflet-popup .reference-popup.wms-info-popup{
  max-width:390px!important;
}
#map .leaflet-popup.surveyor-wms-popup .leaflet-popup-content{
  width:auto!important;
  max-width:360px!important;
  min-width:240px!important;
  margin:14px 16px!important;
  overflow:hidden!important;
}
#map .reference-popup,
#map .wms-info-popup{
  max-width:100%!important;
  color:#1f2937!important;
  font-size:13px!important;
  line-height:1.28!important;
  overflow:hidden!important;
}
#map .wms-info-popup > b{
  display:block!important;
  margin:0 0 8px!important;
  font-size:15px!important;
  line-height:1.2!important;
  color:#222!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
#map .wms-info-popup table{
  width:100%!important;
  max-width:100%!important;
  table-layout:fixed!important;
  border-collapse:collapse!important;
}
#map .wms-info-popup th,
#map .wms-info-popup td{
  padding:2px 4px!important;
  vertical-align:top!important;
  border:0!important;
  line-height:1.22!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
}
#map .wms-info-popup th{
  width:96px!important;
  max-width:96px!important;
  color:#3f3f46!important;
  font-weight:850!important;
  text-align:left!important;
}
#map .wms-info-popup td{
  color:#404040!important;
  font-weight:500!important;
}
#map .wms-info-popup small,
#map .wms-info-popup p{
  display:block!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:break-word!important;
}
#map .leaflet-control-attribution{
  max-width:min(520px,calc(100vw - 360px))!important;
  padding:1px 4px!important;
  margin:0 2px 2px 0!important;
  border-radius:3px!important;
  background:rgba(255,255,255,.42)!important;
  color:rgba(15,23,42,.58)!important;
  font-size:8.5px!important;
  line-height:1.05!important;
  opacity:.48!important;
  box-shadow:none!important;
  transform-origin:right bottom!important;
}
#map .leaflet-control-attribution a{
  color:rgba(37,99,235,.62)!important;
  text-decoration:none!important;
}
#map .leaflet-control-attribution:hover,
#map .leaflet-control-attribution:focus-within{
  opacity:.78!important;
  background:rgba(255,255,255,.74)!important;
}
