@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=JetBrains+Mono:wght@500;700&display=swap";:root{--primary-glow:#38bdf826;--secondary-glow:radial-gradient(#ffffff1a, #fff0);--bg-gradient:linear-gradient(135deg, #0f0c29 0%, #302b63 50%, #24243e 100%);--card-bg:#14142380;--bg-main:#0f172a;--bg-panel:#1e293bb3;--text-main:#fff;--text-muted:#94a3b8;--primary:#3b82f6;--accent-color:#38bdf8;--card-border:#ffffff1a;--sidebar-bg:#0f172af2;--sidebar-border:#ffffff1a;--sidebar-hover:#ffffff1a;--danger:#ef4444;--success:#10b981;--table-header-bg:#0003;--table-row-hover:#ffffff0d}[data-theme=light]{--bg-main:#f1f5f9;--bg-panel:#ffffffe6;--text-main:#0f172a;--text-muted:#475569;--primary-glow:#38bdf80d;--primary:#2563eb;--accent-color:#0284c7;--card-border:#0000001a;--sidebar-bg:#fff;--sidebar-border:#0000001a;--sidebar-hover:#0000000d;--table-header-bg:#0284c714;--table-row-hover:#0284c70a}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-main);color:var(--text-main);width:100vw;height:100dvh;margin:0;font-family:Outfit,sans-serif;transition:background-color .3s,color .3s;overflow:hidden}#root{width:100%;height:100%;position:relative}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}@keyframes pulse-glow{0%{box-shadow:0 0 10px #38bdf833}50%{box-shadow:0 0 20px #38bdf899}to{box-shadow:0 0 10px #38bdf833}}.glass-panel{background:var(--bg-panel);-webkit-backdrop-filter:blur(12px);border:1px solid var(--card-border);color:var(--text-main);border-radius:16px;box-shadow:0 8px 32px #0003}.table-container{background:var(--bg-panel);border:1px solid var(--card-border);-webkit-backdrop-filter:blur(12px);border-radius:16px;overflow:hidden;box-shadow:0 8px 32px #00000026}.custom-table{border-collapse:separate;border-spacing:0;text-align:left;width:100%}.custom-table th{text-align:left;background:var(--table-header-bg);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--card-border);white-space:nowrap;padding:16px 20px;font-size:.8rem;font-weight:700}.custom-table th:first-child{border-top-left-radius:16px}.custom-table th:last-child{border-top-right-radius:16px}.custom-table td{border-bottom:1px solid var(--card-border);color:var(--text-main);padding:15px 20px;font-size:.95rem}.custom-table tbody tr:last-child td{border-bottom:none}.custom-table tbody tr:hover{background:var(--table-row-hover);transition:background-color .2s}.btn-dynamic{color:#fff;cursor:pointer;background:linear-gradient(90deg,#38bdf8,#0284c7);border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-weight:600;transition:all .3s;display:flex;position:relative;overflow:hidden}.btn-dynamic:hover{transform:translateY(-2px);box-shadow:0 10px 20px #38bdf84d}.btn-dynamic:active{transform:translateY(1px)}.btn-primary,.btn-cancel{color:#fff;cursor:pointer;background:linear-gradient(90deg,#3b82f6,#8b5cf6);border:none;border-radius:8px;padding:10px 15px;font-weight:600;transition:all .3s;box-shadow:0 4px 10px #3b82f64d}.btn-primary:hover,.btn-cancel:hover{transform:translateY(-2px);box-shadow:0 8px 15px #3b82f680}.btn-cancel{background:linear-gradient(90deg,#ef4444,#f97316);box-shadow:0 4px 10px #ef44444d}.btn-cancel:hover{box-shadow:0 8px 15px #ef444480}.input-dynamic{border:1px solid var(--card-border);width:100%;color:var(--text-main);background:#0000000d;border-radius:8px;outline:none;padding:12px 15px;font-size:14px;transition:all .3s}[data-theme=dark] .input-dynamic{background:#0f172a99}.input-dynamic:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px #38bdf833}.layer-category{color:var(--accent-color);text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid #ffffff1a;margin-top:20px;margin-bottom:10px;padding-bottom:5px;font-size:.8rem;font-weight:700}.layer-item{color:var(--text-muted);cursor:pointer;background:#ffffff05;border:1px solid #0000;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:6px;padding:10px 12px;font-size:.9rem;transition:all .2s;display:flex}.layer-item:hover{background:#ffffff0d;border-color:#ffffff1a;transform:translate(2px)}.layer-item.active{color:var(--text-main);background:#38bdf81a;border-color:#38bdf84d;font-weight:600}.ui-overlay{pointer-events:none;z-index:1000;flex-direction:column;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}.top-bar{pointer-events:auto;background:var(--bg-panel);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--card-border);border-radius:12px;justify-content:space-between;align-items:center;margin:15px 20px;padding:12px 20px;display:flex;box-shadow:0 4px 20px #0000004d}.logo-section{align-items:center;gap:15px;display:flex}.title{background:linear-gradient(90deg, var(--text-main), var(--accent-color));-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:1.5rem;font-weight:700}.subtitle{color:var(--accent-color);letter-spacing:1px;font-size:.8rem}.controls-section{pointer-events:auto;background:var(--bg-panel);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--card-border);border-radius:12px;width:320px;margin:0 20px 20px;padding:20px;box-shadow:0 4px 20px #0000004d}.sidebar-section{margin-bottom:25px}.section-title{color:var(--text-main);align-items:center;gap:8px;margin-bottom:12px;font-size:.9rem;font-weight:600;display:flex}.map-container{z-index:1;width:100%;height:100dvh}.global-sidebar{background-color:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);z-index:1000;flex-direction:column;width:250px;height:100dvh;transition:all .3s;display:flex;position:fixed;top:0;left:0}.global-sidebar.collapsed{width:70px}.sidebar-header{border-bottom:1px solid var(--sidebar-border);justify-content:space-between;align-items:center;padding:20px;display:flex}.sidebar-nav{flex:1;padding:20px 10px;overflow-y:auto}.nav-item{color:var(--text-muted);border-radius:8px;align-items:center;margin-bottom:5px;padding:12px 15px;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.nav-item:hover,.nav-item.active{background-color:var(--sidebar-hover);color:var(--accent-color)}.nav-item svg{margin-right:15px}.global-sidebar.collapsed .nav-item span{display:none}.global-sidebar.collapsed .nav-item svg{margin-right:0}.sidebar-footer{border-top:1px solid var(--sidebar-border);padding:20px}.main-content{background-color:var(--bg-main);height:100dvh;margin-left:250px;transition:margin-left .3s;position:relative;overflow-y:auto}.main-content.collapsed{margin-left:70px}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#0000001a}::-webkit-scrollbar-thumb{background:var(--accent-color);border-radius:10px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.qgis-status-bar{background:var(--card-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--card-border);z-index:1000;height:30px;color:var(--text-main);align-items:center;gap:20px;padding:0 15px;font-family:Outfit,sans-serif;font-size:12px;display:flex;position:absolute;bottom:0;left:0;right:0}.qgis-status-item{align-items:center;gap:5px;display:flex}.qgis-input{background:var(--bg-main);border:1px solid var(--card-border);color:var(--text-main);border-radius:4px;padding:2px 6px;font-family:Outfit,sans-serif;font-size:12px}.qgis-input-scale{color:var(--text-main);background:0 0;border:none;outline:none;width:60px}@media (width<=768px){.mobile-navbar{background:var(--sidebar-bg);border-bottom:1px solid var(--sidebar-border);z-index:5000;justify-content:space-between;align-items:center;width:100%;height:60px;padding:0 15px;display:flex;position:fixed;top:0;left:0;box-shadow:0 2px 10px #0000001a}.qgis-hide-mobile{display:none!important}.qgis-status-bar{flex-direction:column;justify-content:center;align-items:center;gap:5px;height:auto;padding:5px}.qgis-input.scale-input{width:70px!important}.qgis-status-bar .qgis-input{width:140px!important}.global-sidebar{z-index:2900;height:calc(100dvh - 60px);top:60px;left:0;width:280px!important;transform:none!important}.global-sidebar.collapsed{display:none!important}.global-sidebar .nav-item span{display:inline!important}.global-sidebar .nav-item svg{margin-right:15px!important}.main-content{-webkit-overflow-scrolling:touch;width:100vw;height:calc(100dvh - 60px);overflow:hidden auto;margin-top:60px!important;margin-left:0!important}.table-container{box-shadow:none;background:0 0;border:none;border-radius:0}.custom-table,.reporteria-table,.logs-table{border:0}.custom-table thead,.reporteria-table thead,.logs-table thead{display:none}.custom-table tr,.reporteria-table tr,.logs-table tr{background:var(--bg-panel);border:1px solid var(--card-border);border-radius:8px;margin-bottom:1rem;display:block;box-shadow:0 2px 4px #0000001a}.custom-table td,.reporteria-table td,.logs-table td{border-bottom:1px solid var(--card-border);text-align:right;word-break:break-word;overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:10px;min-height:48px;padding:12px 15px;display:flex}.custom-table td:last-child,.reporteria-table td:last-child,.logs-table td:last-child{border-bottom:0}.custom-table td:before,.reporteria-table td:before,.logs-table td:before{content:attr(data-label);color:var(--text-muted);text-align:left;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0;margin-right:15px;font-size:.75rem;font-weight:700}.main-content.collapsed{margin-left:0!important}}.atlas-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10000;background:#0f172abf;justify-content:center;align-items:center;padding:15px;display:flex;position:fixed;inset:0}.atlas-modal-container{background:var(--bg-panel,#fff);color:var(--text-main,#1e293b);border:1px solid var(--card-border,#e2e8f0);border-radius:16px;flex-direction:column;width:95vw;max-width:1300px;height:92vh;animation:.25s ease-out atlasModalFadeIn;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000059}@keyframes atlasModalFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.atlas-header{border-bottom:1px solid var(--card-border,#e2e8f0);background:var(--bg-main,#f8fafc);justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.atlas-title-group{align-items:center;gap:12px;display:flex}.atlas-title-group h2{color:var(--accent-color,#0284c7);align-items:center;gap:8px;margin:0;font-size:1.15rem;font-weight:700;display:flex}.atlas-badge{border-radius:999px;padding:3px 8px;font-size:.75rem;font-weight:600}.atlas-badge-draft{color:#b45309;background:#fef3c7;border:1px solid #fde68a}.atlas-badge-saved{color:#15803d;background:#dcfce7;border:1px solid #bbf7d0}.atlas-badge-converted{color:#0369a1;background:#e0f2fe;border:1px solid #bae6fd}.atlas-nav-toolbar{background:#f1f5f9;border:1.5px solid #cbd5e1;border-radius:10px;align-items:center;gap:6px;padding:4px 8px;display:flex;box-shadow:0 1px 3px #00000014}.atlas-nav-btn{color:#0284c7;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;justify-content:center;align-items:center;padding:6px 10px;transition:all .15s;display:flex;box-shadow:0 1px 2px #0000000d}.atlas-nav-btn:hover:not(:disabled){color:#fff;background:#0284c7;border-color:#0284c7;transform:translateY(-1px)}.atlas-nav-btn:disabled{opacity:.35;color:#94a3b8;cursor:not-allowed;box-shadow:none;background:0 0;border-color:#0000}.atlas-nav-status{color:#0f172a;white-space:nowrap;letter-spacing:-.2px;padding:0 12px;font-size:.9rem;font-weight:800}.atlas-body{flex:1;display:flex;overflow:hidden}.atlas-map-pane{border-right:1px solid var(--card-border,#e2e8f0);background:#0f172a;flex:1.15;position:relative}.atlas-form-pane{background:var(--bg-panel,#fff);flex-direction:column;flex:1;gap:18px;padding:20px 24px;display:flex;overflow-y:auto}.atlas-map-overlay{z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;background:#0f172ad9;border:1px solid #ffffff26;border-radius:10px;gap:16px;padding:8px 14px;font-size:.8rem;display:flex;position:absolute;top:12px;left:12px;box-shadow:0 4px 12px #0003}.atlas-map-overlay-item{flex-direction:column;display:flex}.atlas-map-overlay-label{text-transform:uppercase;color:#94a3b8;font-size:.65rem;font-weight:700}.atlas-map-overlay-val{color:#38bdf8;font-weight:700}.atlas-field-group{flex-direction:column;gap:6px;display:flex}.atlas-field-group label{color:var(--text-muted,#64748b);justify-content:space-between;font-size:.82rem;font-weight:600;display:flex}.atlas-row{gap:12px;display:flex}.atlas-row>*{flex:1}.atlas-input{background:var(--bg-main,#f8fafc);color:var(--text-main,#1e293b);border:1px solid var(--card-border,#cbd5e1);box-sizing:border-box;border-radius:8px;outline:none;width:100%;padding:8px 12px;font-size:.88rem;transition:border-color .15s}.atlas-input:focus{border-color:var(--accent-color,#0284c7);box-shadow:0 0 0 2px #0284c733}.atlas-table-container{border:1px solid var(--card-border,#e2e8f0);border-radius:8px;max-height:220px;overflow:hidden auto}.atlas-table{border-collapse:collapse;text-align:left;width:100%;font-size:.8rem}.atlas-table th{background:var(--bg-main,#f1f5f9);color:var(--text-muted,#475569);z-index:10;border-bottom:1px solid var(--card-border,#e2e8f0);padding:8px 10px;font-weight:600;position:sticky;top:0}.atlas-table td{border-bottom:1px solid var(--card-border,#f1f5f9);padding:6px 10px}.atlas-table input{border:1px solid var(--card-border,#cbd5e1);background:var(--bg-main,#fff);width:100%;color:var(--text-main,#1e293b);box-sizing:border-box;border-radius:4px;padding:4px 6px;font-size:.78rem}.atlas-footer{border-top:1px solid var(--card-border,#e2e8f0);background:var(--bg-main,#f8fafc);justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.atlas-actions-right{gap:10px;display:flex}.atlas-btn-save{background:var(--accent-color,#0284c7);color:#fff;cursor:pointer;border:none;border-radius:8px;align-items:center;gap:6px;padding:9px 18px;font-size:.88rem;font-weight:600;transition:all .15s;display:flex}.atlas-btn-save:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px)}.atlas-btn-save:disabled{opacity:.6;cursor:not-allowed}.atlas-btn-batch{color:#fff;cursor:pointer;background:#10b981;border:none;border-radius:8px;align-items:center;gap:6px;padding:9px 18px;font-size:.88rem;font-weight:600;transition:all .15s;display:flex}.atlas-btn-batch:hover:not(:disabled){background:#059669;transform:translateY(-1px)}.atlas-btn-close{color:var(--text-muted,#64748b);border:1px solid var(--card-border,#cbd5e1);cursor:pointer;background:0 0;border-radius:8px;padding:9px 16px;font-size:.88rem;font-weight:500;transition:all .15s}.atlas-btn-close:hover{background:var(--sidebar-hover,#f1f5f9);color:var(--text-main,#1e293b)}.atlas-map-layer-selector{z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0f172ad9;border:1px solid #ffffff26;border-radius:8px;gap:4px;padding:4px;display:flex;position:absolute;bottom:14px;right:14px;box-shadow:0 4px 12px #00000040}.atlas-layer-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-size:.75rem;font-weight:600;transition:all .15s}.atlas-layer-btn:hover{color:#fff;background:#ffffff1a}.atlas-layer-btn.active{background:var(--accent-color,#0284c7);color:#fff;box-shadow:0 1px 4px #0000004d}.atlas-clave-container{align-items:center;gap:4px;width:100%;padding-bottom:4px;display:flex;position:relative;overflow-x:auto}.atlas-clave-input{background:var(--bg-main,#f8fafc);color:var(--text-main,#1e293b);border:1px solid var(--card-border,#cbd5e1);text-align:center;border-radius:6px;outline:none;padding:6px 4px;font-size:.85rem;font-weight:600;transition:all .15s}.atlas-clave-input:focus{border-color:var(--accent-color,#0284c7);background:#fff;box-shadow:0 0 0 2px #0284c733}.atlas-clave-sep{color:var(--text-muted,#94a3b8);-webkit-user-select:none;user-select:none;font-size:.85rem;font-weight:700}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.gdal-progress-tracker{background:var(--bg-panel);border:1px solid var(--accent-color);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;border-radius:12px;width:320px;padding:15px;transition:all .3s;position:relative;box-shadow:0 10px 25px #00000080}.gdal-progress-tracker.minimized{width:auto;padding:10px 15px}.tracker-header{justify-content:space-between;align-items:center;display:flex}.tracker-title{color:#fff;align-items:center;gap:8px;font-size:.9rem;font-weight:600;display:flex}.tracker-minimize,.tracker-close{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 5px}.tracker-minimize:hover,.tracker-close:hover{color:#fff;background:#ffffff1a}.tracker-body{margin-top:15px}.progress-bar-bg{background:#ffffff1a;border-radius:4px;width:100%;height:8px;position:relative;overflow:hidden}.progress-bar-fill{background:var(--accent-color);height:100%;transition:width .3s}.progress-bar-fill.procesando{background:#3b82f6;box-shadow:0 0 10px #3b82f6}.progress-bar-fill.completado{background:#10b981;box-shadow:0 0 10px #10b981}.progress-bar-fill.error{background:#ef4444;box-shadow:0 0 10px #ef4444}.tracker-details{color:#94a3b8;justify-content:space-between;margin-top:8px;font-size:.8rem;display:flex}.floating-dock{z-index:1000;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);pointer-events:auto;background:#0f172abf;border:1px solid #ffffff1a;border-radius:50px;align-items:center;gap:10px;max-width:95vw;padding:8px 12px;display:flex;position:absolute;bottom:30px;left:50%;transform:translate(-50%);box-shadow:0 15px 35px #00000080}.dock-button{color:#94a3b8;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:30px;align-items:center;gap:8px;padding:10px 16px;transition:all .3s;display:flex}.dock-button.active{color:#fff}.dock-button.navegar.active{color:#60a5fa;background:#3b82f640}.dock-button.agregar.active{color:#34d399;background:#10b98140}.dock-button.medir.active{color:#fbbf24;background:#f59e0b40}.dock-button.ubicacion{color:#a855f7}.dock-button.ubicacion.active{color:#c084fc;background:#a855f740}.dock-button-text{font-size:.9rem;font-weight:500}.dock-divider{background:#ffffff1a;flex-shrink:0;width:1px;height:24px}@media (width<=768px){.floating-dock{gap:5px;padding:6px 10px;bottom:50px}.dock-button{border-radius:50%;justify-content:center;padding:12px}.dock-button-text{display:none}.gdal-progress-tracker{width:90vw!important;right:5vw!important}.map-sidebar{z-index:3000!important;width:calc(100vw - 80px)!important;max-height:calc(100vh - 20px)!important;top:10px!important;right:10px!important}}.map-sidebar{pointer-events:auto;background:var(--bg-panel);border:1px solid var(--card-border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:900;border-radius:12px;flex-direction:column;width:320px;max-height:calc(100vh - 130px);transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s;display:flex;position:absolute;top:20px;right:20px;box-shadow:0 10px 30px #00000026}.map-sidebar.open{opacity:1;transform:translate(0)}.map-sidebar:not(.open){opacity:0;pointer-events:none;transform:translate(120%)}[data-theme=light] .gdal-progress-tracker{background:#fffffff2;border-color:#e2e8f0;box-shadow:0 10px 25px #0000001a}[data-theme=light] .gdal-progress-tracker .tracker-title{color:#0f172a}[data-theme=light] .gdal-progress-tracker .tracker-minimize,[data-theme=light] .gdal-progress-tracker .tracker-close{color:#64748b}[data-theme=light] .gdal-progress-tracker .tracker-minimize:hover,[data-theme=light] .gdal-progress-tracker .tracker-close:hover{color:#0f172a;background:#0000000d}[data-theme=light] .gdal-progress-tracker .tracker-details{color:#64748b}[data-theme=light] .gdal-progress-tracker .progress-bar-bg{background:#0000000d}[data-theme=light] .floating-dock{background:#ffffffd9;border-color:#0000001a;box-shadow:0 15px 35px #0000001a}[data-theme=light] .dock-button{color:#64748b}[data-theme=light] .dock-button.active{color:#0f172a}[data-theme=light] .dock-divider{background:#0000001a}.sidebar-input{background:var(--bg-main);border:1px solid var(--card-border);color:var(--text-main);border-radius:4px;outline:none;flex:1;padding:6px 10px;transition:border-color .3s}.sidebar-input:focus{border-color:var(--accent-color)}.predio-form-header{gap:15px;margin-bottom:20px;display:flex}@media (width<=768px){.predio-form-header{flex-direction:column;gap:10px}.predio-table-container{width:100%;overflow-x:auto}.predio-table-wrapper{min-width:350px}}.table-footer{background:var(--bg-main);border-top:1px solid var(--card-border);text-align:center;padding:10px}.btn-add-vertex{color:var(--accent-color);border:1px dashed var(--accent-color);cursor:pointer;background:0 0;border-radius:4px;width:100%;padding:6px 15px;font-size:13px}.osm-overlay-blend{mix-blend-mode:normal;opacity:.45;filter:contrast(1.1)brightness(1.2)grayscale(.5)}.tools-toggle-btn{background:var(--bg-panel);-webkit-backdrop-filter:blur(16px);border:1px solid var(--card-border);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;padding:10px;transition:all .2s;display:flex;box-shadow:0 6px 16px #0003}.tools-toggle-btn:hover{border-color:var(--accent-color);transform:translateY(-2px);box-shadow:0 8px 20px #00000040}.floating-tools-panel{z-index:1000;background:var(--bg-panel);-webkit-backdrop-filter:blur(16px);border:1px solid var(--card-border);border-radius:16px;flex-direction:column;gap:10px;width:220px;padding:14px;transition:all .3s;display:flex;position:absolute;top:80px;left:20px;box-shadow:0 12px 30px #00000040}[data-theme=light] .floating-tools-panel{background:#fffffff2;border-color:#00000014;box-shadow:0 12px 30px #00000014}.tools-header{justify-content:space-between;align-items:center;display:flex}.tools-header-title{color:var(--text-main);align-items:center;gap:8px;margin:0;font-size:15px;font-weight:700;display:flex}.tools-header-icon{color:var(--accent-color)}.tools-close-btn{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:#94a3b826;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.tools-close-btn:hover{color:#ef4444;background:#ef444426}.tools-divider{background:var(--card-border);height:1px;margin:-2px 0 2px}.tools-btn-list{flex-direction:column;gap:8px;display:flex}.tool-action-btn{cursor:pointer;border:1px solid var(--card-border);width:100%;color:var(--text-main);text-align:left;background:#94a3b814;border-radius:10px;align-items:center;gap:10px;padding:8px 12px;font-size:13px;font-weight:500;transition:all .2s;display:flex}[data-theme=light] .tool-action-btn{color:#1e293b;background:#f8fafc;border-color:#e2e8f0}.tool-action-btn:hover:not(:disabled):not(.active){border-color:var(--accent-color);color:var(--accent-color);background:#38bdf81f}[data-theme=light] .tool-action-btn:hover:not(:disabled):not(.active){color:#0284c7;background:#f0f9ff;border-color:#0284c7}.tool-action-btn.active,[data-theme=light] .tool-action-btn.active,.tool-action-btn.active:hover,[data-theme=light] .tool-action-btn.active:hover{font-weight:600;box-shadow:0 4px 12px #2563eb59;background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important}.tool-action-btn.active svg,[data-theme=light] .tool-action-btn.active svg,.tool-action-btn.active:hover svg,[data-theme=light] .tool-action-btn.active:hover svg{color:#fff!important;stroke:#fff!important}.tool-action-btn:disabled{opacity:.45;cursor:not-allowed}.tool-subcard{background:#38bdf814;border:1px solid #38bdf840;border-radius:12px;flex-direction:column;gap:8px;padding:10px 12px;animation:.2s fadeIn;display:flex}[data-theme=light] .tool-subcard{background:#0284c70d;border-color:#0284c733}.tool-subcard-header{justify-content:space-between;align-items:center;display:flex}.tool-subcard-title{color:var(--accent-color);margin:0;font-size:12px;font-weight:700}[data-theme=light] .tool-subcard-title{color:#0369a1}.tool-subcard-close{color:#ef4444;cursor:pointer;background:#ef44441a;border:none;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;transition:all .2s;display:flex}.tool-subcard-close:hover{color:#fff;background:#ef4444}.tool-subcard-form{align-items:center;gap:6px;display:flex}.tool-subcard-input{border:1px solid var(--card-border);background:var(--bg-main);min-width:0;color:var(--text-main);border-radius:8px;outline:none;flex:1;padding:7px 10px;font-size:11.5px;transition:all .2s}[data-theme=light] .tool-subcard-input{background:#fff;border-color:#cbd5e1}.tool-subcard-input:focus{border-color:var(--accent-color);box-shadow:0 0 0 2px #38bdf833}.tool-subcard-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.tool-subcard-btn:hover{background:var(--accent-color);transform:translateY(-1px);box-shadow:0 4px 10px #0284c759}.tool-subcard-btn:active{transform:translateY(0)}.dock-button.fraccionar{color:#f59e0b}.dock-button.fraccionar.active{color:#fbbf24;background:#f59e0b40;border-color:#f59e0b}[data-theme=light] .dock-button.fraccionar{color:#d97706}[data-theme=light] .dock-button.fraccionar.active{color:#b45309;background:#fef3c7;border-color:#f59e0b}.shapefile-uploader-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.shapefile-uploader-modal{background:var(--bg-panel);border:1px solid var(--card-border);width:90%;max-width:900px;color:var(--text-main);border-radius:12px;max-height:90vh;padding:30px;position:relative;overflow-y:auto;box-shadow:0 25px 50px -12px #00000080}.shapefile-uploader-modal .close-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:5px;transition:all .2s;display:flex;position:absolute;top:15px;right:15px}.shapefile-uploader-modal .close-btn:hover{color:var(--text-main);background:#ffffff1a}.shapefile-uploader-modal h2{color:var(--text-main);margin:0 0 10px;font-size:1.5rem}.shapefile-uploader-modal .subtitle{color:var(--text-muted);margin:0 0 25px;font-size:.95rem;line-height:1.5}.spin{animation:1s linear infinite spin}.analytics-container{max-width:1200px;color:var(--text-color);margin:0 auto;padding:40px}.dashboard-title{color:var(--accent-color);margin-bottom:10px;font-size:2.5rem;font-weight:700}.dashboard-subtitle{color:var(--text-muted);margin-bottom:40px;font-size:1.1rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:25px;display:grid}.stat-card{background:var(--bg-panel);border:1px solid var(--card-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;align-items:center;gap:20px;padding:25px;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 4px 20px #0003}.stat-card:hover{transform:translateY(-5px);box-shadow:0 8px 30px #0006}.stat-icon-wrapper{border-radius:12px;justify-content:center;align-items:center;width:60px;height:60px;display:flex}.stat-icon-wrapper.blue{background:#3b82f626}.stat-icon-wrapper.green{background:#10b98126}.stat-icon-wrapper.purple{background:#8b5cf626}.stat-icon-wrapper.orange{background:#f59e0b26}.stat-info h3{color:var(--text-muted);margin:0 0 5px;font-size:1rem;font-weight:500}.stat-value{color:var(--text-color);margin:0;font-size:2rem;font-weight:700}.logs-container{box-sizing:border-box;width:100%;max-width:100%;color:var(--text-color);margin:0;padding:25px 35px}.logs-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px;display:flex}.logs-title{color:var(--accent-color);margin:0 0 6px;font-size:2.2rem;font-weight:700}.logs-subtitle{color:var(--text-muted);margin:0;font-size:1rem}.logs-search{background:var(--bg-panel);border:1px solid var(--card-border);border-radius:20px;align-items:center;gap:10px;width:100%;max-width:380px;padding:8px 18px;display:flex;box-shadow:0 2px 8px #0000000d}.logs-search input{color:var(--text-main);background:0 0;border:none;outline:none;width:100%;font-size:.9rem}.logs-search input::placeholder{color:#94a3b8}.logs-tabs{flex-wrap:wrap;gap:12px;margin-bottom:20px;display:flex}.tab-btn{background:var(--bg-panel);border:1px solid var(--card-border);color:var(--text-muted);cursor:pointer;border-radius:10px;padding:8px 18px;font-size:.88rem;font-weight:600;transition:all .2s}.tab-btn:hover{background:#ffffff0d}.tab-btn.active{background:var(--accent-color);color:#fff;border-color:var(--accent-color)}.tab-btn.success.active{background:#10b981;border-color:#10b981}.tab-btn.error.active{background:#ef4444;border-color:#ef4444}.logs-table-container{background:var(--bg-panel);border:1px solid var(--card-border);border-radius:14px;width:100%;overflow-x:auto;box-shadow:0 4px 20px #00000014}.logs-table{border-collapse:collapse;table-layout:fixed;width:100%}.logs-table th{text-align:left;background:var(--table-header-bg);color:var(--text-main);text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--card-border);white-space:nowrap;padding:14px 16px;font-size:.82rem;font-weight:700}.logs-table th:first-child{width:12%;min-width:110px}.logs-table th:nth-child(2){width:16%;min-width:140px}.logs-table th:nth-child(3){width:44%}.logs-table th:nth-child(4){width:12%;min-width:120px}.logs-table th:nth-child(5){width:16%;min-width:160px}.logs-table td{border-bottom:1px solid var(--card-border);vertical-align:middle;padding:12px 16px;font-size:.88rem}.log-row:last-child td{border-bottom:none}.log-row:hover,.logs-table tbody tr:hover{background:var(--table-row-hover);transition:background-color .2s}.log-type{font-weight:600}.log-row.info .log-type span{color:#10b981}.log-row.warning .log-type span{color:#f59e0b}.log-row.error .log-type span,.log-row.critical .log-type span{color:#ef4444}.badge{color:var(--text-color);text-overflow:ellipsis;white-space:nowrap;background:#94a3b833;border-radius:6px;max-width:100%;padding:4px 8px;font-size:.8rem;display:inline-block;overflow:hidden}.log-user,.log-date{color:var(--text-muted);white-space:nowrap;font-size:.82rem}.log-desc{word-break:break-word;overflow-wrap:anywhere;white-space:normal;font-size:.85rem;line-height:1.45}.loading-state,.empty-state{text-align:center;color:var(--text-muted);padding:40px}.reporteria-dashboard{background-color:var(--bg-body);min-height:100vh;padding:24px}.dashboard-header{margin-bottom:24px}.dashboard-header h1{color:var(--text-main);margin:0 0 8px;font-size:24px;font-weight:700}.dashboard-header p{color:var(--text-muted);margin:0;font-size:15px}.report-card{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;flex-direction:column;gap:20px;padding:24px;display:flex;box-shadow:0 2px 4px #00000005}.report-card-header{border-bottom:1px solid var(--border-color);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding-bottom:20px;display:flex}.report-card-title{align-items:center;gap:16px;display:flex}.report-icon{color:#0284c7;background-color:#e0f2fe;border-radius:10px;justify-content:center;align-items:center;padding:12px;display:flex}.report-card-title h2{color:var(--text-main);margin:0 0 4px;font-size:18px;font-weight:600}.report-card-title p{color:var(--text-muted);margin:0;font-size:14px}.filters-container{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;width:100%;display:flex}.date-filters{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.date-group{align-items:center;gap:8px;display:flex}.date-group label{color:var(--text-muted);font-size:13px;font-weight:500}.date-input{border:1px solid var(--border-color);color:var(--text-main);background:var(--bg-input);border-radius:8px;outline:none;padding:8px 12px;font-size:13px}.date-input:focus{border-color:#0284c7}.btn-filtrar{color:#334155;cursor:pointer;background-color:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:500;transition:all .2s}.btn-filtrar:hover{background-color:#f1f5f9;border-color:#94a3b8}.search-box{flex-grow:1;max-width:400px}.input-group{align-items:center;display:flex;position:relative}.input-icon{color:var(--text-muted);position:absolute;left:12px}.search-input{border:1px solid var(--border-color);background-color:var(--bg-input);width:100%;color:var(--text-main);border-radius:8px;outline:none;padding:10px 12px 10px 38px;font-size:14px;transition:border-color .2s}.search-input:focus{border-color:#0284c7}.table-container{width:100%;overflow-x:auto}.reporteria-table{border-collapse:collapse;width:100%;font-size:14px}.reporteria-table th{text-align:left;border-bottom:2px solid var(--border-color);color:var(--text-muted);padding:12px 16px;font-weight:600}.reporteria-table td{border-bottom:1px solid var(--border-color);color:var(--text-main);vertical-align:middle;padding:12px 16px}.reporteria-table tbody tr:hover{background-color:#00000005}.fw-bold{font-weight:600;color:#0284c7!important}.btn-generar-sm{color:#0284c7;cursor:pointer;background-color:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;transition:all .2s;display:inline-flex}.btn-generar-sm:hover{background-color:#e0f2fe;border-color:#bae6fd}.empty-state,.loading-state{text-align:center!important;color:var(--text-muted)!important;padding:40px!important}.pagination-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;padding-top:10px;display:flex}.pagination-info{color:var(--text-muted);font-size:13px}.pagination-buttons{align-items:center;gap:8px;display:flex}.pagination-buttons button{border:1px solid var(--border-color);width:32px;height:32px;color:var(--text-main);cursor:pointer;background-color:#fff;border-radius:6px;justify-content:center;align-items:center;transition:all .2s;display:flex}.pagination-buttons button:hover:not(:disabled){color:#0284c7;background-color:#f1f5f9;border-color:#cbd5e1}.pagination-buttons button:disabled{color:#cbd5e1;cursor:not-allowed;background-color:#f8fafc}.page-indicator{color:var(--text-main);padding:0 8px;font-size:13px}.params-container{max-width:1200px;color:var(--text-color);margin:0 auto;padding:40px}.params-title{color:var(--accent-color);margin:0 0 10px;font-size:2.5rem;font-weight:700}.params-subtitle{color:var(--text-muted);margin-bottom:40px;font-size:1.1rem}.params-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;display:grid}.param-card{background:var(--bg-panel);border:1px solid var(--card-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;flex-direction:column;height:500px;padding:20px;display:flex;box-shadow:0 4px 20px #0003}.card-header{border-bottom:1px solid var(--card-border);justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:15px;display:flex}.card-header h3{color:var(--text-color);align-items:center;gap:10px;margin:0;font-weight:600;display:flex}.icon-btn{background:var(--accent-color);color:#fff;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.icon-btn:hover:not(:disabled){background:#3b82f6;transform:translateY(-2px)}.icon-btn:disabled{color:var(--text-muted);cursor:not-allowed;background:#ffffff1a}.dpa-list{flex:1;margin:0;padding:0;list-style:none;overflow-y:auto}.dpa-list li{cursor:pointer;border-bottom:1px solid #ffffff0d;border-radius:8px;padding:12px 15px;transition:all .2s}.dpa-list li:hover{background:#ffffff0d}.dpa-list li.active{color:#10b981;background:#10b98126;border-color:#0000;font-weight:600}.empty-msg{color:var(--text-muted);text-align:center;margin-top:40px;font-style:italic}.cartas-container{box-sizing:border-box;width:100%;max-width:100%;color:var(--text-color);padding:30px 40px}.cartas-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px;display:flex}.cartas-title{color:var(--accent-color);margin:0 0 6px;font-size:2.2rem;font-weight:700}.cartas-subtitle{color:var(--text-muted);max-width:700px;margin:0;font-size:1rem;line-height:1.4}.cartas-actions{align-items:center;gap:12px;display:flex}.btn-refresh{background:var(--bg-panel);border:1px solid var(--card-border);color:var(--text-main);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:10px;transition:all .2s;display:flex}.btn-refresh:hover{background:#ffffff14}.btn-upload-cad{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0284c7,#0369a1);border:none;border-radius:8px;align-items:center;gap:8px;padding:10px 20px;font-size:.92rem;font-weight:600;transition:all .2s;display:flex;box-shadow:0 4px 12px #0284c74d}.btn-upload-cad:hover{transform:translateY(-1px);box-shadow:0 6px 16px #0284c766}.cartas-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:15px;margin-bottom:25px;display:flex}.cartas-search{background:var(--bg-panel);border:1px solid var(--card-border);border-radius:20px;align-items:center;gap:10px;width:100%;max-width:380px;padding:8px 18px;display:flex;box-shadow:0 2px 8px #0000000d}.cartas-search input{color:var(--text-main);background:0 0;border:none;outline:none;width:100%;font-size:.9rem}.cartas-stats{color:var(--text-muted);font-size:.9rem}.cartas-loading,.cartas-empty{text-align:center;background:var(--bg-panel);border:1px solid var(--card-border);border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:60px 20px;display:flex}.cartas-empty h3{color:var(--text-main);margin:0;font-size:1.2rem}.cartas-empty p{color:var(--text-muted);max-width:500px;margin:0;font-size:.92rem}.cartas-grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:20px;display:grid}.carta-card{background:var(--bg-panel);border:1px solid var(--card-border);border-radius:14px;flex-direction:column;transition:all .2s;display:flex;overflow:hidden;box-shadow:0 4px 16px #0000000f}.carta-card:hover{border-color:#38bdf866;transform:translateY(-2px);box-shadow:0 8px 24px #0000001a}.carta-card-header{border-bottom:1px solid var(--card-border);background:#ffffff05;align-items:center;gap:14px;padding:16px 18px;display:flex}.carta-icon-box{background:#0284c71a;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.carta-info{flex:1;min-width:0}.carta-info h3{color:var(--text-main);text-overflow:ellipsis;white-space:nowrap;margin:0 0 4px;font-size:1rem;font-weight:700;overflow:hidden}.carta-badge{color:var(--text-muted);background:#94a3b826;border-radius:6px;padding:2px 8px;font-size:.75rem;font-weight:600}.btn-delete-carta{color:#ef4444;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;transition:all .2s;display:flex}.btn-delete-carta:hover{background:#ef44441a}.carta-card-body{flex-direction:column;flex:1;gap:10px;padding:16px 18px;display:flex}.capas-summary{color:var(--text-muted);justify-content:space-between;align-items:center;font-size:.82rem;display:flex}.badge-base-ok{color:#166534;background:#dcfce7;border-radius:6px;align-items:center;gap:4px;padding:2px 7px;font-size:.72rem;font-weight:700;display:flex}.capas-tags{flex-wrap:wrap;gap:6px;max-height:120px;padding-top:4px;display:flex;overflow-y:auto}.capa-tag{background:var(--bg-main);border:1px solid var(--card-border);color:var(--text-muted);border-radius:5px;padding:3px 8px;font-size:.74rem;font-weight:500}.capa-tag.base{color:#0284c7;background:#0284c714;border-color:#0284c740;font-weight:600}:root{--cad-dark:#000;--cad-navy:#000;--cad-slate:#000;--cad-border:#000;--cad-border-light:#000;--cad-border-subtle:#cbd5e1;--cad-accent:#2563eb;--cad-accent-hover:#1d4ed8;--cad-surface:#fff;--cad-canvas-bg:#f3f4f6;--cad-text-main:#000;--cad-text-muted:#4b5563}.leaflet-control-attribution{display:none!important}.report-wrapper{color:#000;background-color:#e5e7eb;background-image:none;flex-direction:column;height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex;overflow:hidden}.report-pages-container{text-align:center;-webkit-overflow-scrolling:touch;flex:1;padding:25px 20px 50px;overflow:auto}.report-header-bar{z-index:1000;background:#fff;border-bottom:1px solid #cbd5e1;flex-shrink:0;justify-content:space-between;align-items:center;gap:15px;height:52px;padding:0 20px;display:flex;box-shadow:0 1px 4px #0000000f}.rh-left{align-items:center;gap:8px;display:flex}.rh-btn{cursor:pointer;color:#000;background:#fff;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:6px;padding:7px 14px;font-size:12px;font-weight:600;transition:all .15s;display:flex}.rh-btn:hover{background:#f3f4f6;border-color:#9ca3af}.rh-btn-subtle{cursor:pointer;color:#4b5563;background:0 0;border:1px solid #0000;border-radius:8px;padding:7px 12px;font-size:12px;font-weight:600;transition:all .15s}.rh-btn-subtle:hover{color:#000;background:#f3f4f6}.rh-center{background:#fff;border:1px solid #cbd5e1;border-radius:10px;align-items:center;gap:6px;padding:4px 10px;display:flex}.rh-atlas-tag{color:#2563eb;letter-spacing:1px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:5px;margin-right:4px;padding:3px 6px;font-size:10px;font-weight:900}.rh-nav-btn{color:#000;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;justify-content:center;align-items:center;padding:5px 8px;transition:all .15s;display:flex}.rh-nav-btn:hover:not(:disabled){color:#fff;background:#2563eb;border-color:#2563eb}.rh-nav-btn:disabled{opacity:.35;cursor:not-allowed}.rh-select-predio{color:#000;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;outline:none;min-width:240px;max-width:360px;padding:6px 12px;font-size:12px;font-weight:600}.rh-select-predio:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.rh-counter{color:#4b5563;white-space:nowrap;padding:2px 6px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700}.rh-right{align-items:center;gap:10px;display:flex}.rh-btn-toggle{cursor:pointer;color:#000;background:#fff;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:7px;padding:7px 14px;font-size:12px;font-weight:600;transition:all .15s;display:flex}.rh-btn-toggle:hover{background:#f3f4f6}.rh-btn-toggle.active{color:#1d4ed8;background:#eff6ff;border-color:#3b82f6}.rh-btn-print{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;align-items:center;gap:7px;padding:8px 18px;font-size:12.5px;font-weight:700;transition:all .15s;display:flex;box-shadow:0 2px 6px #2563eb40}.rh-btn-print:hover:not(:disabled){background:#1d4ed8}.rh-btn-print:disabled{cursor:not-allowed;box-shadow:none;background:#9ca3af}.report-floating-panel{z-index:1050;background:#fff;border:1px solid #cbd5e1;border-radius:14px;flex-direction:column;width:320px;max-height:calc(100vh - 85px);display:flex;position:fixed;top:64px;right:20px;overflow-y:auto;box-shadow:0 10px 30px #00000026}.rfp-header{background:#fff;border-bottom:1px solid #e5e7eb;border-radius:14px 14px 0 0;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.rfp-title{color:#000;align-items:center;gap:8px;font-size:13px;font-weight:800;display:flex}.rfp-close-btn{cursor:pointer;color:#4b5563;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:4px;display:flex}.rfp-close-btn:hover{color:#000;background:#f3f4f6}.rfp-body{flex-direction:column;gap:14px;padding:14px 16px;display:flex}.rfp-group{border-bottom:1px solid #f3f4f6;padding-bottom:12px}.rfp-group:last-child{border-bottom:none;padding-bottom:0}.rfp-label{text-transform:uppercase;letter-spacing:.5px;color:#374151;margin-bottom:6px;font-size:11px;font-weight:800;display:block}.rfp-sublabel{color:#4b5563;margin-bottom:3px;font-size:10px;font-weight:700;display:block}.rfp-select{color:#000;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;outline:none;width:100%;padding:6px 10px;font-size:12px;font-weight:600}.rfp-select:focus{border-color:#2563eb}.rfp-input{color:#000;text-align:center;background:#fff;border:1px solid #cbd5e1;border-radius:6px;outline:none;padding:5px 8px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700}.rfp-grid-2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.rfp-stepper-row{align-items:center;gap:6px;display:flex}.rfp-step-btn{color:#000;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;font-weight:700;display:flex}.rfp-step-btn:hover{background:#f3f4f6}.rfp-stepper-val{background:#fff;border:1px solid #cbd5e1;border-radius:6px;align-items:center;gap:2px;padding:2px 6px;display:flex}.rfp-stepper-input{text-align:center;color:#000;background:0 0;border:none;outline:none;width:42px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700}.rfp-save-btn{color:#1d4ed8;cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;padding:5px 10px;font-size:11px;font-weight:700}.rfp-save-btn:hover{color:#fff;background:#2563eb}.rfp-zoom-val{color:#000;text-align:center;min-width:44px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700}.rfp-btn-action{color:#000;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;justify-content:center;align-items:center;gap:6px;width:100%;padding:7px 12px;font-size:11.5px;font-weight:600;display:flex}.rfp-btn-action:hover{background:#f3f4f6}.print-page{text-align:left;box-sizing:border-box;color:#000;flex-direction:column;width:297mm;height:209mm;margin:0 auto 25px;padding:8mm;font-family:Inter,sans-serif;display:flex;position:relative;box-shadow:0 4px 15px #0000001f;background:#fff!important}.report-border{outline-offset:-4px;box-sizing:border-box;border:2px solid #000;outline:1px solid #000;flex-direction:column;width:100%;height:100%;display:flex;background:#fff!important}.report-inner-border{outline-offset:-4px;border:2px solid #000;outline:1px solid #000;flex-direction:column;flex:1;width:100%;display:flex;background:#fff!important}.report-header{text-align:center;border-bottom:2px solid #000;justify-content:center;align-items:center;min-height:72px;padding:8px 12px;display:flex;position:relative;background:#fff!important}.report-header-text{text-align:center;padding:0 85px;display:inline-block}.report-header-text div:first-child{letter-spacing:.8px;text-transform:uppercase;margin-bottom:2px;color:#000!important;font-size:13px!important;font-weight:800!important}.report-header h1{letter-spacing:1.5px;text-transform:uppercase;margin:0;color:#000!important;font-size:19px!important;font-weight:900!important}.report-body{flex:1;display:flex;background:#fff!important}.report-map-container{border-right:2px solid #000;flex:1;position:relative;background:#fff!important}.report-sidebar{flex-direction:column;width:280px;height:100%;display:flex;background:#fff!important}.report-body .leaflet-container{z-index:1;width:100%;height:100%;pointer-events:none!important;background-color:#fff!important}.vertex-label{background-color:#0000}.lindero-label{color:#000;text-shadow:1px 1px #fff,-1px 1px #fff,1px -1px #fff,-1px -1px #fff,0 0 3px #fff;white-space:nowrap;font-family:Inter,sans-serif;font-size:10px;font-weight:800}.sidebar-box{box-sizing:border-box;border-bottom:1.5px solid #000;flex-direction:column;width:100%;display:flex;background:#fff!important}.sidebar-box:last-child{border-bottom:none;margin-bottom:0}.minimap-box{flex-direction:column;justify-content:center;align-items:center;height:220px;padding:4px;display:flex;position:relative;background:#fff!important}.box-title{color:#000;letter-spacing:.5px;text-transform:uppercase;border-bottom:1px solid #000;padding:3px 6px;font-size:9px;font-weight:800;background:#fff!important}.box-title-no-border{color:#000;letter-spacing:.5px;text-transform:uppercase;padding:3px 6px;font-size:9px;font-weight:800;background:#fff!important}.box-content{color:#000;padding:5px 6px;font-size:11px;background:#fff!important}.box-content-center{text-align:center;color:#000;padding:8px 6px;font-weight:800;background:#fff!important}.dpa-grid{display:flex;background:#fff!important}.dpa-col{border-right:1px solid #000;flex:1;background:#fff!important}.dpa-col:last-child{border-right:none}.report-footer{border-top:2px solid #000;height:38px;display:flex;background:#fff!important}.footer-box{border-right:1.5px solid #000;flex-direction:column;flex:1;display:flex;background:#fff!important}.footer-box:last-child{border-right:none}.footer-box .box-title{color:#000;border-bottom:none;padding:2px 4px;font-size:8px;background:#fff!important}.footer-box .box-content{text-align:center;color:#000;padding:2px 4px;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:800;background:#fff!important}.page2-header{gap:8px;padding:8px 8px 0;display:flex;background:#fff!important}.page2-title{box-sizing:border-box;text-align:center;letter-spacing:1px;text-transform:uppercase;color:#000;border:1.5px solid #000;width:100%;margin-bottom:8px;padding:8px 6px;font-size:15px;font-weight:900;background:#fff!important}.page2-body{flex:1;gap:8px;padding:8px;display:flex;background:#fff!important}.page2-col-left{flex-direction:column;flex:1.1;display:flex;background:#fff!important}.page2-col-right{flex-direction:column;flex:.9;display:flex;background:#fff!important}.report-table{border-collapse:collapse;width:100%;margin-bottom:auto;font-family:Inter,sans-serif;font-size:9px;background:#fff!important}.report-table th,.report-table td{text-align:center;border:1px solid #000;padding:3px 4px;color:#000!important;background:#fff!important}.report-table th{letter-spacing:.4px;text-transform:uppercase;padding:4px 3px;font-size:8.5px;font-weight:800;color:#000!important;background:#fff!important}.report-table td{font-family:JetBrains Mono,monospace;font-size:8.5px;color:#000!important}.report-table tr td{background:#fff!important}.desc-box{border:1.5px solid #000;margin-bottom:-1px;background:#fff!important}.desc-box-title{letter-spacing:.5px;text-transform:uppercase;color:#000;border-bottom:1px solid #000;padding:3px 6px;font-size:10px;font-weight:800;background:#fff!important}.desc-box-content{color:#000;min-height:38px;padding:5px 6px;font-size:9.5px;line-height:1.4;background:#fff!important}.firmas-grid{border:1.5px solid #000;margin-top:auto;display:flex;background:#fff!important}.firma-box{text-align:center;border-right:1.5px solid #000;flex-direction:column;flex:1;justify-content:space-between;height:120px;padding:6px;font-size:9px;display:flex;background:#fff!important}.firma-box:last-child{border-right:none}.firma-box-title{letter-spacing:.4px;text-transform:uppercase;color:#000;border-bottom:1px dashed #000;padding-bottom:4px;font-size:8.5px;font-weight:800}@media screen and (width<=768px){.report-header-bar{flex-direction:column;align-items:stretch;gap:8px;height:auto;padding:8px 12px}.rh-left,.rh-center,.rh-right{justify-content:space-between;width:100%}.rh-select-predio{flex:1;min-width:0}.report-floating-panel{width:auto;max-height:60vh;inset:auto 10px 10px}.print-page .leaflet-control-container{display:none!important}}@media print{@page{size:297mm 210mm;margin:0}html,body{width:297mm;height:210mm;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;background:#fff!important;margin:0!important;padding:0!important}.no-print,.report-header-bar,.report-floating-panel,.leaflet-control-container{display:none!important}.report-wrapper,.report-pages-container{background:#fff!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;display:block!important;overflow:visible!important;transform:none!important}.print-page{box-sizing:border-box!important;width:297mm!important;height:209mm!important;box-shadow:none!important;background:#fff!important;margin:0!important;padding:8mm!important;position:relative!important;overflow:hidden!important}.print-page+.print-page{page-break-before:always}}
