/* Surveyor 21.11.5 — MAP UI CURRENT consolidated. Single active map visual layer. */

/* ===== assets/css/features/mapa/styles.css ===== */
:root{
  color-scheme: light;
  --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;
}
html,body{margin:0;width:100%;height:100%;font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;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;display:flex;flex-direction:column;transform:translateX(-105%);transition:.18s ease;}.map-global-nav.open{transform:translateX(0);}.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 .nav{flex-direction:column;overflow:auto;min-height:0;}.map-global-nav .nav a{grid-template-columns:30px minmax(0,1fr);border:1px solid transparent;text-decoration:none;}.map-global-nav .nav a:hover,.map-global-nav .nav a.active{border-color:#d7e6ff;}.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{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;}.sidepanel-tabs button{flex:1;border:1px solid transparent;background:transparent;color:var(--muted);font-weight:850;}.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;}.geo-side-footer{padding:10px 12px;background:#fff;border-top:1px solid var(--line);font-size:12px;color:var(--muted);}.geo-map-stage{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;scrollbar-gutter:stable;}.details .close{float:right;}.detail-actions,.dialog-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;align-items:center;margin-top:12px;padding-right:4px;}.detail-actions button,.dialog-actions button{min-height:36px;min-width:88px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0 12px;font-weight:750;position:relative;z-index:2;flex:0 0 auto;}.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;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);}.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));}.confrontante-grid label{display:grid;gap:6px;}.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;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;}.sidepanel-tabs button{position:relative;}.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 path,.leaflet-interactive{stroke-opacity:1!important;vector-effect:non-scaling-stroke;}.leaflet-overlay-pane .leaflet-interactive{stroke-width:3px;}.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{
  
  
  
  
  
  align-items:center!important;
  gap:8px!important;
  min-height:40px!important;
  padding:0 14px!important;
  
  
  
  
  font-weight:850!important;
  
  
  
}

.sidepanel-floating-toggle.visible{display:inline-flex!important;animation:sv63PanelIn .18s ease both!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;}



.sidepanel-collapse-btn{
  
  
  
  
  
  
  
  
  
  
  pointer-events:auto!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;
  
  border:1px solid var(--sv64-line)!important;
  border-radius:14px!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{color:var(--sv64-muted)!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:2px!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-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 */




/* 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:2px!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-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:2px!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:2px!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:12px!important;
  height:12px!important;
  margin-left:-6px!important;
  margin-top:-6px!important;
  border:2px 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{
  
  
  
  
  
  font-size:12px!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:2px!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 */



/* 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:2px!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:2px!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:12px!important;
  height:12px!important;
  margin-left:-6px!important;
  margin-top:-6px!important;
  border:2px 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:2px!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:2px!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:2px!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{
  display:grid!important;
  place-items:center!important;
  background:transparent!important;
  border:0!important;
}
.surveyor-live-draw-point span{
  box-sizing:border-box!important;
  width:var(--surveyor-draw-guide-size,16px)!important;
  height:var(--surveyor-draw-guide-size,16px)!important;
  display:block!important;
  border:2px solid #2563eb!important;
  border-radius:4px!important;
  background:#fff!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.20),0 2px 7px rgba(0,0,0,.34)!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:2px!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:2px!important;
  stroke-opacity:1!important;
  fill-opacity:.18!important;
}
.leaflet-editing-icon,
.leaflet-div-icon.leaflet-editing-icon{
  width:12px!important;
  height:12px!important;
  margin-left:-6px!important;
  margin-top:-6px!important;
  border:2px 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 substitui a área do mapa, sem aparência de página dentro da página. */
.geo-map-stage{position:relative!important;}
.earth3d-panel{
  position:absolute!important;
  inset:0!important;
  z-index:2400!important;
  display:block!important;
  min-width:0!important;
  min-height:0!important;
  background:#020617!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
.earth3d-panel.hidden{display:none!important;}
.earth3d-panel-head{
  position:absolute!important;
  top:12px!important;
  right:12px!important;
  z-index:3!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:#0f2a44!important;
  pointer-events:none!important;
}
.earth3d-panel-head > div{display:none!important;}
#closeEarth3dPanel{
  pointer-events:auto!important;
  width:42px!important;
  height:42px!important;
  border:1px solid rgba(219,231,243,.72)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.94)!important;
  color:#0f2a44!important;
  font-weight:900!important;
  font-size:20px!important;
  cursor:pointer!important;
  box-shadow:0 12px 32px rgba(15,23,42,.18)!important;
  backdrop-filter:blur(12px)!important;
}
#closeEarth3dPanel:hover{background:#2563eb!important;color:#fff!important;}
#earth3dFrame{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!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:2px!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:2px!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;
}


/* 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:2px;
  max-height:260px;
  overflow:auto;
  padding:6px;
  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:8px;
  min-height:36px!important;
  width:100%;
  padding:5px 8px!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:11.5px;
  font-weight:800;
}
.city-suggest-item small{
  color:var(--muted);
  font-size:9.5px;
  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;
}


/* 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;}
body.georural-map-page .geo-brandbar{background:#fff!important;border-bottom:1px solid #dfe5ee!important;box-shadow:none!important;}
body.georural-map-page .geo-brand-plate{background:#ecf3ff!important;border:1px solid #d9e6fa!important;}
body.georural-map-page .geo-brand::after{content:"Surveyor";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;}
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{font-size:12px!important;}


/* 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;}


/* 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{
  
  
  
  overflow:visible!important;
}
body.georural-map-page .geo-toolbar-right-map{
  display:flex!important;
  
  justify-content:flex-end!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;
  
  
  
  border:1px solid #d9e1ec!important;
  
  background:#fff!important;
  box-shadow:none!important;
  white-space:nowrap!important;
}
body.georural-map-page .top-map-switcher label{
  color:#64748b!important;
  
  font-weight:850!important;
}
body.georural-map-page .top-map-switcher select{
  
  
  
  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{
  
  left:50%!important;
  transform:translateX(-50%)!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;
  
  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;}
}


/* 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-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;
  
  
  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 .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 select{
  height:26px!important;
  min-width:145px!important;
  
  font-size:11px!important;
  padding-left:6px!important;
}
body.georural-map-page .geo-searchbar{
  
  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-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;}
}

/* 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;
  }
}


/* Mapa: barra única no topo para liberar espaço vertical */



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;
}

/* retorno seguro ao CAR e consulta de camadas sob demanda */
body.georural-map-page .map-return-car-btn{
  height:28px;
  min-height:28px;
  padding:0 8px;
  border:1px solid #9dc2ff;
  border-radius:4px;
  background:#eef5ff;
  color:#1552a0;
  font:800 11px/1 inherit;
  white-space:nowrap;
  cursor:pointer;
}
body.georural-map-page .map-return-car-btn:hover{background:#dcecff;}
body.georural-map-page .map-return-car-btn:disabled{opacity:.65;cursor:wait;}
.map-layer-info-help-popup .leaflet-popup-content-wrapper{width:24px!important;height:24px!important;padding:0!important;border:0!important;border-radius:50%!important;background:transparent!important;box-shadow:none!important;}
.map-layer-info-help-popup .leaflet-popup-content{width:24px!important;height:24px!important;margin:0!important;line-height:1;}
.map-layer-info-help-popup .leaflet-popup-tip{display:none;}
.map-layer-info-help{width:24px;height:24px;border:0;border-radius:50%;background:#1552a0;color:#fff;font-size:16px;font-weight:900;line-height:24px;cursor:pointer;box-shadow:0 1px 3px rgba(15,23,42,.22);}
.map-layer-info-help:hover{background:#0d3e7b;}
body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip{
  
  
  
  
  
  
  
  
  
  
  
  box-shadow:none!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;
  
  
  
  
}
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-layers-trigger{
  
  padding:0 8px!important;
}
body.georural-map-page .geo-brandbar.map-onebar .top-map-switcher{
  
  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{
  
  min-width:130px!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;
}

@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[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{
  
  
  
  vector-effect:non-scaling-stroke!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:6px!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;
}


/* Mapa: remove Validar e centraliza ferramentas principais */
body.georural-map-page .geo-brandbar.map-onebar{
  
  
  
  padding-bottom:3px!important;
}



body.georural-map-page .geo-brandbar.map-onebar #validateBtn{
  display:none!important;
}

@media(max-width:1380px){
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip{
    grid-template-columns:140px minmax(360px,1fr) auto!important;
  }
}


.geo-tool.is-enabled{background:var(--primary);border-color:var(--primary);color:#fff;}
body.georural-map-page .geo-tool.is-enabled{background:#0f5bdc!important;border-color:#0f5bdc!important;color:#fff!important;}
body.workspace-map-v130 .geo-tool.is-enabled{background:#edf4ff!important;border-color:#cfe0ff!important;color:#0f5bdc!important;}


/* desenho técnico mais fino e Leaflet Draw em português */
body.georural-map-page .surveyor-live-draw-shape,
body.georural-map-page .surveyor-final-draw-shape,
body.georural-map-page .surveyor-line-final,
body.georural-map-page .surveyor-cut-line{
  stroke-width:2px!important;
  vector-effect:non-scaling-stroke!important;
}
body.georural-map-page .surveyor-measure-live{stroke-width:2px!important;}
body.georural-map-page .leaflet-draw-tooltip{
  font-size:12px!important;
  line-height:1.25!important;
  max-width:260px!important;
  white-space:normal!important;
}
body.georural-map-page .leaflet-editing-icon{
  width:10px!important;
  height:10px!important;
  margin-left:-5px!important;
  margin-top:-5px!important;
  border-radius:3px!important;
}

/* 2026-08-28 — guarda contra alças de edição fantasmas após importar.
   Fora do modo de edição direta nenhum handle do Leaflet.Draw pode ficar
   visível ou capturar cliques sobre o mapa. */
body.georural-map-page:not(.surveyor-direct-editing) .leaflet-editing-icon,
body.georural-map-page:not(.surveyor-direct-editing) .leaflet-div-icon.leaflet-editing-icon{
  display:none!important;
  pointer-events:none!important;
}

/* edição direta e desenho técnico mais fino */
body.georural-map-page.surveyor-direct-editing .vertex-confrontante-icon,
body.georural-map-page.surveyor-direct-editing .vertex-tooltip{display:none!important;pointer-events:none!important;}
body.georural-map-page.surveyor-direct-editing .leaflet-draw-tooltip{display:none!important;}
body.georural-map-page.surveyor-direct-editing .leaflet-editing-icon,
body.georural-map-page.surveyor-direct-editing .leaflet-div-icon.leaflet-editing-icon{
  width:14px!important;height:14px!important;margin-left:-7px!important;margin-top:-7px!important;
  border:2px solid #0f5bdc!important;border-radius:4px!important;background:#fff!important;
  box-shadow:0 0 0 3px rgba(15,91,220,.18),0 2px 5px rgba(0,0,0,.28)!important;
  pointer-events:auto!important;z-index:1900!important;
}
body.georural-map-page.surveyor-direct-editing .leaflet-pane path.leaflet-interactive{
  stroke-width:var(--surveyor-layer-weight,2px)!important;stroke-opacity:1!important;
}
body.georural-map-page .surveyor-final-draw-shape,
body.georural-map-page .surveyor-line-final{
  stroke-width:var(--surveyor-layer-weight,1.4px)!important;
}
body.georural-map-page .surveyor-live-draw-shape{
  stroke-width:1.4px!important;
}
body.georural-map-page .leaflet-overlay-pane path.surveyor-final-draw-shape{
  stroke-width:var(--surveyor-layer-weight,1.4px)!important;
}
body.georural-map-page .leaflet-overlay-pane path.surveyor-live-draw-shape{
  stroke-width:1.4px!important;
}

/* ==========================================================
   v21.9.289 — Barra profissional: Desenho, CAD e SIG separados
   ========================================================== */




body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center{
  
  
  row-gap:4px!important;
  column-gap:5px!important;
  overflow:visible!important;
  
}

body.georural-map-page .geo-brandbar.map-onebar .geo-tool,
body.georural-map-page .geo-brandbar.map-onebar .geo-layers-trigger,
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:32px!important;
  min-height:32px!important;
  padding:0 8px!important;
  font-size:10.8px!important;
  border-radius:5px!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-tool-cad{
  color:#0f5bdc!important;
  border-color:#bfd7ff!important;
  background:#f5f9ff!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-tool-sig{
  color:#047857!important;
  border-color:#bbf7d0!important;
  background:#f0fdf4!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-tool-cad.active,
body.georural-map-page .geo-brandbar.map-onebar .geo-tool-sig.active{
  background:var(--primary)!important;
  border-color:var(--primary)!important;
  color:#fff!important;
}
body.georural-map-page .draw-tools-popover{
  
  grid-template-columns:repeat(2,minmax(132px,1fr))!important;
  border-radius:10px!important;
  padding:10px!important;
}
body.georural-map-page .draw-tools-popover .tool-popover-title{
  grid-column:1/-1;
  padding:2px 4px 8px;
  font-size:11px;
  font-weight:900;
  color:#0b2f63;
  text-transform:uppercase;
  letter-spacing:.05em;
  border-bottom:1px solid #e5edf8;
  margin-bottom:3px;
}
body.georural-map-page .draw-tools-popover button{
  text-align:left!important;
  justify-content:flex-start!important;
  padding:0 10px!important;
  font-weight:800!important;
}
@media(max-width:1500px){
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip{
    grid-template-columns:140px minmax(460px,1fr) auto!important;
  }
  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:32px!important;padding:0!important;}
  body.georural-map-page .geo-brandbar.map-onebar #cadToolsMenuBtn,
  body.georural-map-page .geo-brandbar.map-onebar #sigToolsMenuBtn{width:42px!important;font-size:10px!important;}
  body.georural-map-page .geo-brandbar.map-onebar #cadToolsMenuBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #sigToolsMenuBtn span{display:inline!important;}
}
@media(max-width:1040px){
  body.georural-map-page .geo-app{grid-template-rows:96px minmax(0,1fr)!important;}
  body.georural-map-page .geo-brandbar.map-onebar{
    height:96px!important;
    min-height:96px!important;
    grid-template-columns:1fr!important;
    grid-template-rows:34px 54px!important;
    align-items:center!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:54px!important;
    grid-template-columns:140px minmax(0,1fr) auto!important;
    overflow:auto!important;
  }
}

/* ==========================================================
   v21.9.290 — Barra do mapa responsiva para crescimento CAD/SIG
   Corrige quebra/estouro com tela menor e menu lateral aberto.
   ========================================================== */

body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center,
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map{
  min-width:0!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center,
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map{
  scrollbar-width:thin!important;
  -webkit-overflow-scrolling:touch!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center::-webkit-scrollbar,
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map::-webkit-scrollbar{
  height:5px!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center::-webkit-scrollbar-thumb,
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map::-webkit-scrollbar-thumb{
  background:#c8d7ec!important;
  border-radius:999px!important;
}

/* Quando o menu lateral global abre, a área útil diminui. A barra vira duas linhas. */
body.georural-map-page.map-nav-open .geo-app{
  grid-template-rows:92px minmax(0,1fr)!important;
}
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar{
  height:92px!important;
  min-height:92px!important;
  align-items:start!important;
  padding:6px 8px!important;
}
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
  height:78px!important;
  min-height:78px!important;
  display:grid!important;
  grid-template-columns:150px minmax(0,1fr)!important;
  grid-template-areas:
    "layers center"
    "right right"!important;
  align-items:center!important;
  gap:6px!important;
  overflow:visible!important;
}
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-layers-trigger{grid-area:layers!important;}
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-center{
  grid-area:center!important;
  justify-content:flex-start!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  flex-wrap:nowrap!important;
  margin:0!important;
  padding:0 0 4px!important;
  width:100%!important;
}
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-right-map{
  grid-area:right!important;
  justify-content:flex-end!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
  padding:0 0 3px!important;
  width:100%!important;
}
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .top-map-switcher select{
  max-width:185px!important;
}

/* Larguras intermediárias: sem menu lateral também vira duas linhas antes de quebrar. */
@media(max-width:1680px){
  body.georural-map-page .geo-app{
    grid-template-rows:82px minmax(0,1fr)!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar{
    height:82px!important;
    min-height:82px!important;
    align-items:start!important;
    padding:6px 8px!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-brand-left{
    min-width:152px!important;
    max-width:152px!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip{
    height:70px!important;
    min-height:70px!important;
    display:grid!important;
    grid-template-columns:150px minmax(0,1fr) auto!important;
    grid-template-areas:
      "layers center center"
      "right right right"!important;
    align-items:center!important;
    gap:6px!important;
    overflow:visible!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-layers-trigger{grid-area:layers!important;}
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center{
    grid-area:center!important;
    justify-content:flex-start!important;
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    margin:0!important;
    padding:0 0 4px!important;
    width:100%!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map{
    grid-area:right!important;
    justify-content:flex-end!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    padding:0 0 3px!important;
    width:100%!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-tool span{display:inline!important;}
  body.georural-map-page .geo-brandbar.map-onebar .geo-tool{
    width:auto!important;
    min-width:32px!important;
    padding:0 8px!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .top-map-switcher select{
    max-width:210px!important;
  }
}

@media(max-width:1320px){
  body.georural-map-page .geo-app,
  body.georural-map-page.map-nav-open .geo-app{
    grid-template-rows:118px minmax(0,1fr)!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar{
    height:118px!important;
    min-height:118px!important;
    grid-template-columns:1fr!important;
    grid-template-rows:34px 76px!important;
    padding:5px 8px!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-brand-left,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-brand-left{
    max-width:none!important;
    min-width:0!important;
    width:100%!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
    height:76px!important;
    min-height:76px!important;
    grid-template-columns:150px minmax(0,1fr)!important;
    grid-template-areas:
      "layers right"
      "center center"!important;
    gap:6px!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-center{
    grid-area:center!important;
    overflow-x:auto!important;
    justify-content:flex-start!important;
    padding-bottom:4px!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-right-map{
    grid-area:right!important;
    justify-content:flex-end!important;
    overflow-x:auto!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-tool span{
    display:none!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar #toolsMenuBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #cadToolsMenuBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #sigToolsMenuBtn span{
    display:inline!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-tool{
    width:32px!important;
    padding:0!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar #toolsMenuBtn,
  body.georural-map-page .geo-brandbar.map-onebar #cadToolsMenuBtn,
  body.georural-map-page .geo-brandbar.map-onebar #sigToolsMenuBtn{
    width:auto!important;
    padding:0 8px!important;
  }
}

@media(max-width:860px){
  body.georural-map-page .geo-app,
  body.georural-map-page.map-nav-open .geo-app{
    grid-template-rows:154px minmax(0,1fr)!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar{
    height:154px!important;
    min-height:154px!important;
    grid-template-rows:34px 112px!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
    height:112px!important;
    min-height:112px!important;
    grid-template-columns:1fr!important;
    grid-template-areas:
      "layers"
      "right"
      "center"!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-layers-trigger{
    width:100%!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map{
    justify-content:flex-start!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .top-map-switcher select{
    max-width:155px!important;
  }
  body.georural-map-page .draw-tools-popover{
    top:calc(var(--map-toolbar-height, 154px) + 8px)!important;
    left:8px!important;
    right:8px!important;
    grid-template-columns:1fr!important;
    width:auto!important;
    max-width:none!important;
  }
}

/* ==========================================================
   v21.9.291 — Barra definitiva para 15.6" + Bloco 3 Terreno
   Remove estouro visual causado por estilos antigos e prepara
   a barra para Desenhar / CAD / SIG / Terreno.
   ========================================================== */
body.georural-map-page .geo-brandbar.map-onebar .geo-tool-terrain{
  color:#92400e!important;
  border-color:#fde68a!important;
  background:#fffbeb!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-tool-terrain.active{
  background:#b45309!important;
  border-color:#b45309!important;
  color:#fff!important;
}
body.georural-map-page .terrain-tools-popover{
  grid-template-columns:repeat(2,minmax(150px,1fr))!important;
}

@media(max-width:1900px){
  body.georural-map-page .geo-app,
  body.georural-map-page.map-nav-open .geo-app{
    grid-template-rows:104px minmax(0,1fr)!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar{
    height:104px!important;
    min-height:104px!important;
    max-height:104px!important;
    padding:5px 8px!important;
    align-items:start!important;
    overflow:visible!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-brand-left,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-brand-left{
    min-width:150px!important;
    max-width:150px!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
    height:92px!important;
    min-height:92px!important;
    max-height:92px!important;
    display:grid!important;
    grid-template-columns:150px minmax(0,1fr)!important;
    grid-template-areas:
      "layers center"
      "right right"!important;
    align-items:center!important;
    gap:5px!important;
    overflow:visible!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-layers-trigger,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-layers-trigger{
    grid-area:layers!important;
    width:150px!important;
    min-width:150px!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-center{
    grid-area:center!important;
    width:100%!important;
    min-width:0!important;
    flex-wrap:nowrap!important;
    justify-content:flex-start!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:0 0 4px!important;
    margin:0!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-right-map{
    grid-area:right!important;
    width:100%!important;
    min-width:0!important;
    justify-content:flex-end!important;
    overflow-x:auto!important;
    overflow-y:visible!important;
    padding:0 0 4px!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-tool,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-tool{
    height:32px!important;
    min-height:32px!important;
    min-width:32px!important;
    padding:0 8px!important;
    white-space:nowrap!important;
    flex:0 0 auto!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-tool span,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-tool span{
    display:none!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar #selectToolBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #toolsMenuBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #cadToolsMenuBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #sigToolsMenuBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #terrainToolsMenuBtn span,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar #selectToolBtn span,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar #toolsMenuBtn span,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar #cadToolsMenuBtn span,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar #sigToolsMenuBtn span,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar #terrainToolsMenuBtn span{
    display:inline!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar #terrainToolsMenuBtn,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar #terrainToolsMenuBtn{
    width:auto!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .top-map-switcher select,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .top-map-switcher select{
    max-width:210px!important;
  }
  body.georural-map-page .draw-tools-popover{
    top:calc(var(--map-toolbar-height, 104px) + 8px)!important;
  }
}

@media(max-width:1320px){
  body.georural-map-page .geo-app,
  body.georural-map-page.map-nav-open .geo-app{grid-template-rows:132px minmax(0,1fr)!important;}
  body.georural-map-page .geo-brandbar.map-onebar,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar{height:132px!important;min-height:132px!important;max-height:132px!important;}
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
    height:120px!important;min-height:120px!important;max-height:120px!important;
    grid-template-columns:1fr!important;
    grid-template-areas:"layers" "center" "right"!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-layers-trigger,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-layers-trigger{width:100%!important;}
  body.georural-map-page .draw-tools-popover{top:140px!important;}
}

/* ==========================================================
   v21.9.292 — Barra responsiva final + Blocos 4 e 5
   Desktop largo volta para uma linha real; notebook mantém quebra.
   ========================================================== */
body.georural-map-page .map-project-menu{position:relative;flex:0 0 auto;}
body.georural-map-page .map-project-menu>summary{
  list-style:none;cursor:pointer;height:34px;display:inline-flex;align-items:center;gap:6px;
  padding:0 12px;border:1px solid #dbe7fb;border-radius:8px;background:#fff;color:#0f2850;
  font-weight:800;font-size:13px;box-shadow:0 1px 2px rgba(15,23,42,.06);
}
body.georural-map-page .map-project-menu>summary::-webkit-details-marker{display:none;}
body.georural-map-page .map-project-menu[open]>summary{border-color:#2563eb;background:#eff6ff;color:#1d4ed8;}
body.georural-map-page .map-project-list{
  position:absolute;right:0;top:40px;z-index:1200;min-width:245px;padding:8px;border:1px solid #cfe0fa;border-radius:12px;
  background:#fff;box-shadow:0 18px 45px rgba(15,23,42,.18);display:grid;gap:6px;
}
body.georural-map-page .map-project-list button{height:34px;border:1px solid #dbe7fb;border-radius:8px;background:#f8fbff;text-align:left;padding:0 10px;font-weight:800;color:#12345f;}
body.georural-map-page .map-project-list button:hover{background:#eaf2ff;border-color:#9bc2ff;}

@media(min-width:1501px){
  body.georural-map-page .geo-app,
  body.georural-map-page.map-nav-open .geo-app{grid-template-rows:62px minmax(0,1fr)!important;}
  body.georural-map-page .geo-brandbar.map-onebar,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar{
    height:62px!important;min-height:62px!important;max-height:62px!important;
    display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;grid-template-rows:1fr!important;
    align-items:center!important;padding:6px 8px!important;overflow:visible!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-brand-left,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-brand-left{min-width:172px!important;max-width:172px!important;width:172px!important;}
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
    height:46px!important;min-height:46px!important;max-height:46px!important;width:100%!important;min-width:0!important;
    display:grid!important;grid-template-columns:190px minmax(0,1fr) auto!important;grid-template-areas:"layers center right"!important;
    align-items:center!important;gap:8px!important;overflow:visible!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-layers-trigger,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-layers-trigger{grid-area:layers!important;width:190px!important;min-width:190px!important;height:40px!important;}
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-center{
    grid-area:center!important;display:flex!important;flex-wrap:nowrap!important;justify-content:center!important;align-items:center!important;
    overflow-x:auto!important;overflow-y:hidden!important;min-width:0!important;width:100%!important;padding:0 2px 3px!important;gap:6px!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-right-map{
    grid-area:right!important;display:flex!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:flex-end!important;
    overflow:visible!important;min-width:0!important;width:auto!important;padding:0!important;gap:6px!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-tool,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-tool{height:36px!important;min-height:36px!important;width:auto!important;min-width:36px!important;padding:0 10px!important;white-space:nowrap!important;flex:0 0 auto!important;}
  body.georural-map-page .geo-brandbar.map-onebar .geo-tool span,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-tool span{display:inline!important;}
  body.georural-map-page .geo-brandbar.map-onebar #measureToolBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #coordinatesToolBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #segmentMeasuresToggleBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #refreshMapBtn span,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar #measureToolBtn span,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar #coordinatesToolBtn span,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar #segmentMeasuresToggleBtn span,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar #refreshMapBtn span{display:none!important;}
  body.georural-map-page .geo-brandbar.map-onebar .top-map-switcher select,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .top-map-switcher select{max-width:210px!important;height:36px!important;}
  body.georural-map-page .draw-tools-popover{top:70px!important;}
}

@media(max-width:1500px){
  body.georural-map-page .geo-app,
  body.georural-map-page.map-nav-open .geo-app{grid-template-rows:112px minmax(0,1fr)!important;}
  body.georural-map-page .geo-brandbar.map-onebar,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar{height:112px!important;min-height:112px!important;max-height:112px!important;}
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{height:100px!important;min-height:100px!important;max-height:100px!important;grid-template-columns:150px minmax(0,1fr)!important;grid-template-areas:"layers right" "center center"!important;}
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-center{justify-content:flex-start!important;overflow-x:auto!important;}
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-right-map{justify-content:flex-end!important;overflow-x:auto!important;}
  body.georural-map-page .geo-brandbar.map-onebar .geo-tool span{display:none!important;}
  body.georural-map-page .geo-brandbar.map-onebar #selectToolBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #toolsMenuBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #cadToolsMenuBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #sigToolsMenuBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #terrainToolsMenuBtn span{display:inline!important;}
  body.georural-map-page .draw-tools-popover{top:120px!important;}
}


/* ==========================================================
   v21.9.294 — Barra do mapa em duas linhas profissionais
   Corrige 21,5", 15,6" e menu global aberto sem sobreposição.
   A barra principal cresce para baixo e separa ferramentas de ação.
   ========================================================== */

body.georural-map-page .geo-brandbar.map-onebar{
  
  
  max-height:none!important;
  
  
  
  
  
  
  
  
  
  z-index:1300!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-brand-left{
  
  
  width:178px!important;
  
  
  align-self:start!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip{
  
  
  
  
  
  
  
  
  align-content:start!important;
  
  
  
  
  
}

body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center{
  
  width:100%!important;
  
  
  flex-wrap:nowrap!important;
  
  
  
  
  
  
  margin:0!important;
  line-height:1!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map{
  
  width:100%!important;
  
  
  flex-wrap:wrap!important;
  
  
  
  overflow:visible!important;
  
}
body.georural-map-page .geo-brandbar.map-onebar .geo-tool-group{
  flex:0 0 auto!important;
  min-height:34px!important;
  height:38px!important;
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  padding:2px 5px!important;
  border:1px solid #e5edf8!important;
  border-radius:8px!important;
  background:#fbfdff!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-tool,
body.georural-map-page .geo-brandbar.map-onebar .geo-layers-trigger,
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,
body.georural-map-page .geo-brandbar.map-onebar .top-project-menu summary{
  height:32px!important;
  min-height:32px!important;
  padding:0 8px!important;
  font-size:11px!important;
  line-height:1!important;
  border-radius:6px!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-tool svg{
  width:14px!important;
  height:14px!important;
  flex:0 0 14px!important;
}
body.georural-map-page .geo-brandbar.map-onebar .top-map-switcher{
  height:32px!important;
  min-width:250px!important;
  max-width:310px!important;
  flex:0 1 310px!important;
}
body.georural-map-page .geo-brandbar.map-onebar .top-map-switcher select{
  height:32px!important;
  max-width:235px!important;
  font-size:11px!important;
}
body.georural-map-page .map-search-floating,
body.georural-map-page .geo-searchbar{
  top:12px!important;
}


@media(min-width:1780px){
  body.georural-map-page .geo-app{grid-template-rows:100px minmax(0,1fr)!important;}
  body.georural-map-page .geo-brandbar.map-onebar{height:100px!important;min-height:100px!important;}
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip{min-height:82px!important;}
  body.georural-map-page .draw-tools-popover{top:106px!important;}
}

@media(max-width:1500px){
  body.georural-map-page .geo-app{grid-template-rows:126px minmax(0,1fr)!important;}
  body.georural-map-page .geo-brandbar.map-onebar{
    height:126px!important;
    min-height:126px!important;
    grid-template-columns:1fr!important;
    grid-template-rows:36px 82px!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-brand-left{
    grid-column:1!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip{
    grid-column:1!important;
    min-height:82px!important;
    grid-template-columns:150px minmax(0,1fr)!important;
    grid-template-areas:
      "layers right"
      "center center"!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map{
    justify-content:flex-end!important;
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding-bottom:4px!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center{
    padding-bottom:4px!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-tool span{display:none!important;}
  body.georural-map-page .geo-brandbar.map-onebar #toolsMenuBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #cadToolsMenuBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #sigToolsMenuBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #terrainToolsMenuBtn span{display:inline!important;}
  body.georural-map-page .draw-tools-popover{top:132px!important;}
}

@media(max-width:1040px){
  body.georural-map-page .geo-app{grid-template-rows:154px minmax(0,1fr)!important;}
  body.georural-map-page .geo-brandbar.map-onebar{
    height:154px!important;
    min-height:154px!important;
    grid-template-rows:36px 110px!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip{
    min-height:110px!important;
    grid-template-columns:1fr!important;
    grid-template-areas:
      "layers"
      "right"
      "center"!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-layers-trigger{
    width:100%!important;
    min-width:0!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map,
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center{
    justify-content:flex-start!important;
  }
  body.georural-map-page .draw-tools-popover{top:160px!important;}
}

/* ==========================================================
   v21.9.295 — Blocos 10, 11 e 12: Interface Profissional,
   Extras Mega e Auditoria Técnica
   ========================================================== */
:root{--mega-panel-bg:#ffffff;--mega-panel-text:#0f172a;--mega-accent:#2563eb;--mega-soft:#eef5ff;--mega-border:#dbe5f0;--mega-shadow:0 18px 45px rgba(15,23,42,.18);}
body.georural-map-page .mega-interface-btn{border-color:#c7d7f2!important;background:#f8fbff!important;color:#123f87!important;}
body.mega-density-compact .geo-tool,body.mega-density-compact .geo-toolbar-right-map button,body.mega-density-compact .file-btn,body.mega-density-compact .top-download-menu summary,body.mega-density-compact .top-project-menu summary{height:28px!important;min-height:28px!important;font-size:10.5px!important;padding:0 7px!important;}
body.mega-hide-toolbar-labels .geo-tool span{display:none!important;}
body.mega-hide-toolbar-labels #toolsMenuBtn span,body.mega-hide-toolbar-labels #cadToolsMenuBtn span,body.mega-hide-toolbar-labels #sigToolsMenuBtn span,body.mega-hide-toolbar-labels #terrainToolsMenuBtn span,body.mega-hide-toolbar-labels #megaInterfaceBtn span{display:inline!important;}
.mega-interface-panel{position:fixed;right:18px;top:92px;z-index:4200;width:min(360px,calc(100vw - 24px));max-height:calc(100vh - 120px);display:flex;flex-direction:column;border:1px solid var(--mega-border);border-radius:16px;background:var(--mega-panel-bg);color:var(--mega-panel-text);box-shadow:var(--mega-shadow);overflow:hidden;}.mega-interface-panel.hidden{display:none;}.mega-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--mega-border);background:linear-gradient(135deg,var(--mega-soft),transparent);}.mega-panel-head b{display:block;font-size:15px;}.mega-panel-head small{display:block;color:var(--muted);font-weight:700;}.mega-panel-head button{width:32px;height:32px;border:1px solid var(--mega-border);border-radius:10px;background:var(--mega-panel-bg);font-size:20px;}.mega-panel-body{display:grid;gap:12px;padding:14px 16px;overflow:auto;}.mega-panel-body label{display:grid;gap:6px;font-size:12px;font-weight:850;color:var(--mega-panel-text);}.mega-panel-body select,.mega-panel-body input{min-height:34px;border:1px solid var(--mega-border);border-radius:10px;padding:0 10px;background:var(--mega-panel-bg);color:var(--mega-panel-text);}.mega-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;}.mega-check-grid label,.mega-panel-body fieldset label{display:flex;align-items:center;gap:8px;font-weight:750;}.mega-panel-body fieldset{border:1px solid var(--mega-border);border-radius:12px;padding:10px;display:grid;gap:8px;}.mega-actions{display:flex;gap:8px;flex-wrap:wrap;}.mega-actions button{min-height:34px;border:1px solid var(--mega-border);border-radius:10px;background:var(--mega-soft);color:var(--mega-panel-text);font-weight:850;padding:0 10px;}.mega-help{margin:0;color:var(--muted);font-size:12px;line-height:1.4;}.mega-toast{position:fixed;right:18px;bottom:18px;z-index:5000;max-width:360px;padding:12px 14px;border-radius:12px;background:#0f172a;color:#fff;box-shadow:var(--mega-shadow);opacity:0;transform:translateY(8px);pointer-events:none;transition:.18s ease;}.mega-toast.visible{opacity:1;transform:translateY(0);}.mega-toast[data-type="success"]{background:#14532d;}.mega-toast[data-type="error"]{background:#7f1d1d;}
#megaPanelResizeHandle{position:absolute;top:0;right:-4px;width:8px;height:100%;cursor:col-resize;z-index:20;background:transparent;}#megaPanelResizeHandle:hover{background:rgba(37,99,235,.18);}body.mega-resizing{cursor:col-resize!important;user-select:none!important;}.mega-minimap{position:absolute;right:14px;bottom:44px;width:132px;height:108px;z-index:800;border:1px solid rgba(15,23,42,.18);border-radius:14px;background:#fff;box-shadow:0 14px 34px rgba(15,23,42,.18);overflow:hidden;}.mega-minimap>span{position:absolute;left:8px;top:6px;z-index:2;padding:2px 6px;border-radius:999px;background:rgba(255,255,255,.92);font-size:10px;font-weight:900;color:#17345d;}.mega-minimap #megaMiniMapCanvas{width:100%;height:100%;}.mega-compass{position:absolute;right:18px;top:120px;z-index:850;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(15,23,42,.14);background:rgba(255,255,255,.94);box-shadow:0 10px 22px rgba(15,23,42,.16);color:#0f2a44;font-weight:900;}.mega-compass b{position:absolute;top:6px;font-size:11px;}.mega-compass span{font-size:23px;color:#2563eb;}.mega-hide-leaflet-scale .leaflet-control-scale{display:none!important;}.mega-search-dialog{width:min(620px,calc(100vw - 28px));border:0;border-radius:18px;padding:0;background:var(--mega-panel-bg);color:var(--mega-panel-text);box-shadow:var(--mega-shadow);}.mega-search-dialog::backdrop{background:rgba(2,6,23,.42);}.mega-dialog-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--mega-border);}.mega-dialog-head button{border:0;background:transparent;font-size:22px;color:inherit;}.mega-search-dialog input{width:calc(100% - 32px);margin:14px 16px;min-height:42px;border:1px solid var(--mega-border);border-radius:12px;padding:0 12px;background:var(--mega-panel-bg);color:var(--mega-panel-text);}.mega-search-results{display:grid;gap:8px;padding:0 16px 16px;}.mega-search-results button{text-align:left;border:1px solid var(--mega-border);border-radius:12px;background:var(--mega-soft);padding:10px 12px;color:var(--mega-panel-text);}.mega-search-results b,.mega-search-results span{display:block;}.mega-search-results span{color:var(--muted);font-size:12px;margin-top:3px;}
@media(max-width:900px){.mega-interface-panel{top:70px;right:8px;}.mega-minimap{width:116px;height:94px;right:8px;}.mega-compass{right:8px;top:160px;}}

/* Barra definitiva: duas linhas limpas sem sobreposição em 15.6 e 21.5 */
body.georural-map-page .geo-brandbar.map-onebar{height:auto!important;min-height:96px!important;display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;grid-template-rows:auto!important;align-items:start!important;gap:6px!important;padding:6px 8px!important;overflow:visible!important;background:#fff!important;border-bottom:1px solid #dbe5f0!important;}
body.georural-map-page .geo-brandbar.map-onebar .geo-brand-left{grid-column:1!important;grid-row:1!important;display:flex!important;align-items:center!important;gap:8px!important;min-width:170px!important;max-width:185px!important;height:36px!important;overflow:hidden!important;}
body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip{grid-column:2!important;grid-row:1!important;width:100%!important;display:grid!important;grid-template-areas:"layers center" "right right"!important;gap:6px 8px!important;align-items:center!important;min-width:0!important;min-height:78px!important;height:auto!important;padding:0!important;border:0!important;background:transparent!important;overflow:visible!important;}
body.georural-map-page .geo-brandbar.map-onebar .geo-layers-trigger{grid-area:layers!important;width:100%!important;min-width:0!important;height:34px!important;}
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center{grid-area:center!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;min-width:0!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;padding:0 0 4px!important;scrollbar-width:thin!important;white-space:nowrap!important;}
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map{grid-area:right!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;min-width:0!important;max-width:100%!important;overflow-x:auto!important;overflow-y:hidden!important;padding:0 0 4px!important;scrollbar-width:thin!important;white-space:nowrap!important;}
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-download-menu summary,body.georural-map-page .geo-brandbar.map-onebar .top-project-menu summary{flex:0 0 auto!important;height:32px!important;min-height:32px!important;padding:0 9px!important;font-size:11.5px!important;border-radius:7px!important;line-height:1!important;white-space:nowrap!important;}.map-search-floating,.geo-searchbar{top:108px!important;}.draw-tools-popover{top:104px!important;}@media(max-width:1500px){body.georural-map-page .geo-brandbar.map-onebar{min-height:118px!important;grid-template-columns:1fr!important;}body.georural-map-page .geo-brandbar.map-onebar .geo-brand-left{grid-column:1!important;grid-row:1!important;max-width:none!important;width:100%!important;}body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip{grid-column:1!important;grid-row:2!important;grid-template-columns:150px minmax(0,1fr)!important;grid-template-areas:"layers center" "right right"!important;min-height:76px!important;}.map-search-floating,.geo-searchbar{top:126px!important;}.draw-tools-popover{top:126px!important;}}@media(max-width:980px){body.georural-map-page .geo-brandbar.map-onebar{min-height:154px!important;}body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip{grid-template-columns:1fr!important;grid-template-areas:"layers" "center" "right"!important;}.map-search-floating,.geo-searchbar{top:160px!important;}.draw-tools-popover{top:160px!important;}}


/* ==========================================================
   v21.9.296 — Barra operacional inferior centralizada
   Topo limpo e sem botão Importar visível
   ========================================================== */





body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-right-map{
  
  
  
  
  align-content:flex-start!important;
  
  
  
  
  
  
  
}
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-center{
  grid-area:center!important;
  
  
  
  align-content:center!important;
  
  
  
  
  
  
  
}



body.georural-map-page .geo-brandbar.map-onebar .geo-tool svg,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-tool svg{
  width:15px!important;
  height:15px!important;
}

body.georural-map-page .geo-brandbar.map-onebar .top-map-switcher label,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .top-map-switcher label{
  margin:0!important;
}



@media(max-width:1380px){
  body.georural-map-page .geo-brandbar.map-onebar,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar{
    grid-template-columns:1fr!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-brand-left,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-brand-left{
    grid-column:1!important;
    grid-row:1!important;
    max-width:none!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
    grid-column:1!important;
    grid-row:2!important;
  }
}
@media(max-width:1080px){
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
    grid-template-columns:1fr!important;
    grid-template-areas:
      "layers"
      "right"
      "center"!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-right-map,
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-center{
    justify-content:flex-start!important;
  }
}
@media(max-width:760px){
  body.georural-map-page .geo-brandbar.map-onebar,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar{
    padding:8px!important;
    gap:8px!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-tool,
  body.georural-map-page .geo-brandbar.map-onebar .geo-layers-trigger,
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map button,
  body.georural-map-page .geo-brandbar.map-onebar .top-download-menu summary,
  body.georural-map-page .geo-brandbar.map-onebar .top-project-menu summary,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-tool,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-layers-trigger,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-right-map button,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .top-download-menu summary,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .top-project-menu summary{
    height:32px!important;
    min-height:32px!important;
    font-size:11px!important;
    padding:0 9px!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .top-map-switcher select,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .top-map-switcher select{
    min-width:150px!important;
    max-width:100%!important;
  }
}


/* ==========================================================
   v21.9.297 — Correção definitiva: ferramentas em dock inferior
   A barra operacional sai do topo e vira uma dock fixa inferior.
   ========================================================== */

body.georural-map-page .geo-brandbar.map-onebar,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar{
  
  
  
  
  
  
  
  
  
  
  
  box-shadow:0 1px 0 rgba(15,23,42,.04)!important;
}


body.georural-map-page .geo-brandbar.map-onebar .geo-layers-trigger,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-layers-trigger{
  
  
  min-width:0!important;
  
  
}

body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-center{
  
  
  
  
  
  
  
  
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  
  
  
  
  
  
  white-space:normal!important;
  
  
  
  
  
}
body.georural-map-page .geo-brandbar.map-onebar .geo-tool-group,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-tool-group{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-tool,
body.georural-map-page .geo-brandbar.map-onebar .geo-layers-trigger,
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map button,
body.georural-map-page .geo-brandbar.map-onebar .top-download-menu summary,
body.georural-map-page .geo-brandbar.map-onebar .top-project-menu summary,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-tool,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-layers-trigger,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-right-map button,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .top-download-menu summary,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .top-project-menu summary{
  flex:0 0 auto!important;
  height:34px!important;
  min-height:34px!important;
  padding:0 10px!important;
  font-size:11.5px!important;
  border-radius:9px!important;
  white-space:nowrap!important;
  line-height:1!important;
}

body.georural-map-page .geo-brandbar.map-onebar .top-map-switcher,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .top-map-switcher{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  min-width:0!important;
}


body.georural-map-page .draw-tools-popover{
  top:var(--map-top-offset, 70px)!important;
}


@media(max-width:1350px){
  body.georural-map-page .geo-brandbar.map-onebar,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar{
    grid-template-columns:1fr!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-brand-left,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-brand-left{
    grid-column:1!important;
    grid-row:1!important;
    max-width:none!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
    grid-column:1!important;
    grid-row:2!important;
  }
}
@media(max-width:980px){
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
    grid-template-columns:1fr!important;
    grid-template-areas:"layers" "right"!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-right-map{
    justify-content:flex-start!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-center{
    bottom:10px!important;
    max-width:calc(100vw - 18px)!important;
    padding:7px!important;
    border-radius:14px!important;
  }
  body.georural-map-page .metrics{
    display:none!important;
  }
}
@media(max-width:640px){
  body.georural-map-page .geo-brandbar.map-onebar .geo-tool span{
    display:none!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar #toolsMenuBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #cadToolsMenuBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #sigToolsMenuBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #terrainToolsMenuBtn span,
  body.georural-map-page .geo-brandbar.map-onebar #megaInterfaceBtn span{
    display:inline!important;
  }
}


/* ==========================================================
   v21.9.298 — Ferramentas dentro do painel lateral
   Remove dock inferior e limpa o topo do mapa.
   ========================================================== */
body.georural-map-page .geo-app{
  grid-template-rows:auto minmax(0,1fr)!important;
}
body.georural-map-page .geo-brandbar.map-onebar,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar{
  height:auto!important;
  min-height:54px!important;
  max-height:none!important;
  display:grid!important;
  grid-template-columns:max-content minmax(0,1fr)!important;
  align-items:center!important;
  gap:8px 12px!important;
  padding:7px 10px!important;
  overflow:visible!important;
  background:#fff!important;
  border-bottom:1px solid #dbe5f0!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-brand-left,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-brand-left{
  grid-column:1!important;
  grid-row:1!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  min-width:165px!important;
  width:max-content!important;
  max-width:210px!important;
  height:38px!important;
  overflow:hidden!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
  grid-column:2!important;
  grid-row:1!important;
  display:grid!important;
  
  
  
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
  overflow:visible!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-layers-trigger,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-layers-trigger{
  grid-area:layers!important;
  height:36px!important;
  min-height:36px!important;
  width:100%!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-right-map{
  grid-area:right!important;
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  min-width:0!important;
  max-width:100%!important;
  padding:0 138px 0 0!important;
  overflow:visible!important;
  white-space:normal!important;
}
body.georural-map-page .geo-brandbar.map-onebar .top-file-btn,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .top-file-btn{
  display:none!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-center,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-center{
  position:static!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  top:auto!important;
  transform:none!important;
  z-index:auto!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:10px!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  overflow:visible!important;
}


body.georural-map-page .map-tools-panel .geo-tool-group::before{
  
  display:block;
  
  font-weight:900;
  
  
  text-transform:uppercase;
}
body.georural-map-page .map-tools-panel .geo-tool-group[aria-label="Consulta"]::before{content:"Consulta e seleção";}
body.georural-map-page .map-tools-panel .geo-tool-group[aria-label="Desenho"]::before{content:"Desenho, CAD e SIG";}
body.georural-map-page .map-tools-panel .geo-tool-group[aria-label="Análise"]::before{content:"Medição, terreno e apoio";}
body.georural-map-page .map-tools-panel .geo-tool,
body.georural-map-page .map-tools-panel .geo-toolbar-right-map button{
  width:100%!important;
  height:38px!important;
  justify-content:flex-start!important;
  padding:0 10px!important;
  font-size:12px!important;
  border-radius:10px!important;
}
body.georural-map-page .map-tools-panel .geo-tool span{
  display:inline!important;
}
body.georural-map-page .map-tools-panel .draw-tools-popover{
  position:static!important;
  transform:none!important;
  width:100%!important;
  max-width:none!important;
  margin:4px 0 0!important;
  box-shadow:none!important;
  border:1px dashed #c9d8ee!important;
  border-radius:14px!important;
  background:#fff!important;
}
body.georural-map-page .map-tools-panel .draw-tools-popover.hidden{
  display:none!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map button,
body.georural-map-page .geo-brandbar.map-onebar .top-download-menu summary,
body.georural-map-page .geo-brandbar.map-onebar .top-project-menu summary,
body.georural-map-page .geo-brandbar.map-onebar .geo-layers-trigger,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-right-map button,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .top-download-menu summary,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .top-project-menu summary,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-layers-trigger{
  flex:0 0 auto!important;
  height:34px!important;
  min-height:34px!important;
  padding:0 10px!important;
  font-size:11.5px!important;
  border-radius:9px!important;
  white-space:nowrap!important;
}
body.georural-map-page .geo-brandbar.map-onebar .top-map-switcher select,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .top-map-switcher select{
  width:clamp(180px, 22vw, 310px)!important;
  min-width:170px!important;
  max-width:310px!important;
  height:34px!important;
}
body.georural-map-page .geo-searchbar{
  top:var(--map-top-offset, 72px)!important;
}
body.georural-map-page .metrics{
  bottom:16px!important;
}
body.georural-map-page .mega-minimap{
  bottom:46px!important;
}

body.georural-map-page .sidepanel-tabs-four button{
  
  padding-inline:4px!important;
}
@media(max-width:1350px){
  body.georural-map-page .geo-brandbar.map-onebar,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar{
    grid-template-columns:1fr!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-brand-left,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-brand-left{
    grid-column:1!important;
    grid-row:1!important;
    max-width:none!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
    grid-column:1!important;
    grid-row:2!important;
  }
}
@media(max-width:980px){
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
    grid-template-columns:1fr!important;
    grid-template-areas:"layers" "right"!important;
  }
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolbar-right-map{
    justify-content:flex-start!important;
    padding-right:0!important;
  }
}


/* ==========================================================
   v21.9.299 — Popups das ferramentas no painel lateral
   Desenhar/CAD/SIG/Terreno voltam a abrir em popup flutuante.
   ========================================================== */

body.georural-map-page .sidepanel-tabs-four button{
  
  width:100%!important;
  
  
  
  
  
  
}
body.georural-map-page .map-tools-panel{
  position:relative!important;
  overflow:visible!important;
}
body.georural-map-page .map-tools-panel .draw-tools-popover,
body.georural-map-page .map-tools-panel .cad-tools-popover,
body.georural-map-page .map-tools-panel .sig-tools-popover,
body.georural-map-page .map-tools-panel .terrain-tools-popover{
  position:fixed!important;
  display:grid!important;
  
  
  z-index:5200!important;
  
  max-height:min(68vh,520px)!important;
  
  transform:none!important;
  margin:0!important;
  
  border:1px solid #cbd8ea!important;
  border-radius:16px!important;
  background:#fff!important;
  box-shadow:0 18px 45px rgba(15,23,42,.20)!important;
}
body.georural-map-page .map-tools-panel #drawToolsPopover{width:min(330px,calc(100vw - 24px))!important;}
body.georural-map-page .map-tools-panel .draw-tools-popover.hidden,
body.georural-map-page .map-tools-panel .cad-tools-popover.hidden,
body.georural-map-page .map-tools-panel .sig-tools-popover.hidden,
body.georural-map-page .map-tools-panel .terrain-tools-popover.hidden{
  display:none!important;
}
body.georural-map-page .map-tools-panel .draw-tools-popover .tool-popover-title{
  
  
  
  color:#315072!important;
}
body.georural-map-page .map-tools-panel .draw-tools-popover button{
  min-height:36px!important;
  height:auto!important;
  justify-content:center!important;
  padding:7px 10px!important;
  border:1px solid #dbe5f0!important;
  border-radius:11px!important;
  background:#fff!important;
  color:#0f172a!important;
  font-weight:850!important;
  box-shadow:none!important;
}
body.georural-map-page .map-tools-panel .draw-tools-popover button:hover{
  border-color:#bcd2f4!important;
  background:#eef5ff!important;
  color:#155bd7!important;
}


/* ==========================================================
   v21.9.300 — Interface simples dentro da aba Ferramentas
   Remove painel lateral separado, tema, idioma, densidade,
   pesquisa global e atalhos. Mantém minimapa, escala e tela cheia.
   ========================================================== */
body.georural-map-page .map-tools-panel .mega-interface-btn{
  width:100%!important;
  justify-content:flex-start!important;
}
body.georural-map-page .mega-interface-panel,
body.georural-map-page .mega-search-dialog,
body.georural-map-page .mega-compass{
  display:none!important;
}
body.georural-map-page .mega-interface-inline{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
  padding:10px!important;
  border:1px solid #dbe5f0!important;
  border-radius:14px!important;
  background:#f8fbff!important;
}
body.georural-map-page .mega-interface-inline.hidden{
  display:none!important;
}
body.georural-map-page .mega-interface-inline .mega-inline-title{
  grid-column:1/-1!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.04em!important;
  color:#527093!important;
  text-transform:uppercase!important;
}
body.georural-map-page .mega-interface-inline button{
  min-height:36px!important;
  border:1px solid #d4e1f2!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#0f172a!important;
  font-weight:850!important;
  padding:0 10px!important;
  text-align:left!important;
}
body.georural-map-page .mega-interface-inline #megaFullscreenBtn{
  grid-column:1/-1!important;
}
body.georural-map-page .sidepanel-tabs-four button{
  
  
  min-width:0!important;
  
  
}

@media(max-width:430px){
  body.georural-map-page .mega-interface-inline{
    grid-template-columns:1fr!important;
  }
}


/* compatibilidade visual para componentes antigos salvos
   A biblioteca de inserção foi removida da interface; permanecem somente os estilos
   necessários para renderizar componentes existentes em projetos antigos. */
.surveyor-component-marker { background:transparent; border:0; }
.component-map-stamp { position:relative; box-sizing:border-box; border:2px solid var(--component-color,#0f172a); border-radius:10px; background:rgba(255,255,255,.9); color:var(--component-color,#0f172a); display:flex; align-items:center; justify-content:center; flex-direction:column; gap:2px; box-shadow:0 6px 16px rgba(15,23,42,.22); font-family:system-ui,-apple-system,Segoe UI,sans-serif; user-select:none; transform-origin:center; }
.component-map-stamp b { font-size:20px; line-height:1; font-weight:950; }
.component-map-stamp small { max-width:96%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:9px; font-weight:900; color:#0f172a; }
.component-cercas, .component-linhas, .component-setas, .component-curvas { border-left-width:4px; border-right-width:4px; }
.component-marcos { border-radius:999px; }
.component-norte b { font-size:24px; }
.component-tabelas { background:rgba(255,255,255,.96); }
.component-table-grid { position:absolute; inset:8px; opacity:.28; background:linear-gradient(to right, var(--component-color,#0f172a) 1px, transparent 1px), linear-gradient(to bottom, var(--component-color,#0f172a) 1px, transparent 1px); background-size:25% 33%; pointer-events:none; }
.component-molduras { background:rgba(255,255,255,.7); border-style:double; }
.component-frame-line { position:absolute; inset:8px; border:1px solid var(--component-color,#0f172a); border-radius:6px; opacity:.8; pointer-events:none; }

/* etiquetas de frente e fundo das glebas */
.gleba-front-back-anchor { background:transparent!important; border:0!important; }
.gleba-front-back-label {
  display:inline-flex;
  align-items:center;
  transform:translate(-50%,-50%);
  padding:6px 10px;
  border:1px solid rgba(255,255,255,.96);
  border-radius:999px;
  background:rgba(255,255,255,.96);
  color:#111827;
  font:800 12px/1.1 system-ui,-apple-system,"Segoe UI",sans-serif;
  white-space:nowrap;
  box-shadow:0 3px 12px rgba(15,23,42,.24);
  pointer-events:none;
}
.gleba-front-back-label b { color:#0f172a; font-weight:950; }
.gleba-front-back-frente { box-shadow:0 3px 12px color-mix(in srgb, var(--gleba-label-color,#2563eb) 28%, rgba(15,23,42,.22)); }
.gleba-front-back-fundo { box-shadow:0 3px 12px color-mix(in srgb, var(--gleba-label-color,#2563eb) 20%, rgba(15,23,42,.22)); }

/* retorno CAR inteiro e atalho de consulta sem balão */
body.georural-map-page .geo-brandbar.map-onebar .geo-brand-left:has(.map-return-car-btn:not(.hidden)){
  min-width:270px!important;
  max-width:270px!important;
  width:270px!important;
  overflow:visible!important;
}

/* pesquisa de localização recolhível */
body.georural-map-page .geo-map-search-toggle{width:32px!important;min-width:32px!important;padding:0!important;display:inline-grid!important;place-items:center!important;}
body.georural-map-page .geo-map-search-toggle svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;}
body.georural-map-page .geo-map-search-toggle.active{background:#eaf2ff!important;color:#1552a0!important;border-color:#9dc2ff!important;}
body.georural-map-page .geo-searchbar.hidden{display:none!important;}
body.georural-map-page .map-layer-info-help-popup .leaflet-popup-content-wrapper,
body.georural-map-page .map-layer-info-help-popup .leaflet-popup-content{
  background:transparent!important;
  box-shadow:none!important;
}


/* ==========================================================
   v21.9.355 — ações superiores, botão Download e edição direta
   ========================================================== */
body.georural-map-page .map-top-action{
  cursor:pointer!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  transition:transform .14s ease,background .14s ease,border-color .14s ease,box-shadow .14s ease!important;
}
body.georural-map-page .map-top-action:hover{
  transform:translateY(-1px)!important;
  border-color:#9dc2ff!important;
  background:#eef5ff!important;
  color:#1552a0!important;
  box-shadow:0 4px 12px rgba(21,82,160,.12)!important;
}
body.georural-map-page .map-top-action:active{
  transform:translateY(0) scale(.97)!important;
  box-shadow:none!important;
}
body.georural-map-page .map-top-action.active{
  background:#e8f1ff!important;
  border-color:#7eafff!important;
  color:#0b55c7!important;
}
body.georural-map-page .top-download-menu summary{
  cursor:pointer!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  outline:none!important;
  transition:transform .14s ease,background .14s ease,border-color .14s ease,box-shadow .14s ease!important;
}
body.georural-map-page .top-download-menu summary:hover{
  transform:translateY(-1px)!important;
  background:#eef5ff!important;
  border-color:#9dc2ff!important;
  color:#1552a0!important;
  box-shadow:0 4px 12px rgba(21,82,160,.12)!important;
}
body.georural-map-page .top-download-menu summary:active{
  transform:translateY(0) scale(.97)!important;
  box-shadow:none!important;
}
body.georural-map-page .top-download-menu[open] summary{
  background:#e8f1ff!important;
  border-color:#7eafff!important;
  color:#0b55c7!important;
}
body.georural-map-page .top-download-menu .map-download-list button{
  cursor:pointer!important;
  user-select:none!important;
  transition:background .12s ease,border-color .12s ease,transform .12s ease!important;
}
body.georural-map-page .top-download-menu .map-download-list button:hover{
  background:#eef5ff!important;
  border-color:#b6d1fb!important;
  transform:translateX(2px)!important;
}

/* projetos salvos no mapa e navegação fechada na entrada */

/* barra do mapa neutra; azul forte somente em hover/ativo */
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map button,
body.georural-map-page .geo-brandbar.map-onebar .top-download-menu summary,
body.georural-map-page .geo-brandbar.map-onebar .top-project-menu summary,
body.georural-map-page .geo-brandbar.map-onebar .top-map-switcher label,
body.georural-map-page .geo-brandbar.map-onebar .geo-map-search-toggle,
body.georural-map-page .geo-brandbar.map-onebar #saveBtn{
  background:#fff!important;
  color:#0f172a!important;
  border-color:#1769e0!important;
  box-shadow:none!important;
}
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map button:hover,
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map button:focus-visible,
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map button:active,
body.georural-map-page .geo-brandbar.map-onebar .top-download-menu summary:hover,
body.georural-map-page .geo-brandbar.map-onebar .top-download-menu[open] summary,
body.georural-map-page .geo-brandbar.map-onebar .top-project-menu summary:hover,
body.georural-map-page .geo-brandbar.map-onebar .top-project-menu[open] summary,
body.georural-map-page .geo-brandbar.map-onebar .geo-map-search-toggle[aria-expanded="true"],
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map .active,
body.georural-map-page .geo-brandbar.map-onebar .geo-toolbar-right-map [aria-pressed="true"],
body.georural-map-page .geo-brandbar.map-onebar #saveBtn:hover,
body.georural-map-page .geo-brandbar.map-onebar #saveBtn:focus-visible,
body.georural-map-page .geo-brandbar.map-onebar #saveBtn:active{
  background:#0f5bdc!important;
  border-color:#0f5bdc!important;
  color:#fff!important;
}

/* Bordas azuis nos caixotes principais do mapa */
body.georural-map-page .geo-sidepanel,
body.georural-map-page .compact-section,
body.georural-map-page .layer-card,
body.georural-map-page .layer-item,
body.georural-map-page .metrics,
body.georural-map-page .details,
body.georural-map-page .reference-status,
body.georural-map-page .catalog-group,
body.georural-map-page .catalog-import-card,
body.georural-map-page .catalog-preview-empty,
body.georural-map-page .compact-fields input,
body.georural-map-page .compact-fields select,
body.georural-map-page .compact-fields textarea{
  border-color:#1769e0!important;
}

/* ==========================================================
   v21.11.0 — Edição de polígonos com handles pequenos e área
   de toque ampliada. O alvo clicável é grande, mas o desenho
   visível permanece um ponto técnico discreto.
   ========================================================== */
body.georural-map-page.surveyor-direct-editing .surveyor-edit-handle,
body.georural-map-page.surveyor-direct-editing .leaflet-editing-icon.surveyor-edit-handle,
body.georural-map-page.surveyor-direct-editing .leaflet-div-icon.leaflet-editing-icon.surveyor-edit-handle{
  width:32px!important;
  height:32px!important;
  margin-left:-16px!important;
  margin-top:-16px!important;
  border:0!important;
  border-radius:50%!important;
  background:transparent!important;
  box-shadow:none!important;
  opacity:1!important;
  pointer-events:auto!important;
  touch-action:none!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  cursor:crosshair!important;
  z-index:1950!important;
}
body.georural-map-page.surveyor-direct-editing .surveyor-edit-handle::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:22px;
  height:22px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:rgba(15,91,220,.10);
  opacity:0;
  transition:opacity .12s ease,transform .12s ease;
  pointer-events:none;
}
body.georural-map-page.surveyor-direct-editing .surveyor-edit-handle::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:9px;
  height:9px;
  transform:translate(-50%,-50%);
  box-sizing:border-box;
  border-radius:50%;
  background:#fff;
  border:2px solid #0f5bdc;
  box-shadow:0 1px 3px rgba(15,23,42,.40);
  pointer-events:none;
}
body.georural-map-page.surveyor-direct-editing .surveyor-edit-midpoint-handle::after{
  width:8px;
  height:8px;
  background:#94a3b8;
  border:1.5px solid #fff;
  box-shadow:0 0 0 1px #64748b,0 1px 3px rgba(15,23,42,.34);
}
body.georural-map-page.surveyor-direct-editing .surveyor-edit-midpoint-handle::before{
  background:rgba(100,116,139,.13);
}
/* 2026-09-03 — os pontos intermediários permanecem no editor, mas são
   ocultos por padrão. O usuário pode reativá-los pelo menu CAD. */
body.georural-map-page.surveyor-direct-editing:not(.surveyor-edit-midpoints-enabled) .surveyor-edit-midpoint-handle,
body.georural-map-page.surveyor-direct-editing:not(.surveyor-edit-midpoints-enabled) .leaflet-editing-icon.surveyor-edit-midpoint-handle,
body.georural-map-page.surveyor-direct-editing:not(.surveyor-edit-midpoints-enabled) .leaflet-div-icon.leaflet-editing-icon.surveyor-edit-midpoint-handle{
  display:none!important;
  pointer-events:none!important;
}
body.georural-map-page .map-tools-panel .surveyor-edit-midpoints-toggle[aria-pressed="true"]{
  border-color:#9fc0f5!important;
  background:#eaf2ff!important;
  color:#0f5bdc!important;
  box-shadow:inset 0 0 0 1px rgba(15,91,220,.10)!important;
}
body.georural-map-page.surveyor-direct-editing .surveyor-edit-handle:hover::before,
body.georural-map-page.surveyor-direct-editing .surveyor-edit-handle.is-dragging::before{
  opacity:1;
}
body.georural-map-page.surveyor-direct-editing .surveyor-edit-handle:hover::after{
  transform:translate(-50%,-50%) scale(1.18);
}
body.georural-map-page.surveyor-direct-editing .surveyor-edit-handle.is-dragging{
  cursor:crosshair!important;
  z-index:2100!important;
}
/* 2026-09-04 — edição técnica: o cursor permanece em “+” durante toda a
   sessão, inclusive sobre o vértice. O mapa não entra em modo de mão/pan. */
body.georural-map-page.surveyor-direct-editing #map,
body.georural-map-page.surveyor-direct-editing #map.leaflet-container,
body.georural-map-page.surveyor-direct-editing #map .leaflet-interactive,
body.georural-map-page.surveyor-direct-editing .surveyor-edit-handle,
body.georural-map-page.surveyor-vertex-dragging #map,
body.georural-map-page.surveyor-vertex-dragging #map.leaflet-container{
  cursor:crosshair!important;
}
@media (pointer:coarse){
  body.georural-map-page.surveyor-direct-editing .surveyor-edit-handle,
  body.georural-map-page.surveyor-direct-editing .leaflet-editing-icon.surveyor-edit-handle,
  body.georural-map-page.surveyor-direct-editing .leaflet-div-icon.leaflet-editing-icon.surveyor-edit-handle{
    width:42px!important;
    height:42px!important;
    margin-left:-21px!important;
    margin-top:-21px!important;
  }
  body.georural-map-page.surveyor-direct-editing .surveyor-edit-handle::before{
    width:30px;
    height:30px;
  }
  body.georural-map-page.surveyor-direct-editing .surveyor-edit-handle::after{
    width:10px;
    height:10px;
  }
  body.georural-map-page.surveyor-direct-editing .surveyor-edit-midpoint-handle::after{
    width:9px;
    height:9px;
  }
}

/* v21.11.5p — proprietário em destaque na consulta fundiária oficial */
body.georural-map-page .rural-registry-popup .registry-owner-row th,body.georural-map-page .rural-registry-popup .registry-owner-row td{font-weight:850!important;color:#0f172a!important;background:#f4f8ff!important;}


/* ===== assets/css/features/mapa/mapa-catalogo-camadas.css ===== */
/* ==========================================================
   Surveyor — Correção visual do modal "Adicionar camadas"
   Arquivo: assets/css/features/mapa/mapa-catalogo-camadas.css
   Versão: 21.9.62
   ========================================================== */

:root {
  --catalog-blue: #2563eb;
  --catalog-blue-dark: #1d4ed8;
  --catalog-blue-soft: #eff6ff;
  --catalog-bg: #f8fafc;
  --catalog-panel: #ffffff;
  --catalog-text: #0f2a44;
  --catalog-muted: #64748b;
  --catalog-border: #dbe7f3;
  --catalog-border-soft: #edf2f7;
  --catalog-shadow: 0 24px 70px rgba(15, 23, 42, 0.22);
}

/* Dialog principal */
#layerCatalogDialog.layer-catalog-dialog {
  width: min(1080px, calc(100vw - 32px)) !important;
  height: min(680px, calc(100vh - 32px)) !important;
  max-width: none !important;
  max-height: none !important;
  padding: 0 !important;
  border: 0 !important;
  
  background: var(--catalog-panel) !important;
  color: var(--catalog-text) !important;
  
  overflow: hidden !important;
  font-family: Inter, "Segoe UI", Roboto, Arial, sans-serif !important;
}

#layerCatalogDialog::backdrop {
  background: rgba(15, 23, 42, 0.52) !important;
  backdrop-filter: blur(2px);
}

#layerCatalogDialog[open] {
  display: grid !important;
  grid-template-rows: auto auto minmax(0, 1fr) !important;
}

/* Cabeçalho Otimizado */
#layerCatalogDialog .catalog-dialog-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  
  border-bottom: 1px solid var(--catalog-border) !important;
  
}

#layerCatalogDialog .catalog-dialog-header b {
  display: block !important;
  margin: 0 !important;
  
  line-height: 1.15 !important;
  font-weight: 800 !important;
  color: var(--catalog-text) !important;
}

#layerCatalogDialog .catalog-dialog-header span {
  display: block !important;
  margin-top: 2px !important;
  
  color: var(--catalog-muted) !important;
}

#layerCatalogDialog .close,
#layerCatalogDialog #closeLayerCatalog {
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  border: 1px solid var(--catalog-border) !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  color: var(--catalog-text) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  cursor: pointer !important;
  transition: background 0.16s ease, transform 0.16s ease, border-color 0.16s ease;
}

#layerCatalogDialog .close:hover,
#layerCatalogDialog #closeLayerCatalog:hover {
  background: var(--catalog-blue-soft) !important;
  border-color: #bfdbfe !important;
  color: var(--catalog-blue) !important;
  transform: scale(1.04);
}

/* Abas Compactas */
#layerCatalogDialog .catalog-dialog-tabs {
  display: flex !important;
  align-items: center !important;
  
  
  border-bottom: 1px solid var(--catalog-border) !important;
  
  overflow-x: auto !important;
}

#layerCatalogDialog .catalog-dialog-tabs button {
  
  
  border: 1px solid transparent !important;
  
  background: transparent !important;
  color: var(--catalog-muted) !important;
  
  font-weight: 800 !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  transition: background 0.16s ease, color 0.16s ease, border-color 0.16s ease, transform 0.16s ease;
}

#layerCatalogDialog .catalog-dialog-tabs button:hover {
  background: #ffffff !important;
  color: var(--catalog-blue) !important;
  border-color: #dbeafe !important;
  transform: translateY(-1px);
}

#layerCatalogDialog .catalog-dialog-tabs button.active {
  
  color: var(--catalog-blue) !important;
  border-color: #bfdbfe !important;
  
}

/* Painéis */
#layerCatalogDialog .catalog-dialog-panel {
  display: none !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

#layerCatalogDialog .catalog-dialog-panel.active {
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) auto !important;
}

#layerCatalogDialog .catalog-dialog-panel[data-catalog-panel="import"].active,
#layerCatalogDialog .catalog-dialog-panel[data-catalog-panel="service"].active {
  display: block !important;
  padding: 14px !important;
  overflow: auto !important;
}

/* Layout catálogo */
#layerCatalogDialog .catalog-dialog-layout {
  min-height: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 300px !important;
  background: #ffffff !important;
}

#layerCatalogDialog .catalog-dialog-list {
  min-height: 0 !important;
  overflow: auto !important;
  padding: 12px !important;
  border-right: 1px solid var(--catalog-border) !important;
  background: #ffffff !important;
}

/* Busca */
#layerCatalogDialog .catalog-search-row {
  position: sticky !important;
  top: 0 !important;
  z-index: 5 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 36px !important;
  gap: 6px !important;
  margin-bottom: 10px !important;
  padding-bottom: 6px !important;
  background: #ffffff !important;
}

#layerCatalogDialog .catalog-search-row input {
  width: 100% !important;
  
  padding: 0 12px !important;
  border: 1px solid var(--catalog-border) !important;
  
  
  color: var(--catalog-text) !important;
  font-size: 13px !important;
  outline: none !important;
}

#layerCatalogDialog .catalog-search-row input:focus {
  border-color: var(--catalog-blue) !important;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12) !important;
}

#layerCatalogDialog .catalog-search-row span {
  display: grid !important;
  place-items: center !important;
  border: 1px solid var(--catalog-border) !important;
  
  
  color: var(--catalog-muted) !important;
}

/* Lista de grupos */
#layerCatalogDialog .map-layer-catalog {
  display: grid !important;
  gap: 10px !important;
}

#layerCatalogDialog .map-catalog-group {
  border: 1px solid var(--catalog-border) !important;
  
  background: #ffffff !important;
  overflow: hidden !important;
  
}

#layerCatalogDialog .map-catalog-group > button {
  width: 100% !important;
  min-height: 38px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  padding: 0 12px !important;
  border: 0 !important;
  background: #f8fbff !important;
  color: var(--catalog-text) !important;
  text-align: left !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  cursor: pointer !important;
  transition: background 0.16s ease, color 0.16s ease;
}

#layerCatalogDialog .map-catalog-group > button:hover {
  background: var(--catalog-blue-soft) !important;
  color: var(--catalog-blue) !important;
}

#layerCatalogDialog .map-catalog-group.collapsed .map-catalog-items {
  display: none !important;
}

/* Cards de camadas compactos */
#layerCatalogDialog .map-catalog-items {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  
  
  background: #ffffff !important;
}

#layerCatalogDialog .map-catalog-item {
  min-width: 0 !important;
  
  display: grid !important;
  grid-template-columns: 14px minmax(0, 1fr) 20px !important;
  align-items: flex-start !important;
  gap: 8px !important;
  
  border: 1px solid var(--catalog-border) !important;
  
  background: #ffffff !important;
  color: var(--catalog-text) !important;
  cursor: pointer !important;
  transition: background 0.16s ease, border-color 0.16s ease, transform 0.16s ease, box-shadow 0.16s ease;
}

#layerCatalogDialog .map-catalog-item:hover {
  background: #fbfdff !important;
  border-color: #bfdbfe !important;
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(15, 23, 42, 0.06) !important;
}

#layerCatalogDialog .map-catalog-item.selected {
  background: var(--catalog-blue-soft) !important;
  border-color: var(--catalog-blue) !important;
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.15) !important;
}

#layerCatalogDialog .map-catalog-color {
  width: 12px !important;
  height: 12px !important;
  margin-top: 3px !important;
  border-radius: 4px !important;
  background: var(--layer-color, var(--catalog-blue)) !important;
  box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.12) !important;
}

#layerCatalogDialog .map-catalog-copy {
  min-width: 0 !important;
  display: block !important;
}

#layerCatalogDialog .map-catalog-copy b {
  display: block !important;
  color: var(--catalog-text) !important;
  
  font-weight: 850 !important;
  line-height: 1.2 !important;
  word-break: break-word !important;
}

#layerCatalogDialog .map-catalog-copy small {
  display: block !important;
  margin-top: 3px !important;
  color: var(--catalog-muted) !important;
  
  
}

#layerCatalogDialog .map-catalog-toggle {
  width: 16px !important;
  height: 16px !important;
  min-height: 16px !important;
  margin: 1px 0 0 !important;
  accent-color: var(--catalog-blue) !important;
  cursor: pointer !important;
}

/* Painel de Pré-visualização com Satélite */
#layerCatalogDialog .catalog-layer-preview {
  min-height: 0 !important;
  
  overflow: auto !important;
  
}

#layerCatalogDialog .catalog-preview-empty {
  height: 100% !important;
  min-height: 300px !important;
  display: grid !important;
  place-items: center !important;
  padding: 20px !important;
  
  
  
  color: var(--catalog-muted) !important;
  text-align: center !important;
  font-size: 13.5px !important;
  line-height: 1.4 !important;
}

#layerCatalogDialog .catalog-preview-map-container {
  width: 100% !important;
  height: 180px !important;
  position: relative !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  border: 1px solid var(--catalog-border) !important;
  margin-bottom: 10px !important;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08) !important;
}

#layerCatalogDialog .catalog-preview-map {
  width: 100% !important;
  
}

#layerCatalogDialog .catalog-preview-content h3 {
  margin: 0 0 6px !important;
  color: var(--catalog-text) !important;
  font-size: 15px !important;
  line-height: 1.25 !important;
}

#layerCatalogDialog .catalog-preview-content p {
  margin: 0 0 10px !important;
  color: var(--catalog-muted) !important;
  font-size: 11.5px !important;
  line-height: 1.4 !important;
}

#layerCatalogDialog .catalog-preview-meta {
  display: grid !important;
  gap: 6px !important;
}

#layerCatalogDialog .catalog-preview-meta div {
  padding: 6px 8px !important;
  border: 1px solid var(--catalog-border) !important;
  
  background: #f8fbff !important;
}

#layerCatalogDialog .catalog-preview-meta span {
  display: block !important;
  color: var(--catalog-muted) !important;
  font-size: 10px !important;
}

#layerCatalogDialog .catalog-preview-meta b {
  display: block !important;
  margin-top: 1px !important;
  color: var(--catalog-text) !important;
  font-size: 12px !important;
}

/* Rodapé */
#layerCatalogDialog .catalog-dialog-footer {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  
  border-top: 1px solid var(--catalog-border) !important;
  background: #ffffff !important;
}

#layerCatalogDialog #catalogSelectionCount {
  color: var(--catalog-text) !important;
  font-size: 14px !important;
  font-weight: 650 !important;
}

#layerCatalogDialog #applyCatalogLayers {
  
  
  border: 0 !important;
  
  background: var(--catalog-blue) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 850 !important;
  cursor: pointer !important;
  transition: background 0.16s ease, transform 0.16s ease, box-shadow 0.16s ease;
}

#layerCatalogDialog #applyCatalogLayers:hover:not(:disabled) {
  background: var(--catalog-blue-dark) !important;
  transform: translateY(-1px);
  box-shadow: 0 12px 24px rgba(37, 99, 235, 0.22) !important;
}

#layerCatalogDialog #applyCatalogLayers:active:not(:disabled) {
  transform: scale(0.98);
}

#layerCatalogDialog #applyCatalogLayers:disabled {
  opacity: 0.55 !important;
  cursor: not-allowed !important;
}

/* Importar camada / Geosserviço */
#layerCatalogDialog .catalog-import-grid,
#layerCatalogDialog .geoservice-form {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  
}

#layerCatalogDialog .catalog-import-card,
#layerCatalogDialog .geoservice-form {
  
  border: 1px solid var(--catalog-border) !important;
  
  
  
}

#layerCatalogDialog .catalog-import-card strong {
  display: block !important;
  margin-bottom: 4px !important;
  color: var(--catalog-text) !important;
  font-size: 15px !important;
}

#layerCatalogDialog .catalog-import-card span {
  display: block !important;
  margin-bottom: 14px !important;
  color: var(--catalog-muted) !important;
  
  line-height: 1.45 !important;
}

#layerCatalogDialog .catalog-import-card button,
#layerCatalogDialog .geoservice-form button {
  
  padding: 0 14px !important;
  border: 1px solid #bfdbfe !important;
  
  background: var(--catalog-blue-soft) !important;
  color: var(--catalog-blue) !important;
  font-weight: 850 !important;
  cursor: pointer !important;
}

#layerCatalogDialog .catalog-import-card button:hover,
#layerCatalogDialog .geoservice-form button:hover {
  background: var(--catalog-blue) !important;
  color: #ffffff !important;
}

/* Ajustes para o catálogo não parecer texto cru mesmo se uma camada tiver nome longo */
#layerCatalogDialog .map-catalog-item *,
#layerCatalogDialog .map-catalog-group * {
  box-sizing: border-box !important;
}

#layerCatalogDialog select {
  min-height: 36px !important;
  border: 1px solid var(--catalog-border) !important;
  border-radius: 10px !important;
  background: #ffffff !important;
  color: var(--catalog-text) !important;
  padding: 0 10px !important;
  font: inherit !important;
}

/* Responsivo */
@media (max-width: 1080px) {
  #layerCatalogDialog .catalog-dialog-layout {
    grid-template-columns: 1fr !important;
  }

  #layerCatalogDialog .catalog-layer-preview {
    display: none !important;
  }
}

@media (max-width: 760px) {
  #layerCatalogDialog.layer-catalog-dialog {
    width: calc(100vw - 16px) !important;
    height: calc(100vh - 16px) !important;
    border-radius: 14px !important;
  }

  #layerCatalogDialog .catalog-dialog-header {
    padding: 14px !important;
  }

  #layerCatalogDialog .catalog-dialog-header b {
    font-size: 18px !important;
  }

  #layerCatalogDialog .catalog-dialog-tabs {
    padding: 10px !important;
  }

  #layerCatalogDialog .catalog-dialog-list {
    padding: 12px !important;
  }

  #layerCatalogDialog .map-catalog-items,
  #layerCatalogDialog .catalog-import-grid,
  #layerCatalogDialog .geoservice-form {
    grid-template-columns: 1fr !important;
  }

  #layerCatalogDialog .catalog-dialog-footer {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  #layerCatalogDialog #applyCatalogLayers {
    width: 100% !important;
  }
}

/* popup CAR/SIGEF/SNCI com barras azuis expansíveis */
.rural-registry-popup { display: grid;   }
.rural-registry-popup > b { font-size: 13px; color: #0f172a; }
.rural-registry-popup > small { display: block; margin-top: -5px; color: #64748b; font-size: 11px; }
.rural-registry-popup table { width: 100%; border-collapse: collapse; font-size: 11px; }
.rural-registry-popup th { text-align: left; width: 44%; color: #334155; font-weight: 800; padding: 3px 6px 3px 0; vertical-align: top; }
.rural-registry-popup td { color: #111827; padding: 3px 0; vertical-align: top; word-break: break-word; }
.registry-section { border: 1px solid #bfdbfe;  overflow: hidden; background: #fff; box-shadow: 0 1px 4px rgba(15, 23, 42, .08); }
.registry-section summary { cursor: pointer; list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 10px;  background: linear-gradient(90deg, #0b5de0, #1976f3); color: #fff; font-weight: 900; letter-spacing: .01em; }
.registry-section summary::-webkit-details-marker { display: none; }

.registry-section summary em { width: 8px; height: 8px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: rotate(45deg); transition: transform .16s ease; opacity: .95; }
.registry-section[open] summary em { transform: rotate(-135deg); }
.registry-section-body { padding: 8px 10px 9px; background: #fff;  overflow: auto; }
.registry-empty { margin: 0; color: #64748b; font-size: 11px; line-height: 1.35; }
.rural-registry-leaflet-popup .leaflet-popup-content { margin: 11px 13px; }

/* consulta fundiária restaurada: botão ? + CAR/SIGEF expansíveis */
.rural-registry-leaflet-popup .leaflet-popup-content-wrapper{border:1px solid #b9d3fb;border-radius:12px;box-shadow:0 14px 35px rgba(15,42,68,.2);}
.rural-registry-popup{min-width:300px;gap:9px;}
.rural-registry-popup> b{font-size:14px;color:#0f2a44;}
.rural-registry-popup> small{margin-bottom:2px;line-height:1.35;}
.registry-section{border-radius:8px;}
.registry-section summary{min-height:38px;padding:8px 11px;}
.registry-section summary span{font-size:12px;letter-spacing:.04em;}
.registry-section-body{max-height:265px;}

/* ajustes amigáveis do modal de camadas/importação/geosserviço */
#layerCatalogDialog.layer-catalog-dialog{
  border-radius:22px!important;
  box-shadow:0 30px 80px rgba(15,23,42,.24)!important;
}
#layerCatalogDialog .catalog-dialog-header{
  padding:22px 22px 18px!important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)!important;
}
#layerCatalogDialog .catalog-dialog-header b{font-size:24px!important;letter-spacing:-.02em!important;}
#layerCatalogDialog .catalog-dialog-header span{font-size:14px!important;}
#layerCatalogDialog .catalog-dialog-tabs{
  padding:12px 18px!important;
  gap:12px!important;
  background:#f8fafc!important;
}
#layerCatalogDialog .catalog-dialog-tabs button{
  min-height:42px!important;
  padding:0 18px!important;
  border-radius:14px!important;
  font-size:14px!important;
}
#layerCatalogDialog .catalog-dialog-tabs button.active{
  background:#ffffff!important;
  box-shadow:0 10px 24px rgba(15,23,42,.08)!important;
}
#layerCatalogDialog .catalog-search-row input{
  min-height:46px!important;
  border-radius:14px!important;
  background:#fbfcfe!important;
}
#layerCatalogDialog .catalog-search-row span{border-radius:14px!important;background:#fbfcfe!important;}
#layerCatalogDialog .map-catalog-group{
  border-radius:18px!important;
  box-shadow:0 10px 26px rgba(15,23,42,.045)!important;
}
#layerCatalogDialog .map-catalog-group>button{
  min-height:50px!important;
  background:linear-gradient(180deg,#f8fbff 0%,#f3f8ff 100%)!important;
  font-size:15px!important;
}
#layerCatalogDialog .map-catalog-items{gap:12px!important;padding:14px!important;}
#layerCatalogDialog .map-catalog-item{
  min-height:88px!important;
  border-radius:16px!important;
  padding:14px!important;
}
#layerCatalogDialog .map-catalog-copy b{font-size:14px!important;}
#layerCatalogDialog .map-catalog-copy small{font-size:11.5px!important;line-height:1.45!important;}
#layerCatalogDialog .catalog-layer-preview{padding:18px!important;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)!important;}
#layerCatalogDialog .catalog-preview-empty{
  border-radius:18px!important;
  border:1px dashed #d2def0!important;
  background:linear-gradient(180deg,#fdfefe 0%,#f7fbff 100%)!important;
}
#layerCatalogDialog .catalog-preview-map{
  height:168px!important;
  border-radius:18px!important;
}
#layerCatalogDialog .catalog-preview-symbol{
  width:64px!important;
  height:64px!important;
  border-radius:20px!important;
}
#layerCatalogDialog .catalog-preview-meta div{border-radius:14px!important;}
#layerCatalogDialog .catalog-dialog-footer{padding:16px 18px!important;}
#layerCatalogDialog #applyCatalogLayers{
  min-height:46px!important;
  padding:0 20px!important;
  border-radius:14px!important;
  box-shadow:0 14px 28px rgba(37,99,235,.18)!important;
}
#layerCatalogDialog .catalog-import-grid,
#layerCatalogDialog .geoservice-form{gap:18px!important;}
#layerCatalogDialog .catalog-import-card,
#layerCatalogDialog .geoservice-form{
  border-radius:18px!important;
  padding:18px!important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)!important;
  box-shadow:0 12px 28px rgba(15,23,42,.05)!important;
}
#layerCatalogDialog .catalog-import-card{
  position:relative!important;
  overflow:hidden!important;
}
#layerCatalogDialog .catalog-import-card::before{
  content:""!important;
  position:absolute!important;
  inset:0 auto auto 0!important;
  width:64px!important;
  height:64px!important;
  border-radius:0 0 18px 0!important;
  background:radial-gradient(circle at top left,rgba(37,99,235,.15),transparent 70%)!important;
  pointer-events:none!important;
}
#layerCatalogDialog .catalog-import-card strong,
#layerCatalogDialog .geoservice-form label{font-size:15px!important;color:var(--catalog-text)!important;}
#layerCatalogDialog .catalog-import-card span{font-size:12.5px!important;}
#layerCatalogDialog .catalog-import-card button,
#layerCatalogDialog .geoservice-form button{
  min-height:42px!important;
  border-radius:14px!important;
}
#layerCatalogDialog .geoservice-form input,
#layerCatalogDialog .geoservice-form select{
  min-height:44px!important;
  border-radius:12px!important;
  background:#fbfcfe!important;
}
@media (max-width: 1024px){
  #layerCatalogDialog .catalog-dialog-layout{grid-template-columns:minmax(0,1fr)!important;}
  #layerCatalogDialog .catalog-dialog-list{border-right:0!important;border-bottom:1px solid var(--catalog-border)!important;}
}
@media (max-width: 760px){
  #layerCatalogDialog.layer-catalog-dialog{width:min(100vw - 20px,1180px)!important;height:min(100vh - 20px,760px)!important;}
  #layerCatalogDialog .map-catalog-items,
  #layerCatalogDialog .catalog-import-grid,
  #layerCatalogDialog .geoservice-form{grid-template-columns:1fr!important;}
}


/* ===== assets/css/core/forms.css ===== */
/* Surveyor v21.9.403 — formulários compactos e campos inteligentes sem detecção genérica. */
:root{--sv-form-shell-max:1080px;}

body[data-page]:not([data-page="mapa.html"]):not([data-page="admin.html"]) .top>div>p{display:none!important;}

body[data-page="car.html"]{--sv-form-shell-max:1120px;}
body[data-page="customizacao.html"]{--sv-form-shell-max:1100px;}
body[data-page="memorial.html"],
body[data-page="mapas.html"],
body[data-page="pranchas.html"],
body[data-page="planialtimetria.html"],
body[data-page="perimetros.html"],
body[data-page="ambiental.html"],
body[data-page="confrontacao.html"],
body[data-page="ods.html"],
body[data-page="glebas.html"],
body[data-page="loteamentos-reurb.html"]{--sv-form-shell-max:1080px;}

body[data-page="memorial.html"] .main>.top,
body[data-page="memorial.html"] .main>.panel,
body[data-page="car.html"] .main>.top,
body[data-page="car.html"] .main>.panel,
body[data-page="car.html"] .main>.sheet-tabs,
body[data-page="mapas.html"] .main>.top,
body[data-page="mapas.html"] .main>.panel,
body[data-page="pranchas.html"] .main>.top,
body[data-page="pranchas.html"] .main>.panel,
body[data-page="planialtimetria.html"] .main>.top,
body[data-page="planialtimetria.html"] .main>.panel,
body[data-page="perimetros.html"] .main>.top,
body[data-page="perimetros.html"] .main>.panel,
body[data-page="ambiental.html"] .main>.top,
body[data-page="ambiental.html"] .main>.panel,
body[data-page="confrontacao.html"] .main>.top,
body[data-page="confrontacao.html"] .main>.panel,
body[data-page="ods.html"] .main>.top,
body[data-page="ods.html"] .main>.panel,
body[data-page="glebas.html"] .main>.top,
body[data-page="glebas.html"] .main>.panel,
body[data-page="loteamentos-reurb.html"] .main>.top,
body[data-page="loteamentos-reurb.html"] .main>.panel,
body[data-page="customizacao.html"] .main>.top,
body[data-page="customizacao.html"] .main>.panel,
body[data-page="customizacao.html"] .main>.customization-layout{
  width:min(100%,var(--sv-form-shell-max))!important;
  max-width:var(--sv-form-shell-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;}

body[data-page="car.html"] .main{max-width:none!important;width:100%!important;}
body[data-page="car.html"] .car-project-picker-simple,
body[data-page="car.html"] .car-simple-tabs,
body[data-page="car.html"] .car-tab-panel{
  width:min(100%,var(--sv-form-shell-max))!important;
  max-width:var(--sv-form-shell-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;}

body[data-page]:not([data-page="mapa.html"]):not([data-page="admin.html"]) .sv-form-panel{padding:14px!important;}
body[data-page]:not([data-page="mapa.html"]):not([data-page="admin.html"]) .sv-form-panel .form-grid,
body[data-page]:not([data-page="mapa.html"]):not([data-page="admin.html"]) .sv-form-panel .form-grid.two,
body[data-page]:not([data-page="mapa.html"]):not([data-page="admin.html"]) .sv-form-panel .form-grid.three{gap:9px 11px!important;}
body[data-page]:not([data-page="mapa.html"]):not([data-page="admin.html"]) .sv-form-panel input,
body[data-page]:not([data-page="mapa.html"]):not([data-page="admin.html"]) .sv-form-panel select,
body[data-page]:not([data-page="mapa.html"]):not([data-page="admin.html"]) .sv-form-panel .compact-input{min-height:38px!important;}
body[data-page]:not([data-page="mapa.html"]):not([data-page="admin.html"]) .sv-form-panel .panel-heading{margin-bottom:10px!important;}

.sv-municipality-suggestions{position:fixed;z-index:100000;display:none;max-height:260px;overflow:auto;border:1px solid #2563eb;border-radius:10px;background:#fff;box-shadow:0 14px 36px rgba(15,42,68,.18);}
.sv-municipality-suggestions.is-open{display:block;}
.sv-municipality-option{width:100%;min-height:40px;padding:8px 12px;border:0;border-bottom:1px solid #e5edf8;background:#fff;color:#0f2a44;text-align:left;cursor:pointer;}
.sv-municipality-option:last-child{border-bottom:0;}
.sv-municipality-option:hover,.sv-municipality-option.is-active{background:#eaf2ff;color:#1d4ed8;}
.sv-municipality-option strong{display:block;font-size:13px;}
.sv-municipality-option small{display:block;margin-top:2px;color:#607089;font-size:11px;}
.sv-municipality-empty{padding:12px;color:#607089;font-size:12px;}
.sv-input-invalid{border-color:#dc2626!important;box-shadow:0 0 0 3px rgba(220,38,38,.10)!important;}
.sv-input-valid{border-color:#16a34a!important;}

@media(max-width:900px){
  body[data-page="car.html"] .car-project-picker-simple,
  body[data-page="car.html"] .car-simple-tabs,
  body[data-page="car.html"] .car-tab-panel{width:100%!important;}
}

/* ações preservadas após remover cabeçalhos internos redundantes. */
.panel-actions-top,.car-feature-actions{justify-content:flex-end!important;margin:0 0 10px!important;}


/* ===== assets/css/core/commercial.css ===== */
:root{--surveyor-focus:#2563eb;--surveyor-danger:#b91c1c;--surveyor-warning:#92400e;--surveyor-success:#166534;}
*{box-sizing:border-box;}
html{overflow-x:hidden;}
body{max-width:100%;overflow-x:hidden;}
:where(button,[role="button"],a,input,select,textarea):focus-visible{outline:3px solid color-mix(in srgb,var(--surveyor-focus) 35%,transparent);outline-offset:2px;}
:where(button,[role="button"],input,select){min-height:36px;}
img,svg,canvas,video{max-width:100%;}
[hidden],.hidden{display:none!important;}
.surveyor-runtime-banner{position:fixed;z-index:2147483000;left:50%;top:max(10px,env(safe-area-inset-top));transform:translateX(-50%);width:min(680px,calc(100% - 24px));display:flex;align-items:flex-start;gap:12px;padding:12px 14px;border-radius:13px;background:#fff;color:#0f172a;box-shadow:0 18px 50px rgba(15,23,42,.26);border:1px solid #cbd5e1;font:600 14px/1.35 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.surveyor-runtime-banner[data-kind="danger"]{border-color:#fecaca;background:#fff7f7;color:#7f1d1d;}.surveyor-runtime-banner[data-kind="warning"]{border-color:#fed7aa;background:#fffbeb;color:#78350f;}.surveyor-runtime-banner[data-kind="success"]{border-color:#bbf7d0;background:#f0fdf4;color:#14532d;}.surveyor-runtime-banner__message{flex:1;}.surveyor-runtime-banner button{min-height:28px;border:0;background:transparent;color:inherit;font:700 18px/1 system-ui;cursor:pointer;padding:2px 5px;border-radius:6px;}
.surveyor-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;}
@media(max-width:760px){:where(.modal,.dialog,[role="dialog"]){max-width:calc(100vw - 16px)!important;max-height:calc(100dvh - 16px)!important;}:where(.modal-content,.dialog-content){max-height:calc(100dvh - 32px)!important;overflow:auto;}.surveyor-runtime-banner{top:max(6px,env(safe-area-inset-top));font-size:13px;}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;}}


/* ===== assets/css/features/mapa/map-ux-v21.11.5.css ===== */
/* Surveyor v21.11.4 — alfinete GPS, painel flutuante e ferramentas por ícones */
:root{--map-nav-rail:56px;--map-icon-size:36px;--map-ui-gap:7px;}
body.georural-map-page{--map-nav-rail:56px;}
body.georural-map-page .map-icon-button,
body.georural-map-page .map-topbar button{display:inline-flex;align-items:center;justify-content:center;}
body.georural-map-page .map-icon-button svg,
body.georural-map-page .geo-map-search-toggle svg,
body.georural-map-page .map-download-menu>summary svg,
body.georural-map-page .map-project-menu>summary svg,
body.georural-map-page .geo-layers-trigger svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;}

/* Barra superior: ações somente por ícone; o title/aria-label entrega o nome no hover/foco. */
body.georural-map-page #mapGlobalNavToggle,
body.georural-map-page #toggleLayersPanel,
body.georural-map-page #newBtn,
body.georural-map-page #saveBtn,
body.georural-map-page #toggleMapSearch,
body.georural-map-page #topEditElementsBtn,
body.georural-map-page #openImportLayersBtn,
body.georural-map-page .top-download-menu>summary,
body.georural-map-page .top-project-menu>summary{width:var(--map-icon-size)!important;min-width:var(--map-icon-size)!important;height:34px!important;min-height:34px!important;padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:8px!important;box-sizing:border-box!important;}
body.georural-map-page #mapGlobalNavToggle{font-size:0!important;}
body.georural-map-page #toggleLayersPanel>span,
body.georural-map-page #toggleLayersPanel>b{display:none!important;}
body.georural-map-page .map-download-menu>summary,
body.georural-map-page .map-project-menu>summary{list-style:none!important;}
body.georural-map-page .map-download-menu>summary::-webkit-details-marker,
body.georural-map-page .map-project-menu>summary::-webkit-details-marker{display:none!important;}
body.georural-map-page .geo-toolbar-right-map{gap:var(--map-ui-gap)!important;align-items:center!important;}
body.georural-map-page #mapGlobalNavToggle,
body.georural-map-page #toggleLayersPanel,
body.georural-map-page #newBtn,
body.georural-map-page #saveBtn,
body.georural-map-page #toggleMapSearch,
body.georural-map-page #topEditElementsBtn,
body.georural-map-page #openImportLayersBtn,
body.georural-map-page .top-download-menu>summary,
body.georural-map-page .top-project-menu>summary{position:relative!important;}
body.georural-map-page #mapGlobalNavToggle:hover::after,
body.georural-map-page #mapGlobalNavToggle:focus-visible::after,
body.georural-map-page #toggleLayersPanel:hover::after,
body.georural-map-page #toggleLayersPanel:focus-visible::after,
body.georural-map-page #newBtn:hover::after,
body.georural-map-page #newBtn:focus-visible::after,
body.georural-map-page #saveBtn:hover::after,
body.georural-map-page #saveBtn:focus-visible::after,
body.georural-map-page #toggleMapSearch:hover::after,
body.georural-map-page #toggleMapSearch:focus-visible::after,
body.georural-map-page #topEditElementsBtn:hover::after,
body.georural-map-page #topEditElementsBtn:focus-visible::after,
body.georural-map-page #openImportLayersBtn:hover::after,
body.georural-map-page #openImportLayersBtn:focus-visible::after,
body.georural-map-page .top-download-menu>summary:hover::after,
body.georural-map-page .top-download-menu>summary:focus-visible::after,
body.georural-map-page .top-project-menu>summary:hover::after,
body.georural-map-page .top-project-menu>summary:focus-visible::after{content:attr(aria-label);position:absolute;left:50%;top:calc(100% + 7px);z-index:2600;transform:translateX(-50%);white-space:nowrap;pointer-events:none;padding:6px 8px;border-radius:7px;background:#0f172a;color:#fff;font:750 10px/1 system-ui,sans-serif;box-shadow:0 6px 18px rgba(15,23,42,.2);}
body.georural-map-page .top-map-switcher{max-width:220px!important;min-width:0!important;}
body.georural-map-page .top-map-switcher label{font-size:0!important;width:18px!important;min-width:18px!important;}
body.georural-map-page .top-map-switcher label::before{content:"◉";font-size:15px;color:#334155;}
body.georural-map-page .top-map-switcher select{max-width:185px!important;}

/* Ferramentas do painel: só ícones; nome é acessível por title/aria-label. */
body.georural-map-page .geo-tool-group{grid-template-columns:repeat(5,minmax(32px,1fr))!important;gap:6px!important;}
body.georural-map-page .geo-tool{min-width:0!important;min-height:34px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;position:relative!important;}
body.georural-map-page .geo-tool>span{display:none!important;}
body.georural-map-page .geo-tool svg{width:15px!important;height:15px!important;margin:0!important;}
body.georural-map-page .geo-tool:focus-visible{outline:2px solid #2563eb!important;outline-offset:2px!important;}

/* Navegação global: trilho de ícones. Somente o item apontado ganha seu rótulo. */
body.georural-map-page .map-global-nav,
body.georural-map-page .map-global-nav.open,
body.georural-map-page.map-nav-open .map-global-nav{position:fixed!important;left:0!important;top:0!important;bottom:0!important;width:var(--map-nav-rail)!important;min-width:var(--map-nav-rail)!important;max-width:var(--map-nav-rail)!important;transform:none!important;overflow:visible!important;z-index:2100!important;background:#fff!important;border-right:1px solid #e2e8f0!important;box-shadow:2px 0 10px rgba(15,23,42,.06)!important;}
body.georural-map-page .map-global-nav:not(.open){transform:translateX(calc(-1 * var(--map-nav-rail)))!important;}
body.georural-map-page .map-global-nav .brand{height:58px!important;padding:9px 10px!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:hidden!important;border-bottom:1px solid #edf2f7!important;}
body.georural-map-page .map-global-nav .brand>div:not(.brand-mark),
body.georural-map-page .map-global-nav .brand strong,
body.georural-map-page .map-global-nav .brand small,
body.georural-map-page .map-global-nav-close,
body.georural-map-page .map-global-nav .side-note{display:none!important;}
body.georural-map-page .map-global-nav .brand-mark{width:34px!important;height:34px!important;min-width:34px!important;margin:0!important;}
body.georural-map-page .map-global-nav .nav{display:flex!important;flex-direction:column!important;gap:4px!important;padding:9px 7px!important;overflow:visible!important;}
body.georural-map-page .map-global-nav .nav a{position:relative!important;width:42px!important;height:38px!important;min-height:38px!important;padding:0!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:center!important;overflow:visible!important;border-radius:7px!important;background:transparent!important;box-shadow:none!important;color:#475569!important;}
body.georural-map-page .map-global-nav .nav a::after{display:none!important;}
body.georural-map-page .map-global-nav .nav .nav-icon{width:30px!important;height:30px!important;min-width:30px!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:center!important;border:0!important;background:transparent!important;}
body.georural-map-page .map-global-nav .nav .nav-icon img{width:22px!important;height:22px!important;object-fit:contain!important;}
body.georural-map-page .map-global-nav .nav a.active{background:#eef5ff!important;color:#0f5bdc!important;box-shadow:inset 3px 0 0 #0f5bdc!important;}
body.georural-map-page .map-global-nav .nav a>span:last-child{position:absolute!important;left:47px!important;top:50%!important;transform:translate(5px,-50%)!important;z-index:2205!important;display:block!important;white-space:nowrap!important;pointer-events:none!important;visibility:hidden!important;opacity:0!important;padding:8px 10px!important;border:1px solid #d9e3f0!important;border-radius:8px!important;background:#fff!important;color:#172033!important;font-size:12px!important;font-weight:800!important;line-height:1!important;box-shadow:0 9px 24px rgba(15,23,42,.14)!important;transition:opacity .12s ease,transform .12s ease!important;}
body.georural-map-page .map-global-nav .nav a:hover>span:last-child,
body.georural-map-page .map-global-nav .nav a:focus-visible>span:last-child{visibility:visible!important;opacity:1!important;transform:translate(0,-50%)!important;}
body.georural-map-page.map-nav-open .geo-app,
body.georural-map-page .map-global-nav.open~.geo-app{margin-left:var(--map-nav-rail)!important;width:calc(100% - var(--map-nav-rail))!important;}

/* Menor controle de recolher o painel de ferramentas. */
body.georural-map-page .sidepanel-collapse-btn{width:21px!important;min-width:21px!important;height:27px!important;min-height:27px!important;padding:0!important;border-radius:0 7px 7px 0!important;font-size:16px!important;line-height:1!important;}
body.georural-map-page .sidepanel-floating-toggle{width:24px!important;height:38px!important;min-width:24px!important;padding:0!important;border-radius:0 8px 8px 0!important;}
body.georural-map-page .sidepanel-floating-toggle span{font-size:16px!important;}

/* A caixa branca de métricas sai do mapa; a escala métrica compacta fica no lugar. */
body.georural-map-page .metrics{display:none!important;}
body.georural-map-page .leaflet-control-scale{margin-left:12px!important;margin-bottom:11px!important;}
body.georural-map-page .leaflet-control-scale-line{background:rgba(17,24,39,.78)!important;color:#fff!important;border-color:rgba(255,255,255,.9)!important;border-top:none!important;padding:3px 7px!important;font-size:10px!important;line-height:1.2!important;text-shadow:none!important;box-shadow:0 3px 10px rgba(15,23,42,.18)!important;}

/* Rotação é somente da visualização; controles permanecem em coordenadas de tela. */
body.georural-map-page #map{overflow:hidden!important;}
body.georural-map-page .surveyor-map-rotation-wrapper{position:absolute!important;inset:0!important;transform-origin:50% 50%!important;will-change:transform!important;pointer-events:none!important;}
body.georural-map-page .surveyor-map-rotation-wrapper>.leaflet-map-pane{pointer-events:auto!important;}
body.georural-map-page .surveyor-rotated-view-shield{position:absolute;inset:0;z-index:790;display:none;cursor:grab;touch-action:none;background:transparent;}
body.georural-map-page.surveyor-map-view-rotated .surveyor-rotated-view-shield{display:block;}
body.georural-map-page .surveyor-rotated-view-shield.is-panning{cursor:grabbing;}
body.georural-map-page.surveyor-map-view-rotated .surveyor-rotated-view-shield::after{content:"Rotação ativa — arraste para navegar; volte ao Norte/2D para editar";position:absolute;left:50%;bottom:12px;transform:translateX(-50%);pointer-events:none;padding:6px 9px;border-radius:999px;background:rgba(15,23,42,.72);color:#fff;font:700 10px/1.2 system-ui,sans-serif;white-space:nowrap;opacity:.82;}

/* Controle de orientação/zoom inspirado em navegadores cartográficos. */


body.georural-map-page .surveyor-orientation-control button{padding:0;display:grid;place-items:center;cursor:pointer;font-size:14px;font-weight:900;}

body.georural-map-page .surveyor-orientation-control .compass{font-size:9px;font-weight:950;}
body.georural-map-page .surveyor-orientation-control .compass::before{content:"";position:absolute;top:3px;left:50%;transform:translateX(-50%);border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:10px solid #ef4444;transform-origin:50% 14px;}
body.georural-map-page .surveyor-orientation-control .bearing-label{font-size:8px;font-weight:850;color:#475569;line-height:1;}


body.georural-map-page .surveyor-orientation-control svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}

/* GPS */

body.georural-map-page .surveyor-gps-point{filter:drop-shadow(0 2px 4px rgba(15,23,42,.35));}
.gps-point-dialog{border:0;padding:0;background:transparent;max-width:none;max-height:none;}
.gps-point-dialog::backdrop{background:rgba(15,23,42,.38);backdrop-filter:blur(2px);}
.gps-point-card{position:relative;width:min(520px,calc(100vw - 28px));padding:22px;border:1px solid #d8e2ef;border-radius:16px;background:#fff;box-shadow:0 28px 70px rgba(15,23,42,.25);display:grid;gap:12px;color:#1e293b;}
.gps-point-card .eyebrow{margin:0;color:#2563eb;font-size:11px;font-weight:900;letter-spacing:.08em;}
.gps-point-card h2{margin:-4px 0 0;font-size:21px;}
.gps-point-help{margin:0;color:#64748b;font-size:12px;line-height:1.5;}
.gps-point-card label{display:grid;gap:5px;font-size:12px;font-weight:800;color:#334155;}
.gps-point-card input,.gps-point-card select{width:100%;min-height:40px;border:1px solid #cbd5e1;border-radius:9px;background:#fff;padding:0 10px;font:600 13px system-ui,sans-serif;color:#172033;}
.gps-point-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.gps-dialog-close{position:absolute;right:12px;top:12px;width:31px;height:31px;border:1px solid #dbe5f1;border-radius:50%;background:#fff;font-size:19px;cursor:pointer;}
.gps-point-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:4px;}
.gps-point-actions button{min-height:38px;border-radius:9px;padding:0 12px;border:1px solid #cbd5e1;background:#fff;color:#1e293b;font-weight:800;display:inline-flex;align-items:center;gap:7px;cursor:pointer;}
.gps-point-actions button svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;}
.gps-point-actions .gps-primary{background:#0f5bdc;color:#fff;border-color:#0f5bdc;}
.gps-point-accuracy{margin:0;padding:7px 9px;border-radius:8px;background:#eff6ff;color:#1d4ed8;font-size:11px;font-weight:750;}
.gps-point-accuracy.hidden{display:none;}

@media(max-width:820px){
  :root{--map-nav-rail:48px;--map-icon-size:34px;}
  body.georural-map-page .map-global-nav .nav a{width:34px!important;}
  body.georural-map-page .map-global-nav .nav a>span:last-child{left:39px!important;}
  body.georural-map-page .top-map-switcher{max-width:150px!important;}
  body.georural-map-page .top-map-switcher select{max-width:125px!important;}
  body.georural-map-page .surveyor-orientation-control .orientation-stack{transform:scale(.92);transform-origin:top right;}
  .gps-point-grid{grid-template-columns:1fr;}
}
@media(max-width:560px){
  body.georural-map-page .map-global-nav .nav a>span:last-child{font-size:11px!important;padding:7px 8px!important;}
  body.georural-map-page.surveyor-map-view-rotated .surveyor-rotated-view-shield::after{max-width:calc(100% - 30px);white-space:normal;text-align:center;}
}


/* ========================================================================== */
/* refinamento solicitado na operação real do mapa                 */
/* ========================================================================== */

/* Camadas volta ao formato textual clássico. */
body.georural-map-page #toggleLayersPanel.geo-layers-trigger{
  width:100%!important;min-width:0!important;height:38px!important;min-height:38px!important;
  padding:0 11px!important;display:inline-flex!important;align-items:center!important;
  justify-content:space-between!important;border-radius:10px!important;
  color:var(--primary)!important;background:var(--primary-soft)!important;border-color:#d7e6ff!important;
  font-size:12px!important;font-weight:900!important;
}
body.georural-map-page #toggleLayersPanel.geo-layers-trigger>span,
body.georural-map-page #toggleLayersPanel.geo-layers-trigger>b{display:inline!important;}
body.georural-map-page #toggleLayersPanel.geo-layers-trigger svg{display:none!important;}
body.georural-map-page #toggleLayersPanel.geo-layers-trigger:hover::after,
body.georural-map-page #toggleLayersPanel.geo-layers-trigger:focus-visible::after{display:none!important;}

/* Mapa base vira apenas um globo/ícone, com opções ao clicar. */
body.georural-map-page .surveyor-native-basemap-select{
  position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;
  clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;
  opacity:0!important;pointer-events:none!important;
}
body.georural-map-page .top-basemap-menu{position:relative!important;flex:0 0 auto!important;}
body.georural-map-page .top-basemap-menu>summary{
  list-style:none!important;width:36px!important;min-width:36px!important;height:34px!important;min-height:34px!important;
  padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  border:1px solid #1d63e9!important;border-radius:8px!important;background:#fff!important;color:#0f172a!important;
  cursor:pointer!important;position:relative!important;box-sizing:border-box!important;
}
body.georural-map-page .top-basemap-menu>summary::-webkit-details-marker{display:none!important;}
body.georural-map-page .top-basemap-menu>summary svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;}
body.georural-map-page .top-basemap-menu[open]>summary,
body.georural-map-page .top-basemap-menu>summary:hover,
body.georural-map-page .top-basemap-menu>summary:focus-visible{
  background:#145edb!important;color:#fff!important;border-color:#145edb!important;
}
body.georural-map-page .map-basemap-list{
  position:absolute;right:0;top:calc(100% + 9px);z-index:2750;width:236px;padding:7px;
  display:grid;gap:4px;border:1px solid #dbe5f1;border-radius:11px;background:#fff;
  box-shadow:0 16px 36px rgba(15,23,42,.18)
;}
body.georural-map-page .map-basemap-list button{
  width:100%!important;min-height:34px!important;height:auto!important;padding:8px 10px!important;
  display:flex!important;align-items:center!important;justify-content:flex-start!important;
  border:0!important;border-radius:7px!important;background:transparent!important;color:#1e293b!important;
  font-size:12px!important;font-weight:760!important;text-align:left!important;box-shadow:none!important;transform:none!important;
}
body.georural-map-page .map-basemap-list button:hover,
body.georural-map-page .map-basemap-list button.active{background:#edf5ff!important;color:#0f5bdc!important;}

/* Download e Projeto ficam azuis quando abertos e exibem o rótulo abaixo. */
body.georural-map-page .top-download-menu[open]>summary,
body.georural-map-page .top-project-menu[open]>summary{
  background:#145edb!important;color:#fff!important;border-color:#145edb!important;
}
body.georural-map-page .top-download-menu[open]>summary::after,
body.georural-map-page .top-project-menu[open]>summary::after,
body.georural-map-page .top-basemap-menu[open]>summary::after{
  content:attr(aria-label)!important;display:block!important;position:absolute!important;
  left:50%!important;top:calc(100% + 5px)!important;transform:translateX(-50%)!important;
  padding:3px 6px!important;border-radius:5px!important;background:#145edb!important;color:#fff!important;
  font:800 9px/1 system-ui,sans-serif!important;white-space:nowrap!important;box-shadow:0 4px 12px rgba(15,23,42,.14)!important;
  pointer-events:none!important;z-index:2800!important;
}

/* Ferramentas laterais: somente ícone, sem qualquer texto visível. */

body.georural-map-page .map-tools-panel .geo-tool{
  
  
  overflow:visible!important;font-size:0!important;
}

body.georural-map-page .map-tools-panel .geo-tool svg{margin:0!important;display:block!important;}
body.georural-map-page .map-tools-panel .geo-tool::after{
  content:attr(aria-label)!important;position:absolute!important;left:50%!important;top:calc(100% + 7px)!important;
  transform:translate(-50%,3px)!important;z-index:2900!important;width:max-content!important;max-width:190px!important;
  height:auto!important;inset:auto!important;padding:6px 8px!important;border-radius:7px!important;
  background:#0f172a!important;color:#fff!important;font:750 10px/1.15 system-ui,sans-serif!important;
  white-space:nowrap!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;
  box-shadow:0 7px 18px rgba(15,23,42,.2)!important;transition:opacity .12s ease,transform .12s ease!important;
}
body.georural-map-page .map-tools-panel .geo-tool:hover::after,
body.georural-map-page .map-tools-panel .geo-tool:focus-visible::after{
  opacity:1!important;visibility:visible!important;transform:translate(-50%,0)!important;
}

/* Controle cartográfico: sem torre branca; somente controles flutuantes. */
body.georural-map-page .leaflet-control.surveyor-orientation-control{
  border:0!important;background:transparent!important;box-shadow:none!important;
}
body.georural-map-page .surveyor-orientation-control .orientation-stack{
  display:flex!important;flex-direction:column!important;align-items:center!important;
  
  
}
body.georural-map-page .surveyor-orientation-control .bearing-label{display:none!important;}
body.georural-map-page .surveyor-orientation-control .compass,
body.georural-map-page .surveyor-orientation-control button{
  width:31px!important;height:31px!important;min-height:31px!important;border:1px solid rgba(203,213,225,.82)!important;
  border-radius:50%!important;background:rgba(255,255,255,.78)!important;color:#334155!important;
  box-shadow:0 3px 10px rgba(15,23,42,.12)!important;backdrop-filter:blur(5px)!important;
}

body.georural-map-page .surveyor-orientation-control .zoom-range-wrap{
  display:flex!important;align-items:center!important;justify-content:center!important;
  background:transparent!important;border:0!important;box-shadow:none!important;
}
body.georural-map-page .surveyor-orientation-control input[type="range"]{
  height:14px!important;transform:rotate(-90deg)!important;background:transparent!important;
  cursor:pointer!important;
}

body.georural-map-page.surveyor-map-view-rotated .surveyor-rotated-view-shield::after{
  display:none!important;
}

/* Mantém espaço e alinhamento estáveis com o botão Camadas clássico. */
body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip{
  grid-template-columns:190px minmax(0,1fr)!important;
}

@media(max-width:1100px){
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip{grid-template-columns:160px minmax(0,1fr)!important;}
  body.georural-map-page .map-tools-panel .geo-tool-group{grid-template-columns:repeat(4,38px)!important;}
}

/* ========================================================================== */
/* alfinete GPS, painel não-modal arrastável e submenus só ícones */
/* ========================================================================== */

/* Ponto GPS: alfinete amarelo de alta leitura sobre ortofoto/satélite. */
body.georural-map-page .surveyor-gps-pin-icon{
  background:transparent!important;border:0!important;
  filter:drop-shadow(0 3px 4px rgba(15,23,42,.34));
}
body.georural-map-page .surveyor-gps-pin-icon .surveyor-gps-pin-shape,
body.georural-map-page .surveyor-gps-pin-icon svg{display:block;width:30px;height:38px;}
body.georural-map-page .surveyor-gps-pin-icon svg path{
  stroke-width:1.55;stroke-linejoin:round;
}
body.georural-map-page .surveyor-gps-pin-icon svg circle{
  stroke-width:1.25;
}
body.georural-map-page .surveyor-gps-pin-icon.is-draft{
  opacity:.88;filter:drop-shadow(0 4px 7px rgba(15,23,42,.38));
  animation:surveyorGpsPinPulse 1.1s ease-in-out infinite alternate;
}
@keyframes surveyorGpsPinPulse{from{transform:translateY(0)}to{transform:translateY(-3px)}}

/* Painel GPS flutuante: NÃO usa backdrop e NÃO bloqueia o mapa. */
body.georural-map-page .gps-point-dialog{
  position:fixed!important;z-index:6100!important;inset:auto!important;
  
  margin:0!important;padding:0!important;border:0!important;background:transparent!important;
  pointer-events:auto!important;overflow:visible!important;
}
body.georural-map-page .gps-point-dialog.hidden{display:none!important;}
body.georural-map-page .gps-point-dialog::backdrop{display:none!important;background:transparent!important;backdrop-filter:none!important;}
body.georural-map-page .gps-point-card{
  width:100%!important;
  
  backdrop-filter:blur(8px)!important;
}
body.georural-map-page .gps-point-drag-handle{
  display:flex;justify-content:space-between;gap:10px;
  border-bottom:1px solid #e6edf6;
  cursor:grab;user-select:none;touch-action:none;
}

body.georural-map-page .gps-point-drag-handle .eyebrow{margin:0 0 2px!important;}
body.georural-map-page .gps-point-drag-handle h2{margin:0!important;line-height:1.15!important;}
body.georural-map-page .gps-dialog-close{
  position:static!important;flex:0 0 30px!important;min-height:30px!important;
  border-radius:50%!important;border:1px solid #d7e1ee!important;color:#0f172a!important;
}
body.georural-map-page .gps-point-help{font-size:11px!important;line-height:1.38!important;}
body.georural-map-page .gps-point-live-status{
  margin:0;padding:7px 8px;background:#fff8d7;color:#765500;
  border:1px solid #f6df77;font-weight:750;line-height:1.35;
}
body.georural-map-page .gps-point-card label{gap:4px!important;}

body.georural-map-page .gps-point-grid{gap:7px!important;}
body.georural-map-page .gps-point-actions{justify-content:flex-start!important;}


body.georural-map-page.surveyor-gps-pick-mode #map{cursor:crosshair!important;}

/* Submenus Desenhar/CAD/SIG/Terreno: só símbolos; nome aparece apenas no hover/foco. */
body.georural-map-page .map-tools-panel .draw-tools-popover,
body.georural-map-page .map-tools-panel .cad-tools-popover,
body.georural-map-page .map-tools-panel .sig-tools-popover,
body.georural-map-page .map-tools-panel .terrain-tools-popover{
  grid-template-columns:repeat(6,42px)!important;
  width:max-content!important;max-width:calc(100vw - 24px)!important;
  padding:9px!important;gap:7px!important;overflow:visible!important;
}
body.georural-map-page .map-tools-panel .draw-tools-popover .tool-popover-title{
  grid-column:1/-1!important;margin:0 0 2px!important;font-size:10px!important;
}
body.georural-map-page .map-tools-panel .draw-tools-popover button.surveyor-popover-icon-tool{
  position:relative!important;width:42px!important;min-width:42px!important;max-width:42px!important;
  height:40px!important;min-height:40px!important;padding:0!important;display:inline-flex!important;
  align-items:center!important;justify-content:center!important;font-size:0!important;overflow:visible!important;
}
body.georural-map-page .map-tools-panel .draw-tools-popover button.surveyor-popover-icon-tool svg{
  width:19px!important;height:19px!important;display:block!important;fill:none!important;stroke:currentColor!important;
  stroke-width:1.7!important;stroke-linecap:round!important;stroke-linejoin:round!important;pointer-events:none!important;
}
body.georural-map-page .map-tools-panel .draw-tools-popover button.surveyor-popover-icon-tool::after{
  content:attr(aria-label);position:absolute;left:50%;top:calc(100% + 6px);z-index:6600;
  transform:translate(-50%,3px);padding:6px 8px;border-radius:7px;background:#0f172a;color:#fff;
  font:750 10px/1.15 system-ui,sans-serif;white-space:nowrap;box-shadow:0 7px 18px rgba(15,23,42,.22);
  opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease,transform .12s ease;
}
body.georural-map-page .map-tools-panel .draw-tools-popover button.surveyor-popover-icon-tool:hover::after,
body.georural-map-page .map-tools-panel .draw-tools-popover button.surveyor-popover-icon-tool:focus-visible::after{
  opacity:1;visibility:visible;transform:translate(-50%,0);
}
body.georural-map-page .map-tools-panel .draw-tools-popover button.surveyor-popover-icon-tool.draw-cancel-action{
  color:#b42318!important;border-color:#ffd2cf!important;background:#fff8f7!important;
}

@media(max-width:720px){
  body.georural-map-page .gps-point-dialog{width:min(330px,calc(100vw - 12px))!important;}
  body.georural-map-page .map-tools-panel .draw-tools-popover,
  body.georural-map-page .map-tools-panel .cad-tools-popover,
  body.georural-map-page .map-tools-panel .sig-tools-popover,
  body.georural-map-page .map-tools-panel .terrain-tools-popover{grid-template-columns:repeat(4,42px)!important;}
}

/* Surveyor v21.11.5 — barra rápida superior com expansão de ferramentas */
body.georural-map-page .geo-toolstrip{
  display:grid!important;
  grid-template-columns:auto minmax(260px, 1fr) auto!important;
  align-items:center!important;
  gap:14px!important;
}
body.georural-map-page .map-quick-tools-anchor{
  position:relative;
  align-self:stretch;
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:240px;
}
body.georural-map-page .map-quick-tools-bar{
  display:flex;
  align-items:center;
  gap:8px;
  padding:4px 8px;
  border:1px solid rgba(29,99,233,.28);
  border-radius:14px;
  background:rgba(255,255,255,.95);
  box-shadow:0 8px 18px rgba(15,23,42,.08);
}
body.georural-map-page .map-quick-tool,
body.georural-map-page .map-quick-grid-tool{
  width:38px;
  height:38px;
  min-width:38px;
  border-radius:10px;
  border:1px solid #1d63e9;
  background:#fff;
  color:#145edb;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  transition:transform .16s ease, background .16s ease, color .16s ease, box-shadow .16s ease;
}
body.georural-map-page .map-quick-tool:hover,
body.georural-map-page .map-quick-tool:focus-visible,
body.georural-map-page .map-quick-grid-tool:hover,
body.georural-map-page .map-quick-grid-tool:focus-visible,
body.georural-map-page .map-quick-tool.active{
  background:#145edb;
  color:#fff;
  transform:translateY(-1px);
  box-shadow:0 6px 14px rgba(20,94,219,.22);
}
body.georural-map-page .map-quick-tool svg,
body.georural-map-page .map-quick-grid-tool svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
body.georural-map-page .map-quick-tool.primary svg path:first-child,
body.georural-map-page .map-quick-tool.primary svg circle,
body.georural-map-page .map-quick-grid-tool svg circle,
body.georural-map-page .map-quick-grid-tool svg rect,
body.georural-map-page .map-quick-grid-tool svg path,
body.georural-map-page .map-quick-tool svg path,
body.georural-map-page .map-quick-tool svg rect{vector-effect:non-scaling-stroke;}
body.georural-map-page .map-quick-tool.toggle .icon-up{display:none;}
body.georural-map-page .map-quick-tool.toggle.active .icon-down{display:none;}
body.georural-map-page .map-quick-tool.toggle.active .icon-up{display:block;}
body.georural-map-page .map-quick-tools-drawer{
  position:absolute;
  left:0;
  right:0;
  top:calc(100% + 10px);
  z-index:1202;
  padding:10px 12px;
  border:1px solid rgba(29,99,233,.18);
  border-radius:16px;
  background:rgba(255,255,255,.97);
  box-shadow:0 16px 34px rgba(15,23,42,.12);
}
body.georural-map-page .map-quick-tools-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(38px, 1fr));
  gap:8px;
}
body.georural-map-page .map-quick-grid-tool{justify-self:center;}
body.georural-map-page .map-quick-grid-tool svg{width:18px;height:18px;}
body.georural-map-page .map-quick-tools-drawer.hidden{display:none!important;}
@media (max-width: 1180px){
  body.georural-map-page .geo-toolstrip{grid-template-columns:auto 1fr auto!important;gap:10px!important;}
  body.georural-map-page .map-quick-tools-anchor{min-width:180px;}
  body.georural-map-page .map-quick-tools-drawer{left:-36px;right:-36px;}
}
@media (max-width: 920px){
  body.georural-map-page .geo-toolstrip{grid-template-columns:1fr!important;align-items:flex-start!important;}
  body.georural-map-page .geo-toolbar-right{width:100%;justify-content:flex-end;}
  body.georural-map-page .map-quick-tools-anchor{justify-content:flex-start;width:100%;}
  body.georural-map-page .map-quick-tools-drawer{position:relative;top:8px;left:0;right:0;}
}

/* Surveyor hotfix — alinhamento da barra superior e gaveta horizontal responsiva */
body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
  
  
  
  row-gap: 8px !important;
}
body.georural-map-page .map-quick-tools-anchor,
body.georural-map-page.map-nav-open .map-quick-tools-anchor{
  min-width: 0 !important;
  width: auto !important;
  
  align-self: center !important;
  display:flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
}
body.georural-map-page .map-quick-tools-bar,
body.georural-map-page.map-nav-open .map-quick-tools-bar{
  display:inline-flex !important;
  width: auto !important;
  max-width: 100% !important;
}
body.georural-map-page .geo-toolbar-right-map,
body.georural-map-page.map-nav-open .geo-toolbar-right-map{
  
  
  min-width: 0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  flex-wrap: nowrap !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  white-space: nowrap !important;
}
body.georural-map-page .map-quick-tools-drawer,
body.georural-map-page.map-nav-open .map-quick-tools-drawer{
  position: absolute !important;
  left: 0 !important;
  
  top: calc(100% + 10px) !important;
  
  
  
  padding: 10px 12px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  
  scrollbar-width: thin;
}
body.georural-map-page .map-quick-tools-grid,
body.georural-map-page.map-nav-open .map-quick-tools-grid{
  display: grid !important;
  grid-auto-flow: column !important;
  grid-template-rows: repeat(2, 40px) !important;
  grid-auto-columns: 40px !important;
  
  
  gap: 8px !important;
  align-items: center !important;
  justify-items: center !important;
}
body.georural-map-page .map-quick-grid-tool,
body.georural-map-page.map-nav-open .map-quick-grid-tool{
  justify-self: center !important;
}
body.georural-map-page .map-quick-tools-drawer::-webkit-scrollbar{height:8px;}
body.georural-map-page .map-quick-tools-drawer::-webkit-scrollbar-thumb{background:rgba(20,94,219,.26);border-radius:999px;}

@media (max-width: 1480px){
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
    grid-template-columns: 220px minmax(240px, max-content) minmax(0,1fr) !important;
    column-gap: 14px !important;
  }
  body.georural-map-page .map-quick-tools-drawer,
  body.georural-map-page.map-nav-open .map-quick-tools-drawer{
    max-width: min(980px, calc(100vw - 460px)) !important;
  }
}

@media (max-width: 1220px){
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
    grid-template-columns: 200px minmax(210px, max-content) minmax(0,1fr) !important;
    column-gap: 10px !important;
  }
  body.georural-map-page .map-quick-tools-drawer,
  body.georural-map-page.map-nav-open .map-quick-tools-drawer{
    max-width: calc(100vw - 380px) !important;
  }
}

@media (max-width: 980px){
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
    grid-template-columns: 1fr !important;
    row-gap: 10px !important;
    justify-items: start !important;
  }
  body.georural-map-page .map-quick-tools-anchor,
  body.georural-map-page.map-nav-open .map-quick-tools-anchor{
    order: 2;
    width: 100% !important;
  }
  body.georural-map-page .geo-toolbar-right-map,
  body.georural-map-page.map-nav-open .geo-toolbar-right-map{
    order: 3;
    width: 100% !important;
    justify-content: flex-start !important;
  }
  body.georural-map-page .map-quick-tools-drawer,
  body.georural-map-page.map-nav-open .map-quick-tools-drawer{
    position: absolute !important;
    left: 0 !important;
    top: calc(100% + 8px) !important;
    max-width: calc(100vw - 32px) !important;
  }
}


/* Surveyor v21.11.5e — corrige lados invertidos e sobra branca */
body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
  grid-template-areas: "layers quick right" !important;
  grid-template-columns: 220px max-content minmax(0,1fr) !important;
  align-items: center !important;
  column-gap: 18px !important;
}
body.georural-map-page .geo-layers-trigger,
body.georural-map-page.map-nav-open .geo-layers-trigger{grid-area: layers !important;}
body.georural-map-page .map-quick-tools-anchor,
body.georural-map-page.map-nav-open .map-quick-tools-anchor{
  grid-area: quick !important;
  justify-self: start !important;
  margin-left: 12px !important;
  margin-right: 0 !important;
}
body.georural-map-page .geo-toolbar-right-map,
body.georural-map-page.map-nav-open .geo-toolbar-right-map{
  grid-area: right !important;
  justify-self: end !important;
  margin-left: auto !important;
}
body.georural-map-page .map-quick-tools-drawer,
body.georural-map-page.map-nav-open .map-quick-tools-drawer{
  display: inline-block !important;
  width: max-content !important;
  min-width: 0 !important;
  max-width: min(1100px, calc(100vw - 540px)) !important;
  right: auto !important;
  white-space: nowrap !important;
}
body.georural-map-page .map-quick-tools-grid,
body.georural-map-page.map-nav-open .map-quick-tools-grid{
  width: max-content !important;
  max-width: none !important;
}
@media (max-width: 1400px){
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
    grid-template-columns: 200px max-content minmax(0,1fr) !important;
    column-gap: 12px !important;
  }
  body.georural-map-page .map-quick-tools-drawer,
  body.georural-map-page.map-nav-open .map-quick-tools-drawer{max-width: calc(100vw - 470px) !important;}
}
@media (max-width: 980px){
  body.georural-map-page .geo-brandbar.map-onebar .geo-toolstrip,
  body.georural-map-page.map-nav-open .geo-brandbar.map-onebar .geo-toolstrip{
    grid-template-areas: "layers" "quick" "right" !important;
    grid-template-columns: 1fr !important;
  }
  body.georural-map-page .map-quick-tools-anchor,
  body.georural-map-page.map-nav-open .map-quick-tools-anchor{
    margin-left: 0 !important;
    width: 100% !important;
  }
  body.georural-map-page .map-quick-tools-drawer,
  body.georural-map-page.map-nav-open .map-quick-tools-drawer{
    max-width: calc(100vw - 32px) !important;
  }
}

/* Surveyor v21.11.5j — painel de ponto arrastável e importação de pontos */
body.georural-map-page .gps-point-head-title{display:flex;min-width:0;}
body.georural-map-page .gps-drag-grip{align-items:center;justify-content:center;width:22px;height:28px;color:#7b8ca5;font-size:18px;line-height:1;letter-spacing:-3px;cursor:grab;user-select:none;flex:0 0 auto;}
body.georural-map-page .gps-point-dialog.is-dragging .gps-drag-grip{cursor:grabbing;color:#145edb;}
body.georural-map-page .gps-point-live-status.hidden{display:none!important;}
body.georural-map-page .gps-point-live-status[data-kind="success"]{background:#ecfdf3;color:#166534;border-color:#bbf7d0;}
body.georural-map-page .gps-point-live-status[data-kind="error"]{background:#fff1f2;color:#9f1239;border-color:#fecdd3;}
body.georural-map-page .gps-point-actions{flex-wrap:wrap!important;align-items:center!important;}
body.georural-map-page .gps-point-actions #gpsImportPointsBtn{max-width:100%;}
body.georural-map-page .gps-point-actions button span{white-space:nowrap;}


/* v21.11.5k — arraste exclusivo do painel Marcar ponto */
body.georural-map-page .gps-point-drag-handle[data-runtime-drag-exclusive="1"]{
  cursor:grab!important;
  touch-action:none!important;
  user-select:none!important;
  -webkit-user-select:none!important;
}
body.georural-map-page .gps-point-dialog.is-dragging,
html.surveyor-dragging-gps-panel body.georural-map-page .gps-point-dialog{
  transition:none!important;
}
body.georural-map-page .gps-point-dialog.is-dragging .gps-point-drag-handle{cursor:grabbing!important;}
html.surveyor-dragging-gps-panel,html.surveyor-dragging-gps-panel body{user-select:none!important;-webkit-user-select:none!important;}


/* v21.11.5l — ponto limpo: nunca exibir painel antes de abertura explícita */
body.georural-map-page .gps-point-dialog[aria-hidden="true"]{display:none!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;}
body.georural-map-page .gps-point-dialog[aria-hidden="false"]{visibility:visible!important;opacity:1!important;pointer-events:auto!important;}
body.georural-map-page .surveyor-gps-pin-icon svg path{fill:#facc15!important;stroke:#8a5a00!important;}
body.georural-map-page .surveyor-gps-pin-icon svg circle{fill:#fff7c2!important;stroke:#8a5a00!important;}


/* ===== assets/css/core/surveyor-modern-ui-v21.11.5.css ===== */
/* Surveyor Modern UI — visual transplant only. Functional runtime remains 21.11.5. */
:root{
  --sv-blue:#0f62e8;
  --sv-blue-2:#1769e8;
  --sv-blue-soft:#edf5ff;
  --sv-navy:#071d35;
  --sv-text:#10213b;
  --sv-body:#44536a;
  --sv-muted:#6f7f97;
  --sv-line:#dbe3ee;
  --sv-line-soft:#e9eef5;
  --sv-bg:#f5f7fb;
  --sv-white:#fff;
  --sv-shadow:0 1px 2px rgba(15,23,42,.04),0 7px 18px rgba(15,23,42,.045);
  --sv-radius:12px;
}
html,body{background:var(--sv-bg)!important;color:var(--sv-text)!important;}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;}

/* ===== GLOBAL TOP HEADER (all screens except map/login) ===== */
body.workspace-shell-v131.sv-toolmenu-page .workspace-topbar.sv-home-topbar,
body[data-page="index.html"] .workspace-topbar.sv-home-topbar{
  left:0!important;right:0!important;
  grid-template-columns:minmax(190px,1fr) auto minmax(250px,1fr)!important;gap:16px!important;
  border-bottom:1px solid var(--sv-line)!important;background:#fff!important;box-shadow:0 1px 3px rgba(15,23,42,.035)!important;
}
.sv-home-brand{justify-self:start!important;}.sv-home-brand a{gap:8px!important;}.sv-home-brand img{width:30px!important;height:30px!important;}.sv-home-brand strong{font-size:14px!important;font-weight:800!important;letter-spacing:-.01em!important;}.sv-home-brand small{font-size:8px!important;font-weight:500!important;color:#6e7d92!important;margin-top:2px!important;}
body.sv-toolmenu-page .sv-home-nav,body[data-page="index.html"] .sv-home-nav{justify-self:center!important;gap:4px!important;height:56px!important;}
body.sv-toolmenu-page .sv-home-nav>a,body.sv-toolmenu-page .sv-home-tools-btn,body[data-page="index.html"] .sv-home-nav>a,body[data-page="index.html"] .sv-home-tools-btn{
  height:38px!important;border:1px solid transparent!important;border-bottom:1px solid transparent!important;border-radius:8px!important;padding:0 12px!important;font-size:12px!important;font-weight:600!important;color:#17233a!important;background:transparent!important;gap:6px!important;
}
body.sv-toolmenu-page .sv-home-tools-btn,body[data-page="index.html"] .sv-home-tools-btn{border-color:var(--sv-line)!important;background:#fff!important;box-shadow:0 1px 2px rgba(15,23,42,.025)!important;}
body.sv-toolmenu-page .sv-home-nav>a:hover,body.sv-toolmenu-page .sv-home-tools-btn:hover,body[data-page="index.html"] .sv-home-nav>a:hover,body[data-page="index.html"] .sv-home-tools-btn:hover{background:#f3f7fc!important;color:#0b57d0!important;border-color:#dce7f5!important;}
body.sv-toolmenu-page .sv-home-nav>a.active,body[data-page="index.html"] .sv-home-nav>a.active,body.sv-toolmenu-page .sv-home-tools-btn[aria-expanded="true"]{background:#edf4ff!important;color:#0b5fe7!important;border-color:#edf4ff!important;}
.sv-home-tools-btn .tools-grid{display:none!important;}.sv-home-tools-btn .tools-chevron{font-size:12px!important;color:#718096!important;}
body.sv-toolmenu-page .workspace-topbar-actions,body[data-page="index.html"] .workspace-topbar-actions{justify-self:end!important;display:flex!important;gap:10px!important;align-items:center!important;}
.workspace-topbar-actions .notification-bell{border:1px solid var(--sv-line)!important;background:#fff!important;}.workspace-topbar-actions .notification-bell span{background:#ef4444!important;color:white!important;border:2px solid white!important;}
.workspace-topbar-actions .workspace-plan-status{height:40px!important;min-width:135px!important;border-radius:8px!important;padding:5px 12px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;box-shadow:0 2px 7px rgba(7,29,53,.18)!important;}
.workspace-topbar-actions .workspace-plan-status.is-plan-pro{background:#071d35!important;border-color:#071d35!important;color:#fff!important;}.workspace-topbar-actions .workspace-plan-status.is-plan-pro strong{color:#fff!important;}.workspace-topbar-actions .workspace-plan-status.is-plan-pro small{color:#a9bfd9!important;}.workspace-topbar-actions .workspace-plan-status strong{font-size:11px!important;line-height:1.1!important;}.workspace-topbar-actions .workspace-plan-status small{font-size:8px!important;margin-top:3px!important;}
.workspace-topbar .account-zone.workspace-topbar-account{position:relative!important;height:42px!important;min-width:150px!important;border:0!important;background:transparent!important;border-radius:8px!important;padding:4px!important;gap:7px!important;}.workspace-topbar .account-avatar{width:32px!important;height:32px!important;border-radius:6px!important;background:#e8f1ff!important;color:#0f62e8!important;}.workspace-topbar .account-copy strong{font-size:11px!important;max-width:130px!important;}.workspace-topbar .account-copy small{font-size:9px!important;}.workspace-topbar .account-menu-toggle{width:22px;height:28px;border:0;background:transparent;color:#65758c;cursor:pointer;border-radius:6px;}.workspace-topbar .account-menu-toggle:hover{background:#f1f5f9;}.workspace-account-menu{position:absolute;right:0;min-width:185px;background:#fff;border:1px solid var(--sv-line);border-radius:10px;box-shadow:0 18px 42px rgba(15,23,42,.16);padding:6px;z-index:100000;}.workspace-account-menu.hidden{display:none!important;}.workspace-account-menu a,.workspace-account-menu .account-logout{display:flex!important;width:100%!important;height:auto!important;min-height:34px!important;border:0!important;border-radius:7px!important;background:transparent!important;color:#334155!important;padding:8px 10px!important;font-size:11px!important;text-decoration:none!important;align-items:center!important;}.workspace-account-menu a:hover,.workspace-account-menu .account-logout:hover{background:#f1f5f9!important;color:#0f62e8!important;}

/* ===== TOOLS MEGA MENU ===== */
.sv-home-tools-menu{padding:16px max(16px,calc((100vw - 1440px)/2)) 18px!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:24px!important;background:#fff!important;border-top:0!important;border-bottom:1px solid var(--sv-line)!important;box-shadow:0 14px 30px rgba(15,23,42,.12)!important;}
.sv-home-tools-menu.hidden{display:none!important;}.sv-home-tools-menu section{display:block!important;}.sv-home-tools-menu section h3{display:block!important;margin:0 0 10px!important;padding-bottom:8px!important;border-bottom:1px solid #edf1f6!important;letter-spacing:.08em!important;text-transform:uppercase!important;font-weight:800!important;}.sv-home-tools-menu a:hover{background:#f5f8fd!important;transform:translateX(1px);}.sv-home-tools-menu .tool-icon{border:0!important;}.sv-home-tools-menu .module-icon-img{width:19px!important;height:19px!important;}.sv-home-tools-menu small{margin-top:2px!important;}.sv-home-tools-menu a[href*="/admin/"] .tool-icon{background:#fff0f1!important;}.sv-home-tools-menu a[href*="/admin/"] b{color:#243149!important;}

/* ===== MAIN PAGE SHELL ===== */
body.workspace-shell-v131.sv-toolmenu-page .workspace-main,body[data-page="index.html"] .workspace-main{padding:76px 18px 34px!important;max-width:1500px!important;width:100%!important;margin:0 auto!important;box-sizing:border-box!important;}
body.workspace-shell-v131 .workspace-page-head,body.workspace-shell-v131 .top{margin:0 0 22px!important;align-items:center!important;min-height:48px!important;}
.workspace-page-head>div:first-child,.top>div:first-child{position:relative;padding-left:49px;min-width:0;}.workspace-page-head>div:first-child:before,.top>div:first-child:before{content:"";position:absolute;left:0;top:0;width:36px;height:36px;border-radius:8px;background-color:#ecf4ff;background-repeat:no-repeat;background-position:center;background-size:20px 20px;box-shadow:inset 0 0 0 1px #e0ebfa;}
body[data-page="nuvem.html"] .workspace-page-head>div:first-child:before{background-image:url("/assets/module-icons/projetos.svg");}body[data-page="acervos.html"] .workspace-page-head>div:first-child:before{background-image:url("/assets/module-icons/acervos.png");}body[data-page="suporte.html"] .workspace-page-head>div:first-child:before{background-image:url("/assets/module-icons/suporte.png");}body[data-page="memorial.html"] .workspace-page-head>div:first-child:before{background-image:url("/assets/module-icons/memorial.png");}body[data-page="ods.html"] .workspace-page-head>div:first-child:before{background-image:url("/assets/module-icons/ods.png");}body[data-page="mapas.html"] .workspace-page-head>div:first-child:before{background-image:url("/assets/module-icons/mapas.png");}body[data-page="pranchas.html"] .workspace-page-head>div:first-child:before{background-image:url("/assets/module-icons/pranchas.png");}body[data-page="planialtimetria.html"] .workspace-page-head>div:first-child:before{background-image:url("/assets/module-icons/planialtimetria.png");}body[data-page="perimetros.html"] .workspace-page-head>div:first-child:before{background-image:url("/assets/module-icons/perimetros.png");}body[data-page="ambiental.html"] .workspace-page-head>div:first-child:before{background-image:url("/assets/module-icons/ambiental.png");}body[data-page="loteamentos-reurb.html"] .workspace-page-head>div:first-child:before{background-image:url("/assets/module-icons/loteamentos.png");}body[data-page="customizacao.html"] .workspace-page-head>div:first-child:before{background-image:url("/assets/module-icons/customizacao.png");}body[data-page="admin.html"] .workspace-page-head>div:first-child:before{background-image:url("/assets/module-icons/admin.png");}
.workspace-page-head h1,.top h1{font-size:21px!important;line-height:1.1!important;font-weight:800!important;letter-spacing:-.025em!important;color:#0c1d37!important;margin:1px 0 5px!important;}.workspace-page-head p,.top p{font-size:11px!important;line-height:1.45!important;color:#677a94!important;margin:0!important;}.workspace-page-head .top-actions,.top .top-actions{gap:8px!important;}.workspace-page-head .top-actions .link-btn,.workspace-page-head .top-actions .btn,.top .top-actions .link-btn,.top .top-actions .btn{border-radius:7px!important;min-height:35px!important;padding:8px 12px!important;font-size:10px!important;font-weight:700!important;}
.workspace-shell-v131 .panel,.support-card,.official-card{border:1px solid var(--sv-line)!important;border-radius:12px!important;background:#fff!important;box-shadow:var(--sv-shadow)!important;}
.workspace-shell-v131 .panel{padding:20px!important;margin-bottom:18px!important;}
.workspace-shell-v131 .panel h2{font-size:14px!important;color:#111f36!important;margin:0 0 12px!important;}.workspace-shell-v131 label{font-size:10px!important;font-weight:600!important;color:#33445d!important;gap:6px!important;}.workspace-shell-v131 input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),.workspace-shell-v131 select,.workspace-shell-v131 textarea{min-height:36px!important;border:1px solid #d8e2ee!important;border-radius:7px!important;background:#fff!important;padding:8px 10px!important;font-size:11px!important;color:#17243a!important;}.workspace-shell-v131 input:focus,.workspace-shell-v131 select:focus,.workspace-shell-v131 textarea:focus{border-color:#679bf3!important;box-shadow:0 0 0 3px rgba(15,98,232,.09)!important;}.workspace-shell-v131 .form-grid{gap:14px!important;}.workspace-shell-v131 .btn,.workspace-shell-v131 .link-btn{border-radius:7px!important;font-size:10px!important;font-weight:700!important;min-height:34px!important;padding:8px 12px!important;}.workspace-shell-v131 .btn.primary,.workspace-shell-v131 .link-btn.primary{background:#1063e8!important;border-color:#1063e8!important;color:#fff!important;box-shadow:0 3px 8px rgba(16,99,232,.16)!important;}
.workspace-shell-v131 .preview,.workspace-shell-v131 .output{border:1px solid #dce4ef!important;border-radius:10px!important;background:#f7f9fc!important;box-shadow:none!important;}

/* ===== PROJECTS ===== */
body[data-page="nuvem.html"] .projects-toolbar{justify-content:space-between!important;}body[data-page="nuvem.html"] .projects-search{width:min(430px,100%)!important;}body[data-page="nuvem.html"] .projects-search input{border:0!important;box-shadow:none!important;background:transparent!important;min-height:34px!important;}body[data-page="nuvem.html"] #projectSort{display:none!important;}.sv-projects-live-count{margin-left:auto;color:#73829a;font-size:10px;}.projects-list{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;align-items:start!important;}.project-list-row{display:flex!important;flex-direction:column!important;min-width:0!important;min-height:265px!important;border:1px solid #dbe3ee!important;border-radius:14px!important;background:#fff!important;overflow:hidden!important;box-shadow:0 2px 6px rgba(15,23,42,.06)!important;padding:0!important;}.project-card-preview{height:102px!important;position:relative!important;overflow:hidden!important;background-position:center!important;background-size:cover!important;}.project-card-preview:before{content:"";position:absolute;inset:0;}.project-card-preview .project-preview-outline{left:32%;top:28%;width:36%;height:45%;clip-path:polygon(12% 4%,82% 14%,98% 75%,38% 96%,0 57%);background:rgba(13,99,232,.16);filter:drop-shadow(0 1px 2px rgba(0,0,0,.35));}.project-cloud-pill{position:absolute;right:9px;top:8px;background:#fff;color:#1764e8;border:1px solid #dce7f6;border-radius:999px;padding:3px 7px;font-size:8px;font-weight:700;}.project-list-main{padding:14px 14px 6px!important;display:block!important;}.project-list-main strong{color:#101d30!important;font-weight:800!important;}.project-list-meta{display:flex!important;gap:11px!important;flex-wrap:wrap!important;padding:7px 14px 12px!important;color:#76869a!important;font-size:9px!important;}.project-list-meta span{display:inline-flex!important;align-items:center!important;gap:4px!important;}.project-list-actions{margin-top:auto!important;padding:10px 14px 14px!important;border-top:1px solid #edf1f6!important;display:grid!important;grid-template-columns:1fr auto auto!important;gap:6px!important;width:100%!important;}.project-icon-button{height:31px!important;border:1px solid #bfd4f5!important;border-radius:6px!important;background:#fff!important;color:#0f62e8!important;display:grid!important;place-items:center!important;}.project-icon-button[data-action="view"]{display:flex!important;gap:6px!important;width:100%!important;font-size:9px!important;font-weight:700!important;}.project-icon-button[data-action="view"]:after{content:"Abrir no mapa";}.project-icon-button svg{width:14px!important;height:14px!important;}.project-delete-button{color:#c43d4d!important;border-color:#f1ccd1!important;}.sv-projects-new-btn{background:#1063e8!important;color:#fff!important;border:0!important;border-radius:8px!important;min-height:36px!important;padding:0 16px!important;font-size:10px!important;font-weight:750!important;text-decoration:none!important;display:inline-flex!important;align-items:center!important;gap:6px!important;box-shadow:0 3px 9px rgba(16,99,232,.18)!important;}

/* ===== ACERVOS ===== */
body[data-page="acervos.html"] .official-grid{display:grid!important;}.official-card{display:flex!important;flex-direction:column!important;align-items:flex-start!important;}.official-card:before{content:"OFICIAL";display:inline-flex;padding:3px 7px;border:1px solid #a8cbff;border-radius:999px;background:#f3f8ff;color:#0f62e8;font-size:8px;font-weight:800;margin-bottom:9px;}.official-card h3{color:#0d1c32!important;}.official-card p{margin:0 0 12px!important;}.official-card .link-btn{margin-top:auto!important;background:#fff!important;color:#0f62e8!important;border-color:#bcd2f5!important;}

/* ===== SUPPORT ===== */
body[data-page="suporte.html"] .workspace-page-head .top-actions{display:none!important;}.support-layout{display:grid!important;grid-template-columns:minmax(0,1.15fr) minmax(310px,.95fr)!important;gap:20px!important;align-items:start!important;}.support-card{padding:22px!important;}.support-badge,.support-desc{display:none!important;}.support-card h2{font-size:14px!important;margin:0 0 16px!important;}.support-form{display:grid!important;gap:14px!important;}.support-form .form-grid.two{grid-template-columns:1fr!important;}.support-actions{display:flex!important;gap:8px!important;}.support-actions #supportSubmit{width:100%!important;}.support-actions #supportClear{display:none!important;}.support-info-stack{display:grid!important;gap:14px!important;}.support-mini-card{display:flex!important;align-items:flex-start!important;padding:18px!important;border:1px solid var(--sv-line)!important;border-radius:12px!important;background:#fff!important;box-shadow:0 1px 2px rgba(15,23,42,.03)!important;}.support-mini-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:7px;font-weight:900;font-size:14px;flex:0 0 auto;}.support-mini-card strong{display:block;font-size:11px;color:#111f35;}.support-mini-card a,.support-mini-card span{display:block;font-size:9px;color:#6d7e96;text-decoration:none;margin-top:3px;line-height:1.4;}

/* ===== ADMIN ===== */
body[data-page="admin.html"] .admin-stats{display:none!important;}body[data-page="admin.html"] .admin-tabs{display:flex!important;gap:2px!important;flex-wrap:wrap!important;background:#f7f9fc!important;border:1px solid #edf1f6!important;border-radius:10px!important;padding:4px!important;margin:0 0 14px!important;}body[data-page="admin.html"] .admin-tabs button{border:0!important;border-radius:7px!important;background:transparent!important;color:#607189!important;font-size:10px!important;font-weight:650!important;min-height:34px!important;padding:0 11px!important;}body[data-page="admin.html"] .admin-tabs button.active{background:#fff!important;color:#0f62e8!important;box-shadow:0 1px 3px rgba(15,23,42,.08)!important;}body[data-page="admin.html"] .admin-panel{padding:22px!important;}body[data-page="admin.html"] .admin-panel .eyebrow{font-size:8px!important;color:#7a8aa0!important;letter-spacing:.09em!important;}body[data-page="admin.html"] .admin-panel h2{font-size:15px!important;}.sv-admin-team-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;}.sv-admin-team-owner{min-height:38px!important;border:1px solid #9fc1f8!important;border-radius:7px!important;background:#fff!important;font-size:10px!important;font-weight:650!important;cursor:pointer!important;}.sv-admin-team-owner:hover{background:#f3f8ff!important;}body[data-page="admin.html"] [data-tab="admin-ai"],body[data-page="admin.html"] #tab-admin-ai{display:none!important;}.admin-table-wrap,.table-wrap{border:1px solid #e3e9f1!important;border-radius:9px!important;overflow:auto!important;}body[data-page="admin.html"] table{background:#fff!important;}body[data-page="admin.html"] th{background:#f7f9fc!important;color:#708096!important;font-size:9px!important;}body[data-page="admin.html"] td{font-size:10px!important;}

/* ===== TECHNICAL / DOCUMENT GENERATION MODULES ===== */
body[data-page="memorial.html"] .panel,body[data-page="ods.html"] .panel,body[data-page="mapas.html"] .panel,body[data-page="pranchas.html"] .panel,body[data-page="planialtimetria.html"] .panel,body[data-page="perimetros.html"] .panel,body[data-page="ambiental.html"] .panel,body[data-page="loteamentos-reurb.html"] .panel,body[data-page="customizacao.html"] .panel{padding:22px!important;}


/* ===== MAP: only the top bar and global navigation are visually replaced ===== */
body[data-page="mapa.html"].georural-map-page .geo-brandbar.map-onebar{z-index:2000!important;}.geo-brand-left .geo-brand{display:none!important;}.map-global-nav-toggle{width:38px!important;height:38px!important;border:1px solid #d6e0ec!important;border-radius:8px!important;background:#fff!important;color:#25415f!important;box-shadow:0 1px 2px rgba(15,23,42,.04)!important;}.map-global-nav-toggle svg{width:19px!important;height:19px!important;}.sv-map-toolbar-modern{grid-column:2!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:2px!important;height:56px!important;min-width:0!important;}.sv-map-toolbar-item,.sv-map-toolbar-modern>details{height:50px!important;min-width:58px!important;border:0!important;border-radius:6px!important;background:transparent!important;color:#243852!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2px!important;padding:3px 8px!important;cursor:pointer!important;text-decoration:none!important;position:relative!important;}.sv-map-toolbar-modern{position:relative!important;}.sv-map-toolbar-item:hover,.sv-map-toolbar-modern>details:hover{background:#f3f7fc!important;color:#0f62e8!important;}.sv-map-toolbar-item svg,.sv-map-toolbar-modern>details summary svg{width:17px!important;height:17px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;}.sv-map-toolbar-item .sv-map-label,.sv-map-toolbar-modern>details .sv-map-label{font-size:8px!important;font-weight:600!important;white-space:nowrap!important;}.sv-map-toolbar-modern>details summary{list-style:none!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2px!important;width:100%!important;height:100%!important;cursor:pointer!important;}.sv-map-toolbar-modern>details summary::-webkit-details-marker{display:none!important;}.sv-map-toolbar-separator{width:1px;height:32px;background:#e2e8f0;margin:0 4px;}.sv-map-search-host{grid-column:3!important;display:flex!important;align-items:center!important;justify-content:flex-end!important;}.sv-map-search-host .geo-searchbar{position:static!important;display:block!important;visibility:visible!important;opacity:1!important;transform:none!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;width:100%!important;}.sv-map-search-host .geo-search-input-wrap{width:100%!important;}.sv-map-search-host #coordSearch{height:36px!important;border:1px solid #dbe3ee!important;border-radius:999px!important;background:#f8fafc!important;padding:0 38px 0 14px!important;font-size:10px!important;}.sv-map-search-host .geo-searchbar>button{display:none!important;}.sv-map-search-host .geo-search-input-wrap:after{content:"⌕";position:absolute;right:13px;top:50%;transform:translateY(-50%);font-size:20px;color:#49617e;pointer-events:none;}.sv-map-search-host .city-suggest{top:calc(100% + 6px)!important;right:0!important;left:auto!important;width:100%!important;}.geo-toolstrip{display:contents!important;}.geo-toolbar-right.geo-toolbar-right-map{display:none!important;}.map-quick-tools-anchor{display:none!important;}
.map-global-nav{width:350px!important;max-width:min(350px,calc(100vw - 28px))!important;background:#fff!important;border-right:1px solid #dbe3ee!important;box-shadow:12px 0 28px rgba(15,23,42,.12)!important;color:#26374f!important;}.map-global-nav .brand{height:auto!important;padding:18px 18px 12px!important;border-bottom:1px solid #e8edf4!important;background:#fff!important;}.map-global-nav .brand>div:nth-child(2):before{font-size:15px;font-weight:800;color:#172238;}.map-global-nav-close{right:14px!important;top:14px!important;width:30px!important;height:30px!important;border:0!important;border-radius:7px!important;background:#f7f9fc!important;color:#465a74!important;}.map-global-nav .nav{padding:10px 10px!important;display:grid!important;gap:2px!important;}.map-global-nav .nav a{padding:0 12px!important;background:transparent!important;font-weight:550!important;display:flex!important;align-items:center!important;gap:10px!important;}.map-global-nav .nav .nav-icon{display:grid!important;place-items:center!important;}.map-global-nav .module-icon-img{width:17px!important;height:17px!important;}.map-global-nav .side-note{display:none!important;}

@media(max-width:1050px){body.sv-toolmenu-page .workspace-topbar.sv-home-topbar,body[data-page="index.html"] .workspace-topbar.sv-home-topbar{grid-template-columns:auto 1fr auto!important;}.sv-home-brand small{display:none!important;}.workspace-topbar-actions .workspace-plan-status{display:none!important;}.projects-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;}.sv-home-tools-menu{grid-template-columns:repeat(2,minmax(0,1fr))!important;}.support-layout{grid-template-columns:1fr!important;}.sv-admin-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}.sv-map-toolbar-modern{justify-content:flex-start!important;overflow-x:auto!important;}.sv-map-toolbar-item,.sv-map-toolbar-modern>details{min-width:54px!important;}}
@media(max-width:720px){body.sv-toolmenu-page .sv-home-nav>a{display:none!important;}body.workspace-shell-v131.sv-toolmenu-page .workspace-main{padding:72px 12px 28px!important;}.projects-list{grid-template-columns:1fr!important;}.official-grid{grid-template-columns:1fr!important;}.sv-home-tools-menu{grid-template-columns:1fr!important;max-height:calc(100vh - 56px)!important;overflow:auto!important;}.workspace-topbar-actions .workspace-topbar-account .account-copy{display:none!important;}.workspace-topbar .account-zone.workspace-topbar-account{min-width:40px!important;}.sv-admin-team-grid{grid-template-columns:1fr!important;}body[data-page="mapa.html"].georural-map-page .geo-brandbar.map-onebar{grid-template-columns:44px minmax(0,1fr)!important;}.sv-map-search-host{display:none!important;}.sv-map-toolbar-modern{grid-column:2!important;}}

/* expanded quick tools below the centered map toolbar */
.sv-map-toolbar-modern .map-quick-tools-drawer{position:absolute!important;left:50%!important;top:54px!important;transform:translateX(-50%)!important;width:min(680px,calc(100vw - 40px))!important;max-height:260px!important;overflow:auto!important;background:#fff!important;border:1px solid #dbe3ee!important;border-radius:12px!important;box-shadow:0 16px 36px rgba(15,23,42,.16)!important;padding:10px!important;z-index:6000!important;}
.sv-map-toolbar-modern .map-quick-tools-drawer.hidden{display:none!important;}
.sv-map-toolbar-modern .map-quick-tools-grid{display:grid!important;grid-template-columns:repeat(10,minmax(42px,1fr))!important;gap:7px!important;}
.sv-map-toolbar-modern .map-quick-tools-grid button{min-height:42px!important;border:1px solid #b7d1fb!important;border-radius:8px!important;background:#fff!important;color:#0f62e8!important;}
.sv-map-toolbar-modern .map-quick-tools-grid button:hover{background:#edf5ff!important;}
.sv-map-toolbar-modern .sv-map-toolbar-more .sv-map-label{display:none!important;}
.sv-map-toolbar-modern .sv-map-toolbar-more{min-width:40px!important;width:40px!important;}
.project-card-preview .project-preview-tiles{transform-origin:0 0;}.project-card-preview .project-preview-svg{position:absolute;left:50%;top:50%;width:768px;height:768px;transform:translate(calc(-1 * var(--sv-preview-x,384px)),calc(-1 * var(--sv-preview-y,384px)));overflow:visible;}.project-card-preview:before{pointer-events:none;}
.workspace-topbar-actions .notification-center{order:1!important;}.workspace-topbar-actions .workspace-plan-status{order:2!important;}.workspace-topbar-actions .workspace-topbar-account{order:3!important;}

/* ===== 2026-08-17 corrections: map header, project previews, teams and generation progress ===== */
body[data-page="mapa.html"] .geo-toolstrip{display:none!important;visibility:hidden!important;height:0!important;min-height:0!important;max-height:0!important;padding:0!important;border:0!important;overflow:hidden!important;}
body[data-page="mapa.html"] .geo-layers-trigger,
body[data-page="mapa.html"] .geo-toolbar-center,
body[data-page="mapa.html"] .geo-toolbar-right-map,
body[data-page="mapa.html"] .map-quick-tools-anchor{display:none!important;}
body[data-page="mapa.html"] .sv-map-toolbar-modern .geo-tool,
body[data-page="mapa.html"] .sv-map-toolbar-modern .geo-layers-trigger,
body[data-page="mapa.html"] .sv-map-toolbar-modern .map-download-menu,
body[data-page="mapa.html"] .sv-map-toolbar-modern .map-download-menu summary{display:flex!important;visibility:visible!important;height:50px!important;min-height:50px!important;max-height:50px!important;}
body[data-page="mapa.html"] .sv-map-toolbar-modern .map-download-menu{overflow:visible!important;}
body[data-page="mapa.html"] .sv-map-toolbar-modern .map-download-menu .map-download-list{top:52px!important;z-index:7000!important;}
body[data-page="mapa.html"] .geo-brandbar.map-onebar{overflow:visible!important;}
body[data-page="mapa.html"] .geo-app{grid-template-rows:56px minmax(0,1fr)!important;}


body[data-page="mapa.html"] .sv-map-toolbar-modern>.sv-map-toolbar-item,
body[data-page="mapa.html"] .sv-map-toolbar-modern>details{flex:0 0 auto!important;}
@media(max-width:1180px){body[data-page="mapa.html"] .sv-map-toolbar-modern{overflow-x:auto!important;overflow-y:visible!important;justify-content:flex-start!important;}}

.project-card-preview{background:#dfe8f0!important;}
.project-card-preview.is-placeholder{background:linear-gradient(110deg,#dfe7ef 8%,#edf2f6 18%,#dfe7ef 33%)!important;background-size:200% 100%!important;animation:svProjectPreviewLoading 1.4s linear infinite!important;}
.project-card-preview.is-placeholder .project-preview-outline{display:none!important;}
.project-card-preview.is-preview-ready{animation:none!important;background:#152c3b!important;}
.project-card-preview.is-preview-unavailable{animation:none!important;}
.project-card-preview.is-preview-unavailable .project-preview-outline{display:block!important;}
@keyframes svProjectPreviewLoading{to{background-position-x:-200%}}
.project-card-preview .project-preview-tiles{z-index:0!important;}
.project-card-preview .project-preview-svg{z-index:3!important;}
.project-card-preview:before{z-index:2!important;background:linear-gradient(180deg,rgba(5,25,45,.03),rgba(5,25,45,.12))!important;}
.project-card-preview .project-cloud-pill{z-index:5!important;}

.sv-admin-team-owner{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:9px!important;padding:0 14px!important;color:#18314e!important;text-align:left!important;}
.sv-admin-team-owner:before{content:"♧";font-size:15px;color:#0f62e8;flex:0 0 auto;}

.sv-generation-overlay{position:fixed;inset:0;z-index:120000;display:grid;place-items:center;background:rgba(8,24,45,.32);backdrop-filter:blur(3px);padding:20px;}
.sv-generation-overlay[hidden]{display:none!important;}
.sv-generation-card{width:min(440px,calc(100vw - 32px));background:#fff;border:1px solid #dbe3ee;border-radius:14px;box-shadow:0 24px 70px rgba(15,33,58,.24);padding:24px;}
.sv-generation-card-head{display:flex;align-items:center;gap:13px;margin-bottom:18px;}.sv-generation-spinner{width:34px;height:34px;border-radius:50%;border:3px solid #dce9fb;border-top-color:#1769e8;animation:svGenSpin .8s linear infinite;flex:0 0 auto;}.sv-generation-card strong{display:block;font-size:14px;color:#10213b;}.sv-generation-card small{display:block;margin-top:3px;color:#718096;font-size:10px;}.sv-generation-progress-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:7px;font-size:10px;color:#5f7087;font-weight:700;}.sv-generation-progress-row b{color:#1769e8;}.sv-generation-track{height:8px;border-radius:999px;background:#e4edf8;overflow:hidden;}.sv-generation-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1769e8,#4b91ff);transition:width .22s ease;}.sv-generation-stage{margin-top:10px;font-size:10px;color:#65768d;line-height:1.4;}.sv-generation-card.is-done .sv-generation-spinner{border:0;background:#eaf8ef;color:#168348;display:grid;place-items:center;animation:none;}.sv-generation-card.is-done .sv-generation-spinner:before{content:"✓";font-size:19px;font-weight:900;}.sv-generation-card.is-error .sv-generation-spinner{border:0;background:#fff0f1;color:#c33;display:grid;place-items:center;animation:none;}.sv-generation-card.is-error .sv-generation-spinner:before{content:"!";font-size:19px;font-weight:900;}@keyframes svGenSpin{to{transform:rotate(360deg)}}

/* ===== MAP HOTFIX 2026-08-17: clean functional one-line toolbar ===== */
body[data-page="mapa.html"].georural-map-page .geo-app{
  grid-template-rows:56px minmax(0,1fr)!important;
}
body[data-page="mapa.html"].georural-map-page .geo-brandbar.map-onebar{
  position:relative!important;
  
  
  max-height:56px!important;
  display:grid!important;
  
  
  
  
  overflow:visible!important;
  
  
  box-shadow:0 1px 3px rgba(15,23,42,.05)!important;
}
body[data-page="mapa.html"] .geo-brand-left{
  
  position:static!important;
  
  
  height:56px!important;
  
  
  
  padding:0!important;
  margin:0!important;
}

body[data-page="mapa.html"] .sv-map-legacy-controls{
  position:absolute!important;
  width:1px!important;height:1px!important;
  overflow:hidden!important;
  clip-path:inset(50%)!important;
  opacity:0!important;
  pointer-events:none!important;
  left:-9999px!important;top:-9999px!important;
  display:block!important;
}
body[data-page="mapa.html"] .sv-map-toolbar-modern{
  grid-column:2!important;
  grid-row:1!important;
  position:relative!important;
  z-index:2400!important;
  
  min-width:0!important;
  display:flex!important;
  
  justify-content:center!important;
  gap:0!important;
  overflow:visible!important;
  white-space:nowrap!important;
}
body[data-page="mapa.html"] .sv-map-toolbar-modern>.sv-map-toolbar-item,
body[data-page="mapa.html"] .sv-map-toolbar-modern>.sv-map-export-clean{
  flex:0 0 auto!important;
}
body[data-page="mapa.html"] .sv-map-toolbar-item,
body[data-page="mapa.html"] .sv-map-export-clean{
  height:56px!important;
  min-width:64px!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  color:#1f344d!important;
  box-shadow:none!important;
  transform:none!important;
}
body[data-page="mapa.html"] button.sv-map-toolbar-item{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  padding:4px 9px!important;
  cursor:pointer!important;
}
body[data-page="mapa.html"] .sv-map-toolbar-item:hover,
body[data-page="mapa.html"] .sv-map-export-clean:hover,
body[data-page="mapa.html"] .sv-map-toolbar-item:focus-visible{
  background:#f6f9fd!important;
  color:#0d63df!important;
}
body[data-page="mapa.html"] .sv-map-toolbar-item svg,
body[data-page="mapa.html"] .sv-map-export-clean summary svg{
  width:18px!important;height:18px!important;
  fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;
  stroke-linecap:round!important;stroke-linejoin:round!important;
  flex:0 0 auto!important;
}
body[data-page="mapa.html"] .sv-map-toolbar-item .sv-map-label,
body[data-page="mapa.html"] .sv-map-export-clean .sv-map-label{
  font-size:9px!important;
  line-height:1!important;
  font-weight:600!important;
  color:inherit!important;
}
body[data-page="mapa.html"] .sv-map-toolbar-separator{
  flex:0 0 1px!important;
  align-self:center!important;
  width:1px!important;height:34px!important;
  background:#e1e7ef!important;
  margin:0 5px!important;
}
body[data-page="mapa.html"] .sv-map-toolbar-more{
  
  
  
  
  align-self:center!important;
  margin:0 4px!important;
  padding:0!important;
  
}
body[data-page="mapa.html"] .sv-map-toolbar-more svg{width:17px!important;height:17px!important;}
body[data-page="mapa.html"] .sv-map-toolbar-more .sv-more-up{display:none!important;}

body[data-page="mapa.html"] .sv-map-toolbar-more[aria-expanded="true"] .sv-more-down{display:none!important;}
body[data-page="mapa.html"] .sv-map-toolbar-more[aria-expanded="true"] .sv-more-up{display:block!important;}
body[data-page="mapa.html"] .sv-map-export-clean{position:relative!important;display:block!important;}
body[data-page="mapa.html"] .sv-map-export-clean>summary{
  list-style:none!important;
  width:100%!important;height:56px!important;
  display:flex!important;flex-direction:column!important;
  align-items:center!important;justify-content:center!important;gap:3px!important;
  padding:4px 9px!important;cursor:pointer!important;
}
body[data-page="mapa.html"] .sv-map-export-clean>summary::-webkit-details-marker{display:none!important;}
body[data-page="mapa.html"] .sv-map-export-menu{
  position:absolute!important;top:54px!important;left:50%!important;transform:translateX(-50%)!important;
  min-width:150px!important;padding:6px!important;
  display:grid!important;gap:3px!important;
  background:#fff!important;border:1px solid #dce5ef!important;border-radius:9px!important;
  box-shadow:0 14px 32px rgba(15,23,42,.16)!important;z-index:8000!important;
}
body[data-page="mapa.html"] .sv-map-export-clean:not([open]) .sv-map-export-menu{display:none!important;}
body[data-page="mapa.html"] .sv-map-export-menu button{
  min-height:34px!important;border:0!important;border-radius:6px!important;background:#fff!important;
  color:#263b53!important;text-align:left!important;padding:0 10px!important;font-size:11px!important;font-weight:600!important;
}
body[data-page="mapa.html"] .sv-map-export-menu button:hover{background:#eef5ff!important;color:#0d63df!important;}
body[data-page="mapa.html"] .sv-map-search-host{
  grid-row:1!important;
  
  position:relative!important;z-index:2300!important;
}
body[data-page="mapa.html"] .sv-map-search-host .geo-searchbar{
  position:static!important;inset:auto!important;transform:none!important;
  height:auto!important;
  display:block!important;visibility:visible!important;opacity:1!important;
  background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;
}
body[data-page="mapa.html"] .sv-map-search-host .geo-search-input-wrap{position:relative!important;}
body[data-page="mapa.html"] .sv-map-search-host #coordSearch{
  
  border:1px solid #dbe3ee!important;
  background:#f8fafc!important;color:#263b53!important;
  outline:none!important;
}
body[data-page="mapa.html"] .sv-map-search-host .geo-searchbar>button{display:none!important;}
body[data-page="mapa.html"] .sv-map-modern-drawer{
  
  left:50%!important;top:58px!important;
  
  
  
}
body[data-page="mapa.html"] .sv-map-modern-drawer.hidden{display:none!important;}

body[data-page="mapa.html"] .geo-workspace{
  grid-row:2!important;
  min-height:0!important;
}
@media(max-width:1250px){
  body[data-page="mapa.html"].georural-map-page .geo-brandbar.map-onebar{grid-template-columns:48px minmax(560px,1fr) 230px!important;}
  body[data-page="mapa.html"] .sv-map-toolbar-item{min-width:56px!important;padding-left:6px!important;padding-right:6px!important;}
}
@media(max-width:1000px){
  body[data-page="mapa.html"].georural-map-page .geo-brandbar.map-onebar{grid-template-columns:48px minmax(0,1fr)!important;}
  body[data-page="mapa.html"] .sv-map-search-host{display:none!important;}
  body[data-page="mapa.html"] .sv-map-toolbar-modern{justify-content:flex-start!important;overflow-x:auto!important;overflow-y:hidden!important;}
}

/* exact grouping/captions from the approved map-toolbar reference */
body[data-page="mapa.html"] .sv-map-toolbar-group{
  height:56px!important;display:flex!important;flex-direction:column!important;
  align-items:center!important;justify-content:flex-start!important;min-width:0!important;
}
body[data-page="mapa.html"] .sv-map-toolbar-group-actions{
  height:42px!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:0!important;
}
body[data-page="mapa.html"] .sv-map-toolbar-group-caption{
  display:block!important;height:11px!important;line-height:11px!important;margin-top:0!important;
  font-size:7px!important;font-weight:500!important;color:#6e7f94!important;white-space:nowrap!important;
}
body[data-page="mapa.html"] .sv-map-toolbar-group .sv-map-toolbar-item,
body[data-page="mapa.html"] .sv-map-toolbar-group .sv-map-export-clean{
  height:42px!important;min-height:42px!important;max-height:42px!important;
}
body[data-page="mapa.html"] .sv-map-toolbar-group button.sv-map-toolbar-item{
  padding:2px 9px 0!important;min-width:64px!important;gap:2px!important;
}
body[data-page="mapa.html"] .sv-map-toolbar-group .sv-map-export-clean>summary{
  height:42px!important;padding:2px 9px 0!important;
}


body[data-page="mapa.html"] .sv-map-toolbar-group .sv-map-export-menu{top:42px!important;}


/* v21.11.5 map popup/navigation/quick-tools hotfix 3 */
body[data-page="mapa.html"] .sv-map-toolbar-group .sv-map-toolbar-more{
  min-width:30px!important;width:30px!important;height:30px!important;min-height:30px!important;max-height:30px!important;
  margin:5px 4px 0!important;border-radius:6px!important;padding:0!important;
}


body[data-page="mapa.html"] .sv-map-search-host{gap:8px!important;}
body[data-page="mapa.html"] .sv-map-locate-proxy{
  flex:0 0 36px!important;width:36px!important;height:36px!important;min-width:36px!important;
  display:grid!important;place-items:center!important;padding:0!important;margin:0!important;
  border:1px solid #cbdaf0!important;border-radius:9px!important;background:#fff!important;color:#0d63df!important;
  box-shadow:0 1px 2px rgba(15,23,42,.04)!important;cursor:pointer!important;
}
body[data-page="mapa.html"] .sv-map-locate-proxy:hover{background:#eef5ff!important;border-color:#8fb5ef!important;}
body[data-page="mapa.html"] .sv-map-locate-proxy svg{width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
body[data-page="mapa.html"] .sv-map-search-host .geo-searchbar{flex:1 1 auto!important;min-width:0!important;}

body[data-page="mapa.html"] .sv-map-modern-drawer{
  position:fixed!important;transform:none!important;right:auto!important;bottom:auto!important;
  
  z-index:9500!important;
}

body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-grid-tool{
  width:100%!important;min-width:44px!important;
  display:grid!important;place-items:center!important;margin:0!important;padding:0!important;
  border:1px solid #9fc0f5!important;background:#fff!important;color:#0f62e8!important;
}

body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-grid-tool svg{width:20px!important;height:20px!important;stroke:currentColor!important;fill:none!important;}

/* Global navigation on the map is a temporary left popup, never a persistent icon rail. */
body[data-page="mapa.html"].georural-map-page .map-global-nav,
body[data-page="mapa.html"].georural-map-page .map-global-nav.open,
body[data-page="mapa.html"].georural-map-page.map-nav-open .map-global-nav{
  position:fixed!important;left:0!important;top:0!important;bottom:0!important;
  width:320px!important;min-width:320px!important;max-width:min(320px,calc(100vw - 8px))!important;
  height:auto!important;z-index:12000!important;overflow:hidden!important;
  background:#fff!important;border:1px solid #dbe3ee!important;border-left:0!important;border-top:0!important;border-bottom:0!important;border-radius:0 18px 18px 0!important;
  box-shadow:10px 0 32px rgba(15,23,42,.14)!important;
  transform-origin:left top!important;
  transition:transform .22s cubic-bezier(.2,.75,.25,1),opacity .16s ease!important;
}
body[data-page="mapa.html"].georural-map-page .map-global-nav:not(.open){
  transform:translateX(calc(-100% - 12px))!important;opacity:0!important;pointer-events:none!important;
}
body[data-page="mapa.html"].georural-map-page .map-global-nav.open{
  transform:translateX(0)!important;opacity:1!important;pointer-events:auto!important;
}
body[data-page="mapa.html"].georural-map-page .map-global-nav.open~.geo-app,
body[data-page="mapa.html"].georural-map-page.map-nav-open .map-global-nav~.geo-app{
  margin-left:0!important;width:100%!important;
}
body[data-page="mapa.html"].georural-map-page .map-global-nav .brand{
  height:62px!important;min-height:62px!important;
  display:flex!important;align-items:center!important;justify-content:flex-start!important;
  border-bottom:1px solid #e7edf5!important;background:#fff!important;overflow:visible!important;
}


body[data-page="mapa.html"].georural-map-page .map-global-nav .brand>div:nth-child(2){display:block!important;min-width:0!important;}
body[data-page="mapa.html"].georural-map-page .map-global-nav .brand strong{
  line-height:1.2!important;font-weight:800!important;color:#172238!important;
}
body[data-page="mapa.html"].georural-map-page .map-global-nav .brand small{
  display:block!important;margin-top:3px!important;line-height:1.2!important;color:#718199!important;
}
body[data-page="mapa.html"].georural-map-page .map-global-nav-close{
  display:grid!important;place-items:center!important;position:absolute!important;right:12px!important;top:12px!important;
  width:32px!important;height:32px!important;border:0!important;border-radius:8px!important;background:#f5f7fa!important;color:#3c4d63!important;
  font-size:20px!important;line-height:1!important;cursor:pointer!important;
}
body[data-page="mapa.html"].georural-map-page .map-global-nav .nav{
  display:flex!important;flex-direction:column!important;overflow:auto!important;
  height:calc(100% - 62px)!important;
}
body[data-page="mapa.html"].georural-map-page .map-global-nav .nav a{
  position:relative!important;width:100%!important;
  display:flex!important;align-items:center!important;justify-content:flex-start!important;
  margin:0!important;border:0!important;
  background:#fff!important;color:#37485f!important;box-shadow:none!important;text-decoration:none!important;overflow:hidden!important;
  font-size:12px!important;font-weight:600!important;
}
body[data-page="mapa.html"].georural-map-page .map-global-nav .nav a:hover,
body[data-page="mapa.html"].georural-map-page .map-global-nav .nav a.active{background:#f2f6fb!important;color:#0d63df!important;box-shadow:none!important;}
body[data-page="mapa.html"].georural-map-page .map-global-nav .nav .nav-icon{
  position:static!important;margin:0!important;
  display:grid!important;place-items:center!important;border:0!important;background:transparent!important;
}
body[data-page="mapa.html"].georural-map-page .map-global-nav .nav .nav-icon img{width:18px!important;height:18px!important;object-fit:contain!important;}
body[data-page="mapa.html"].georural-map-page .map-global-nav .nav a>span:last-child{
  position:static!important;display:block!important;visibility:visible!important;opacity:1!important;transform:none!important;
  padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;
  color:inherit!important;font-size:12px!important;font-weight:600!important;line-height:1.2!important;pointer-events:auto!important;
}
body[data-page="mapa.html"].georural-map-page .map-global-nav .side-note{display:none!important;}

@media(max-width:1000px){
  body[data-page="mapa.html"] .sv-map-locate-proxy{display:none!important;}
  body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-tools-grid{grid-template-columns:repeat(6,minmax(42px,1fr))!important;}
}
body[data-page="mapa.html"].georural-map-page .map-global-nav .nav .nav-icon svg{
  width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;
  stroke-linecap:round!important;stroke-linejoin:round!important;
}

/* ===== COMMERCIAL FRIENDLY POLISH 2026-08-18 ===== */
.sv-friendly-icon,.module-icon-safe .sv-friendly-icon,.map-global-nav .sv-friendly-icon{
  width:19px!important;height:19px!important;display:block!important;
  
}
.sv-home-tools-menu .module-icon-safe{display:grid!important;place-items:center!important;}


/* Generated page headers use the same friendly module icon as native page headers. */
body[data-page="nuvem.html"] .top>div:first-child:before{background-image:url("/assets/module-icons/projetos.svg")!important;}
body[data-page="acervos.html"] .top>div:first-child:before{background-image:url("/assets/module-icons/acervos.png")!important;}
body[data-page="suporte.html"] .top>div:first-child:before{background-image:url("/assets/module-icons/suporte.png")!important;}
body[data-page="admin.html"] .top>div:first-child:before{background-image:url("/assets/module-icons/admin.png")!important;}
body[data-page="memorial.html"] .top>div:first-child:before{background-image:url("/assets/module-icons/memorial.png")!important;}
body[data-page="ods.html"] .top>div:first-child:before{background-image:url("/assets/module-icons/ods.png")!important;}
body[data-page="mapas.html"] .top>div:first-child:before{background-image:url("/assets/module-icons/mapas.png")!important;}
body[data-page="pranchas.html"] .top>div:first-child:before{background-image:url("/assets/module-icons/pranchas.png")!important;}
body[data-page="planialtimetria.html"] .top>div:first-child:before{background-image:url("/assets/module-icons/planialtimetria.png")!important;}
body[data-page="perimetros.html"] .top>div:first-child:before{background-image:url("/assets/module-icons/perimetros.png")!important;}
body[data-page="ambiental.html"] .top>div:first-child:before{background-image:url("/assets/module-icons/ambiental.png")!important;}
body[data-page="loteamentos-reurb.html"] .top>div:first-child:before{background-image:url("/assets/module-icons/loteamentos.png")!important;}
body[data-page="customizacao.html"] .top>div:first-child:before{background-image:url("/assets/module-icons/customizacao.png")!important;}

/* Projects: real satellite preview gets visual priority, metadata uses coherent icons. */
body[data-page="nuvem.html"] .project-list-row{min-height:286px!important;}



body[data-page="nuvem.html"] .project-list-meta span{min-height:22px!important;font-weight:650!important;}
body[data-page="nuvem.html"] .project-meta-icon{width:13px!important;height:13px!important;fill:none!important;stroke:#50709a!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;flex:0 0 auto!important;}
body[data-page="nuvem.html"] .project-cloud-pill{display:inline-flex!important;align-items:center!important;gap:4px!important;box-shadow:0 1px 4px rgba(15,23,42,.08)!important;}
body[data-page="nuvem.html"] .project-cloud-pill .project-meta-icon{width:11px!important;height:11px!important;stroke:#0f62e8!important;}
body[data-page="nuvem.html"] .project-icon-button{border-color:#d1def0!important;transition:.14s ease!important;}
body[data-page="nuvem.html"] .project-icon-button:hover{background:#eef5ff!important;border-color:#9bbcf0!important;transform:translateY(-1px)!important;}
body[data-page="nuvem.html"] .project-delete-button:hover{background:#fff3f4!important;border-color:#e9aab2!important;color:#b9283d!important;}

/* Support: remove raw text glyph appearance. */


.support-mini-card{transition:.14s ease!important;}
.support-mini-card:hover{border-color:#c9dbf3!important;box-shadow:0 5px 16px rgba(15,23,42,.06)!important;}

/* Map header: no visual rule crosses through tools; every group has its own clean surface. */
body[data-page="mapa.html"].georural-map-page .geo-brandbar.map-onebar{border-bottom:1px solid #e1e8f0!important;background:#fff!important;}
body[data-page="mapa.html"] .sv-map-toolbar-modern{background:#fff!important;isolation:isolate!important;}
body[data-page="mapa.html"] .sv-map-toolbar-group{position:relative!important;background:#fff!important;z-index:2!important;padding:0 2px!important;}
body[data-page="mapa.html"] .sv-map-toolbar-group-actions{background:#fff!important;}

/* Clean basemap selector added to the live toolbar. */
body[data-page="mapa.html"] .sv-map-basemap-clean{height:42px!important;min-width:64px!important;background:#fff!important;border:0!important;}
body[data-page="mapa.html"] .sv-map-basemap-clean>summary{list-style:none!important;height:42px!important;min-width:64px!important;padding:2px 9px 0!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:2px!important;color:#1f344d!important;cursor:pointer!important;border-radius:7px!important;}
body[data-page="mapa.html"] .sv-map-basemap-clean>summary::-webkit-details-marker{display:none!important;}

body[data-page="mapa.html"] .sv-map-basemap-clean>summary .sv-friendly-icon{width:18px!important;height:18px!important;}
body[data-page="mapa.html"] .sv-map-basemap-clean .sv-map-label{font-size:9px!important;line-height:1!important;font-weight:600!important;}
body[data-page="mapa.html"] .sv-map-basemap-menu{position:absolute!important;top:44px!important;left:50%!important;transform:translateX(-50%)!important;display:grid!important;gap:3px!important;z-index:10000!important;}
body[data-page="mapa.html"] .sv-map-basemap-clean:not([open]) .sv-map-basemap-menu{display:none!important;}
body[data-page="mapa.html"] .sv-map-basemap-menu button{width:100%!important;text-align:left!important;font-size:11px!important;font-weight:650!important;cursor:pointer!important;}

body[data-page="mapa.html"] .sv-map-basemap-menu button>svg{width:16px!important;height:16px!important;fill:none!important;stroke:currentColor!important;stroke-width:2!important;opacity:0!important;}
body[data-page="mapa.html"] .sv-map-basemap-menu button.active>svg{opacity:1!important;}
body[data-page="mapa.html"] .sv-basemap-swatch{background:#eef3f8!important;}
body[data-page="mapa.html"] .sv-basemap-sat{background:linear-gradient(135deg,#315f48,#79906b 45%,#524d35)!important;}
body[data-page="mapa.html"] .sv-basemap-hybrid{background:linear-gradient(135deg,#315f48,#73856b 50%,#3b4656)!important;}
body[data-page="mapa.html"] .sv-basemap-road{background:linear-gradient(135deg,#faf8f1 40%,#efad66 42% 48%,#f5f3ee 50%)!important;}
body[data-page="mapa.html"] .sv-basemap-terrain{background:linear-gradient(135deg,#e9e3c3,#b9d09d 50%,#d3ba89)!important;}
body[data-page="mapa.html"] .sv-basemap-topo,body[data-page="mapa.html"] .sv-basemap-topographicReal{background:repeating-linear-gradient(155deg,#f6f2dd 0 6px,#c5b574 7px 8px)!important;}
body[data-page="mapa.html"] .sv-basemap-relief{background:linear-gradient(135deg,#2f83b5,#66b27c,#d9bd62,#a85b45)!important;}

/* Quick tools is a true popup and fits all production tools without reorganizing the map. */
body[data-page="mapa.html"] .sv-map-modern-drawer{overscroll-behavior:contain!important;}

body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-grid-tool{height:50px!important;min-height:50px!important;border-radius:10px!important;border-color:#cbdcf4!important;transition:.13s ease!important;}
body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-grid-tool:hover{background:#eef5ff!important;border-color:#7eaaec!important;transform:translateY(-1px)!important;box-shadow:0 4px 12px rgba(15,98,232,.09)!important;}

/* Map popup navigation: visual polish only. Geometry is owned by the canonical drawer block above. */
body[data-page="mapa.html"].georural-map-page .map-global-nav .brand{padding:11px 54px 10px 14px!important;gap:10px!important;}
body[data-page="mapa.html"].georural-map-page .map-global-nav .brand .brand-mark{display:grid!important;place-items:center!important;flex:0 0 38px!important;width:38px!important;height:38px!important;border-radius:10px!important;background:#eef5ff!important;border:1px solid #dbe9fb!important;}
body[data-page="mapa.html"].georural-map-page .map-global-nav .brand .brand-mark img{display:block!important;width:26px!important;height:26px!important;object-fit:contain!important;}
body[data-page="mapa.html"].georural-map-page .map-global-nav .brand>div:nth-child(2):before{content:none!important;display:none!important;}
body[data-page="mapa.html"].georural-map-page .map-global-nav .brand strong{display:block!important;font-size:15px!important;}
body[data-page="mapa.html"].georural-map-page .map-global-nav .brand small{font-size:10px!important;}
body[data-page="mapa.html"].georural-map-page .map-global-nav .nav{padding:10px 12px 14px!important;gap:3px!important;}
body[data-page="mapa.html"].georural-map-page .map-global-nav .nav a{height:40px!important;min-height:40px!important;border-radius:9px!important;padding:0 11px!important;gap:11px!important;}
body[data-page="mapa.html"].georural-map-page .map-global-nav .nav .nav-icon{width:23px!important;height:23px!important;min-width:23px!important;color:#42617f!important;}
body[data-page="mapa.html"].georural-map-page .map-global-nav .nav a:hover .nav-icon,body[data-page="mapa.html"].georural-map-page .map-global-nav .nav a.active .nav-icon{color:#0f62e8!important;}

@media(max-width:1240px){
  body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-tools-grid{grid-template-columns:repeat(8,minmax(46px,1fr))!important;}
  body[data-page="mapa.html"] .sv-map-basemap-clean{min-width:58px!important;}
}


/* ===== POLIMENTO COMERCIAL UI 2026-08-18B ===== */
/* Conta / menu do usuário */
.workspace-topbar .account-zone.workspace-topbar-account{display:flex!important;align-items:center!important;align-self:center!important;}
.workspace-topbar .account-menu-toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important;margin:0!important;align-self:center!important;}
.workspace-account-menu{top:calc(100% + 10px)!important;}

/* Menu Ferramentas (desktop) mais amigável e com ícones escuros */
.sv-home-tools-menu section h3{font-size:10px!important;color:#5f6e82!important;}
.sv-home-tools-menu a{grid-template-columns:38px minmax(0,1fr)!important;gap:12px!important;min-height:50px!important;padding:8px 10px!important;border-radius:10px!important;}
.sv-home-tools-menu .tool-icon{width:38px!important;height:38px!important;border-radius:10px!important;background:#f3f4f6!important;box-shadow:inset 0 0 0 1px #e5e7eb!important;}
.sv-home-tools-menu .module-icon-safe{color:#111827!important;}
.sv-home-tools-menu .tool-icon svg{width:19px!important;height:19px!important;}
.sv-home-tools-menu b{font-size:12px!important;color:#0f172a!important;}
.sv-home-tools-menu small{font-size:9px!important;color:#6b7280!important;}
.sv-friendly-icon,.module-icon-safe .sv-friendly-icon,.map-global-nav .sv-friendly-icon{stroke:#111827!important;fill:none!important;stroke-width:1.85!important;stroke-linecap:round!important;stroke-linejoin:round!important;}

/* Navegação lateral do mapa com logo real, sem redundância */
.map-global-nav .brand{display:grid!important;grid-template-columns:40px minmax(0,1fr) 30px!important;align-items:center!important;gap:11px!important;}
.map-global-nav .brand .brand-mark{display:grid!important;width:40px!important;height:40px!important;border-radius:10px!important;background:#f5f7fa!important;border:1px solid #dbe3ee!important;}
.map-global-nav .brand .brand-mark img{width:26px!important;height:26px!important;object-fit:contain!important;}
.map-global-nav .brand>div:nth-child(2):before{display:none!important;content:none!important;}
.map-global-nav .brand strong{display:block!important;font-size:18px!important;color:#0f172a!important;}
.map-global-nav .brand small{display:block!important;margin-top:2px!important;font-size:11px!important;color:#6b7280!important;}
.map-global-nav .nav a{min-height:42px!important;border-radius:10px!important;font-size:13px!important;color:#334155!important;}
.map-global-nav .nav .nav-icon{width:22px!important;height:22px!important;color:#1f2937!important;}
.map-global-nav .nav a:hover,.map-global-nav .nav a.active{background:#f5f7fa!important;color:#111827!important;}
.map-global-nav-close{position:static!important;margin-left:auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;}

/* Suporte com ícones pretos/neutros */
.support-mini-card{gap:14px!important;}
.support-mini-icon{border:1px solid #e5e7eb!important;background:#f5f5f5!important;color:#111827!important;}
.support-mini-icon svg{width:17px!important;height:17px!important;fill:none!important;stroke:#111827!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;}

/* Projetos: cartões mais amigáveis */
body[data-page="nuvem.html"] .project-list-row{border-color:#d7e1eb!important;}

body[data-page="nuvem.html"] .project-list-main strong{font-size:13px!important;}
body[data-page="nuvem.html"] .project-owner{font-size:10px!important;}
body[data-page="nuvem.html"] .project-list-meta{padding-top:8px!important;}
body[data-page="nuvem.html"] .project-list-meta span{display:inline-flex!important;align-items:center!important;gap:5px!important;}
body[data-page="nuvem.html"] .project-icon-button{height:36px!important;border-radius:9px!important;}
body[data-page="nuvem.html"] .project-icon-button[data-action="view"]{font-size:10px!important;}
body[data-page="nuvem.html"] .project-icon-button svg{width:15px!important;height:15px!important;}

/* Mapa: barra superior com melhor respiro */
body[data-page="mapa.html"].georural-map-page .geo-brandbar.map-onebar{height:62px!important;min-height:62px!important;padding:4px 12px!important;gap:12px!important;align-items:center!important;}
body[data-page="mapa.html"] .geo-brand-left{align-self:center!important;}
body[data-page="mapa.html"] .map-global-nav-toggle{align-items:center!important;justify-content:center!important;margin:auto!important;align-self:center!important;justify-self:center!important;}
body[data-page="mapa.html"] .sv-map-toolbar-modern{height:58px!important;align-items:center!important;}
body[data-page="mapa.html"] .sv-map-toolbar-group .sv-map-toolbar-group-actions{align-items:center!important;}
body[data-page="mapa.html"] .sv-map-toolbar-more{min-width:42px!important;width:42px!important;height:42px!important;border:1px solid #cfe0f4!important;border-radius:10px!important;background:#fff!important;}
body[data-page="mapa.html"] .sv-map-toolbar-more[aria-expanded="true"]{background:#f4f7fb!important;color:#111827!important;border-color:#c7d2df!important;}

/* Seletor de mapa base com miniaturas reais */
body[data-page="mapa.html"] .sv-map-basemap-clean{position:relative!important;}
body[data-page="mapa.html"] .sv-map-basemap-clean>summary{background:#fff!important;border:1px solid transparent!important;}
body[data-page="mapa.html"] .sv-map-basemap-clean>summary:hover,body[data-page="mapa.html"] .sv-map-basemap-clean[open]>summary{border-color:#d5dfeb!important;background:#f8fafc!important;color:#111827!important;}
body[data-page="mapa.html"] .sv-map-basemap-menu{border-radius:16px!important;padding:10px!important;box-shadow:0 18px 42px rgba(15,23,42,.18)!important;border:1px solid #dbe3ee!important;background:#fff!important;}
body[data-page="mapa.html"] .sv-map-basemap-menu button{display:grid!important;align-items:center!important;border:0!important;border-radius:10px!important;background:transparent!important;color:#334155!important;}
body[data-page="mapa.html"] .sv-map-basemap-menu button:hover,body[data-page="mapa.html"] .sv-map-basemap-menu button.active{background:#f3f4f6!important;color:#111827!important;}
body[data-page="mapa.html"] .sv-map-basemap-menu button svg{width:14px!important;height:14px!important;opacity:0;}
body[data-page="mapa.html"] .sv-map-basemap-menu button.active svg{opacity:1!important;}
body[data-page="mapa.html"] .sv-basemap-swatch{border:1px solid #d7e1eb!important;}









/* Drawer de ferramentas rápidas */
body[data-page="mapa.html"] .sv-map-modern-drawer{border:1px solid #dbe3ee!important;background:#fff!important;box-shadow:0 18px 42px rgba(15,23,42,.16)!important;}
body[data-page="mapa.html"] .map-quick-grid-tool{width:52px!important;height:52px!important;border-radius:12px!important;background:#fff!important;border:1px solid #d7e3ef!important;color:#0f172a!important;}
body[data-page="mapa.html"] .map-quick-grid-tool:hover{background:#f8fafc!important;border-color:#c9d7e5!important;color:#111827!important;}
body[data-page="mapa.html"] .map-quick-grid-tool svg{width:18px!important;height:18px!important;}

/* ajustes finos solicitados em 18/08/2026 */

/* Ferramentas rápidas: neutras/preto e mais amigáveis */


body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-tools-grid button,
body[data-page="mapa.html"] .map-quick-grid-tool,
.sv-map-toolbar-modern .map-quick-tools-grid button{
  width:56px!important;
  height:56px!important;
  min-height:56px!important;
  border-radius:14px!important;
  background:#fff!important;
  border:1px solid #dde3ea!important;
  color:#111827!important;
  box-shadow:0 8px 18px rgba(15,23,42,.06)!important;
}
body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-tools-grid button:hover,
body[data-page="mapa.html"] .map-quick-grid-tool:hover,
.sv-map-toolbar-modern .map-quick-tools-grid button:hover{
  background:#f8fafc!important;
  border-color:#cfd6df!important;
  color:#000!important;
  transform:translateY(-1px)!important;
}
body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-tools-grid button svg,
body[data-page="mapa.html"] .map-quick-grid-tool svg,
.sv-map-toolbar-modern .map-quick-tools-grid button svg{
  width:19px!important;
  height:19px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.9!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
body[data-page="mapa.html"] .sv-map-toolbar-more,
#mapQuickToolsToggle{
  border-radius:12px!important;
}

/* Preview dos documentos: remover aparência excessivamente pesada */
body[data-page="mapas.html"] .preview svg,
body[data-page="pranchas.html"] .preview svg,
body[data-page="memorial.html"] .preview svg,
body[data-page="confrontacao.html"] .preview svg,
body[data-page="planialtimetria.html"] .preview svg{
  text-rendering:geometricPrecision!important;
  -webkit-font-smoothing:antialiased!important;
  font-synthesis-weight:none!important;
}
body[data-page="mapas.html"] .preview svg text,
body[data-page="mapas.html"] .preview svg tspan,
body[data-page="pranchas.html"] .preview svg text,
body[data-page="pranchas.html"] .preview svg tspan,
body[data-page="memorial.html"] .preview svg text,
body[data-page="memorial.html"] .preview svg tspan,
body[data-page="confrontacao.html"] .preview svg text,
body[data-page="confrontacao.html"] .preview svg tspan,
body[data-page="planialtimetria.html"] .preview svg text,
body[data-page="planialtimetria.html"] .preview svg tspan{
  paint-order:normal!important;
  stroke:none!important;
  stroke-width:0!important;
  letter-spacing:0!important;
}
body[data-page="mapas.html"] .preview,
body[data-page="pranchas.html"] .preview,
body[data-page="memorial.html"] .preview,
body[data-page="confrontacao.html"] .preview,
body[data-page="planialtimetria.html"] .preview{
  font-weight:500!important;
}

/* v21.11.5o — ferramentas rápidas compactas, sem rolagem horizontal */
body[data-page="mapa.html"] .sv-map-modern-drawer{
  width:min(610px,calc(100vw - 24px))!important;
  max-width:calc(100vw - 24px)!important;
  max-height:none!important;
  padding:8px!important;
  border-radius:14px!important;
  overflow:hidden!important;
}
body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-tools-grid{
  display:grid!important;
  grid-template-columns:repeat(12,minmax(0,1fr))!important;
  gap:6px!important;
  width:100%!important;
  align-items:center!important;
  justify-items:center!important;
}
body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-tools-grid button,
body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-grid-tool{
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  min-height:40px!important;
  max-width:40px!important;
  max-height:40px!important;
  padding:0!important;
  border-radius:10px!important;
  box-shadow:0 3px 8px rgba(15,23,42,.045)!important;
}
body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-tools-grid button svg,
body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-grid-tool svg{
  width:16px!important;
  height:16px!important;
}

/* Seta de mais ferramentas: tamanho equivalente aos controles do grupo */
body[data-page="mapa.html"] .sv-map-toolbar-group button.sv-map-toolbar-item.sv-map-toolbar-more,
body[data-page="mapa.html"] .sv-map-toolbar-group .sv-map-toolbar-more{
  flex:0 0 30px!important;
  width:30px!important;
  min-width:30px!important;
  max-width:30px!important;
  height:30px!important;
  min-height:30px!important;
  max-height:30px!important;
  margin:6px 2px 0!important;
  padding:0!important;
  border-radius:7px!important;
  align-self:flex-start!important;
}
body[data-page="mapa.html"] .sv-map-toolbar-group .sv-map-toolbar-more svg{
  width:14px!important;
  height:14px!important;
}
body[data-page="mapa.html"] .sv-map-toolbar-group .sv-map-toolbar-more .sv-map-label{
  display:none!important;
}

@media(max-width:760px){
  body[data-page="mapa.html"] .sv-map-modern-drawer{
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
    overflow-y:auto!important;
  }
  body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-tools-grid{
    grid-template-columns:repeat(6,minmax(0,1fr))!important;
  }
}

/* v21.11.5o — miniaturas reais de mapa base + estabilidade visual vista em vídeo */
body[data-page="mapa.html"] .sv-map-basemap-menu{
  width:286px!important;
  min-width:286px!important;
  max-height:min(560px,calc(100vh - 90px))!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
}
body[data-page="mapa.html"] .sv-map-basemap-menu button{
  grid-template-columns:48px minmax(0,1fr) 18px!important;
  min-height:48px!important;
  gap:10px!important;
  padding:6px 8px!important;
}
body[data-page="mapa.html"] .sv-basemap-swatch{
  width:46px!important;
  height:32px!important;
  border-radius:8px!important;
  background-color:#e7edf4!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.52),0 1px 3px rgba(15,23,42,.10)!important;
}
/* Coordenadas reais de Amargosa/BA, evitando as miniaturas vazias/erradas anteriores. */
body[data-page="mapa.html"] .sv-basemap-osm{background-image:url("https://tile.openstreetmap.org/14/6389/8790.png"),url("/assets/basemap-thumbs/osm-reference.jpg")!important;}
body[data-page="mapa.html"] .sv-basemap-road{background-image:url("https://mt1.google.com/vt/lyrs=m&x=6389&y=8790&z=14"),url("/assets/basemap-thumbs/osm-reference.jpg")!important;}
body[data-page="mapa.html"] .sv-basemap-sat{background-image:url("https://mt1.google.com/vt/lyrs=s&x=6389&y=8790&z=14"),url("/assets/basemap-thumbs/satellite-reference.jpg")!important;}
body[data-page="mapa.html"] .sv-basemap-hybrid{background-image:url("https://mt1.google.com/vt/lyrs=y&x=6389&y=8790&z=14"),url("/assets/basemap-thumbs/satellite-reference.jpg")!important;}
body[data-page="mapa.html"] .sv-basemap-terrain{background-image:url("https://mt1.google.com/vt/lyrs=p&x=6389&y=8790&z=14"),url("/assets/basemap-thumbs/osm-reference.jpg")!important;}
body[data-page="mapa.html"] .sv-basemap-topo{background-image:url("https://tile.openmaps.fr/opentopomap/14/6389/8790.png"),url("/assets/basemap-thumbs/osm-reference.jpg")!important;}
body[data-page="mapa.html"] .sv-basemap-topographicReal{
  background-image:linear-gradient(135deg,rgba(22,163,74,.18),rgba(250,204,21,.14),rgba(239,68,68,.12)),url("https://tile.openmaps.fr/opentopomap/14/6389/8790.png"),url("/assets/basemap-thumbs/osm-reference.jpg")!important;
  background-blend-mode:multiply,normal!important;
}
body[data-page="mapa.html"] .sv-basemap-relief{background-image:url("https://maps-for-free.com/layer/relief/z11/row1098/11_798-1098.jpg"),url("/assets/basemap-thumbs/satellite-reference.jpg")!important;}

/* Evita cortes, barras horizontais e previews saindo da largura em módulos técnicos. */
body.sv-modern-htmlcss:not([data-page="mapa.html"]){overflow-x:clip!important;}
body.sv-document-workspace .main,
body.sv-document-workspace .workspace-main,
body.sv-document-complex .main,
body.sv-document-complex .workspace-main{min-width:0!important;max-width:100%!important;}
body.sv-document-workspace .preview,
body.sv-document-workspace [id$="Preview"],
body.sv-document-workspace [id$="Output"],
body.sv-document-complex .preview,
body.sv-document-complex [id$="Preview"],
body.sv-document-complex [id$="Output"]{
  max-width:100%!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  box-sizing:border-box!important;
}
body.sv-document-workspace .preview>svg,
body.sv-document-workspace [id$="Preview"]>svg,
body.sv-document-workspace [id$="Output"]>svg,
body.sv-document-complex .preview>svg,
body.sv-document-complex [id$="Preview"]>svg,
body.sv-document-complex [id$="Output"]>svg{
  display:block!important;
  max-width:100%!important;
  height:auto!important;
  margin-inline:auto!important;
}
.support-layout,.support-info-stack,.support-form-card{min-width:0!important;}

/* Mega menu sempre contido na janela e sem deslocar a página. */
.sv-home-tools-menu{
  position:fixed!important;
  left:0!important;
  right:0!important;
  width:100vw!important;
  max-width:100vw!important;
  max-height:calc(100vh - 56px)!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
}


/* ===== assets/css/features/mapa/map-friendly-ui-v21.11.5.css ===== */
/* Surveyor 21.11.5 — acabamento amigável do mapa
   Somente apresentação/UX. IDs e handlers originais permanecem intactos. */

body[data-page="mapa.html"].georural-map-page{
  --sv-map-blue:#0f62e8;
  --sv-map-blue-soft:#eef5ff;
  --sv-map-text:#172238;
  --sv-map-muted:#64748b;
  --sv-map-line:#dbe4ef;
  --sv-map-card:#ffffff;
}

/* ===== Abas do painel esquerdo ===== */
body.georural-map-page .geo-sidepanel{
  
  border-right:1px solid #dce5ef!important;
  box-shadow:4px 0 18px rgba(15,23,42,.045)!important;
}
body.georural-map-page .sidepanel-tabs-four{
  
  
  
  border-bottom:1px solid #e3eaf3!important;
}
body.georural-map-page .sidepanel-tabs-four button{
  
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:3px!important;
  
  letter-spacing:.015em!important;
  text-overflow:clip!important;white-space:nowrap!important;
  transition:.15s ease!important;
}
body.georural-map-page .sidepanel-tabs-four button svg{
  display:block!important;fill:none!important;stroke:currentColor!important;
  stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;
}
body.georural-map-page .sidepanel-tabs-four button .sv-tab-label{display:block!important;line-height:1!important;}
body.georural-map-page .sidepanel-tabs-four button:hover{transform:none!important;}

body.georural-map-page .sidepanel-tabs-four button::after{display:none!important;}

body.georural-map-page .sidepanel-scroll{background:#f8fafc!important;}
body.georural-map-page .compact-section,
body.georural-map-page .layer-card,
body.georural-map-page .layer-item{
  border:1px solid #dce5ef!important;border-radius:12px!important;background:#fff!important;
  box-shadow:0 1px 3px rgba(15,23,42,.035)!important;
}
body.georural-map-page .compact-heading{
  background:#fbfcfe!important;
  border-bottom:1px solid #e7edf4!important;color:#172238!important;font-size:13px!important;
}
body.georural-map-page .compact-heading b{font-size:13px!important;font-weight:800!important;}
body.georural-map-page .collapse-btn{
  width:26px!important;height:26px!important;display:grid!important;place-items:center!important;
  border:0!important;border-radius:7px!important;background:transparent!important;color:#65758b!important;font-size:15px!important;
}
body.georural-map-page .collapse-btn:hover{background:#eef3f8!important;color:#0f62e8!important;}

body.georural-map-page .compact-fields label{gap:5px!important;color:#34465d!important;font-weight:750!important;}
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 .map-glebas-panel select,
body.georural-map-page .map-glebas-panel input{
  min-height:38px!important;border:1px solid #d2dde9!important;border-radius:9px!important;background:#fff!important;
  color:#172238!important;box-shadow:0 1px 1px rgba(15,23,42,.02)!important;
}
body.georural-map-page .compact-fields input:focus,
body.georural-map-page .compact-fields select:focus,
body.georural-map-page .map-glebas-panel select:focus,
body.georural-map-page .map-glebas-panel input:focus{
  border-color:#79a9ef!important;box-shadow:0 0 0 3px rgba(15,98,232,.10)!important;outline:0!important;
}

body.georural-map-page .geo-side-footer strong,
body.georural-map-page .geo-side-footer b{color:#33465d!important;}

/* Camadas mais compactas e claras */
body.georural-map-page .layer-list{gap:9px!important;}
body.georural-map-page .layer-card,body.georural-map-page .layer-item{padding:11px!important;gap:8px!important;}

body.georural-map-page .layer-meta{font-size:10.5px!important;line-height:1.4!important;color:#687b93!important;}
body.georural-map-page .layer-visibility-toggle{
  width:30px!important;height:30px!important;border-radius:9px!important;border-color:#d6e2ef!important;background:#fff!important;
  color:#14243a!important;transition:background-color .16s ease,border-color .16s ease,color .16s ease,transform .16s ease!important;
}
body.georural-map-page .layer-visibility-toggle svg{
  width:17px!important;height:17px!important;transition:transform .16s ease,opacity .16s ease!important;
}
body.georural-map-page .layer-visibility-toggle[data-state="hidden"]{
  background:#f4f7fb!important;border-color:#cbd7e5!important;color:#6f7f93!important;
}
body.georural-map-page .layer-visibility-toggle[data-state="hidden"] svg{transform:scale(.92)!important;opacity:.82!important;}
body.georural-map-page .layer-visibility-toggle.is-state-changing{animation:svLayerEyeToggle .22s ease-out!important;}
@keyframes svLayerEyeToggle{0%{transform:scale(.82)}65%{transform:scale(1.08)}100%{transform:scale(1)}}
body.georural-map-page .reference-layer-lock{min-height:25px!important;padding:0 8px!important;font-size:9.5px!important;background:#eef5ff!important;}
body.georural-map-page .layer-actions button{min-height:30px!important;}
body.georural-map-page .layer-style-controls{padding-top:8px!important;}

/* Glebas: instrução e ações com menor ruído visual */
body.georural-map-page .map-glebas-panel .field-hint{
  border-color:#dce7f3!important;border-radius:10px!important;
  color:#5d7088!important;font-size:10.5px!important;line-height:1.45!important;
}
body.georural-map-page .gleba-cut-draw-box{border-radius:11px!important;background:#fbfcfe!important;border-color:#dfe7f0!important;}
body.georural-map-page .gleba-cut-draw-box b{font-size:12px!important;}
body.georural-map-page .gleba-cut-draw-box small{font-size:10.5px!important;color:#667991!important;}
body.georural-map-page .gleba-cut-actions button,
body.georural-map-page .map-glebas-actions button{
  min-height:34px!important;border:1px solid #d5e0ec!important;border-radius:8px!important;background:#fff!important;color:#233950!important;
  font-size:10.5px!important;font-weight:800!important;
}
body.georural-map-page .gleba-cut-actions button:hover,
body.georural-map-page .map-glebas-actions button:hover{background:#eef5ff!important;color:#0f62e8!important;border-color:#a8c7f4!important;}

/* ===== Aba Ferramentas: ícone + nome, grupos amigáveis ===== */
body.georural-map-page .map-tools-panel{padding-bottom:12px!important;}

body.georural-map-page .map-tools-panel .geo-tool-group{
  
  border:1px solid #dce6f1!important;
}
body.georural-map-page .map-tools-panel .geo-tool-group::before{
  color:#5d7390!important;letter-spacing:.055em!important;
}
body.georural-map-page .map-tools-panel .geo-tool{
  position:relative!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
  border:1px solid #d6e2ef!important;background:#fff!important;color:#31465f!important;
  box-shadow:none!important;
}
body.georural-map-page .map-tools-panel .geo-tool:hover{background:#eef5ff!important;border-color:#aac9f5!important;color:#0f62e8!important;transform:none!important;}
body.georural-map-page .map-tools-panel .geo-tool.active{background:#0f62e8!important;border-color:#0f62e8!important;color:#fff!important;}
body.georural-map-page .map-tools-panel .geo-tool svg{flex:0 0 auto!important;}
body.georural-map-page .map-tools-panel .geo-tool>span{
  display:block!important;visibility:visible!important;height:auto!important;overflow:visible!important;
  color:inherit!important;font-weight:750!important;
  text-align:center!important;
}
body.georural-map-page .map-tools-panel .geo-tool::after{display:none!important;}

/* ===== Marcar ponto ===== */
body.georural-map-page .gps-point-dialog{width:min(340px,calc(100vw - 16px))!important;max-width:340px!important;}
body.georural-map-page .gps-point-card{
  padding:12px!important;gap:8px!important;border:1px solid #d9e3ef!important;border-radius:13px!important;
  background:rgba(255,255,255,.985)!important;box-shadow:0 18px 44px rgba(15,23,42,.18)!important;
}
body.georural-map-page .gps-point-drag-handle{min-height:48px!important;margin:-3px -3px 0!important;padding:4px 4px 8px!important;align-items:center!important;}
body.georural-map-page .gps-point-head-title{align-items:center!important;gap:9px!important;}
body.georural-map-page .gps-point-title-icon{
  width:32px!important;height:32px!important;flex:0 0 32px!important;display:grid!important;place-items:center!important;
  border-radius:9px!important;background:#eef5ff!important;color:#0f62e8!important;
}
body.georural-map-page .gps-point-title-icon svg{width:18px!important;height:18px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.9!important;stroke-linecap:round!important;stroke-linejoin:round!important;}
body.georural-map-page .gps-drag-grip{display:none!important;}
body.georural-map-page .gps-point-drag-handle .eyebrow{font-size:8px!important;letter-spacing:.07em!important;color:#0f62e8!important;}
body.georural-map-page .gps-point-drag-handle h2{font-size:15px!important;color:#172238!important;}
body.georural-map-page .gps-dialog-close{width:29px!important;height:29px!important;flex-basis:29px!important;background:#f8fafc!important;border-color:#dbe3ed!important;}
body.georural-map-page .gps-point-card label{font-size:10.5px!important;color:#40536a!important;}
body.georural-map-page .gps-point-card input,
body.georural-map-page .gps-point-card select{height:35px!important;min-height:35px!important;border-color:#d4dfeb!important;border-radius:8px!important;font-size:11.5px!important;}
body.georural-map-page .gps-point-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important;margin-top:2px!important;}
body.georural-map-page .gps-point-actions button{
  width:100%!important;min-width:0!important;min-height:35px!important;height:35px!important;justify-content:center!important;padding:0 8px!important;
  border-radius:8px!important;font-size:10px!important;
}
body.georural-map-page .gps-point-actions .gps-secondary.active{background:#fff7d6!important;border-color:#f0d26c!important;color:#765700!important;}
body.georural-map-page .gps-point-actions .gps-primary{background:#0f62e8!important;border-color:#0f62e8!important;color:#fff!important;}
body.georural-map-page .gps-point-live-status{border-radius:8px!important;font-size:10px!important;}

/* ===== Marcador de consulta: remove o '?' bruto ===== */
body.georural-map-page .map-layer-info-help{
  position:relative!important;padding:0!important;
  display:grid!important;place-items:center!important;border-radius:50%!important;
  color:#fff!important;
  font-size:0!important;font-weight:900!important;cursor:pointer!important;
}




/* ===== Consulta fundiária oficial ===== */
body.georural-map-page .rural-registry-leaflet-popup .leaflet-popup-content-wrapper{
  width:300px!important;max-width:min(300px,calc(100vw - 34px))!important;padding:0!important;
  border:1px solid #d8e4f1!important;border-radius:13px!important;background:#fff!important;
  box-shadow:0 16px 38px rgba(15,23,42,.18)!important;
}
body.georural-map-page .rural-registry-leaflet-popup .leaflet-popup-content{width:auto!important;margin:0!important;padding:12px!important;}
body.georural-map-page .rural-registry-leaflet-popup .leaflet-popup-close-button{
  top:7px!important;right:7px!important;width:26px!important;height:26px!important;line-height:24px!important;
  border-radius:7px!important;background:#f7f9fc!important;color:#596c83!important;font-size:18px!important;
}
body.georural-map-page .rural-registry-popup{min-width:0!important;gap:7px!important;}
body.georural-map-page .rural-registry-popup>b{display:block!important;padding-right:28px!important;font-size:13px!important;color:#172238!important;}
body.georural-map-page .rural-registry-popup>small{display:block!important;padding-right:24px!important;font-size:9.5px!important;line-height:1.35!important;color:#6a7b91!important;}
body.georural-map-page .registry-section{border:1px solid #dce6f1!important;border-radius:9px!important;overflow:hidden!important;background:#fff!important;}
body.georural-map-page .registry-section summary{
  min-height:35px!important;padding:0 10px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;
  background:#f7faff!important;color:#0d5fd9!important;cursor:pointer!important;
}
body.georural-map-page .registry-section[open] summary{background:#eef5ff!important;}
body.georural-map-page .registry-section summary span{font-size:10.5px!important;font-weight:850!important;letter-spacing:.02em!important;}
body.georural-map-page .registry-section-body{max-height:210px!important;padding:8px 9px!important;font-size:10px!important;}
body.georural-map-page .registry-empty{font-size:9.5px!important;line-height:1.4!important;color:#697b91!important;}

/* ===== Controles do lado direito ===== */

body.georural-map-page .surveyor-orientation-control .orientation-stack{
  gap:5px!important;padding:5px!important;border:1px solid rgba(215,225,237,.90)!important;border-radius:18px!important;
  background:rgba(255,255,255,.78)!important;box-shadow:0 8px 22px rgba(15,23,42,.12)!important;backdrop-filter:blur(8px)!important;
}
body.georural-map-page .surveyor-orientation-control .compass{
  
  place-items:center!important;
  color:#0f62e8!important;
  cursor:grab!important;touch-action:none!important;user-select:none!important;
}
body.georural-map-page .surveyor-orientation-control .compass:active{cursor:grabbing!important;}
body.georural-map-page .surveyor-orientation-control .compass::before,
body.georural-map-page .surveyor-orientation-control .compass::after{
  position:absolute!important;left:50%!important;top:50%!important;background:#9db7d8!important;border:0!important;transform:none!important;
}
body.georural-map-page .surveyor-orientation-control .compass::before{width:1px!important;height:25px!important;margin:-12.5px 0 0 -.5px!important;}
body.georural-map-page .surveyor-orientation-control .compass::after{width:25px!important;height:1px!important;margin:-.5px 0 0 -12.5px!important;}
body.georural-map-page .surveyor-orientation-control .compass span{
  position:relative!important;z-index:2!important;width:23px!important;height:23px!important;display:grid!important;place-items:center!important;
  border-radius:50%!important;background:#fff!important;color:#0f62e8!important;font-size:9px!important;font-weight:900!important;
  box-shadow:0 0 0 1px #d7e3f0!important;
}
body.georural-map-page .surveyor-orientation-control button{
  width:31px!important;height:31px!important;min-height:31px!important;border:1px solid #d7e2ee!important;border-radius:50%!important;
  background:#fff!important;color:#3b4e66!important;box-shadow:0 2px 7px rgba(15,23,42,.08)!important;
}
body.georural-map-page .surveyor-orientation-control button:hover{background:#eef5ff!important;color:#0f62e8!important;border-color:#adc9ef!important;}
body.georural-map-page .surveyor-orientation-control .zoom-range-wrap{height:68px!important;width:20px!important;}
body.georural-map-page .surveyor-orientation-control input[type="range"]{width:62px!important;accent-color:#0f62e8!important;}

/* tooltip simples do novo compass */
body.georural-map-page .surveyor-orientation-control .compass:focus-visible{outline:3px solid rgba(15,98,232,.18)!important;outline-offset:2px!important;}

@media(max-width:720px){
  body.georural-map-page .map-tools-panel .geo-tool-group{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  body.georural-map-page .sidepanel-tabs-four button{font-size:8px!important;}
}

/* ===== COMMERCIAL SIDE PANEL POLISH 2026-08-18 ===== */
body.georural-map-page{--panel-w:360px;}
body.georural-map-page .geo-sidepanel{background:#f8fafc!important;}
body.georural-map-page .sidepanel-tabs-four{
  height:58px!important;min-height:58px!important;position:sticky!important;top:0!important;z-index:30!important;
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:center!important;gap:6px!important;
  padding:6px 8px!important;background:#fff!important;border:0!important;box-shadow:inset 0 -1px 0 #e2e8f0!important;
}
body.georural-map-page .sidepanel-tabs-four button{
  height:46px!important;min-height:46px!important;margin:0!important;padding:5px 3px 4px!important;border:1px solid transparent!important;
  border-radius:9px!important;background:#fff!important;color:#64748b!important;font-size:9px!important;font-weight:800!important;
  line-height:1!important;box-shadow:none!important;overflow:hidden!important;
}
body.georural-map-page .sidepanel-tabs-four button svg{width:18px!important;height:18px!important;margin:0!important;}
body.georural-map-page .sidepanel-tabs-four button.active{background:#eef5ff!important;border-color:#cfe0f8!important;color:#0f62e8!important;box-shadow:inset 0 -2px 0 #0f62e8!important;}
body.georural-map-page .sidepanel-tabs-four button:hover{background:#f4f8fd!important;color:#0f62e8!important;}

body.georural-map-page .compact-section{margin-bottom:12px!important;border-radius:12px!important;border-color:#dce5ef!important;}
body.georural-map-page .compact-heading{padding:11px 13px!important;min-height:50px!important;}
body.georural-map-page .compact-fields{padding:13px!important;gap:11px!important;}
body.georural-map-page .compact-fields label{font-size:11px!important;line-height:1.25!important;}
body.georural-map-page .compact-fields input,body.georural-map-page .compact-fields select{min-height:40px!important;font-size:11px!important;}
body.georural-map-page .row{grid-template-columns:minmax(0,1fr) 92px!important;gap:9px!important;}

/* Layers: stable slider layout and clearer actions. */
body.georural-map-page .layer-card{padding:12px!important;border-radius:12px!important;}
body.georural-map-page .layer-name b{font-size:12px!important;line-height:1.2!important;}
body.georural-map-page .layer-head-tools{gap:7px!important;}
body.georural-map-page .layer-style-controls label{grid-template-columns:86px minmax(0,1fr) 40px!important;gap:8px!important;}
body.georural-map-page .layer-style-controls input[type="range"]{width:100%!important;accent-color:#0f62e8!important;}
body.georural-map-page .layer-actions button{border-radius:8px!important;padding:0 9px!important;font-size:10px!important;}

/* Glebas: reduce text wall and make the workflow scannable. */
body.georural-map-page .map-glebas-panel .field-hint{border-left:3px solid #7eb0f1!important;background:#f7faff!important;padding:10px 12px!important;}
body.georural-map-page .gleba-cut-draw-box{display:grid!important;gap:8px!important;padding:12px!important;}
body.georural-map-page .gleba-cut-actions{display:flex!important;gap:7px!important;flex-wrap:wrap!important;}

/* Tools panel: friendly grid, no letter-by-letter wrapping. */
body.georural-map-page .map-tools-panel{padding:0 0 12px!important;}
body.georural-map-page .map-tools-panel .compact-heading{margin-bottom:10px!important;}
body.georural-map-page .map-tools-panel .geo-toolbar-center{padding:0 2px!important;}

body.georural-map-page .map-tools-panel .geo-tool{
  gap:5px!important;
  
}

body.georural-map-page .map-tools-panel .geo-tool>span{
  width:100%!important;max-width:100%!important;white-space:normal!important;
  overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;
}
body.georural-map-page .map-tools-panel .geo-tool-group::before{font-size:9px!important;}

/* Footer no longer visually merges words. */
body.georural-map-page .geo-side-footer{gap:7px!important;}
body.georural-map-page .geo-side-footer strong,body.georural-map-page .geo-side-footer b{margin-right:2px!important;}

@media(max-width:1100px){body.georural-map-page{--panel-w:340px;}}
@media(max-width:820px){
  body.georural-map-page{--panel-w:310px;}
  body.georural-map-page .map-tools-panel .geo-tool-group{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}


/* ===== PATCH 2026-08-18B: painel de ferramentas mobile ===== */
body.georural-map-page .geo-sidepanel{grid-template-rows:58px minmax(0,1fr) auto!important;overflow:hidden!important;}
body.georural-map-page .sidepanel-scroll{padding:12px 12px 18px!important;overflow:auto!important;}
body.georural-map-page .map-tools-panel .geo-toolbar-center{display:grid!important;gap:12px!important;}
body.georural-map-page .map-tools-panel .geo-tool-group{
  display:grid!important;grid-template-columns:repeat(auto-fill,minmax(64px,64px))!important;justify-content:start!important;gap:8px!important;
  padding:12px!important;border-radius:14px!important;background:#fbfcfe!important;}
body.georural-map-page .map-tools-panel .geo-tool-group::before{grid-column:1/-1!important;margin-bottom:4px!important;}
body.georural-map-page .map-tools-panel .geo-tool{
  width:64px!important;min-width:64px!important;max-width:64px!important;height:64px!important;min-height:64px!important;
  padding:7px 4px!important;border-radius:12px!important;justify-self:start!important;}
body.georural-map-page .map-tools-panel .geo-tool>span{font-size:9px!important;line-height:1.12!important;text-wrap:balance!important;}
body.georural-map-page .map-tools-panel .geo-tool svg{width:18px!important;height:18px!important;}
body.georural-map-page .geo-side-footer{
  min-height:58px!important;padding:10px 14px!important;display:grid!important;grid-template-columns:9px minmax(0,1fr)!important;
  align-items:center!important;column-gap:10px!important;line-height:1.3!important;font-size:10px!important;
  background:#fff!important;border-top:1px solid #e5eaf1!important;color:#6b7d93!important;white-space:normal!important;
}
body.georural-map-page .geo-side-footer .status-dot{
  width:8px!important;height:8px!important;min-width:8px!important;border-radius:50%!important;margin:0!important;align-self:center!important;
  background:#10b981!important;box-shadow:0 0 0 3px rgba(16,185,129,.12)!important;
}
body.georural-map-page .geo-side-footer>div{min-width:0!important;display:block!important;}
body.georural-map-page .geo-side-footer b,body.georural-map-page .geo-side-footer strong{
  display:block!important;margin:0!important;color:#22364d!important;font-size:10.5px!important;font-weight:800!important;line-height:1.2!important;
}
body.georural-map-page .geo-side-footer small{
  display:block!important;margin-top:3px!important;color:#7b8ba0!important;font-size:9.5px!important;line-height:1.35!important;white-space:normal!important;
}
@media(max-width:820px){
  body.georural-map-page .map-tools-panel .geo-tool-group{grid-template-columns:repeat(auto-fill,minmax(60px,60px))!important;}
  body.georural-map-page .map-tools-panel .geo-tool{width:60px!important;min-width:60px!important;max-width:60px!important;height:60px!important;min-height:60px!important;}
}

/* v21.11.5m — refinamento visual solicitado em 18/08/2026 */

/* Marcador de informação mais amigável */
body.georural-map-page .map-layer-info-help{
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  border:2px solid rgba(255,255,255,.96)!important;
  background:linear-gradient(180deg,#2f7cf0 0%,#165ec8 100%)!important;
  box-shadow:0 10px 22px rgba(22,94,200,.28)!important;
}
body.georural-map-page .map-layer-info-help::after{
  content:""!important;
  position:absolute!important;
  inset:5px!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.14)!important;
  pointer-events:none!important;
}
body.georural-map-page .map-layer-info-help::before{
  content:"i"!important;
  position:relative!important;
  z-index:2!important;
  font:800 15px/1 "Inter","Segoe UI",Arial,sans-serif!important;
  color:#fff!important;
  transform:translateY(-.5px)!important;
}
body.georural-map-page .map-layer-info-help:hover{
  background:linear-gradient(180deg,#276fe0 0%,#0e58bf 100%)!important;
  transform:translateY(-2px) scale(1.02)!important;
}
body.georural-map-page .map-layer-info-help-popup .leaflet-popup-content-wrapper,
body.georural-map-page .map-layer-info-help-popup .leaflet-popup-content{width:34px!important;height:34px!important;}

/* ===== Controle de orientação do mapa — implementação canônica ===== */
body.georural-map-page .leaflet-control.surveyor-orientation-control{
  margin-top:12px!important;
  margin-right:12px!important;
}
body.georural-map-page .surveyor-orientation-control .orientation-stack-compact{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:8px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.georural-map-page .surveyor-orientation-control .orientation-nav-pad{
  position:relative!important;
  width:78px!important;
  height:78px!important;
  overflow:hidden!important;
  border:1px solid #dce3eb!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.98)!important;
  box-shadow:0 10px 24px rgba(15,23,42,.13)!important;
}
body.georural-map-page .surveyor-orientation-control .orientation-nav-button,
body.georural-map-page .surveyor-orientation-control .orientation-compass-core,
body.georural-map-page .surveyor-orientation-control .orientation-stack-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#1f2937!important;
  background:#fff!important;
  border:1px solid #e0e6ed!important;
  box-shadow:0 6px 14px rgba(15,23,42,.08)!important;
  transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease!important;
}
body.georural-map-page .surveyor-orientation-control .orientation-nav-button{
  position:absolute!important;
  z-index:3!important;
  width:24px!important;
  height:24px!important;
  min-height:24px!important;
  padding:0!important;
  border:0!important;
  border-radius:999px!important;
  background:transparent!important;
  box-shadow:none!important;
  cursor:pointer!important;
}
body.georural-map-page .surveyor-orientation-control .orientation-nav-button.is-up{left:50%!important;top:7px!important;transform:translateX(-50%)!important;}
body.georural-map-page .surveyor-orientation-control .orientation-nav-button.is-down{left:50%!important;bottom:7px!important;transform:translateX(-50%)!important;}
body.georural-map-page .surveyor-orientation-control .orientation-nav-button.is-left{left:7px!important;top:50%!important;transform:translateY(-50%)!important;}
body.georural-map-page .surveyor-orientation-control .orientation-nav-button.is-right{right:7px!important;top:50%!important;transform:translateY(-50%)!important;}
body.georural-map-page .surveyor-orientation-control .orientation-nav-button.is-up:hover,
body.georural-map-page .surveyor-orientation-control .orientation-nav-button.is-up:focus-visible{transform:translate(-50%,-1px)!important;}
body.georural-map-page .surveyor-orientation-control .orientation-nav-button.is-down:hover,
body.georural-map-page .surveyor-orientation-control .orientation-nav-button.is-down:focus-visible{transform:translate(-50%,1px)!important;}
body.georural-map-page .surveyor-orientation-control .orientation-nav-button.is-left:hover,
body.georural-map-page .surveyor-orientation-control .orientation-nav-button.is-left:focus-visible{transform:translate(-1px,-50%)!important;}
body.georural-map-page .surveyor-orientation-control .orientation-nav-button.is-right:hover,
body.georural-map-page .surveyor-orientation-control .orientation-nav-button.is-right:focus-visible{transform:translate(1px,-50%)!important;}
body.georural-map-page .surveyor-orientation-control .orientation-nav-button:hover,
body.georural-map-page .surveyor-orientation-control .orientation-nav-button:focus-visible{color:#0f62e8!important;outline:none!important;}
body.georural-map-page .surveyor-orientation-control .orientation-compass-core{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  z-index:2!important;
  width:42px!important;
  height:42px!important;
  min-height:42px!important;
  padding:0!important;
  transform:translate(-50%,-50%)!important;
  border-radius:50%!important;
  overflow:hidden!important;
  cursor:grab!important;
  touch-action:none!important;
  user-select:none!important;
  -webkit-user-select:none!important;
}
body.georural-map-page .surveyor-orientation-control .orientation-compass-core:hover,
body.georural-map-page .surveyor-orientation-control .orientation-compass-core:focus-visible{
  transform:translate(-50%,-50%)!important;
  border-color:#bfd2ee!important;
  background:#f8fbff!important;
  box-shadow:0 7px 18px rgba(15,23,42,.12)!important;
  outline:none!important;
}
body.georural-map-page .surveyor-orientation-control .orientation-compass-core.is-dragging{cursor:grabbing!important;}
body.georural-map-page .surveyor-orientation-control .compass{
  position:relative!important;
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  min-height:32px!important;
  display:block!important;
  border:0!important;
  border-radius:50%!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:hidden!important;
  pointer-events:none!important;
  transform:none!important;
}
body.georural-map-page .surveyor-orientation-control .compass::before,
body.georural-map-page .surveyor-orientation-control .compass::after{display:none!important;content:none!important;}
body.georural-map-page .surveyor-orientation-control .compass .compass-needle{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  width:32px!important;
  height:32px!important;
  margin:0!important;
  border:0!important;
  border-radius:50%!important;
  background:transparent!important;
  transform-origin:50% 50%!important;
  pointer-events:none!important;
  transition:transform .16s cubic-bezier(.22,.61,.36,1)!important;
}
body.georural-map-page .surveyor-orientation-control .compass .compass-needle::before{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:2px!important;
  width:0!important;
  height:0!important;
  transform:translateX(-50%)!important;
  border-left:4px solid transparent!important;
  border-right:4px solid transparent!important;
  border-bottom:9px solid #ef4444!important;
}
body.georural-map-page .surveyor-orientation-control .compass .compass-needle::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  bottom:3px!important;
  width:3px!important;
  height:7px!important;
  transform:translateX(-50%)!important;
  border-radius:3px!important;
  background:#2563eb!important;
}
body.georural-map-page .surveyor-orientation-control .compass .compass-north-label{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  z-index:3!important;
  width:16px!important;
  height:16px!important;
  display:grid!important;
  place-items:center!important;
  transform:translate(-50%,-50%)!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#111827!important;
  font-size:9px!important;
  font-weight:850!important;
  line-height:1!important;
  pointer-events:none!important;
}
body.georural-map-page .surveyor-orientation-control .orientation-stack-button{
  width:40px!important;
  height:40px!important;
  min-height:40px!important;
  padding:0!important;
  border-radius:12px!important;
}
body.georural-map-page .surveyor-orientation-control .orientation-stack-button:hover,
body.georural-map-page .surveyor-orientation-control .orientation-stack-button:focus-visible{
  transform:translateY(-1px)!important;
  color:#0f62e8!important;
  background:#f8fbff!important;
  border-color:#cddbf0!important;
  outline:none!important;
}
body.georural-map-page .surveyor-orientation-control .orientation-stack-button svg,
body.georural-map-page .surveyor-orientation-control .orientation-nav-button svg{
  width:18px!important;
  height:18px!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.9!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
body.georural-map-page .surveyor-map-rotation-wrapper{transition:transform .22s cubic-bezier(.22,.61,.36,1)!important;}
body.georural-map-page.surveyor-compass-dragging .surveyor-map-rotation-wrapper{transition:transform .07s linear!important;}
body.georural-map-page.surveyor-compass-dragging .surveyor-orientation-control .compass .compass-needle{transition:transform .07s linear!important;}

/* ===== assets/css/core/surveyor-commercial-polish-v21.11.5.css ===== */
/* Surveyor 21.11.5 — acabamento comercial baseado no fluxo real do produto. */
:root{--svc-blue:#1267eb;--svc-navy:#0c2343;--svc-text:#17233a;--svc-muted:#6b7c93;--svc-line:#dce4ee;--svc-bg:#f6f8fb;--svc-green:#16a05d;}
.sv-commercial-polish svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}

/* ===== Documentos: um único layout para Memorial, ODS, Croquis, Pranchas etc. ===== */
body.sv-document-workspace .workspace-main,body.sv-document-workspace .main{max-width:1500px!important;margin:0 auto!important;}
body.sv-document-workspace .workspace-page-head,body.sv-document-workspace .main>.top{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:20px!important;align-items:center!important;margin-bottom:18px!important;}
body.sv-document-workspace .workspace-page-head h1,body.sv-document-workspace .main>.top h1{font-size:28px!important;letter-spacing:-.025em!important;}
body.sv-document-workspace .workspace-page-head p,body.sv-document-workspace .main>.top p{font-size:12px!important;color:#63748b!important;}
.sv-doc-head-status{display:flex;align-items:stretch;gap:0;background:#fff;border:1px solid var(--svc-line);border-radius:14px;box-shadow:0 5px 18px rgba(15,23,42,.05);overflow:hidden;}
.sv-doc-status-card{min-width:190px;display:flex;align-items:center;gap:10px;padding:13px 16px;border-left:1px solid #e7ecf2;}.sv-doc-status-card:first-child{border-left:0;}
.sv-doc-status-icon{width:34px;height:34px;border-radius:9px;background:#f0f5fb;color:#17233a;display:grid;place-items:center;}.sv-doc-status-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;}
.sv-doc-status-card small{display:block;font-size:9px;color:#718096;}.sv-doc-status-card strong{display:block;max-width:180px;margin-top:2px;font-size:12px;color:#17233a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
body.sv-document-workspace .sv-document-panel{padding:22px 24px!important;border:1px solid var(--svc-line)!important;border-radius:14px!important;background:#fff!important;box-shadow:0 7px 24px rgba(15,23,42,.045)!important;}
.sv-document-sections{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:0 24px;}
.sv-doc-section{grid-column:span 6;padding:18px 0;border-top:1px solid #e7ecf2;}.sv-doc-section:first-child{grid-column:1/-1;border-top:0;padding-top:2px;}
.sv-doc-section h2{display:flex;align-items:center;gap:9px;margin:0 0 14px;font-size:13px;color:#17233a;}.sv-doc-section h2>span{width:22px;height:22px;border:2px solid #2680ff;border-radius:50%;display:grid;place-items:center;color:#1267eb;font-size:10px;font-weight:900;background:#fff;}
.sv-doc-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 16px;}.sv-doc-section:first-child .sv-doc-section-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
body.sv-document-workspace .sv-document-panel label{font-size:10px!important;font-weight:700!important;color:#42526a!important;gap:6px!important;}
body.sv-document-workspace .sv-document-panel input,body.sv-document-workspace .sv-document-panel select,body.sv-document-workspace .sv-document-panel textarea{min-height:40px!important;border:1px solid #dbe3ed!important;border-radius:8px!important;background:#fff!important;color:#17233a!important;font-size:11px!important;padding:0 12px!important;box-shadow:none!important;}
body.sv-document-workspace .sv-document-panel textarea{padding:10px 12px!important;min-height:110px!important;}
body.sv-document-workspace .sv-document-panel input:focus,body.sv-document-workspace .sv-document-panel select:focus,body.sv-document-workspace .sv-document-panel textarea:focus{border-color:#6aa5f7!important;box-shadow:0 0 0 3px rgba(18,103,235,.09)!important;outline:0!important;}
body.sv-document-workspace .sv-document-panel .button-row{margin-top:18px!important;padding-top:18px!important;border-top:1px solid #e7ecf2!important;gap:10px!important;}
body.sv-document-workspace .sv-document-panel .btn,body.sv-document-workspace .sv-document-panel .link-btn{min-height:42px!important;border-radius:8px!important;font-size:11px!important;font-weight:800!important;padding:0 16px!important;}
body.sv-document-workspace .sv-document-panel .btn.primary{background:#1267eb!important;border-color:#1267eb!important;box-shadow:0 6px 14px rgba(18,103,235,.18)!important;}
body.sv-document-workspace .preview,body.sv-document-workspace [id$="Preview"],body.sv-document-workspace [id$="Output"]{margin-top:22px!important;border-radius:14px!important;}
@media(max-width:900px){.sv-doc-head-status{display:none;}.sv-document-sections{display:block;}.sv-doc-section{padding:16px 0;}.sv-doc-section-grid{grid-template-columns:1fr!important;}}

/* ===== Projetos ===== */
body[data-page="nuvem.html"] .projects-overview{display:grid!important;}
body[data-page="nuvem.html"] .projects-panel{border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;}
body[data-page="nuvem.html"] .projects-toolbar{display:grid!important;grid-template-columns:minmax(300px,1fr) auto!important;gap:14px!important;align-items:center!important;margin-bottom:18px!important;}
body[data-page="nuvem.html"] .projects-search{height:44px!important;border:1px solid var(--svc-line)!important;border-radius:9px!important;background:#fff!important;box-shadow:0 2px 8px rgba(15,23,42,.025)!important;}
body[data-page="nuvem.html"] .projects-search input{font-size:11px!important;}
body[data-page="nuvem.html"] .sv-projects-live-count{position:absolute!important;right:0!important;top:-76px!important;background:#fff!important;border:1px solid var(--svc-line)!important;border-radius:9px!important;padding:8px 12px!important;font-size:10px!important;color:#52637b!important;}
.sv-project-controls{display:flex;align-items:center;gap:10px;}.sv-project-sort{height:44px;min-width:205px;display:flex;align-items:center;gap:10px;padding:0 12px;border:1px solid var(--svc-line);border-radius:9px;background:#fff;}.sv-project-sort>span{font-size:11px;font-weight:700;color:#334155;}.sv-project-sort select{border:0!important;min-height:auto!important;background:transparent!important;padding:0!important;font-size:10px!important;color:#475569!important;}
.sv-project-view-toggle{height:44px;display:flex;border:1px solid var(--svc-line);border-radius:9px;overflow:hidden;background:#fff;}.sv-project-view-toggle button{width:46px;border:0;border-left:1px solid var(--svc-line);background:#fff;color:#334155;}.sv-project-view-toggle button:first-child{border-left:0;}.sv-project-view-toggle button.active{background:#eef5ff;color:#1267eb;}.sv-project-view-toggle svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;}
.sv-project-new{height:44px;display:flex;align-items:center;justify-content:center;gap:8px;padding:0 18px;border-radius:9px;background:#1267eb;color:#fff!important;text-decoration:none;font-size:11px;font-weight:800;box-shadow:0 7px 16px rgba(18,103,235,.18);}.sv-project-new svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;}
body[data-page="nuvem.html"] .projects-list{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;}
body[data-page="nuvem.html"] .project-list-row{border:1px solid #dce4ee!important;border-radius:12px!important;background:#fff!important;overflow:hidden!important;box-shadow:0 6px 18px rgba(15,23,42,.045)!important;}
body[data-page="nuvem.html"] .project-card-preview{position:relative!important;height:210px!important;border-radius:0!important;overflow:hidden!important;background:linear-gradient(180deg,#edf3fb 0%,#dbe6f2 100%)!important;}
body[data-page="nuvem.html"] .project-list-main{padding:14px 14px 6px!important;}.project-list-main strong{font-size:13px!important;}.project-owner{font-size:10px!important;color:#738299!important;margin-top:4px!important;}
body[data-page="nuvem.html"] .project-list-meta{padding:8px 14px 14px!important;display:flex!important;gap:7px!important;flex-wrap:wrap!important;}
body[data-page="nuvem.html"] .project-list-meta span{padding:5px 8px!important;background:#f8fafc!important;border:1px solid #e0e7ef!important;border-radius:999px!important;font-size:9px!important;color:#475569!important;}
body[data-page="nuvem.html"] .project-list-actions{padding:10px 14px!important;border-top:1px solid #eef2f6!important;gap:7px!important;}.project-list-actions button{border-radius:8px!important;background:#fff!important;}.project-list-actions button[data-action="view"]{flex:1!important;color:#1267eb!important;border-color:#b8d1f8!important;}.project-list-actions button[data-action="view"]:after{content:"Abrir no mapa";font-size:10px;font-weight:800;margin-left:7px;}
body[data-page="nuvem.html"] .projects-list.is-list-view{grid-template-columns:1fr!important;}.projects-list.is-list-view .project-list-row{display:grid!important;grid-template-columns:240px 1fr auto!important;}.projects-list.is-list-view .project-card-preview{height:150px!important;grid-row:1/4;}.projects-list.is-list-view .project-list-actions{grid-column:3;grid-row:1/4;border:0!important;flex-direction:column!important;justify-content:center!important;}
@media(max-width:1250px){body[data-page="nuvem.html"] .projects-list{grid-template-columns:repeat(3,minmax(0,1fr))!important;}}@media(max-width:950px){body[data-page="nuvem.html"] .projects-toolbar{grid-template-columns:1fr!important;}.sv-project-controls{flex-wrap:wrap;}body[data-page="nuvem.html"] .projects-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}@media(max-width:650px){body[data-page="nuvem.html"] .projects-list{grid-template-columns:1fr!important;}.sv-project-sort{flex:1;}.projects-list.is-list-view .project-list-row{display:block!important;}}

/* ===== Acervos oficiais ===== */
body[data-page="acervos.html"] .panel{border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;}.sv-acervos-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;}.sv-acervos-search{width:min(470px,100%);height:42px;display:flex;align-items:center;gap:9px;padding:0 12px;background:#fff;border:1px solid var(--svc-line);border-radius:9px;}.sv-acervos-search svg{width:17px;height:17px;fill:none;stroke:#5f7087;stroke-width:1.8;}.sv-acervos-search input{flex:1;border:0!important;outline:0;background:transparent!important;font-size:10px!important;}.sv-acervos-filters{display:flex;gap:7px;flex-wrap:wrap;}.sv-acervos-filters button{height:34px;padding:0 13px;border:1px solid var(--svc-line);border-radius:8px;background:#fff;color:#52637b;font-size:9px;font-weight:800;}.sv-acervos-filters button.active{border-color:#6ba4f5;background:#eef5ff;color:#1267eb;}
.official-card{position:relative!important;min-height:206px!important;padding:18px!important;border:1px solid #dce4ee!important;border-radius:12px!important;background:#fff!important;box-shadow:0 5px 16px rgba(15,23,42,.04)!important;}.sv-official-badge{display:inline-flex;padding:3px 7px;border:1px solid #9fc2fb;border-radius:5px;color:#1267eb;background:#f5f9ff;font-size:8px;font-weight:900;}.sv-official-brand{height:82px;display:flex;align-items:center;justify-content:flex-start;margin:6px 0 4px;}.sv-official-logo{display:block;max-width:100%;max-height:76px;width:auto;height:auto;object-fit:contain;}.official-card h3{margin:5px 0 3px!important;font-size:12px!important;}.official-card p{font-size:9px!important;color:#64748b!important;line-height:1.45!important;}.official-card .link-btn{position:absolute;left:18px;bottom:16px;min-height:30px!important;border-radius:6px!important;padding:0 10px!important;font-size:9px!important;}.official-card[hidden]{display:none!important;}@media(max-width:1000px){body[data-page="acervos.html"] .official-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}.sv-acervos-toolbar{align-items:stretch;flex-direction:column;}}@media(max-width:650px){body[data-page="acervos.html"] .official-grid{grid-template-columns:1fr!important;}}

/* ===== Personalização ===== */
.sv-custom-dashboard{max-width:1180px;margin:0 auto 18px;}.sv-custom-progress{display:grid;grid-template-columns:78px minmax(0,1fr) auto;align-items:center;gap:18px;padding:20px;border:1px solid var(--svc-line);border-radius:14px;background:#fff;box-shadow:0 5px 16px rgba(15,23,42,.04);}.sv-progress-ring{--p:0deg;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#1267eb var(--p),#e6edf6 0);position:relative;}.sv-progress-ring:after{content:"";position:absolute;inset:7px;border-radius:50%;background:#fff;}.sv-progress-ring strong{position:relative;z-index:1;color:#1267eb;font-size:15px;}.sv-custom-progress small{font-size:9px;font-weight:800;color:#52637b;}.sv-custom-progress h2{margin:4px 0 3px;font-size:16px;}.sv-custom-progress p{margin:0;font-size:10px;color:#718096;}.sv-review-all{height:38px;padding:0 14px;border:0;border-radius:8px;background:#1267eb;color:#fff;font-size:10px;font-weight:800;}.sv-custom-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:12px;}.sv-custom-module-card{min-height:122px;display:grid;grid-template-columns:50px minmax(0,1fr);align-items:start;gap:13px;padding:16px;text-align:left;border:1px solid var(--svc-line);border-radius:13px;background:#fff;color:#17233a;box-shadow:0 4px 14px rgba(15,23,42,.035);cursor:pointer;}.sv-custom-module-card:hover{border-color:#b9d1f4;box-shadow:0 8px 20px rgba(15,23,42,.07);transform:translateY(-1px);}.sv-custom-module-icon{width:46px;height:46px;border-radius:12px;background:#eef4fb;display:grid;place-items:center;color:#1267eb;}.sv-custom-module-icon svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;}.sv-custom-module-card strong{display:block;font-size:12px;}.sv-custom-module-card small{display:block;margin-top:5px;font-size:9px;line-height:1.45;color:#6c7d93;}.sv-custom-module-card em{display:block;margin-top:12px;color:#1267eb;font-size:9px;font-style:normal;font-weight:800;}.customization-chooser{border-radius:14px!important;}.custom-section{border-radius:13px!important;}@media(max-width:950px){.sv-custom-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}@media(max-width:650px){.sv-custom-progress{grid-template-columns:62px 1fr;}.sv-review-all{grid-column:1/-1;}.sv-custom-card-grid{grid-template-columns:1fr;}}

/* ===== Home ===== */
body[data-page="index.html"] .home-hero{min-height:calc(100vh - 56px)!important;justify-content:center!important;padding:60px max(28px,calc((100vw - 1440px)/2))!important;background:radial-gradient(circle at 78% 35%,rgba(18,103,235,.08),transparent 34%),linear-gradient(135deg,#f7faff 0%,#eef4fb 100%)!important;}
body[data-page="index.html"] .home-hero-card{width:100%!important;max-width:1240px!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(360px,.8fr)!important;text-align:left!important;align-items:center!important;padding:30px 0!important;}.sv-home-welcome{grid-column:1;display:inline-flex;justify-self:start;padding:6px 10px;border-radius:999px;background:#eaf3ff;color:#1267eb;font-size:10px;font-weight:800;margin-bottom:22px;}.home-hero-title{grid-column:1;margin:0!important;font-size:clamp(38px,4vw,58px)!important;letter-spacing:-.04em!important;color:#0c2343!important;}.home-hero-subtitle{grid-column:1;max-width:650px!important;margin:20px 0 0!important;font-size:clamp(18px,1.7vw,25px)!important;line-height:1.5!important;color:#526a87!important;}.home-hero-actions{grid-column:1;margin-top:28px!important;justify-content:flex-start!important;}.home-hero-logo{grid-column:2;grid-row:1/5;width:min(360px,70%)!important;height:auto!important;justify-self:center!important;margin:0!important;filter:drop-shadow(0 18px 28px rgba(18,74,160,.14));}.home-hero-btn{min-height:48px!important;border-radius:9px!important;font-size:13px!important;}.home-hero-btn.primary{background:#1267eb!important;}.home-hero-btn.secondary{color:#1267eb!important;}@media(max-width:850px){body[data-page="index.html"] .home-hero-card{grid-template-columns:1fr!important;text-align:center!important;}.sv-home-welcome{justify-self:center;}.home-hero-title,.home-hero-subtitle,.home-hero-actions,.home-hero-logo{grid-column:1!important;}.home-hero-logo{grid-row:auto!important;margin-top:30px!important;width:190px!important;}.home-hero-actions{justify-content:center!important;}.home-hero-subtitle{margin-left:auto!important;margin-right:auto!important;}}

/* ===== Confirmação própria do Surveyor ===== */
.sv-confirm-overlay{position:fixed;inset:0;z-index:200000;display:grid;place-items:center;padding:18px;background:rgba(15,23,42,.38);backdrop-filter:blur(3px);}.sv-confirm-card{width:min(460px,calc(100vw - 30px));display:grid;grid-template-columns:44px 1fr;gap:14px;padding:22px;border:1px solid var(--svc-line);border-radius:15px;background:#fff;box-shadow:0 28px 80px rgba(15,23,42,.28);}.sv-confirm-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:11px;background:#eef5ff;color:#1267eb;}.sv-confirm-icon svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;}.sv-confirm-card h2{margin:1px 0 5px;font-size:15px;}.sv-confirm-card p{margin:0;color:#66768d;font-size:10px;line-height:1.55;}.sv-confirm-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:8px;margin-top:6px;}.sv-confirm-actions button{height:38px;padding:0 14px;border:1px solid var(--svc-line);border-radius:8px;background:#fff;color:#334155;font-size:10px;font-weight:800;}.sv-confirm-actions button.primary{background:#1267eb;border-color:#1267eb;color:#fff;}
.project-card-preview .project-preview-static-svg{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none;}.project-card-preview.is-preview-ready{background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;}.project-card-preview.is-preview-ready:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,18,35,.02),rgba(2,18,35,.10));z-index:2;pointer-events:none;}
body.sv-document-complex .sv-document-panel{margin-bottom:14px!important;padding:20px 22px!important;border:1px solid var(--svc-line)!important;border-radius:14px!important;background:#fff!important;box-shadow:0 6px 20px rgba(15,23,42,.04)!important;}body.sv-document-complex .sv-document-panel>h2{margin:0 0 14px!important;font-size:14px!important;color:#17233a!important;}body.sv-document-complex .form-grid{gap:13px 16px!important;}body.sv-document-complex label{font-size:10px!important;font-weight:700!important;color:#42526a!important;}body.sv-document-complex input,body.sv-document-complex select,body.sv-document-complex textarea{min-height:40px!important;border:1px solid #dbe3ed!important;border-radius:8px!important;background:#fff!important;font-size:11px!important;}body.sv-document-complex .btn,body.sv-document-complex .link-btn{border-radius:8px!important;min-height:40px!important;}

.project-card-preview.is-placeholder:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,rgba(255,255,255,0) 15%,rgba(255,255,255,.45) 32%,rgba(255,255,255,0) 48%);transform:translateX(-100%);animation:svPreviewSheen 1.6s linear infinite;z-index:1;pointer-events:none;}.project-card-preview.is-preview-ready:before,.project-card-preview.is-preview-unavailable:before{display:none;}.project-card-preview .project-preview-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;}.project-card-preview .project-preview-tiles{position:absolute;left:50%;top:50%;width:768px;height:768px;transform:translate(-50%,-50%);z-index:1;}.project-card-preview .project-preview-tiles img{position:absolute;width:256px;height:256px;object-fit:cover;}.project-card-preview .project-preview-svg,.project-card-preview .project-preview-static-svg{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none;}.project-card-preview .project-cloud-pill{position:absolute;right:12px;top:12px;z-index:4;}.project-card-preview .project-preview-outline{position:absolute;inset:12px;border:1px dashed rgba(255,255,255,.24);border-radius:12px;z-index:2;pointer-events:none;}.project-card-preview.is-preview-unavailable{background:linear-gradient(180deg,#dfe8f0 0%,#c9d5e4 100%)!important;}.project-card-preview.is-preview-unavailable .project-preview-outline{border-color:rgba(15,23,42,.09);}@keyframes svPreviewSheen{0%{transform:translateX(-100%)}100%{transform:translateX(130%)}}

.project-preview-unavailable-note{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);z-index:5;max-width:84%;padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.92);border:1px solid rgba(203,213,225,.9);box-shadow:0 4px 12px rgba(15,23,42,.08);font-size:9px;font-weight:700;color:#64748b;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}


/* HOTFIX PROJETOS 2026-08-18E — miniatura visível em grade/lista */
body[data-page="nuvem.html"] .projects-list:not(.is-list-view) .project-card-preview,
body[data-page="nuvem.html"] .projects-list.is-list-view .project-card-preview{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  position:relative!important;
  overflow:hidden!important;
  background:#dfe7ef!important;
}
body[data-page="nuvem.html"] .projects-list:not(.is-list-view) .project-card-preview{height:210px!important;min-height:210px!important;width:100%!important;}
body[data-page="nuvem.html"] .projects-list.is-list-view .project-card-preview{height:150px!important;min-height:150px!important;width:240px!important;}
body[data-page="nuvem.html"] .project-preview-static-image{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
  opacity:1!important;
  z-index:1!important;
}
body[data-page="nuvem.html"] .project-preview-static-svg{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  z-index:3!important;
  pointer-events:none!important;
  overflow:visible!important;
}
body[data-page="nuvem.html"] .project-cloud-pill{z-index:5!important;}
body[data-page="nuvem.html"] .project-card-preview.is-preview-ready{background:#dfe7ef!important;animation:none!important;}

/* Acervos oficiais — correção comercial 2026-08-18 */
body[data-page="acervos.html"] .official-card:before{display:none!important;content:none!important;}
body[data-page="acervos.html"] .official-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important;align-items:stretch!important;}
body[data-page="acervos.html"] .official-card{display:flex!important;flex-direction:column!important;align-items:stretch!important;min-height:232px!important;padding:18px 20px!important;border:1px solid #d8e2ef!important;border-radius:14px!important;overflow:hidden!important;}
body[data-page="acervos.html"] .sv-official-badge{align-self:flex-start!important;margin:0 0 8px!important;padding:3px 8px!important;border-radius:999px!important;font-size:8px!important;line-height:1.2!important;}
body[data-page="acervos.html"] .sv-official-brand{height:74px!important;margin:0 0 8px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;overflow:hidden!important;}
body[data-page="acervos.html"] .sv-official-logo{display:block!important;width:auto!important;max-width:92%!important;height:auto!important;max-height:68px!important;object-fit:contain!important;object-position:left center!important;}
body[data-page="acervos.html"] .official-card h3{position:static!important;margin:3px 0 5px!important;font-size:13px!important;line-height:1.3!important;color:#0d1c32!important;}
body[data-page="acervos.html"] .official-card p{position:static!important;margin:0 0 14px!important;font-size:10px!important;line-height:1.45!important;color:#607089!important;min-height:29px!important;}
body[data-page="acervos.html"] .official-card .link-btn{position:static!important;left:auto!important;bottom:auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;width:max-content!important;min-height:32px!important;margin-top:auto!important;padding:0 12px!important;border-radius:8px!important;font-size:9px!important;font-weight:800!important;}
body[data-page="acervos.html"] .sv-official-suggestion{justify-content:center!important;border-style:dashed!important;}
@media(max-width:1100px){body[data-page="acervos.html"] .official-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:680px){body[data-page="acervos.html"] .official-grid{grid-template-columns:1fr!important;}}

/* ===== Personalização — correção visual e estrutural 2026-08-18 ===== */
body[data-page="customizacao.html"]{
  background:#f5f7fb!important;
}
body[data-page="customizacao.html"]>.suite>.main,
body[data-page="customizacao.html"].workspace-shell-v131 .main,
body[data-page="customizacao.html"].workspace-shell-v131 .workspace-main{
  padding-top:72px!important;
  padding-left:clamp(18px,2.6vw,38px)!important;
  padding-right:clamp(18px,2.6vw,38px)!important;
  padding-bottom:42px!important;
}
body[data-page="customizacao.html"] .top,
body[data-page="customizacao.html"] .workspace-page-head{
  width:min(1320px,100%)!important;
  min-height:44px!important;
  margin:0 auto 14px!important;
  padding:0!important;
  align-items:center!important;
}
body[data-page="customizacao.html"] .top>div:first-child,
body[data-page="customizacao.html"] .workspace-page-head>div:first-child{
  padding-left:44px!important;
}
body[data-page="customizacao.html"] .top>div:first-child:before,
body[data-page="customizacao.html"] .workspace-page-head>div:first-child:before{
  width:34px!important;
  height:34px!important;
  border-radius:9px!important;
  background-size:19px 19px!important;
}
body[data-page="customizacao.html"] .top h1,
body[data-page="customizacao.html"] .workspace-page-head h1{
  font-size:22px!important;
  margin:0!important;
}
body[data-page="customizacao.html"] .top p,
body[data-page="customizacao.html"] .workspace-page-head p{
  display:none!important;
}
body[data-page="customizacao.html"] .panel.customization-layout{
  width:min(1320px,100%)!important;
  max-width:1320px!important;
  margin:0 auto!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body[data-page="customizacao.html"] .customization-form{gap:14px!important;}
body[data-page="customizacao.html"] .customization-chooser{
  gap:14px!important;
  padding:22px!important;
  border:1px solid #dbe3ee!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 10px 28px rgba(15,23,42,.055)!important;
}
body[data-page="customizacao.html"] .customization-chooser-head{
  max-width:900px!important;
}
body[data-page="customizacao.html"] .customization-chooser-head h2{
  margin:0 0 5px!important;
  font-size:22px!important;
  letter-spacing:-.02em!important;
}
body[data-page="customizacao.html"] .customization-chooser-head p{
  font-size:12.5px!important;
  line-height:1.45!important;
  color:#697a91!important;
}
body[data-page="customizacao.html"] .customization-progress-summary{
  min-height:66px!important;
  padding:12px 14px!important;
  border:1px solid #d9e6f8!important;
  border-radius:13px!important;
  background:linear-gradient(135deg,#f7faff,#eef5ff)!important;
  box-shadow:none!important;
}
body[data-page="customizacao.html"] .customization-progress-summary strong{
  font-size:13px!important;
}
body[data-page="customizacao.html"] .customization-progress-summary span{
  font-size:10.5px!important;
}
body[data-page="customizacao.html"] .customization-progress-summary output{
  min-width:70px!important;
  padding:7px 11px!important;
  border-radius:999px!important;
  font-size:12px!important;
}
body[data-page="customizacao.html"] .custom-target-grid{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:10px!important;
}
body[data-page="customizacao.html"] .custom-target-card{
  grid-column:span 2!important;
  min-height:108px!important;
  padding:13px 14px!important;
  grid-template-columns:38px minmax(0,1fr)!important;
  grid-template-areas:"icon content" "status status" "progress progress"!important;
  gap:7px 10px!important;
  border:1px solid #dce4ee!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:0 3px 10px rgba(15,23,42,.025)!important;
  overflow:hidden!important;
}
body[data-page="customizacao.html"] .custom-target-card.is-featured{
  grid-column:span 3!important;
  min-height:116px!important;
  background:linear-gradient(135deg,#fff,#f8fbff)!important;
  border-color:#cbdcf5!important;
}
body[data-page="customizacao.html"] .custom-target-card:hover,
body[data-page="customizacao.html"] .custom-target-card:focus-visible{
  transform:translateY(-1px)!important;
  border-color:#a9c6ee!important;
  box-shadow:0 10px 22px rgba(15,23,42,.07)!important;
}
body[data-page="customizacao.html"] .custom-target-icon{
  width:38px!important;
  height:38px!important;
  border-radius:10px!important;
  background:#eef4ff!important;
  color:#155edb!important;
  font-size:9px!important;
  letter-spacing:.02em!important;
}
body[data-page="customizacao.html"] .custom-target-content b{
  font-size:12px!important;
  line-height:1.25!important;
}
body[data-page="customizacao.html"] .custom-target-content span{
  margin-top:3px!important;
  font-size:9.5px!important;
  line-height:1.35!important;
}
body[data-page="customizacao.html"] .custom-target-step{
  position:absolute!important;
  right:12px!important;
  top:10px!important;
  padding:3px 7px!important;
  border:1px solid #c9dcf8!important;
  border-radius:999px!important;
  background:#f4f8ff!important;
  color:#155edb!important;
  font-size:7px!important;
  font-weight:850!important;
  letter-spacing:.04em!important;
  text-transform:uppercase!important;
}
body[data-page="customizacao.html"] .custom-target-status{
  justify-self:start!important;
  min-width:0!important;
  min-height:23px!important;
  padding:3px 8px!important;
  border-radius:999px!important;
  font-size:8px!important;
  font-weight:800!important;
}
body[data-page="customizacao.html"] .custom-target-status.is-waiting{
  border-color:#d8e1ec!important;
  background:#f8fafc!important;
  color:#64748b!important;
}
body[data-page="customizacao.html"] .custom-target-progress{
  gap:7px!important;
}
body[data-page="customizacao.html"] .custom-target-progress-bar{
  height:4px!important;
  background:#e8edf4!important;
}
body[data-page="customizacao.html"] .custom-target-progress small{
  min-width:28px!important;
  font-size:8px!important;
}
body[data-page="customizacao.html"] .customization-editor{
  gap:12px!important;
}
body[data-page="customizacao.html"] .document-picker-summary{
  position:sticky!important;
  top:64px!important;
  z-index:40!important;
  min-height:56px!important;
  padding:10px 12px!important;
  border:1px solid #dce4ee!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.96)!important;
  backdrop-filter:blur(10px)!important;
  box-shadow:0 10px 26px rgba(15,23,42,.08)!important;
}
body[data-page="customizacao.html"] .document-picker-summary strong{font-size:13px!important;}
body[data-page="customizacao.html"] .document-picker-summary .field-help{font-size:8px!important;}
body[data-page="customizacao.html"] .document-picker-summary .btn{min-height:33px!important;font-size:9px!important;border-radius:8px!important;}
body[data-page="customizacao.html"] .custom-section{
  padding:18px!important;
  border:1px solid #dce4ee!important;
  border-radius:15px!important;
  box-shadow:0 6px 18px rgba(15,23,42,.035)!important;
}
body[data-page="customizacao.html"] .custom-section-heading h2{font-size:18px!important;}
body[data-page="customizacao.html"] .custom-section-heading p{font-size:11px!important;}
body[data-page="customizacao.html"] .section-completion-badge{
  min-height:25px!important;
  padding:4px 8px!important;
  font-size:8px!important;
}
body[data-page="customizacao.html"] .section-completion-badge.is-waiting{
  border-color:#d8e1ec!important;
  background:#f8fafc!important;
  color:#64748b!important;
}
body[data-page="customizacao.html"] .identity-fieldset,
body[data-page="customizacao.html"] .company-logo-card,
body[data-page="customizacao.html"] .technical-signature-card,
body[data-page="customizacao.html"] .module-automatic-panel{
  border-radius:12px!important;
}

/* Topbar de contingência: aparece somente se a topbar global não for montada. */
.sv-custom-fallback-topbar{
  position:fixed!important;
  inset:0 0 auto 0!important;
  z-index:12000!important;
  height:56px!important;
  display:grid!important;
  grid-template-columns:auto 1fr auto!important;
  align-items:center!important;
  gap:20px!important;
  padding:0 22px!important;
  background:#fff!important;
  border-bottom:1px solid #e2e8f0!important;
  box-shadow:0 1px 3px rgba(15,23,42,.04)!important;
}
.sv-custom-fallback-brand{display:flex;align-items:center;gap:9px;color:#0f172a;text-decoration:none!important;}
.sv-custom-fallback-brand img{width:30px;height:30px;object-fit:contain;}
.sv-custom-fallback-brand strong{display:block;font-size:13px;}
.sv-custom-fallback-brand small{display:block;font-size:7px;color:#7a8799;margin-top:1px;}
.sv-custom-fallback-topbar nav{display:flex;align-items:center;justify-content:center;gap:4px;}
.sv-custom-fallback-topbar nav a,.sv-custom-fallback-home{padding:8px 10px;border-radius:8px;color:#334155;text-decoration:none!important;font-size:9px;font-weight:700;}
.sv-custom-fallback-topbar nav a:hover,.sv-custom-fallback-home:hover{background:#f1f5f9;color:#111827;}
body[data-page="customizacao.html"].sv-custom-shell-fallback>.suite>.main{padding-top:76px!important;}

@media(max-width:1100px){
  body[data-page="customizacao.html"] .custom-target-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  body[data-page="customizacao.html"] .custom-target-card,
  body[data-page="customizacao.html"] .custom-target-card.is-featured{grid-column:span 1!important;}
}
@media(max-width:720px){
  body[data-page="customizacao.html"]>.suite>.main,
  body[data-page="customizacao.html"].workspace-shell-v131 .main,
  body[data-page="customizacao.html"].workspace-shell-v131 .workspace-main{padding:68px 12px 26px!important;}
  body[data-page="customizacao.html"] .customization-chooser{padding:14px!important;border-radius:14px!important;}
  body[data-page="customizacao.html"] .custom-target-grid{grid-template-columns:1fr!important;}
  body[data-page="customizacao.html"] .custom-target-card,
  body[data-page="customizacao.html"] .custom-target-card.is-featured{grid-column:1!important;}
  .sv-custom-fallback-topbar nav{display:none!important;}
  .sv-custom-fallback-brand small{display:none!important;}
}


/* First paint gate: never expose the superseded markup/style while current UI runtime is normalizing the DOM. */
html.surveyor-ui-booting body{opacity:0;pointer-events:none;animation:svUiBootFallback .001s 2.5s forwards;}
html:not(.surveyor-ui-booting) body{opacity:1;}
@keyframes svUiBootFallback{to{opacity:1;pointer-events:auto}}
@media(prefers-reduced-motion:no-preference){html:not(.surveyor-ui-booting) body{transition:opacity .10s ease-out;}}

/* 2026-08-18 — remove selo redundante Bem-vindo da home */
body[data-page="index.html"] .sv-home-welcome{display:none!important;}


/* Polimento visual dos avisos/status laterais do mapa */
body.georural-map-page .reference-status{
  position:relative;
  display:grid;
  gap:6px;
  margin-top:14px;
  padding:14px 14px 14px 46px;
  border:1px solid #cfe0ff!important;
  border-radius:16px;
  background:linear-gradient(180deg,#fbfdff 0%,#f1f6ff 100%);
  box-shadow:0 10px 22px rgba(15,91,220,.08);
  color:#26415f;
}
body.georural-map-page .reference-status::before{
  content:"";
  position:absolute;
  left:16px;
  top:18px;
  width:18px;
  height:18px;
  border-radius:50%;
  background:#dbeafe;
  box-shadow:inset 0 0 0 5px #2563eb;
}
body.georural-map-page .reference-status strong{
  display:block;
  margin:0;
  color:#0f2f57;
  font-size:13px;
  font-weight:800;
  line-height:1.25;
}
body.georural-map-page .reference-status span{
  display:block;
  margin:0;
  color:#47617f;
  font-size:12px;
  line-height:1.45;
}
body.georural-map-page .reference-status .reference-progress{
  margin-top:4px;
  width:100%;
  height:7px;
  overflow:hidden;
  border-radius:999px;
  background:#dbe7f7;
}
body.georural-map-page .reference-status .reference-progress > span{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#2563eb 0%,#3b82f6 100%);
  box-shadow:0 2px 8px rgba(37,99,235,.28);
}
body.georural-map-page .reference-status.hidden{display:none!important;}


/* ===== Surveyor 21.11.5 — Confrontantes por trecho: correção visual 2026-08-23 ===== */
.confrontantes-section{
  padding:13px!important;
  background:#ffffff!important;
  box-shadow:0 4px 14px rgba(15,23,42,.035)!important;
}
.confrontantes-help{
  margin:0 0 11px!important;
  font-size:11.5px!important;
  line-height:1.5!important;
}
.details .confrontantes-list,
.confrontantes-list{
  display:grid!important;
  gap:8px!important;
  max-height:320px!important;
  overflow:auto!important;
  padding:1px 3px 2px 1px!important;
  scrollbar-width:thin!important;
}
.confrontante-row,
.confrontantes-list > .confrontante-row{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
  padding:10px!important;
  border:1px solid #dbe4f0!important;
  border-radius:12px!important;
  background:#fff!important;
  cursor:pointer!important;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease,transform .16s ease!important;
}
.confrontante-row:hover{
  border-color:#a9c7f8!important;
  background:#f8fbff!important;
  box-shadow:0 5px 14px rgba(37,99,235,.07)!important;
}
.confrontante-row.active{
  border-color:#2563eb!important;
  background:#eff6ff!important;
  box-shadow:0 0 0 2px rgba(37,99,235,.11)!important;
}
.confrontante-row.filled{border-left:3px solid #16a34a!important;}
.confrontante-row.active.filled{border-left-color:#2563eb!important;}
.confrontante-row-main{
  display:grid!important;
  gap:5px!important;
  min-width:0!important;
}
.confrontante-row-segment{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-width:0!important;
}
.confrontante-row .segment-badge{
  flex:0 0 auto!important;
  min-height:20px!important;
  padding:0 7px!important;
  border-radius:7px!important;
  background:#eaf2ff!important;
  color:#1d4ed8!important;
  font-size:10px!important;
  line-height:20px!important;
  font-weight:850!important;
}
.confrontante-segment-title{
  min-width:0!important;
  color:#0f172a!important;
  font-size:12.5px!important;
  line-height:1.25!important;
  font-weight:900!important;
  white-space:nowrap!important;
}
.confrontante-row-name{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr)!important;
  align-items:baseline!important;
  gap:5px!important;
  min-width:0!important;
}
.confrontante-row-name>span{
  color:#64748b!important;
  font-size:10.5px!important;
  font-weight:750!important;
}
.confrontante-row-name>b{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#172033!important;
  font-size:11.5px!important;
  font-weight:800!important;
}
.confrontante-row:not(.filled) .confrontante-row-name>b{color:#64748b!important;font-weight:700!important;}
.confrontante-row-meta{
  display:block!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#7c8798!important;
  font-size:10.5px!important;
  line-height:1.25!important;
}
.confrontante-edit-btn{
  align-self:center!important;
  min-width:54px!important;
  min-height:30px!important;
  padding:0 9px!important;
  border:1px solid #bfdbfe!important;
  border-radius:9px!important;
  background:#f8fbff!important;
  color:#1d4ed8!important;
  font-size:11px!important;
  font-weight:850!important;
}
.confrontante-row.active .confrontante-edit-btn{background:#2563eb!important;border-color:#2563eb!important;color:#fff!important;}
.leaflet-tooltip.vertex-label-tooltip{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
  margin:0!important;
  color:#111827!important;
  font:800 9px/1 "Arial",Helvetica,sans-serif!important;
  letter-spacing:.01em!important;
  white-space:nowrap!important;
  -webkit-text-stroke:1.8px rgba(255,255,255,.98)!important;
  paint-order:stroke fill!important;
  text-shadow:0 0 1px rgba(255,255,255,.98),0 0 2px rgba(255,255,255,.88)!important;
}
.leaflet-tooltip.vertex-label-tooltip::before{display:none!important;}
.leaflet-tooltip.vertex-label-tooltip.filled{color:#14532d!important;}
.vertex-tooltip{font-size:11px!important;font-weight:750!important;}
.vertex-tooltip-popup .leaflet-popup-content-wrapper{font-size:11px!important;font-weight:750!important;border-radius:10px!important;}
.vertex-tooltip-popup .leaflet-popup-tip-container{display:none!important;}
.confrontante-dialog{
  position:relative!important;
  width:min(760px,calc(100vw - 32px))!important;
  padding:22px!important;
  border:1px solid #dbe4f0!important;
  border-radius:18px!important;
}
.confrontante-dialog>.close{
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  z-index:2!important;
}
.confrontante-dialog .eyebrow{margin:0 44px 5px 0!important;color:#64748b!important;font-size:10.5px!important;letter-spacing:.06em!important;font-weight:850!important;}
.confrontante-dialog #segmentTitle{margin:0 44px 5px 0!important;color:#0f172a!important;font-size:21px!important;line-height:1.15!important;}
.confrontante-dialog .segment-explanation{margin:0 44px 14px 0!important;color:#64748b!important;font-size:12px!important;line-height:1.45!important;}
.confrontante-range{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
  align-items:end!important;
  gap:10px!important;
  margin:0 0 14px!important;
  padding:12px!important;
  border:1px solid #dbe4f0!important;
  border-radius:12px!important;
  background:#f8fbff!important;
}
.confrontante-range label{display:grid!important;gap:5px!important;color:#334155!important;font-size:11px!important;font-weight:800!important;}
.confrontante-range>span{align-self:center!important;color:#64748b!important;font-size:11px!important;font-weight:800!important;}
.confrontante-range select{width:100%!important;min-height:36px!important;padding:0 9px!important;border:1px solid #cbd5e1!important;border-radius:9px!important;background:#fff!important;color:#0f172a!important;font-weight:750!important;}
.confrontante-range small{grid-column:1/-1!important;margin-top:1px!important;color:#64748b!important;font-size:10.5px!important;line-height:1.4!important;}
.confrontante-grid{gap:11px!important;}
.confrontante-grid label{color:#334155!important;font-size:11px!important;font-weight:800!important;}
.confrontante-grid input,.confrontante-grid select,.confrontante-grid textarea{width:100%!important;box-sizing:border-box!important;}
.confrontante-dialog .dialog-actions{display:flex!important;justify-content:flex-end!important;gap:9px!important;margin-top:15px!important;}
.confrontante-dialog .dialog-actions button{min-height:36px!important;padding:0 13px!important;border-radius:10px!important;font-weight:850!important;}
@media(max-width:640px){
  .confrontante-row{grid-template-columns:minmax(0,1fr)!important;}
  .confrontante-edit-btn{justify-self:start!important;}
  .confrontante-range{grid-template-columns:1fr!important;align-items:stretch!important;}
  .confrontante-range>span{display:none!important;}
  .confrontante-range small{grid-column:1!important;}
}

/* 2026-08-26 — painel persistente de informações do imóvel à direita */
body.georural-map-page .rural-info-panel{
  position:fixed;right:18px;top:86px;bottom:42px;width:min(390px,calc(100vw - 40px));z-index:26020;
  display:flex;flex-direction:column;background:#fff;border:1px solid #d7e1ee;border-radius:16px;
  box-shadow:0 22px 56px rgba(15,23,42,.22);overflow:hidden;--rural-info-accent:#FFD400
;}
body.georural-map-page .rural-info-panel[hidden]{display:none!important;}
body.georural-map-page .rural-info-panel::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--rural-info-accent);z-index:2;}
body.georural-map-page .rural-info-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 15px 13px 18px;border-bottom:1px solid #e6edf5;background:#fbfdff;}
body.georural-map-page .rural-info-panel-head>div{display:grid;gap:2px;min-width:0;}
body.georural-map-page .rural-info-panel-head span{font:800 9px/1.2 Inter,system-ui,sans-serif;letter-spacing:.09em;color:#718096;}
body.georural-map-page .rural-info-panel-head strong{font:850 15px/1.25 Inter,system-ui,sans-serif;color:#10213a;}
body.georural-map-page #ruralInfoPanelClose{width:32px;height:32px;border:1px solid #d7e1ee;border-radius:9px;background:#fff;color:#334155;font-size:20px;line-height:1;cursor:pointer;flex:0 0 auto;}
body.georural-map-page #ruralInfoPanelClose:hover{background:#f1f5f9;color:#0f172a;}
body.georural-map-page .rural-info-download-actions{padding:10px 12px 0 16px;background:#fff;}
body.georural-map-page .rural-info-download-actions[hidden]{display:none!important;}
body.georural-map-page .rural-info-download-btn{width:100%;min-height:48px;border:1px solid #bfd3f2;border-radius:11px;background:#f3f8ff;color:#124ea3;display:flex;align-items:center;justify-content:center;gap:9px;padding:8px 12px;cursor:pointer;font-family:Inter,system-ui,sans-serif;text-align:left;}
body.georural-map-page .rural-info-download-btn>span:first-child{width:28px;height:28px;border-radius:8px;background:#e1edff;display:grid;place-items:center;font-size:18px;font-weight:900;line-height:1;}
body.georural-map-page .rural-info-download-btn>span:last-child{display:grid;gap:1px;}
body.georural-map-page .rural-info-download-btn strong{font-size:11px;line-height:1.2;font-weight:850;color:#103f86;}
body.georural-map-page .rural-info-download-btn small{font-size:9px;line-height:1.2;font-weight:650;color:#60738c;}
body.georural-map-page .rural-info-download-btn:hover:not(:disabled){background:#eaf3ff;border-color:#8db6ee;}
body.georural-map-page .rural-info-download-btn:disabled{opacity:.52;cursor:wait;}
body.georural-map-page .rural-info-panel-scroll{overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;}
body.georural-map-page .rural-info-section{border:1px solid #e1e8f0;border-radius:12px;background:#fff;overflow:hidden;}
body.georural-map-page .rural-info-section-title{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#f8fbff;border-bottom:1px solid #e8eef5;}
body.georural-map-page .rural-info-section-title h3{margin:0;font:850 11px/1.2 Inter,system-ui,sans-serif;color:#123055;}
body.georural-map-page .rural-info-dot{width:8px;height:8px;border-radius:50%;background:var(--rural-info-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--rural-info-accent) 18%,transparent);}
body.georural-map-page .rural-info-section-body{padding:10px 12px;font:600 9.5px/1.5 Inter,system-ui,sans-serif;color:#425466;overflow-wrap:anywhere;}
body.georural-map-page .rural-info-section-body .reference-popup{margin:0!important;padding:0!important;min-width:0!important;max-width:none!important;box-shadow:none!important;border:0!important;background:transparent!important;}
body.georural-map-page .rural-info-section-body .reference-popup>b:first-child{display:none!important;}
body.georural-map-page .rural-info-section-body .reference-popup>small:first-of-type{display:none!important;}
body.georural-map-page .rural-info-section-body .registry-empty{margin:0;color:#718096;font-weight:650;}
body.georural-map-page .rural-info-section-body .wms-info-popup table{width:100%!important;table-layout:fixed!important;border-collapse:collapse!important;}
body.georural-map-page .rural-info-section-body .wms-info-popup tr{border-bottom:1px solid #edf2f7!important;}
body.georural-map-page .rural-info-section-body .wms-info-popup tr:last-child{border-bottom:0!important;}
body.georural-map-page .rural-info-section-body .wms-info-popup th{width:118px!important;max-width:118px!important;padding:5px 10px 5px 0!important;text-align:right!important;vertical-align:top!important;color:#53657b!important;font-weight:800!important;line-height:1.35!important;white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important;}
body.georural-map-page .rural-info-section-body .wms-info-popup td{padding:5px 0 5px 10px!important;text-align:left!important;vertical-align:top!important;color:#223852!important;font-weight:600!important;line-height:1.35!important;border-left:1px solid #edf2f7!important;overflow-wrap:anywhere!important;word-break:break-word!important;}
body.georural-map-page .rural-info-coordinates dl{margin:0;padding:4px 12px 10px;display:grid;gap:0;}
body.georural-map-page .rural-info-coordinates dl>div{display:grid;grid-template-columns:48px minmax(0,1fr);gap:8px;align-items:start;padding:9px 0;border-bottom:1px solid #edf2f7;}
body.georural-map-page .rural-info-coordinates dl>div:last-child{border-bottom:0;}
body.georural-map-page .rural-info-coordinates dt{font:850 9px/1.4 Inter,system-ui,sans-serif;color:#64748b;}
body.georural-map-page .rural-info-coordinates dd{margin:0;font:750 9.5px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;color:#172b4d;word-break:break-word;}
body.georural-map-page .rural-info-arrow{position:fixed;inset:0;width:100vw;height:100vh;z-index:26010;pointer-events:none;overflow:visible;display:none;}
body.georural-map-page .rural-info-arrow.active{display:block;}
body.georural-map-page .rural-info-arrow line{stroke:var(--rural-info-arrow-color,#FFD400);stroke-width:1.4;stroke-linecap:round;filter:drop-shadow(0 1px 1px rgba(15,23,42,.22));}
body.georural-map-page .rural-info-arrow polygon{fill:var(--rural-info-arrow-color,#FFD400);filter:drop-shadow(0 1px 1px rgba(15,23,42,.22));}
body.georural-map-page .rural-info-arrow circle{fill:var(--rural-info-arrow-color,#FFD400);stroke:#fff;stroke-width:1;filter:drop-shadow(0 1px 1px rgba(15,23,42,.22));}
@media(max-width:760px){
  body.georural-map-page .rural-info-panel{right:8px;left:8px;top:auto;bottom:38px;width:auto;max-height:58vh;border-radius:14px;}
  body.georural-map-page .rural-info-arrow{display:none!important;}
}


/* 2026-08-27 — painéis direitos alternáveis: perímetro x consulta fundiária */
body.georural-map-page .details,
body.georural-map-page .rural-info-panel{
  transition:transform .20s ease,opacity .16s ease!important;
}
body.georural-map-page .details.sv-right-panel-parked,
body.georural-map-page .rural-info-panel.sv-right-panel-parked{
  transform:translateX(calc(100% + 48px))!important;
  opacity:0!important;
  pointer-events:none!important;
}
body.georural-map-page .sv-right-panel-switcher{
  position:fixed;
  z-index:1620;
  width:36px;
  height:68px;
  min-width:36px;
  min-height:68px;
  display:grid;
  place-items:center;
  padding:0;
  border:1px solid #c7d7eb;
  border-right-color:#e2e8f0;
  border-radius:13px 0 0 13px;
  background:#fff;
  color:#0f5bdc;
  box-shadow:-7px 8px 22px rgba(15,23,42,.14);
  cursor:pointer;
  opacity:0;
  transform:translateX(7px);
  transition:opacity .16s ease,transform .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease;
}
body.georural-map-page .sv-right-panel-switcher[hidden]{display:none!important;}
body.georural-map-page .sv-right-panel-switcher.active{
  opacity:1;
  transform:translateX(0);
}
body.georural-map-page .sv-right-panel-switcher span{
  display:block;
  font:950 30px/1 Inter,system-ui,sans-serif;
  transform:translateY(-1px);
}
body.georural-map-page .sv-right-panel-switcher:hover,
body.georural-map-page .sv-right-panel-switcher:focus-visible{
  background:#0f5bdc;
  border-color:#0f5bdc;
  color:#fff;
  box-shadow:-9px 10px 26px rgba(15,91,220,.24);
  outline:none;
}
body.georural-map-page .sv-right-panel-switcher:active{transform:translateX(1px) scale(.98);}
@media(max-width:760px){
  body.georural-map-page .sv-right-panel-switcher{
    width:32px;
    min-width:32px;
    height:60px;
    min-height:60px;
    border-radius:11px 0 0 11px;
  }
  body.georural-map-page .sv-right-panel-switcher span{font-size:27px;}
}


/* ==========================================================
   2026-08-27 — painel de detalhes mais compacto + hitbox dos botões
   ========================================================== */
body.georural-map-page .details:not(.hidden){
  
  
  overflow-y:auto!important;overflow-x:hidden!important;
  scrollbar-gutter:stable!important;
  box-shadow:0 14px 34px rgba(15,23,42,.14)!important;
}
body.georural-map-page .details .compact-detail-actions{
  position:sticky!important;
  bottom:0!important;
  z-index:40!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  
  width:100%!important;
  
  overflow:visible!important;
  isolation:isolate!important;
}
body.georural-map-page .details .compact-detail-actions > button,
body.georural-map-page .details .compact-detail-actions > details,
body.georural-map-page .details .compact-detail-actions > details > summary{
  width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}
body.georural-map-page .details .compact-detail-actions > button,
body.georural-map-page .details .compact-detail-actions > details > summary{
  
  
  
  border:1px solid #d7e2ef!important;
  
  background:#fff!important;
  color:#0f172a!important;
  font:850 13px/1 Inter,system-ui,sans-serif!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  user-select:none!important;
  touch-action:manipulation!important;
  position:relative!important;
  z-index:3!important;
}
body.georural-map-page .details .compact-detail-actions > button::before,
body.georural-map-page .details .compact-detail-actions > details > summary::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
}
body.georural-map-page .details .compact-detail-actions .selected-download-menu{
  position:relative!important;
  z-index:5!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}
body.georural-map-page .details .compact-detail-actions .selected-download-menu > summary{
  list-style:none!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  box-shadow:0 1px 2px rgba(15,23,42,.04)!important;
}
body.georural-map-page .details .compact-detail-actions .selected-download-menu > summary::-webkit-details-marker{display:none!important;}
body.georural-map-page .details .compact-detail-actions .selected-download-menu:not([open]) > .selected-download-list{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
body.georural-map-page .details .compact-detail-actions .selected-download-menu[open] > .selected-download-list{
  display:grid!important;
  visibility:visible!important;
  pointer-events:auto!important;
}
body.georural-map-page .details .compact-detail-actions #copyBtn,
body.georural-map-page .details .compact-detail-actions #deleteBtn{
  z-index:6!important;
}
body.georural-map-page .details .compact-detail-actions #deleteBtn{
  background:#fff7ed!important;
  border-color:#fed7aa!important;
  color:#c2410c!important;
}
body.georural-map-page .details .compact-detail-actions > button:hover,
body.georural-map-page .details .compact-detail-actions > details > summary:hover,
body.georural-map-page .details .compact-detail-actions > button:focus-visible,
body.georural-map-page .details .compact-detail-actions > details > summary:focus-visible{
  border-color:#9fc0ef!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.10),0 7px 18px rgba(15,23,42,.08)!important;
  outline:none!important;
}
@media(max-width:760px){
  body.georural-map-page .details:not(.hidden){
    top:auto!important;
    left:8px!important;
    right:8px!important;
    bottom:38px!important;
    width:auto!important;
    max-height:62vh!important;
    border-radius:15px!important;
  }
  body.georural-map-page .details .compact-detail-actions{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media(max-width:430px){
  body.georural-map-page .details .compact-detail-actions{
    grid-template-columns:1fr 1fr!important;
  }
  body.georural-map-page .details .compact-detail-actions #deleteBtn{
    grid-column:1 / -1!important;
  }
}

/* 2026-08-27 — consulta por coordenadas mesmo sem imóvel cadastrado/camada visível */
body.georural-map-page .rural-info-section[hidden]{display:none!important;}
body.georural-map-page .rural-info-panel.rural-info-coordinates-only{
  bottom:auto!important;
  
  
  --rural-info-accent:#64748b;
}
body.georural-map-page .rural-info-panel.rural-info-coordinates-only .rural-info-panel-scroll{
  
  overflow-x:hidden!important;
  overflow-y:auto!important;
}
body.georural-map-page .map-layer-info-help.map-layer-info-help-coordinate-only{
  background:linear-gradient(180deg,#7b8798 0%,#566273 100%)!important;
  box-shadow:0 10px 22px rgba(71,85,105,.24)!important;
}
body.georural-map-page .map-layer-info-help.map-layer-info-help-coordinate-only:hover{
  background:linear-gradient(180deg,#687587 0%,#475569 100%)!important;
}
@media(max-width:760px){
  body.georural-map-page .rural-info-panel.rural-info-coordinates-only{
    top:auto!important;
    bottom:38px!important;
    max-height:58vh!important;
  }
}


/* Gaveta de ferramentas do mapa: todas as ações visíveis, sem rolagem interna. */
@media (min-width:1101px){
  body[data-page="mapa.html"] .sv-map-modern-drawer{
    width:min(760px,calc(100vw - 32px))!important;
    padding:12px!important;
    border-radius:14px!important;
    max-height:none!important;
    overflow:hidden!important;
  }
  body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-tools-grid{
    grid-template-columns:repeat(14,42px)!important;
    gap:8px!important;
    justify-content:center!important;
  }
  body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-tools-grid button,
  body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-grid-tool{
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0!important;
    border-radius:9px!important;
  }
  body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-tools-grid button svg,
  body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-grid-tool svg{
    width:18px!important;
    height:18px!important;
  }
}
@media (min-width:761px) and (max-width:1100px){
  body[data-page="mapa.html"] .sv-map-modern-drawer{
    width:min(520px,calc(100vw - 28px))!important;
    padding:10px!important;
    border-radius:13px!important;
    max-height:none!important;
    overflow:hidden!important;
  }
  body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-tools-grid{
    grid-template-columns:repeat(9,42px)!important;
    gap:8px!important;
    justify-content:center!important;
  }
  body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-tools-grid button,
  body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-grid-tool{
    width:42px!important;
    min-width:42px!important;
    height:42px!important;
    min-height:42px!important;
    padding:0!important;
    border-radius:9px!important;
  }
}

/* 2026-08-28 — hotfix: scroll independente dentro de cada card CAR/SIGEF */
body.georural-map-page .rural-info-panel-scroll{
  position:relative!important;
  flex:1 1 0%!important;
  min-height:0!important;
  height:0!important;
  overflow:hidden!important;
  padding:12px 12px 14px 16px!important;
  display:grid!important;
  grid-template-rows:minmax(170px,1.2fr) minmax(135px,.9fr) auto!important;
  align-content:stretch!important;
  gap:10px!important;
}
body.georural-map-page #ruralInfoCarSection,
body.georural-map-page #ruralInfoSigefSection,
body.georural-map-page .rural-info-coordinates{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  overflow:hidden!important;
}
body.georural-map-page #ruralInfoCarSection[hidden],
body.georural-map-page #ruralInfoSigefSection[hidden]{display:none!important;}
body.georural-map-page #ruralInfoCar,
body.georural-map-page #ruralInfoSigef{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow-x:hidden!important;
  overflow-y:scroll!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch!important;
  scrollbar-gutter:stable!important;
  scrollbar-width:thin!important;
  scrollbar-color:#94a3b8 #eef2f7!important;
}
/* O conteúdo gerado dentro de CAR/SIGEF não cria um terceiro scroll: o único
   scroll de cada quadrado pertence ao próprio corpo do card. */
body.georural-map-page #ruralInfoCar .registry-section-body,
body.georural-map-page #ruralInfoCar .wms-info-popup,
body.georural-map-page #ruralInfoCar .rural-registry-popup,
body.georural-map-page #ruralInfoSigef .registry-section-body,
body.georural-map-page #ruralInfoSigef .wms-info-popup,
body.georural-map-page #ruralInfoSigef .rural-registry-popup{
  max-height:none!important;
  height:auto!important;
  overflow:visible!important;
}
body.georural-map-page .rural-info-coordinates dl{
  flex:1 1 auto!important;
  min-height:0!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
  scrollbar-width:thin!important;
  scrollbar-color:#94a3b8 #eef2f7!important;
}
body.georural-map-page #ruralInfoCar::-webkit-scrollbar,
body.georural-map-page #ruralInfoSigef::-webkit-scrollbar,
body.georural-map-page .rural-info-coordinates dl::-webkit-scrollbar{width:8px!important;}
body.georural-map-page #ruralInfoCar::-webkit-scrollbar-track,
body.georural-map-page #ruralInfoSigef::-webkit-scrollbar-track,
body.georural-map-page .rural-info-coordinates dl::-webkit-scrollbar-track{
  background:#eef2f7!important;
  border-radius:999px!important;
}
body.georural-map-page #ruralInfoCar::-webkit-scrollbar-thumb,
body.georural-map-page #ruralInfoSigef::-webkit-scrollbar-thumb,
body.georural-map-page .rural-info-coordinates dl::-webkit-scrollbar-thumb{
  background:#94a3b8!important;
  border:2px solid #eef2f7!important;
  border-radius:999px!important;
}
body.georural-map-page #ruralInfoCar::-webkit-scrollbar-thumb:hover,
body.georural-map-page #ruralInfoSigef::-webkit-scrollbar-thumb:hover,
body.georural-map-page .rural-info-coordinates dl::-webkit-scrollbar-thumb:hover{background:#64748b!important;}
@media(max-width:760px){
  body.georural-map-page .rural-info-panel-scroll{
    grid-template-rows:minmax(120px,1fr) minmax(105px,.82fr) auto!important;
    gap:8px!important;
    padding:9px 9px 10px 12px!important;
  }
}

/* O estado neutro (sem cadastro encontrado) também preserva scroll por card;
   nunca volta ao scroll global do painel. */
body.georural-map-page .rural-info-panel.rural-info-coordinates-only{
  height:min(520px,calc(100vh - 132px))!important;
  max-height:min(520px,calc(100vh - 132px))!important;
}
body.georural-map-page .rural-info-panel.rural-info-coordinates-only .rural-info-panel-scroll{
  flex:1 1 0%!important;
  min-height:0!important;
  height:0!important;
  overflow:hidden!important;
  grid-template-rows:minmax(110px,1fr) minmax(90px,.75fr) auto!important;
}
@media(max-width:760px){
  body.georural-map-page .rural-info-panel.rural-info-coordinates-only{
    height:58vh!important;
    max-height:58vh!important;
  }
}

/* 2026-08-29 — remover camada do catálogo sem apagar o catálogo oficial */
body.georural-map-page .layer-actions .remove-catalog-layer{border-color:#fecaca!important;background:#fff7f7!important;color:#b42318!important;}
body.georural-map-page .layer-actions .remove-catalog-layer:hover{border-color:#fca5a5!important;background:#fee2e2!important;color:#991b1b!important;}
body.georural-map-page .layer-actions .remove-catalog-layer:disabled{opacity:.6!important;cursor:wait!important;}

/* 2026-09-02 — Modal de Camadas Compacto & Mini-Mapa de Satélite Interativo */
body #layerCatalogDialog.layer-catalog-dialog {
  width: min(1080px, calc(100vw - 32px)) !important;
  height: min(660px, calc(100vh - 32px)) !important;
  border-radius: 16px !important;
}
body #layerCatalogDialog .catalog-dialog-header {
  padding: 12px 16px !important;
  align-items: center !important;
}
body #layerCatalogDialog .catalog-dialog-header b {
  font-size: 18px !important;
}
body #layerCatalogDialog .catalog-dialog-header span {
  font-size: 12px !important;
}
body #layerCatalogDialog .close,
body #layerCatalogDialog #closeLayerCatalog {
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  font-size: 16px !important;
  border-radius: 10px !important;
}
body #layerCatalogDialog .catalog-dialog-tabs {
  padding: 8px 14px !important;
  gap: 8px !important;
}
body #layerCatalogDialog .catalog-dialog-tabs button {
  min-height: 34px !important;
  padding: 0 14px !important;
  font-size: 13px !important;
  border-radius: 10px !important;
}
body #layerCatalogDialog .catalog-dialog-layout {
  grid-template-columns: minmax(0, 1fr) 300px !important;
}
body #layerCatalogDialog .catalog-dialog-list {
  padding: 12px !important;
}
body #layerCatalogDialog .catalog-search-row {
  grid-template-columns: minmax(0, 1fr) 36px !important;
  gap: 6px !important;
  margin-bottom: 10px !important;
  padding-bottom: 6px !important;
}
body #layerCatalogDialog .catalog-search-row input {
  min-height: 36px !important;
  padding: 0 12px !important;
  font-size: 13px !important;
  border-radius: 10px !important;
}
body #layerCatalogDialog .map-layer-catalog {
  gap: 10px !important;
}
body #layerCatalogDialog .map-catalog-group {
  border-radius: 12px !important;
}
body #layerCatalogDialog .map-catalog-group > button {
  min-height: 38px !important;
  padding: 0 12px !important;
  font-size: 13px !important;
}
body #layerCatalogDialog .map-catalog-items {
  gap: 8px !important;
  padding: 8px !important;
}
body #layerCatalogDialog .map-catalog-item {
  min-height: 56px !important;
  padding: 8px 10px !important;
  border-radius: 10px !important;
  gap: 8px !important;
  grid-template-columns: 14px minmax(0, 1fr) 20px !important;
}
body #layerCatalogDialog .map-catalog-color {
  width: 12px !important;
  height: 12px !important;
  border-radius: 4px !important;
}
body #layerCatalogDialog .map-catalog-copy b {
  font-size: 12px !important;
  line-height: 1.2 !important;
}
body #layerCatalogDialog .map-catalog-copy small {
  font-size: 10.5px !important;
  margin-top: 3px !important;
}
body #layerCatalogDialog .map-catalog-toggle {
  width: 16px !important;
  height: 16px !important;
}
body #layerCatalogDialog .catalog-layer-preview {
  padding: 12px !important;
}
body #layerCatalogDialog .catalog-preview-empty {
  min-height: 280px !important;
  font-size: 13.5px !important;
  padding: 20px !important;
}
body #layerCatalogDialog .catalog-preview-map-container {
  width: 100% !important;
  height: 180px !important;
  position: relative !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  border: 1px solid var(--catalog-border, #d2def0) !important;
  margin-bottom: 10px !important;
  box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08) !important;
}
body #layerCatalogDialog .catalog-preview-map {
  width: 100% !important;
  height: 180px !important;
  display: block !important;
}
body #layerCatalogDialog .catalog-preview-symbol {
  display: none !important;
}
body #layerCatalogDialog .catalog-preview-content h3 {
  font-size: 15px !important;
  margin: 0 0 4px !important;
}
body #layerCatalogDialog .catalog-preview-content p {
  font-size: 11.5px !important;
  margin: 0 0 10px !important;
}
body #layerCatalogDialog .catalog-preview-meta {
  gap: 6px !important;
}
body #layerCatalogDialog .catalog-preview-meta div {
  padding: 6px 8px !important;
  border-radius: 8px !important;
}
body #layerCatalogDialog .catalog-preview-meta span {
  font-size: 10px !important;
}
body #layerCatalogDialog .catalog-preview-meta b {
  font-size: 12px !important;
}

/* histórico Desfazer/Refazer no topo, estilo editor de documentos */
body[data-page="mapa.html"] .sv-map-toolbar-group button.sv-map-history-action{
  min-width:34px!important;width:34px!important;height:34px!important;
  min-height:34px!important;max-height:34px!important;
  margin:3px 1px 0!important;padding:0!important;border-radius:7px!important;
  display:grid!important;place-items:center!important;
}
body[data-page="mapa.html"] .sv-map-history-action .sv-map-label{display:none!important;}
body[data-page="mapa.html"] .sv-map-history-action svg{width:19px!important;height:19px!important;}
body[data-page="mapa.html"] .sv-map-history-action:disabled{
  opacity:.30!important;cursor:default!important;color:#65758a!important;background:#fff!important;
}
body[data-page="mapa.html"] .sv-map-history-action:not(:disabled):hover,
body[data-page="mapa.html"] .sv-map-history-action:not(:disabled):focus-visible{
  color:#0d63df!important;background:#eef5ff!important;
}

/* setas de histórico curvas (↶ ↷) e clique limpo após restore */
body[data-page="mapa.html"] .sv-map-history-action .sv-map-history-glyph{
  display:block!important;
  font-family:"Segoe UI Symbol","Arial Unicode MS",sans-serif!important;
  font-size:27px!important;
  line-height:1!important;
  font-weight:500!important;
  transform:translateY(-1px);
  pointer-events:none!important;
}
body[data-page="mapa.html"] .geo-tool .history-glyph{
  display:block;
  font-family:"Segoe UI Symbol","Arial Unicode MS",sans-serif;
  font-size:25px;
  line-height:1;
}


/* ==========================================================
   2026-09-09 — ajuste fino: painel de detalhes + marcador do polígono
   ========================================================== */

body.georural-map-page .details .details-handle,
body.georural-map-page .details h2{
  padding-right:56px!important;
}




/* Quadradinho do modo desenhar polígono: um pouco menor */
body.georural-map-page.drawing-active .leaflet-draw-marker-icon,
body.georural-map-page.drawing-active .leaflet-marker-icon.leaflet-div-icon:not(.leaflet-editing-icon),
body.georural-map-page.survey-live-drawing .leaflet-draw-marker-icon,
body.georural-map-page.survey-live-drawing .leaflet-marker-icon.leaflet-div-icon:not(.leaflet-editing-icon){
  width:10px!important;
  height:10px!important;
  margin-left:-5px!important;
  margin-top:-5px!important;
  border-width:2px!important;
  border-radius:3px!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.16),0 2px 6px rgba(0,0,0,.28)!important;
}

/* ==========================================================
   2026-09-13 — Busca contextual de imóvel rural por município
   ========================================================== */
body[data-page="mapa.html"] .sv-map-search-host .city-suggest.property-context-box,
.city-suggest.property-context-box{
  left:auto!important;
  right:0!important;
  width:min(420px,calc(100vw - 24px))!important;
  max-height:min(620px,calc(100vh - 86px))!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:14px!important;
}
.property-context-assistant,
.property-context-results{
  display:grid;
  gap:10px;
  padding:14px;
  background:#fff;
}
.property-context-kicker,
.property-context-results-head span{
  color:#2563eb;
  font-size:9px;
  font-weight:900;
  letter-spacing:.08em;
}
.property-context-title{
  color:#0f172a;
  font-size:15px;
  line-height:1.2;
}
.property-context-assistant>p{
  margin:0;
  color:#64748b;
  font-size:11px;
  line-height:1.45;
}
.property-context-field{
  display:grid;
  gap:5px;
}
.property-context-field>span{
  color:#475569;
  font-size:10px;
  font-weight:800;
}
.property-context-readonly{
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:0 11px;
  border:1px solid #dbe5f1;
  border-radius:10px;
  background:#f8fafc;
}
.property-context-readonly b{font-size:12px;color:#0f172a;}
.property-context-readonly small{font-size:9px;color:#64748b;}
.property-context-city-input{
  width:100%;
  height:40px;
  padding:0 11px;
  border:1px solid #cbd5e1;
  border-radius:10px;
  outline:none;
  background:#fff;
  color:#0f172a;
  font-size:11px;
}
.property-context-city-input:focus{
  border-color:#3b82f6;
  box-shadow:0 0 0 3px rgba(59,130,246,.12);
}
.property-context-city-list{
  display:grid;
  gap:4px;
  max-height:190px;
  overflow:auto;
}
.property-context-city,
.property-context-result{
  width:100%;
  border:1px solid transparent;
  border-radius:9px;
  background:#fff;
  color:#0f172a;
  cursor:pointer;
}
.property-context-city{
  min-height:40px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:7px 9px;
  text-align:left;
}
.property-context-city:hover,
.property-context-result:hover{background:#eff6ff;border-color:#bfdbfe;}
.property-context-city strong{font-size:11px;}
.property-context-city small{font-size:9px;color:#64748b;}
.property-context-selected-city{
  min-height:38px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:8px;
  padding:6px 9px;
  border:1px solid #bfdbfe;
  border-radius:9px;
  background:#eff6ff;
  color:#1d4ed8;
  font-size:10px;
}
.property-context-selected-city button,
.property-context-change{
  border:0;
  background:transparent;
  color:#2563eb;
  font-size:9px;
  font-weight:850;
  cursor:pointer;
}
.property-context-search-btn{
  min-height:40px;
  border:0;
  border-radius:10px;
  background:#1669e8;
  color:#fff;
  font-size:11px;
  font-weight:850;
  cursor:pointer;
}
.property-context-search-btn:disabled{opacity:.45;cursor:not-allowed;}
.property-context-empty,
.property-context-summary{
  padding:7px 9px;
  color:#64748b;
  font-size:10px;
}
.property-context-results-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding-bottom:8px;
  border-bottom:1px solid #e2e8f0;
}
.property-context-results-head>div{display:grid;gap:2px;}
.property-context-results-head strong{font-size:13px;color:#0f172a;}
.property-context-result-list{
  display:grid;
  gap:5px;
  max-height:360px;
  overflow:auto;
}
.property-context-result{
  min-height:52px;
  display:grid;
  grid-template-columns:24px minmax(0,1fr) auto;
  align-items:center;
  gap:8px;
  padding:7px 9px;
  text-align:left;
}
.property-context-result-index{
  width:22px;height:22px;
  display:grid;place-items:center;
  border-radius:50%;
  background:#eff6ff;
  color:#2563eb;
  font-size:9px;
  font-weight:900;
}
.property-context-result>span:nth-child(2){display:grid;gap:3px;min-width:0;}
.property-context-result strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;}
.property-context-result small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#64748b;font-size:9px;}
.property-context-result>b{color:#2563eb;font-size:9px;}

.property-context-summary-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
}
.property-context-nav{
  display:flex;
  align-items:center;
  gap:6px;
}
.property-context-nav button{
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border:1px solid #cbd5e1;
  border-radius:8px;
  background:#fff;
  color:#0f63e9;
  font-size:20px;
  line-height:1;
  font-weight:800;
  cursor:pointer;
}
.property-context-nav button:hover:not(:disabled){background:#eff6ff;border-color:#93c5fd;}
.property-context-nav button:disabled{opacity:.35;cursor:not-allowed;}
.property-context-nav span{
  min-width:66px;
  text-align:center;
  color:#475569;
  font-size:9px;
  font-weight:800;
}
.property-context-result.active{
  background:#fff1f2!important;
  border-color:#ef4444!important;
  box-shadow:inset 3px 0 0 #dc2626,0 0 0 1px rgba(220,38,38,.06);
}
.property-context-result.active .property-context-result-index{background:#dc2626;color:#fff;}
.property-context-result.active .property-context-result-action{color:#dc2626;}
.property-context-message{
  display:grid;
  gap:4px;
  padding:14px;
  border:1px solid #e2e8f0;
  border-radius:10px;
  background:#f8fafc;
}
.property-context-message strong{font-size:11px;color:#0f172a;}
.property-context-message small{font-size:9px;color:#64748b;line-height:1.45;}
.property-context-message.is-error{border-color:#fecaca;background:#fff7f7;}
@media(max-width:760px){
  .city-suggest.property-context-box{width:min(94vw,420px)!important;right:0!important;}
}

/* formas simples/retângulos: handles iguais aos vértices dos polígonos */
body.georural-map-page.surveyor-direct-editing .leaflet-edit-move,
body.georural-map-page.surveyor-direct-editing .leaflet-edit-resize,
body.georural-map-page.surveyor-direct-editing .surveyor-edit-simple-handle{
  background-image:none!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
}
body.georural-map-page.surveyor-direct-editing .surveyor-edit-simple-handle{
  width:32px!important;
  height:32px!important;
  margin-left:-16px!important;
  margin-top:-16px!important;
  border:0!important;
  border-radius:50%!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.georural-map-page.surveyor-direct-editing .surveyor-edit-resize-handle::after{
  width:9px!important;
  height:9px!important;
  border-radius:50%!important;
  background:#fff!important;
  border:2px solid #0f5bdc!important;
  box-shadow:0 1px 3px rgba(15,23,42,.40)!important;
}
body.georural-map-page.surveyor-direct-editing .surveyor-edit-move-handle::after{
  width:9px!important;
  height:9px!important;
  border-radius:50%!important;
  background:#0f5bdc!important;
  border:2px solid #fff!important;
  box-shadow:0 0 0 1px #0f5bdc,0 1px 3px rgba(15,23,42,.40)!important;
}
/* Evita o retângulo/sprite alto até o JS aplicar a decoração. */
body.georural-map-page.surveyor-direct-editing .leaflet-editing-icon.leaflet-edit-resize:not(.surveyor-edit-handle),
body.georural-map-page.surveyor-direct-editing .leaflet-editing-icon.leaflet-edit-move:not(.surveyor-edit-handle){
  width:10px!important;
  height:10px!important;
  margin-left:-5px!important;
  margin-top:-5px!important;
  border:2px solid #0f5bdc!important;
  border-radius:50%!important;
  background:#fff!important;
  background-image:none!important;
  box-shadow:0 1px 3px rgba(15,23,42,.35)!important;
}
body.georural-map-page.surveyor-direct-editing .leaflet-editing-icon.leaflet-edit-move:not(.surveyor-edit-handle){
  background:#0f5bdc!important;
  border-color:#fff!important;
  box-shadow:0 0 0 1px #0f5bdc,0 1px 3px rgba(15,23,42,.35)!important;
}


/* 2026-09-19 — Pontos automáticos: subpontos para curvas + ocultação não destrutiva. */
body.georural-map-page.surveyor-direct-editing.surveyor-auto-vertices-hidden .surveyor-edit-auto-vertex-handle,
body.georural-map-page.surveyor-direct-editing.surveyor-auto-vertices-hidden .leaflet-editing-icon.surveyor-edit-auto-vertex-handle,
body.georural-map-page.surveyor-direct-editing.surveyor-auto-vertices-hidden .leaflet-div-icon.leaflet-editing-icon.surveyor-edit-auto-vertex-handle{
  display:none!important;
  pointer-events:none!important;
}
body.georural-map-page .map-tools-panel .surveyor-auto-vertex-toggle[aria-pressed="false"]{
  border-color:#cbd5e1!important;
  background:#f8fafc!important;
  color:#475569!important;
}
body.georural-map-page .map-tools-panel .surveyor-auto-vertex-toggle[aria-pressed="true"]{
  border-color:#9fc0f5!important;
  background:#eaf2ff!important;
  color:#0f5bdc!important;
  box-shadow:inset 0 0 0 1px rgba(15,91,220,.10)!important;
}


/* Pontos automáticos visíveis também no painel rápido de ferramentas. */
body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-grid-tool-prominent,
body[data-page="mapa.html"] .map-quick-grid-tool-prominent{
  width:auto!important;
  min-width:132px!important;
  padding:0 12px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:7px!important;
  color:#0f172a!important;
  border-color:#cbdcf4!important;
  background:#fff!important;
}
body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-grid-tool-prominent .map-quick-grid-label,
body[data-page="mapa.html"] .map-quick-grid-tool-prominent .map-quick-grid-label{
  display:inline!important;
  font-size:9.5px!important;
  line-height:1.05!important;
  font-weight:750!important;
  white-space:nowrap!important;
}
body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-grid-tool-prominent:first-of-type,
body[data-page="mapa.html"] .map-quick-grid-tool-prominent:first-of-type{
  border-color:#8bb6f4!important;
}
/* No menu CAD, as duas opções de curva deixam de ser ícones anônimos. */
body.georural-map-page .map-tools-panel .cad-tools-popover #editMidpointsToggleBtn,
body.georural-map-page .map-tools-panel .cad-tools-popover #autoVertexHandlesToggleBtn{
  grid-column:span 3!important;
  width:auto!important;min-width:0!important;max-width:none!important;
  padding:0 9px!important;
  justify-content:flex-start!important;
  gap:6px!important;
  font-size:10px!important;
}
body.georural-map-page .map-tools-panel .cad-tools-popover #editMidpointsToggleBtn span,
body.georural-map-page .map-tools-panel .cad-tools-popover #autoVertexHandlesToggleBtn span{
  display:inline!important;
  font-size:10px!important;
  line-height:1.05!important;
  font-weight:750!important;
}


/* Pontos automáticos/Excluir vértice no canto direito, apenas com ícone. */
@media (min-width:761px){
  body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-tools-grid{position:relative!important;}
  body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-grid-tool-corner[data-corner-row="1"]{grid-column:10!important;grid-row:1!important;}
  body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-grid-tool-corner[data-corner-row="2"]{grid-column:10!important;grid-row:2!important;}
}
body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-grid-tool-corner{
  width:34px!important;min-width:34px!important;max-width:34px!important;
  height:34px!important;min-height:34px!important;max-height:34px!important;
  padding:0!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  border-color:#cbdcf4!important;background:#fff!important;color:#111827!important;
}
body[data-page="mapa.html"] .sv-map-modern-drawer .map-quick-grid-tool-corner svg{width:15px!important;height:15px!important;}

/* O menu CAD volta a ser totalmente iconográfico; textos ficam em tooltip/ARIA. */
body.georural-map-page .map-tools-panel .cad-tools-popover #editMidpointsToggleBtn,
body.georural-map-page .map-tools-panel .cad-tools-popover #vertexHideToolBtn{
  grid-column:auto!important;width:38px!important;min-width:38px!important;max-width:38px!important;
  height:34px!important;min-height:34px!important;max-height:34px!important;padding:0!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:0!important;
  font-size:0!important;
}
body.georural-map-page .map-tools-panel .cad-tools-popover #editMidpointsToggleBtn span,
body.georural-map-page .map-tools-panel .cad-tools-popover #vertexHideToolBtn span{display:none!important;}
body.georural-map-page .map-tools-panel .cad-tools-popover #editMidpointsToggleBtn svg,
body.georural-map-page .map-tools-panel .cad-tools-popover #vertexHideToolBtn svg{width:17px!important;height:17px!important;}

/* Remoção de vértice mantém os handles editáveis: no modo virtual o ponto
   geométrico permanece e apenas o rótulo técnico é suprimido nas gerações. */
body.georural-map-page.surveyor-direct-editing .surveyor-edit-hidden-vertex-handle,
body.georural-map-page.surveyor-direct-editing .leaflet-editing-icon.surveyor-edit-hidden-vertex-handle{
  display:block!important;pointer-events:auto!important;
}
body.georural-map-page.surveyor-vertex-hide-mode .surveyor-edit-vertex-handle:not(.surveyor-edit-hidden-vertex-handle){
  background:#fff!important;border-color:#dc2626!important;box-shadow:0 0 0 2px rgba(220,38,38,.12),0 1px 3px rgba(15,23,42,.24)!important;
  cursor:pointer!important;
}
body.georural-map-page.surveyor-vertex-hide-mode .surveyor-edit-midpoint-handle{opacity:.32!important;pointer-events:none!important;}
body.georural-map-page .surveyor-vertex-hide-tool.is-enabled{border-color:#f3a4a4!important;background:#fff1f2!important;color:#b91c1c!important;}
body.georural-map-page.surveyor-vertex-restore-mode .surveyor-edit-hidden-vertex-handle,
body.georural-map-page.surveyor-vertex-restore-mode .leaflet-editing-icon.surveyor-edit-hidden-vertex-handle{
  display:block!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;
  background:#ecfdf5!important;border-color:#16a34a!important;box-shadow:0 0 0 3px rgba(22,163,74,.18),0 1px 4px rgba(15,23,42,.3)!important;cursor:pointer!important;
}
body.georural-map-page.surveyor-vertex-restore-mode .surveyor-edit-vertex-handle:not(.surveyor-edit-hidden-vertex-handle){
  opacity:.22!important;pointer-events:none!important;
}
body.georural-map-page.surveyor-vertex-restore-mode .surveyor-edit-midpoint-handle{opacity:.12!important;pointer-events:none!important;}
body.georural-map-page.surveyor-vertex-restore-mode .surveyor-vertex-hide-tool.is-enabled{border-color:#86efac!important;background:#f0fdf4!important;color:#15803d!important;}


/* botão de busca de imóvel sempre visível no assistente */
body[data-page="mapa.html"] .sv-map-search-host #citySuggestBox .property-context-search-btn,
body[data-page="mapa.html"] #citySuggestBox .property-context-search-btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-height:42px!important;
  padding:0 14px!important;
  border:1px solid #0f62e8!important;
  border-radius:10px!important;
  background:#0f62e8!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:850!important;
  line-height:1!important;
  letter-spacing:0!important;
  opacity:1!important;
  visibility:visible!important;
  box-shadow:0 4px 12px rgba(15,98,232,.18)!important;
  cursor:pointer!important;
}
body[data-page="mapa.html"] #citySuggestBox .property-context-search-btn:hover{
  background:#0b55ca!important;
  border-color:#0b55ca!important;
}
body[data-page="mapa.html"] #citySuggestBox .property-context-search-btn:disabled{
  background:#dbe7f8!important;
  border-color:#c8d7eb!important;
  color:#6b7d96!important;
  box-shadow:none!important;
  opacity:1!important;
  cursor:not-allowed!important;
}

/* ==========================================================
   R26.3.60 — edição por aresta + menu rápido + painel compacto
   ========================================================== */



body.georural-map-page.surveyor-edge-hovering #map{cursor:grab!important;}
body.georural-map-page.surveyor-edge-dragging #map{cursor:grabbing!important;}

body.georural-map-page .details:not(.hidden){
  top:72px!important;
  right:8px!important;
  bottom:auto!important;
  width:min(280px,calc(100vw - 18px))!important;
  max-height:calc(100vh - 116px)!important;
  height:auto!important;
  padding:8px 8px 10px!important;
  border-radius:14px!important;
}
body.georural-map-page .details h2{
  padding:12px 48px 8px 10px!important;
  font-size:17px!important;
  line-height:1.15!important;
}
body.georural-map-page .details .close,
body.georural-map-page .details #closeDetails{
  width:31px!important;
  height:31px!important;
  min-width:31px!important;
  min-height:31px!important;
  margin:5px 5px -36px auto!important;
  border-radius:10px!important;
}
body.georural-map-page .details label{
  gap:4px!important;
  padding:7px 10px 0!important;
  font-size:11px!important;
}
body.georural-map-page .details input,
body.georural-map-page .details select{
  min-height:34px!important;
  height:34px!important;
  padding:0 9px!important;
  border-radius:10px!important;
  font-size:12px!important;
}
body.georural-map-page .details textarea,
body.georural-map-page .details #coordsText{
  min-height:108px!important;
  max-height:126px!important;
  height:108px!important;
  padding:7px 9px!important;
  border-radius:10px!important;
  resize:vertical!important;
  font-size:10px!important;
  line-height:1.35!important;
}
body.georural-map-page .details .detail-stats{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:5px!important;
  padding:7px 8px 0!important;
}
body.georural-map-page .details .detail-stats div{
  min-width:0!important;
  padding:6px 5px!important;
  border-radius:9px!important;
}
body.georural-map-page .details .detail-stats span{font-size:8px!important;white-space:nowrap!important;}
body.georural-map-page .details .detail-stats b{font-size:10.5px!important;margin-top:2px!important;line-height:1.15!important;}
body.georural-map-page .details .confrontantes-section{
  margin:8px 10px!important;
  padding:9px!important;
  border-radius:11px!important;
}
body.georural-map-page .details .compact-detail-actions{
  gap:5px!important;
  padding:7px 8px 8px!important;
}
body.georural-map-page .details .compact-detail-actions > button,
body.georural-map-page .details .compact-detail-actions > details > summary{
  min-height:33px!important;
  height:33px!important;
  padding:0 6px!important;
  font-size:10.5px!important;
  border-radius:8px!important;
}

body.georural-map-page .sv-map-context-menu{
  position:fixed;
  z-index:5000;
  width:228px;
  display:grid;
  gap:3px;
  padding:7px;
  border:1px solid #d8e3f0;
  border-radius:12px;
  background:rgba(255,255,255,.98);
  box-shadow:0 18px 46px rgba(15,23,42,.22);
  backdrop-filter:blur(10px);
  font-family:Inter,system-ui,sans-serif;
}
body.georural-map-page .sv-map-context-head{
  display:grid;
  gap:2px;
  padding:5px 8px 7px;
  border-bottom:1px solid #edf2f7;
  margin-bottom:2px;
}
body.georural-map-page .sv-map-context-head span{
  color:#0f62e8;
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
}
body.georural-map-page .sv-map-context-head small{
  color:#718096;
  font:650 8.5px/1.25 ui-monospace,SFMono-Regular,Consolas,monospace;
}
body.georural-map-page .sv-map-context-action{
  width:100%;
  min-height:35px;
  display:grid;
  grid-template-columns:28px minmax(0,1fr);
  align-items:center;
  gap:7px;
  padding:4px 8px;
  border:0;
  border-radius:8px;
  background:transparent;
  color:#1d334f;
  text-align:left;
  cursor:pointer;
}
body.georural-map-page .sv-map-context-action:hover,
body.georural-map-page .sv-map-context-action:focus-visible{
  background:#eef5ff;
  color:#0f62e8;
  outline:none;
}
body.georural-map-page .sv-map-context-action>span{
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
  border-radius:7px;
  background:#f3f7fc;
  font-size:15px;
  font-weight:800;
}
body.georural-map-page .sv-map-context-action>b{
  font-size:10.5px;
  font-weight:800;
}
body.georural-map-page .sv-map-context-divider{
  height:1px;
  margin:3px 5px;
  background:#edf2f7;
}
@media(max-width:760px){
  body.georural-map-page .details:not(.hidden){
    top:auto!important;
    left:8px!important;
    right:8px!important;
    bottom:38px!important;
    width:auto!important;
    max-height:58vh!important;
  }
}
/* Durante a edição, os handles do Leaflet.Draw ficam acima da faixa clicável
   da aresta. Isso preserva o arraste ponto-a-ponto e os midpoints existentes. */
body.georural-map-page.surveyor-direct-editing .leaflet-marker-pane{
  z-index:640!important;
}


/* ==========================================================
   R26.3.62 — aresta inteira realmente capturável + painel compacto
   ========================================================== */
body.georural-map-page.surveyor-direct-editing .surveyor-direct-edit-edge-pane{
  z-index:635!important;
  pointer-events:auto!important;
}
body.georural-map-page.surveyor-direct-editing .surveyor-direct-edit-edge-pane svg{
  pointer-events:auto!important;
  overflow:visible!important;
}
body.georural-map-page.surveyor-direct-editing .surveyor-direct-edit-edge-pane path.surveyor-edit-edge-hit{
  stroke:#ef2b2d!important;
  stroke-width:24px!important;
  stroke-opacity:.001!important;
  fill:none!important;
  filter:none!important;
  pointer-events:stroke!important;
  cursor:grab!important;
}
body.georural-map-page.surveyor-direct-editing .surveyor-direct-edit-edge-pane path.surveyor-edit-edge-highlight{
  stroke:#ef2b2d!important;
  stroke-width:4.4px!important;
  stroke-opacity:0!important;
  fill:none!important;
  filter:drop-shadow(0 1px 1px rgba(255,255,255,.8))!important;
  pointer-events:none!important;
}
body.georural-map-page.surveyor-direct-editing .surveyor-direct-edit-edge-pane path.surveyor-edit-edge-highlight.is-visible,
body.georural-map-page.surveyor-edge-dragging .surveyor-direct-edit-edge-pane path.surveyor-edit-edge-highlight.is-visible{
  stroke-opacity:1!important;
}
body.georural-map-page.surveyor-edge-hovering.surveyor-direct-editing #map,
body.georural-map-page.surveyor-edge-hovering.surveyor-direct-editing #map.leaflet-container{
  cursor:grab!important;
}
body.georural-map-page.surveyor-edge-dragging #map,
body.georural-map-page.surveyor-edge-dragging #map.leaflet-container{
  cursor:grabbing!important;
}

/* loading único durante aplicação real de camadas oficiais */
body.georural-map-page .sv-map-layer-apply-loading{
  position:fixed!important;
  inset:0!important;
  z-index:30000!important;
  display:grid!important;
  place-items:center!important;
  background:rgba(243,247,252,.72)!important;
  -webkit-backdrop-filter:blur(4px)!important;
  backdrop-filter:blur(4px)!important;
}
body.georural-map-page .sv-map-layer-apply-loading[hidden]{display:none!important;}
body.georural-map-page .sv-map-layer-apply-spinner{
  width:38px!important;
  height:38px!important;
  border:4px solid #cfe0f5!important;
  border-top-color:#1265d8!important;
  border-radius:50%!important;
  animation:svMapLayerApplySpin .72s linear infinite!important;
  box-shadow:none!important;
}
@keyframes svMapLayerApplySpin{to{transform:rotate(360deg)}}
body.georural-map-page .sv-map-context-action.danger{color:#b42318!important;}
body.georural-map-page .sv-map-context-action.danger:hover,
body.georural-map-page .sv-map-context-action.danger:focus-visible{background:#fff1f0!important;color:#b42318!important;}


/* ===== SURVEYOR RC10 V22 — topbar com mais respiro e sino proporcional ===== */
body.workspace-shell-v131.sv-toolmenu-page .workspace-topbar.sv-home-topbar,
body[data-page="index.html"] .workspace-topbar.sv-home-topbar{
  height:78px!important;
  min-height:78px!important;
  padding:0 22px!important;
  align-items:center!important;
}
body.sv-toolmenu-page .sv-home-nav,
body[data-page="index.html"] .sv-home-nav{
  height:78px!important;
  align-items:center!important;
}
body.workspace-shell-v131.sv-toolmenu-page .workspace-main,
body[data-page="index.html"] .workspace-main{
  padding-top:98px!important;
}
.sv-home-tools-menu{
  top:78px!important;
}
.workspace-topbar-actions .notification-bell{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  border-radius:999px!important;
  display:grid!important;
  place-items:center!important;
}
.workspace-topbar-actions .notification-bell svg{
  width:18px!important;
  height:18px!important;
}
.workspace-topbar-actions .notification-bell span{
  right:-3px!important;
  top:-4px!important;
}
.workspace-topbar-actions .notification-center{
  display:flex!important;
  align-items:center!important;
}
@media(max-width:1050px){
  body.workspace-shell-v131.sv-toolmenu-page .workspace-topbar.sv-home-topbar,
  body[data-page="index.html"] .workspace-topbar.sv-home-topbar{
    height:72px!important;
    min-height:72px!important;
  }
  body.sv-toolmenu-page .sv-home-nav,
  body[data-page="index.html"] .sv-home-nav{
    height:72px!important;
  }
  body.workspace-shell-v131.sv-toolmenu-page .workspace-main,
  body[data-page="index.html"] .workspace-main{
    padding-top:92px!important;
  }
  .sv-home-tools-menu{
    top:72px!important;
  }
}


/* ===== SURVEYOR RC10 V23 — caixa de pesquisa maior no mapa ===== */

body[data-page="mapa.html"] .sv-map-search-host{
  
  
  
  display:flex!important;
  align-items:center!important;
  
  
  
  margin-left:auto!important;
}


body[data-page="mapa.html"] .sv-map-search-host #coordSearch{
  
  
  
  
  
  border-radius:999px!important;
}

body[data-page="mapa.html"] .sv-map-search-host .city-suggest.property-context-box,
body[data-page="mapa.html"] .sv-map-search-host .city-suggest{
  width:min(460px,calc(100vw - 24px))!important;
}
@media(max-width:1250px){
  body[data-page="mapa.html"].georural-map-page .geo-brandbar.map-onebar{
    grid-template-columns:48px minmax(0,1fr) minmax(340px,400px)!important;
  }
  body[data-page="mapa.html"] .sv-map-search-host,
  body[data-page="mapa.html"] .sv-map-search-host .geo-searchbar{
    max-width:400px!important;
  }
}


/* ==========================================================
   V25 — ajustar largura da busca do mapa conforme referência
   - caixa de pesquisa maior no desktop
   - evita corte do placeholder / lupa
   - área um pouco mais baixa e com respiro visual
   ========================================================== */



body[data-page="mapa.html"] .sv-map-search-host .geo-search-input-wrap{
  width:100%!important;
}



@media (max-width: 1440px){
  body[data-page="mapa.html"].georural-map-page .geo-brandbar.map-onebar{
    grid-template-columns:48px minmax(0,1fr) minmax(380px,392px)!important;
  }
  body[data-page="mapa.html"] .sv-map-search-host{
    width:min(392px, calc(100vw - 36px))!important;
    min-width:380px!important;
    max-width:392px!important;
  }
}

@media (max-width: 1250px){
  body[data-page="mapa.html"].georural-map-page .geo-brandbar.map-onebar{
    grid-template-columns:48px minmax(560px,1fr) 340px!important;
  }
  body[data-page="mapa.html"] .sv-map-search-host{
    width:340px!important;
    min-width:340px!important;
    max-width:340px!important;
  }
}

/* ==========================================================
   SURVEYOR RC10 V36 — mapa: busca compacta + menu restaurado
   - restaura o ícone de três traços do menu global
   - reduz a pesquisa do topo
   - mantém o assistente de imóvel preso ao topo direito
   ========================================================== */
body[data-page="mapa.html"].georural-map-page .geo-brandbar.map-onebar{
  grid-template-columns:48px minmax(0,1fr) minmax(320px,350px)!important;
}

body[data-page="mapa.html"] .map-global-nav-toggle{
  display:inline-grid!important;
  place-items:center!important;
  width:38px!important;
  min-width:38px!important;
  height:38px!important;
  min-height:38px!important;
  padding:0!important;
  visibility:visible!important;
  opacity:1!important;
}
body[data-page="mapa.html"] .map-global-nav-toggle svg{
  display:block!important;
  width:19px!important;
  height:19px!important;
  overflow:visible!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  opacity:1!important;
  visibility:visible!important;
}
body[data-page="mapa.html"] .map-global-nav-toggle svg path{
  display:block!important;
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:2!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  opacity:1!important;
  visibility:visible!important;
}

body[data-page="mapa.html"] .sv-map-search-host{
  grid-column:3!important;
  width:min(350px,calc(100vw - 36px))!important;
  min-width:320px!important;
  max-width:350px!important;
  height:56px!important;
  min-height:56px!important;
  align-self:center!important;
  justify-self:end!important;
  justify-content:flex-end!important;
  padding-top:0!important;
  padding-right:6px!important;
}
body[data-page="mapa.html"] .sv-map-search-host .geo-searchbar{
  width:100%!important;
  max-width:350px!important;
}
body[data-page="mapa.html"] .sv-map-search-host #coordSearch{
  width:100%!important;
  height:36px!important;
  min-height:36px!important;
  padding:0 38px 0 14px!important;
  font-size:10.5px!important;
  text-overflow:ellipsis!important;
}
body[data-page="mapa.html"] .sv-map-search-host .geo-search-input-wrap:after{
  right:13px!important;
  font-size:18px!important;
}

/* O assistente de imóvel é um overlay do campo de pesquisa, nunca do painel lateral. */
body[data-page="mapa.html"] > .city-suggest.sv-map-search-overlay.property-context-box{
  position:fixed!important;
  width:min(400px,calc(100vw - 16px))!important;
  max-width:calc(100vw - 16px)!important;
  z-index:25000!important;
}

@media (max-width:1440px){
  body[data-page="mapa.html"].georural-map-page .geo-brandbar.map-onebar{
    grid-template-columns:48px minmax(0,1fr) minmax(300px,330px)!important;
  }
  body[data-page="mapa.html"] .sv-map-search-host{
    width:330px!important;
    min-width:300px!important;
    max-width:330px!important;
  }
}

@media (max-width:1250px){
  body[data-page="mapa.html"].georural-map-page .geo-brandbar.map-onebar{
    grid-template-columns:48px minmax(560px,1fr) 310px!important;
  }
  body[data-page="mapa.html"] .sv-map-search-host{
    width:310px!important;
    min-width:310px!important;
    max-width:310px!important;
  }
}


/* ==========================================================
   SURVEYOR RC10 V37 — menu visível + carregamento não bloqueante
   - hambúrguer independente de SVG para não sofrer regressão de cascade
   - botão sempre ocupa a primeira coluna da barra do mapa
   ========================================================== */
body[data-page="mapa.html"] .geo-brand-left{
  grid-column:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:48px!important;
  width:48px!important;
  max-width:48px!important;
  overflow:visible!important;
}
body[data-page="mapa.html"] #mapGlobalNavToggle.map-global-nav-toggle{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  position:relative!important;
  width:38px!important;
  min-width:38px!important;
  max-width:38px!important;
  height:38px!important;
  min-height:38px!important;
  max-height:38px!important;
  margin:0!important;
  padding:0!important;
  border:1px solid #d6e0ec!important;
  border-radius:8px!important;
  background:#fff!important;
  color:#18324f!important;
  visibility:visible!important;
  opacity:1!important;
  z-index:5!important;
}
body[data-page="mapa.html"] #mapGlobalNavToggle .sv-map-menu-hamburger{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:3px!important;
  width:18px!important;
  height:16px!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:none!important;
}
body[data-page="mapa.html"] #mapGlobalNavToggle .sv-map-menu-hamburger i{
  display:block!important;
  width:18px!important;
  height:2px!important;
  min-height:2px!important;
  border:0!important;
  border-radius:999px!important;
  background:currentColor!important;
  opacity:1!important;
  visibility:visible!important;
  flex:0 0 2px!important;
}
body[data-page="mapa.html"] #mapGlobalNavToggle:hover,
body[data-page="mapa.html"] #mapGlobalNavToggle:focus-visible{
  background:#f3f7fc!important;
  border-color:#b9cbe0!important;
  color:#0f5bdc!important;
}

/* V50 — busca em duas etapas: município -> localidade dentro do município */
body[data-page="mapa.html"] .sv-locality-search-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  padding:9px 10px!important;
  border-bottom:1px solid #e3e9f1!important;
  background:#f8fbff!important;
}
body[data-page="mapa.html"] .sv-locality-search-head>div{
  display:grid!important;
  gap:2px!important;
  min-width:0!important;
}
body[data-page="mapa.html"] .sv-locality-search-head strong{
  font-size:10.5px!important;
  color:#17304e!important;
}
body[data-page="mapa.html"] .sv-locality-search-head small{
  font-size:8.5px!important;
  color:#728198!important;
  line-height:1.25!important;
}
body[data-page="mapa.html"] .sv-locality-search-head button{
  flex:0 0 auto!important;
  min-height:28px!important;
  padding:0 9px!important;
  border:1px solid #d7e3ef!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#31506f!important;
  font-size:8.5px!important;
  font-weight:750!important;
  cursor:pointer!important;
}
body[data-page="mapa.html"] .sv-locality-suggest-item small{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}

/* V50 — confrontantes: linhas de chamada manuais diretamente no mapa */
.confrontante-guide-actions{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin-top:12px!important;
  padding:10px!important;
  border:1px solid #d7e6ff!important;
  border-radius:10px!important;
  background:#f8fbff!important;
}
.confrontante-guide-actions button{
  min-height:36px!important;
  padding:0 13px!important;
  border:1px solid #2563eb!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#1d4ed8!important;
  font-weight:850!important;
  cursor:pointer!important;
  white-space:nowrap!important;
}
.confrontante-guide-actions small{color:#64748b!important;font-size:10.5px!important;line-height:1.35!important;}
body.confrontante-guide-drawing .leaflet-container{cursor:crosshair!important;}
.leaflet-tooltip.confrontante-map-guide-label{
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#111827!important;
  font-size:12px!important;
  font-weight:850!important;
  text-shadow:-1px -1px 0 #fff,1px -1px 0 #fff,-1px 1px 0 #fff,1px 1px 0 #fff!important;
}
.leaflet-tooltip.confrontante-map-guide-label::before,
.leaflet-tooltip.confrontante-guide-pick-label::before{display:none!important;}
.leaflet-tooltip.confrontante-guide-pick-label{
  padding:4px 7px!important;
  border:1px solid #fecaca!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#b91c1c!important;
  font-size:10px!important;
  font-weight:850!important;
  box-shadow:0 5px 14px rgba(15,23,42,.12)!important;
}
@media(max-width:720px){.confrontante-guide-actions{align-items:stretch!important;flex-direction:column!important;}}

/* V50 — chamadas livres de confrontantes no mapa */
.free-confrontante-toolbar{
  display:grid!important;gap:6px!important;margin:8px 0 10px!important;padding:9px!important;
  border:1px solid #d7e5f8!important;border-radius:10px!important;background:#f8fbff!important;
}
.free-confrontante-toolbar button{
  min-height:34px!important;border:1px solid #a9c9f7!important;border-radius:8px!important;background:#fff!important;
  color:#0f5bdc!important;font-size:11px!important;font-weight:800!important;cursor:pointer!important;
}
.free-confrontante-toolbar small{font-size:9.5px!important;line-height:1.35!important;color:#64748b!important;}
.free-confrontantes-list{display:grid!important;gap:6px!important;margin:0 0 10px!important;}
.free-confrontante-row{
  display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:8px!important;align-items:center!important;
  padding:8px!important;border:1px solid #dfe7f1!important;border-radius:9px!important;background:#fff!important;cursor:pointer!important;
}
.free-confrontante-row>div:first-child{display:grid!important;gap:2px!important;min-width:0!important;}
.free-confrontante-row span{font-size:8.5px!important;color:#64748b!important;text-transform:uppercase!important;font-weight:800!important;}
.free-confrontante-row strong{font-size:10.5px!important;color:#0f172a!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.free-confrontante-row small{font-size:8.5px!important;color:#7c8aa0!important;}
.free-confrontante-row-actions{display:flex!important;gap:4px!important;}
.free-confrontante-row-actions button{min-height:28px!important;padding:0 8px!important;border:1px solid #d7e1ee!important;border-radius:6px!important;background:#fff!important;color:#1f4f8f!important;font-size:9px!important;font-weight:750!important;cursor:pointer!important;}
body.confrontante-free-drawing .leaflet-container{cursor:crosshair!important;}
.confrontante-free-label-wrapper{background:transparent!important;border:0!important;width:auto!important;height:auto!important;overflow:visible!important;}
.confrontante-free-label{
  display:inline-block!important;position:relative!important;left:-50%!important;top:-50%!important;white-space:nowrap!important;
  color:#111827!important;font-weight:800!important;line-height:1!important;cursor:move!important;user-select:none!important;
  text-shadow:-1px -1px 0 #fff,1px -1px 0 #fff,-1px 1px 0 #fff,1px 1px 0 #fff,0 0 3px #fff!important;
}
.free-confrontante-scale-label{display:grid!important;grid-template-columns:1fr auto!important;gap:6px!important;align-items:center!important;}
.free-confrontante-scale-label input{grid-column:1!important;width:100%!important;}
.free-confrontante-scale-label output{grid-column:2!important;font-size:10px!important;font-weight:800!important;color:#0f5bdc!important;}
.free-confrontante-edit-actions{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin:10px 0!important;}
.free-confrontante-edit-actions button{min-height:32px!important;padding:0 10px!important;border:1px solid #d5dfec!important;border-radius:7px!important;background:#fff!important;font-size:9.5px!important;font-weight:750!important;cursor:pointer!important;}

/* V50 — seleção direta de vértices para confrontantes */
body[data-page="mapa.html"] .confrontante-vertex-select-box{
  display:grid!important;
  gap:8px!important;
  margin:8px 0 10px!important;
  padding:9px!important;
  border:1px solid #dbe6f5!important;
  border-radius:10px!important;
  background:#f8fbff!important;
}
body[data-page="mapa.html"] .confrontante-vertex-select-actions,
body[data-page="mapa.html"] .confrontante-vertex-name-row{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  min-width:0!important;
}
body[data-page="mapa.html"] .confrontante-vertex-select-actions button,
body[data-page="mapa.html"] .confrontante-vertex-name-row button{
  min-height:31px!important;
  padding:6px 10px!important;
  border:1px solid #cddcf0!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#24415f!important;
  font-size:9px!important;
  font-weight:800!important;
  cursor:pointer!important;
}
body[data-page="mapa.html"] .confrontante-vertex-select-actions button.active,
body[data-page="mapa.html"] #saveConfrontanteVertexSelection{
  border-color:#1266e3!important;
  background:#1266e3!important;
  color:#fff!important;
}
body[data-page="mapa.html"] .confrontante-vertex-selection-summary{
  min-height:27px!important;
  padding:6px 8px!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#526176!important;
  font-size:8.8px!important;
  line-height:1.35!important;
  overflow-wrap:anywhere!important;
}
body[data-page="mapa.html"] .confrontante-vertex-name-row input{
  flex:1 1 auto!important;
  min-width:0!important;
  min-height:32px!important;
  padding:6px 9px!important;
  border:1px solid #cdd8e7!important;
  border-radius:7px!important;
  background:#fff!important;
  color:#172033!important;
  font-size:9.5px!important;
}
body[data-page="mapa.html"].confrontante-vertex-select-mode .leaflet-container{
  cursor:crosshair!important;
}
body[data-page="mapa.html"] .vertex-label-tooltip.selected{
  background:#1266e3!important;
  border-color:#1266e3!important;
  color:#fff!important;
  box-shadow:0 0 0 2px rgba(18,102,227,.18)!important;
}

/* Remoção de vértice em dois modos: virtual (documental) ou definitiva. */
.surveyor-vertex-remove-choice{
  position:fixed;z-index:10080;width:min(320px,calc(100vw - 32px));padding:12px;display:grid;gap:8px;
  border:1px solid #cbdcf4;border-radius:12px;background:#fff;box-shadow:0 18px 46px rgba(15,23,42,.22);
}
.surveyor-vertex-remove-choice>strong{font-size:12px;color:#0f172a;padding:2px 3px 3px}
.surveyor-vertex-remove-choice button{
  width:100%;display:grid;gap:3px;text-align:left;padding:10px 11px;border:1px solid #dbe5f2;border-radius:9px;
  background:#fff;color:#0f172a;cursor:pointer;
}
.surveyor-vertex-remove-choice button:hover{border-color:#6ea8fe;background:#f8fbff}
.surveyor-vertex-remove-choice button b{font-size:11px}
.surveyor-vertex-remove-choice button span{font-size:10px;line-height:1.35;color:#64748b;font-weight:500}
body.georural-map-page .surveyor-edit-hidden-vertex-handle{
  opacity:0!important;visibility:hidden!important;pointer-events:none!important;
}

/* Vértices — seletor do desenho para restauração virtual. */
.surveyor-vertex-remove-choice.surveyor-vertex-restore-choice{width:min(420px,calc(100vw - 28px));max-height:min(520px,calc(100vh - 40px));overflow:auto}
.surveyor-vertex-choice-hint{display:block;padding:0 3px 6px;color:#64748b;font-size:10px;line-height:1.4}
.surveyor-vertex-restore-list{display:grid;gap:7px}
.surveyor-vertex-restore-list button{width:100%;text-align:left}

