:root{--navy950:#06101f;--navy900:#08172b;--navy850:#0b1e36;--blue:#2d8cff;--blue2:#65b4ff;--text:#172033;--muted:#6d778b;--line:#e3e8ef;--panel:#fff;--top:70px;--shadow:0 14px 38px rgba(6,16,31,.15)}*{box-sizing:border-box}html,body{height:100%;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text)}button,input,select,textarea{font:inherit}.topbar{height:var(--top);display:grid;grid-template-columns:1fr auto;align-items:center;padding:0 26px 0 38px;background:linear-gradient(110deg,var(--navy950),var(--navy850));color:#fff;position:relative;z-index:1000;border-bottom:1px solid rgba(255,255,255,.1)}.brand{display:flex;align-items:baseline;gap:11px}.brand strong{font-size:27px;letter-spacing:-.02em}.brand span{font-size:10px;letter-spacing:.2em;color:#9fb3c9}.top-actions{display:flex;justify-content:flex-end;gap:8px}.btn{border:0;border-radius:9px;padding:10px 14px;font-weight:700;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:7px}.btn.primary{background:var(--blue);color:#fff}.btn.primary:hover{background:#197ae9}.btn.ghost{background:#fff;color:#526076;border:1px solid var(--line)}.topbar .btn.ghost{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16);color:#eaf1f8}.workspace{height:calc(100% - var(--top));display:flex;position:relative}.sidebar{width:320px;flex:0 0 320px;background:rgba(255,255,255,.98);border-right:1px solid var(--line);padding:18px 15px;z-index:650;overflow:auto;transition:.23s ease}.sidebar.collapsed{margin-left:-320px}.sidebar-head,.section-title{display:flex;justify-content:space-between;align-items:center}.sidebar h1{font-size:18px;margin:0}.sidebar h2{font-size:16px;margin:0}.icon-btn,.mini-btn{border:1px solid var(--line);background:#fff;border-radius:8px;width:34px;height:34px;cursor:pointer;color:#596477;font-size:20px}.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0 22px}.tool{border:1px solid var(--line);background:#fff;border-radius:11px;padding:12px;text-align:left;cursor:pointer;display:grid;grid-template-columns:28px 1fr;column-gap:7px}.tool>span{grid-row:1/3;width:26px;height:26px;background:#edf5ff;color:var(--blue);border-radius:7px;display:grid;place-items:center;font-weight:900}.tool b{font-size:13px}.tool small{font-size:10px;color:var(--muted);margin-top:2px}.tool:hover{border-color:#a9cff7;background:#fbfdff}.panel-section{border-top:1px solid var(--line);padding-top:17px}.layer-list{display:flex;flex-direction:column;gap:5px;margin-top:10px}.layer-card{display:flex;align-items:center;gap:7px;border:1px solid transparent;border-radius:9px;padding:7px 5px}.layer-card:hover{background:#f7f9fc;border-color:#edf0f5}.expand,.eye,.dots{border:0;background:transparent;cursor:pointer;color:#778196;padding:3px}.expand{font-size:18px;width:20px}.swatch{width:9px;height:27px;border-radius:4px}.layer-copy{display:flex;flex-direction:column;flex:1}.layer-copy b{font-size:12px}.layer-copy small{font-size:10px;color:var(--muted);margin-top:2px}.layer-objects{display:none;margin:0 7px 4px 39px;border-left:1px solid #dce4ee;padding:2px 0 2px 11px}.layer-card-wrap.open .layer-objects{display:block}.layer-objects div{font-size:10.5px;color:#596477;padding:5px 0;display:flex;gap:7px}.sidebar-note{margin-top:22px;padding:11px;background:#f4f8fc;border:1px solid #e5edf6;border-radius:10px;display:flex;flex-direction:column;gap:4px}.sidebar-note b{font-size:11px;color:#002060}.sidebar-note span{font-size:10px;line-height:1.45;color:var(--muted)}.map-shell{flex:1;position:relative;min-width:0}#map{position:absolute;inset:0}.sidebar-open{display:none;position:absolute;left:14px;top:14px;z-index:700;width:42px;height:42px;border:0;border-radius:10px;background:var(--navy900);color:#fff;box-shadow:var(--shadow);cursor:pointer;font-size:18px}.sidebar-open.visible{display:block}.layers-float{position:absolute;z-index:500;right:14px;top:14px;width:180px;background:rgba(255,255,255,.96);border:1px solid rgba(220,228,238,.95);border-radius:11px;box-shadow:0 5px 18px rgba(30,40,60,.14);padding:9px}.layers-float-title{font-size:10px;font-weight:800;color:#002060;margin-bottom:5px}.quick-layer{display:flex;align-items:center;gap:7px;font-size:10.5px;padding:5px 2px;cursor:pointer}.quick-layer>span{width:8px;height:8px;border-radius:50%}.quick-layer input{accent-color:var(--blue)}.map-footer{position:absolute;z-index:500;bottom:18px;left:18px;display:flex;align-items:center;gap:8px;background:rgba(6,16,31,.9);color:#fff;border-radius:9px;padding:4px 5px 4px 11px;backdrop-filter:blur(7px);box-shadow:0 5px 18px rgba(6,16,31,.18)}#coordText{font-size:10px;min-width:112px}.map-style-switcher{display:flex}.map-style{border:0;background:transparent;padding:7px 9px;border-radius:6px;font-size:10px;font-weight:700;color:#aab8c9;cursor:pointer}.map-style.active{background:var(--blue);color:#fff}.leaflet-control-zoom{border:none!important;box-shadow:0 5px 18px rgba(30,40,60,.14)!important}.custom-pin{width:26px;height:26px;border:3px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 2px 7px rgba(0,0,0,.25)}.custom-pin i{display:block;width:7px;height:7px;background:#fff;border-radius:50%;margin:6px}.erb-marker{width:32px;height:32px;border-radius:50%;background:#fff;border:3px solid var(--c);display:grid;place-items:center;color:var(--c);box-shadow:0 2px 8px rgba(0,0,0,.25);font-size:18px}.modal-backdrop{position:fixed;inset:0;background:rgba(6,16,31,.5);z-index:2000;display:grid;place-items:center;padding:20px;backdrop-filter:blur(3px)}.hidden{display:none!important}.modal{width:min(610px,100%);background:#fff;border-radius:15px;box-shadow:0 30px 90px rgba(0,0,0,.25);overflow:hidden}.small-modal{width:min(430px,100%)}.save-modal{width:min(570px,100%)}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:18px 22px 14px;border-bottom:1px solid var(--line)}.modal-head h2{margin:0;font-size:19px;color:#002060}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;padding:20px 22px}.form-grid label{font-size:11px;font-weight:700;color:#536075;display:flex;flex-direction:column;gap:6px}.form-grid .wide{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{border:1px solid #dfe4ec;border-radius:8px;padding:10px 11px;outline:none;color:#263247;background:#fff}.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--blue2);box-shadow:0 0 0 3px rgba(45,140,255,.1)}.form-grid input[type=color]{height:44px;padding:5px}.erb-fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:13px}.modal-actions{padding:14px 22px 20px;display:flex;justify-content:flex-end;gap:8px}.save-content{padding:20px 22px}.save-content p{font-size:12px;line-height:1.6;color:#536075;margin-top:0}.url-box{display:flex;gap:8px}.url-box input{flex:1;border:1px solid #dfe4ec;border-radius:8px;padding:10px}.info-box{margin-top:14px;padding:11px 12px;border-radius:9px;background:#f4f8fc;border:1px solid #e0eaf5;color:#596477;font-size:10.5px;line-height:1.5}.toast{position:fixed;right:20px;bottom:20px;z-index:3000;background:var(--navy900);color:#fff;padding:11px 14px;border-radius:9px;box-shadow:var(--shadow);font-size:11px;opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}@media(max-width:800px){.topbar{grid-template-columns:1fr auto}.quick-tools{display:none}.brand span{display:none}.top-actions .primary{display:none}.sidebar{position:absolute;height:100%;box-shadow:var(--shadow)}.layers-float{top:65px}.map-quick-actions{left:auto;right:14px;transform:none}.map-footer{right:12px;left:12px;justify-content:space-between}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.erb-fields{grid-template-columns:1fr}}

.svg-icon{display:inline-grid;place-items:center;width:18px;height:18px}.svg-icon svg{width:100%;height:100%;display:block;stroke:currentColor}.tool .svg-icon{grid-row:1/3;width:27px;height:27px;background:#edf5ff;color:var(--blue);border-radius:7px;padding:5px}.map-toolbar{position:absolute;z-index:500;top:14px;left:50%;transform:translateX(-50%);background:rgba(255,255,255,.98);border:1px solid #e1e7ee;border-radius:8px;box-shadow:0 4px 16px rgba(30,40,60,.16);display:flex;align-items:stretch;padding:3px}.search-box{width:330px;display:flex;align-items:center;gap:7px;padding:0 5px 0 9px}.search-box .svg-icon{color:#66758a}.search-box input{border:0;outline:0;width:100%;font-size:11px;color:#27364a;background:transparent}.search-box button{border:0;background:transparent;color:var(--blue);font-weight:900;cursor:pointer;width:27px}.toolbar-separator{width:1px;background:#e4e8ee;margin:5px 3px}.toolbar-btn{border:0;background:transparent;min-width:52px;padding:5px 8px;border-radius:6px;color:#536075;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:2px}.toolbar-btn .svg-icon{width:20px;height:20px;color:#234f83}.toolbar-btn small{font-size:9px}.toolbar-btn:hover,.toolbar-btn.active{background:#edf5ff;color:#176ec8}.toolbar-btn:hover .svg-icon,.toolbar-btn.active .svg-icon{color:var(--blue)}.object-row{font-size:10.5px;color:#596477;padding:4px 4px;display:grid;grid-template-columns:20px 1fr 24px;align-items:center;gap:6px;border-radius:6px;cursor:pointer}.object-row:hover{background:#eef5fc;color:#173f70}.object-row .object-icon{color:#315f92;width:17px;height:17px}.object-row .object-copy{display:flex;flex-direction:column;min-width:0}.object-row .object-copy b{font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.object-row .object-copy small{font-size:8.5px;color:#8a94a5}.object-row .object-menu{border:0;background:transparent;color:#8490a1;cursor:pointer;border-radius:5px;height:23px}.object-row .object-menu:hover{background:#dfeaf6;color:#1e5c9e}.measure-label{background:#06101f!important;color:#fff!important;border:0!important;border-radius:5px!important;box-shadow:0 2px 7px rgba(0,0,0,.2)!important;padding:3px 6px!important;font-size:10px!important}.measure-label:before{display:none!important}.measure-help{position:absolute;z-index:520;top:76px;left:50%;transform:translateX(-50%);background:#06101f;color:#fff;border-radius:7px;padding:7px 10px;font-size:10px;box-shadow:0 4px 14px rgba(0,0,0,.2)}@media(max-width:900px){.search-box{width:230px}.toolbar-btn small{display:none}.toolbar-btn{min-width:38px}.map-toolbar{left:auto;right:14px;transform:none}}
.brand span{font-size:12px;letter-spacing:.18em;color:#b6c9dc;font-weight:700}.marker-svg{width:31px;height:31px;display:grid;place-items:center;color:var(--c);filter:drop-shadow(0 2px 3px rgba(0,0,0,.28))}.marker-svg svg{width:31px;height:31px;stroke:currentColor;stroke-width:1.8;fill:#fff}.marker-svg.pin svg{fill:var(--c);stroke:#fff}.marker-svg.antenna svg{fill:none;stroke:var(--c);background:transparent}.context-menu{position:fixed;z-index:3500;background:#fff;border:1px solid #dfe5ed;border-radius:9px;box-shadow:0 10px 28px rgba(6,16,31,.2);padding:5px;min-width:120px}.context-menu button{display:block;width:100%;border:0;background:transparent;text-align:left;padding:8px 10px;border-radius:6px;font-size:11px;cursor:pointer;color:#344257}.context-menu button:hover{background:#eef5fc}.context-menu button.danger{color:#b43131}.measure-live{background:#06101f!important;color:#fff!important;border:0!important;border-radius:5px!important;padding:4px 7px!important;font-size:10px!important}.measure-live:before{display:none!important}
/* R5 refinements */
.top-actions{gap:11px}
.search-box button{font-size:22px;line-height:1;width:34px}

/* R6 refinements */
.top-actions{gap:14px}
.search-box button{width:38px;height:34px;display:grid;place-items:center;padding:0}
.search-box button svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:2.8;stroke-linecap:round;stroke-linejoin:round}
.marker-svg.antenna svg{stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round;fill:none}
/* R7 refinements */
.object-row .object-copy small{display:none}
.object-row{padding-top:6px;padding-bottom:6px}
.layer-card{cursor:pointer}
.layer-card .eye,.layer-card .dots{cursor:pointer}
.erb-tooltip.leaflet-tooltip{padding:0!important;border:0!important;border-radius:10px!important;overflow:hidden;box-shadow:0 7px 22px rgba(6,16,31,.22)!important;background:#fff!important;color:#27364a!important}
.erb-tooltip.leaflet-tooltip:before{display:none!important}
.erb-tip{min-width:190px}.erb-tip-title{padding:9px 11px 8px;font-size:12px;font-weight:800;color:#082650;border-bottom:1px solid #e8edf3}.erb-tip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;padding:8px 5px}.erb-tip-cell{padding:2px 7px;border-right:1px solid #edf0f4}.erb-tip-cell:last-child{border-right:0}.erb-tip-label{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.06em;color:#8a94a5;margin-bottom:2px}.erb-tip-value{display:block;font-size:10.5px;font-weight:800;color:#34445a;white-space:nowrap}
.topbar .btn.primary>span:last-child{font-size:20px;font-weight:900;line-height:1;display:inline-block;transform:translateY(-1px);margin-left:1px}

/* R8 stable refinement: slightly stronger CTA arrow, without changing its size dramatically. */
.topbar .btn.primary>span:last-child{font-weight:900;font-family:Arial,sans-serif;transform:translateY(-1px) scaleX(1.12);text-shadow:.35px 0 currentColor,-.35px 0 currentColor}

/* R9 — tooltips de objetos: nome + descrição resumida */
.object-tooltip.leaflet-tooltip{max-width:290px;padding:9px 11px;border:1px solid rgba(6,16,31,.08);border-radius:9px;background:#fff;color:#27364a;box-shadow:0 6px 18px rgba(6,16,31,.16)}
.object-tip-title{font-weight:700;font-size:13px;line-height:1.25;color:#0b1d33}
.object-tip-desc{margin-top:4px;font-size:11.5px;line-height:1.35;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:260px}

/* Etapa 2 R2 — biblioteca definitiva de ícones de ponto */
.marker-svg.point-kind{width:30px;height:30px;background:var(--c);border:2px solid #fff;border-radius:50% 50% 50% 7px;transform:rotate(-45deg);box-sizing:border-box;filter:drop-shadow(0 2px 3px rgba(0,0,0,.28))}
.marker-svg.point-kind svg{width:18px;height:18px;transform:rotate(45deg);fill:none!important;stroke:#fff!important;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.marker-svg.point-kind svg .icon-dot{fill:#fff!important;stroke:none!important}
.object-icon svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.object-icon svg .icon-dot{fill:currentColor;stroke:none}
/* Etapa 2.2 — desenho e edição de áreas */
.tool.active{border-color:#7fb9f4;background:#edf5ff}.leaflet-container.crosshair{cursor:crosshair}.area-edit-help{font-size:10px;color:#6d778b}.object-icon svg{stroke-linecap:round;stroke-linejoin:round}

/* Etapa 2 R5 — ícones SVG sem pin + instrução persistente de Área */
.marker-svg.point-kind{width:32px;height:32px;background:#fff;border:2px solid var(--c);border-radius:50%;transform:none;box-sizing:border-box;display:grid;place-items:center;filter:drop-shadow(0 2px 4px rgba(0,0,0,.25))}
.marker-svg.point-kind svg{width:20px;height:20px;transform:none;fill:none!important;stroke:var(--c)!important;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.marker-svg.point-kind svg .icon-dot{fill:var(--c)!important;stroke:none!important}
.toast.persistent{right:auto;left:50%;bottom:18px;transform:translateX(-50%);opacity:1;white-space:nowrap;background:#06101f;font-size:11px;padding:9px 13px}
.layer-card{user-select:none}
.layer-copy{cursor:pointer}

/* R6 — point markers follow the approved ERB language: free pictograms, no enclosing pin/circle. */
.marker-svg.point-kind{width:34px!important;height:34px!important;background:transparent!important;border:0!important;border-radius:0!important;transform:none!important;display:grid!important;place-items:center!important;filter:drop-shadow(0 1px 1px rgba(255,255,255,.95)) drop-shadow(0 2px 2px rgba(0,0,0,.32))!important;overflow:visible}
.marker-svg.point-kind svg{width:31px!important;height:31px!important;transform:none!important;fill:none!important;stroke:var(--c)!important;stroke-width:2.25!important;stroke-linecap:round!important;stroke-linejoin:round!important;paint-order:stroke!important}
.marker-svg.point-kind svg .icon-dot{fill:var(--c)!important;stroke:none!important}

/* R10 — reference icons supplied by user: preserve their original silhouettes */
.marker-svg.point-kind svg.reference-icon{fill:var(--c)!important;stroke:none!important;stroke-width:0!important;overflow:visible}

/* R11 — equaliza o peso visual dos 3 ícones de referência (filmadora, veículo e crime). */
.marker-svg.point-kind svg.reference-icon{
  fill:var(--c)!important;
  stroke:var(--c)!important;
  stroke-width:.85!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  paint-order:stroke fill!important;
}
.object-icon svg.reference-icon{
  fill:currentColor!important;
  stroke:currentColor!important;
  stroke-width:.85!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  paint-order:stroke fill!important;
}

/* R12 — ERB: torre de telecomunicações baseada na referência do usuário, com peso visual equalizado. */
.marker-svg.antenna{width:34px!important;height:34px!important;filter:drop-shadow(0 1px 1px rgba(255,255,255,.95)) drop-shadow(0 2px 2px rgba(0,0,0,.32))!important}
.marker-svg.antenna svg{width:32px!important;height:32px!important;stroke:var(--c)!important;stroke-width:2.25!important;fill:none!important;stroke-linecap:round!important;stroke-linejoin:round!important}

/* R13 — ERB mais leve + rótulos opcionais por camada. */
.marker-svg.antenna svg{stroke-width:1.8!important}
.map-object-name{
  background:rgba(255,255,255,.94)!important;
  color:#172033!important;
  border:1px solid rgba(23,32,51,.18)!important;
  border-radius:4px!important;
  box-shadow:0 1px 3px rgba(0,0,0,.28)!important;
  padding:2px 5px!important;
  font-size:10px!important;
  font-weight:700!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  pointer-events:none!important;
}
.map-object-name:before{display:none!important}



/* ETAPA 3 — Importador flexível */
.import-modal{width:min(900px,calc(100vw - 36px));max-height:90vh;display:flex;flex-direction:column}.import-content{padding:0 22px 4px;overflow:auto}.import-filebar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;background:#f7f9fc;border:1px solid #e3e8ef;border-radius:10px;margin-bottom:14px}.import-filebar div{display:flex;flex-direction:column;gap:3px}.import-filebar small{color:#758197}.import-type{display:flex;align-items:center;gap:22px;padding:2px 2px 14px}.import-type span{font-weight:700}.import-type label{display:flex;align-items:center;gap:7px;cursor:pointer}.import-section{border-top:1px solid #e8ecf2;padding:15px 0 4px}.import-section h3{font-size:14px;margin:0 0 12px;color:#25324a}.import-map-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.import-map-grid label{min-width:0}.import-map-grid select,.import-map-grid input{width:100%}.import-preview-head{display:flex;align-items:center;justify-content:space-between;gap:15px}.import-preview-head #importStatus{font-size:12px;color:#64748b}.import-table-wrap{border:1px solid #e3e8ef;border-radius:9px;overflow:auto;max-height:230px}.import-table{width:100%;border-collapse:collapse;font-size:12px}.import-table th{position:sticky;top:0;background:#f6f8fb;text-align:left;color:#526077;font-weight:700;padding:9px 10px;border-bottom:1px solid #e3e8ef;white-space:nowrap}.import-table td{padding:8px 10px;border-bottom:1px solid #edf0f4;max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.import-table tr.invalid td{background:#fff5f5;color:#a33}.import-errors{font-size:12px;color:#a33;margin-top:8px;min-height:17px}.numbered-marker{width:30px;height:30px;border:2px solid var(--c);border-radius:50%;background:#fff;color:var(--c);display:flex;align-items:center;justify-content:center;font:700 12px/1 Arial,sans-serif;box-sizing:border-box;box-shadow:0 1px 4px #0002}.object-icon .numbered-mini{width:20px;height:20px;border:2px solid currentColor;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font:700 9px Arial;background:#fff}.hidden{display:none!important}@media(max-width:700px){.import-map-grid{grid-template-columns:1fr}.import-type{align-items:flex-start;flex-wrap:wrap}}

/* r18.2 — seletor destacado Pontos/ERBs */
.import-type{align-items:flex-start}
.import-type>span{padding-top:10px;font-weight:700;color:#344257}
.import-type-toggle{display:grid;grid-template-columns:1fr 1fr;gap:8px;flex:1}
.import-type-toggle label{padding:0!important;border:0!important;background:transparent!important;cursor:pointer}
.import-type-toggle input{position:absolute;opacity:0;pointer-events:none}
.import-type-toggle label>span{display:flex;flex-direction:column;gap:2px;padding:10px 15px;border:1px solid #dbe3ec;border-radius:9px;background:#fff;transition:.15s ease;min-width:130px}
.import-type-toggle label>span b{font-size:12px;color:#344257}
.import-type-toggle label>span small{font-size:10px;color:#7b899a;font-weight:500}
.import-type-toggle input:checked+span{border-color:#2f6fb0;background:#eef5fc;box-shadow:0 0 0 1px #2f6fb0 inset}
.import-type-toggle input:checked+span b{color:#174f88}
.top-actions #openBtn .svg-icon{width:22px;height:17px}
.top-actions #openBtn .svg-icon svg{width:22px;height:17px}

/* r18.3 — refinamentos do importador e Abrir */
.import-type-toggle{display:flex;grid-template-columns:none;gap:5px;flex:0 0 auto}
.import-type-toggle label>span{min-width:88px;padding:9px 16px;align-items:center;justify-content:center}
.import-type-toggle label>span b{font-size:12px}
.import-type-toggle label>span small{display:none}
.top-actions #openBtn .svg-icon,.top-actions #openBtn .svg-icon svg{width:20px;height:17px}

/* r18.4 — hidden deve prevalecer em qualquer campo do importador */
#importModal .hidden{display:none!important}
.top-actions #openBtn .svg-icon,.top-actions #openBtn .svg-icon svg{width:20px;height:18.5px}

/* r18.5 — ícone Abrir inspirado na referência enviada */
.top-actions #openBtn .svg-icon{width:21px!important;height:18px!important;display:inline-flex;align-items:center;justify-content:center}
.top-actions #openBtn .svg-icon svg{width:21px!important;height:18px!important}

/* r18.6 — destaque Pontos/ERBs em RGB(142, 0, 0) */
.import-type-toggle input:checked+span{
  border-color:#8E0000;
  background:rgba(142,0,0,.08);
  box-shadow:0 0 0 1px #8E0000 inset;
}
.import-type-toggle input:checked+span b{color:#8E0000}

/* r19 — compartilhamento criptografado */
.share-modal{width:min(620px,calc(100vw - 32px))}
.share-expiry{display:flex;align-items:center;gap:18px;margin:18px 0}
.share-expiry>span{font-size:12px;font-weight:700;color:#344257;white-space:nowrap}
.share-ttl-toggle{display:flex;gap:5px}
.share-ttl-toggle label{cursor:pointer}
.share-ttl-toggle input{position:absolute;opacity:0;pointer-events:none}
.share-ttl-toggle label>span{display:flex;align-items:center;justify-content:center;min-width:88px;padding:9px 13px;border:1px solid #dbe3ec;border-radius:9px;background:#fff;color:#344257;font-size:11px;font-weight:700;transition:.15s ease}
.share-ttl-toggle input:checked+span{border-color:#8E0000;background:rgba(142,0,0,.08);box-shadow:0 0 0 1px #8E0000 inset;color:#8E0000}
.share-generate{width:100%;margin:2px 0 14px}
.share-result{margin:2px 0 14px}
.share-result.hidden{display:none!important}
.share-modal .url-box input{font-size:11px}
@media(max-width:620px){.share-expiry{align-items:flex-start;flex-direction:column;gap:8px}.share-ttl-toggle{width:100%}.share-ttl-toggle label{flex:1}.share-ttl-toggle label>span{min-width:0}}
