.leaflet-image-layer,.leaflet-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane,.leaflet-pane>canvas,.leaflet-pane>svg,.leaflet-tile,.leaflet-tile-container,.leaflet-zoom-box{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.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,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;box-sizing:border-box;z-index:800}.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{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-bottom,.leaflet-top{position:absolute;z-index:1000;pointer-events:none}.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{transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-pan-anim .leaflet-tile,.leaflet-zoom-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-control,.leaflet-popup-pane{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:grabbing}.leaflet-image-layer,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-image-layer.leaflet-interactive,.leaflet-marker-icon.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078A8}.leaflet-zoom-box{border:2px dotted #38f;background:rgba(255,255,255,.5)}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px rgba(0,0,0,.65);border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:black}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:focus,.leaflet-bar a:hover{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-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.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-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px rgba(0,0,0,.4);background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(/_next/static/media/layers.ef6db872.png);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(/_next/static/media/layers-2x.9859cd12.png);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{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(/_next/static/media/marker-icon.d577052a.png)}.leaflet-container .leaflet-control-attribution{background:#fff;background:rgba(255,255,255,.8);margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:focus,.leaflet-control-attribution a:hover{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;box-sizing:border-box;background:rgba(255,255,255,.8);text-shadow:1px 1px #fff}.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-bar,.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers{box-shadow:none}.leaflet-touch .leaflet-bar,.leaflet-touch .leaflet-control-layers{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:white;color:#333;box-shadow:0 3px 14px rgba(0,0,0,.4)}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:focus,.leaflet-container a.leaflet-popup-close-button:hover{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678,M12=0.70710678,M21=-0.70710678,M22=0.70710678)}.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-control-zoom,.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{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px rgba(0,0,0,.4)}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before,.leaflet-tooltip-top:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}:root{--bg:#f1f5f9;--panel:#ffffff;--border:#e2e8f0;--ink:#0f172a;--muted:#64748b;--gnb-azul:#0073ae;--gnb-azul-deep:#004481;--gnb-verde:#7ab83d;--gnb-gris-bg:#f4f6f8;--gnb-gris-borde:#dce3e9;--gnb-texto:#1c2b36;--gnb-texto-suave:#5a6b78;--gnb-rojo:#c0392b;--azul:#0073ae;--deep:#004481;--verde:#7ab83d;--oro:#fed000;--red:#dc2626;--amber:#d97706;--radius:12px;--shadow:0 1px 3px rgba(0,0,0,0.07),0 4px 14px rgba(0,0,0,0.05)}*{box-sizing:border-box}*,body,html{margin:0;padding:0}body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg);color:var(--ink);font-size:14px;line-height:1.5}a{color:var(--azul)}.app{display:grid;grid-template-columns:240px 1fr;min-height:100vh;transition:grid-template-columns .2s}.app.sidebar-collapsed{grid-template-columns:72px 1fr}@media (max-width:900px){.app,.app.sidebar-collapsed{grid-template-columns:1fr}}.backdrop{display:none;position:fixed;inset:0;background:rgba(15,23,42,.55);z-index:130}.backdrop.show{display:block}.sidebar{background:var(--deep);color:rgba(255,255,255,.85);display:flex;flex-direction:column;position:-webkit-sticky;position:sticky;top:0;height:100vh;transition:transform .25s,width .2s;z-index:140;overflow:hidden}.sidebar.collapsed{width:72px}@media (max-width:900px){.sidebar,.sidebar.collapsed{position:fixed;left:0;top:0;width:260px;height:100vh;transform:translateX(-105%)}.sidebar.open{transform:translateX(0);box-shadow:0 0 40px rgba(0,0,0,.4)}}.brand{display:flex;align-items:center;gap:10px;padding:18px 20px;border-bottom:1px solid rgba(255,255,255,.12)}.brand .mark{width:34px;height:34px;border-radius:9px;background:#fff;color:var(--deep);display:grid;place-items:center;font-weight:800;font-size:13px;flex-shrink:0}.brand b{font-size:15px;color:#fff}.brand small{display:block;font-size:10px;opacity:.7;letter-spacing:.06em;text-transform:uppercase}.brand .toggle{margin-left:auto;background:none;border:none;color:rgba(255,255,255,.85);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:6px;border-radius:8px}.brand .toggle:hover{background:rgba(255,255,255,.12);color:#fff}.nav{padding:12px 10px;flex-direction:column;gap:2px;flex:1 1;overflow-y:auto}.nav,.nav a{display:flex}.nav a{align-items:center;gap:11px;padding:10px 12px;border-radius:9px;color:rgba(255,255,255,.82);text-decoration:none;font-weight:600;font-size:13.5px;cursor:pointer;white-space:nowrap}.nav a:hover{background:rgba(255,255,255,.09);color:#fff}.nav a.active{background:var(--azul);color:#fff}.nav a .ico{width:20px;text-align:center;display:inline-flex;justify-content:center;flex-shrink:0}.nav .sep{border-top:1px solid rgba(255,255,255,.12);margin:10px 6px}.sidebar.collapsed .brand{justify-content:center;padding:18px 0}.sidebar.collapsed .adnote,.sidebar.collapsed .brand .bname,.sidebar.collapsed .brand .mark,.sidebar.collapsed .nav a .lbl,.sidebar.collapsed .userbox .uinfo{display:none}.sidebar.collapsed .nav a{justify-content:center;padding:12px}.sidebar.collapsed .userbox{justify-content:center;padding:14px 0}.sidebar.collapsed .brand .toggle{margin-left:0}.burger-btn{display:none;background:none;border:none;cursor:pointer;color:var(--deep);padding:6px;border-radius:8px;flex-shrink:0}.burger-btn:hover{background:#e2e8f0}@media (max-width:900px){.burger-btn{display:inline-flex}}.userbox{padding:14px 20px;border-top:1px solid rgba(255,255,255,.12);display:flex;align-items:center;gap:10px}.userbox .avatar{width:32px;height:32px;border-radius:50%;background:var(--oro);color:#594500;display:grid;place-items:center;font-weight:800;font-size:13px;flex-shrink:0}.userbox b{font-size:13px;color:#fff;display:block}.userbox span{font-size:11px;opacity:.75}.adnote{padding:0 20px 14px;border-top:1px solid rgba(255,255,255,.1);font-size:11px;color:rgba(255,255,255,.6)}.main{padding:22px 26px 60px;max-width:1240px;min-width:0}@media (max-width:640px){.main{padding:16px 14px 60px}}.topbar{justify-content:space-between;gap:14px;margin-bottom:22px;flex-wrap:wrap}.topbar,.topbar-titles{display:flex;align-items:center}.topbar-titles{gap:10px;min-width:0}.crumbs{font-size:12.5px;color:var(--muted)}.crumbs b{color:var(--ink)}.crumb-sep{color:#94a3b8}.crumb-link{color:var(--azul);text-decoration:none;font-weight:600}.crumb-link:hover{text-decoration:underline}.topbar h1{font-size:22px;font-weight:800;margin-top:2px;color:var(--ink)}.topbar-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pill{padding:6px 12px;border-radius:50px;font-size:11.5px;font-weight:700;white-space:nowrap;display:inline-block}.pill.verde{background:#eaf5de;color:#3f6d1b}.pill.amber{background:#fdf3d7;color:#8a6d00}.pill.red{background:#fde8e8;color:#b91c1c}.pill.blue{background:#e0f0f9;color:#005b8c}.pill.premier{background:#f3e8ff;color:#6b21a8}.pill.empresas{background:#eaf5de;color:#3f6d1b}.pill.personas{background:#e0f0f9;color:#005b8c}.btn{display:inline-flex;align-items:center;gap:7px;padding:9px 16px;border-radius:9px;border:1.5px solid transparent;font-family:inherit;font-weight:700;font-size:13px;cursor:pointer;transition:all .13s;background:#fff;color:var(--ink);text-decoration:none}.btn:hover{transform:translateY(-1px)}.btn.primary{background:var(--azul);color:#fff;box-shadow:0 3px 10px rgba(0,115,174,.28)}.btn.primary:hover{background:var(--deep)}.btn.success{background:var(--verde);color:#fff}.btn.success:hover{background:#68a032}.btn.outline{border-color:var(--border);color:var(--ink);background:#fff}.btn.outline:hover{background:#f8fafc}.btn.danger{border-color:#f0c8c2;color:var(--red);background:#fff}.btn.danger:hover{background:#fdf1f0}.btn.ghost{background:transparent;color:var(--muted);border-color:transparent}.btn.sm{padding:6px 11px;font-size:12px}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:16px}.panel-head{padding:14px 18px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:10px}.panel-head h2{font-size:14.5px;font-weight:800;color:var(--ink);margin:0}.panel-head .hint{font-size:11.5px;color:var(--muted)}.panel-body{padding:18px}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:14px;gap:14px;margin-bottom:22px}.stat{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;box-shadow:var(--shadow)}.stat .label{font-size:11.5px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.stat .num{font-size:26px;font-weight:800;margin-top:4px}.stat .num small{font-size:13px;color:var(--muted);font-weight:600}.stat.azul .num{color:var(--azul)}.stat.verde .num{color:#4a7a20}.stat.amber .num{color:var(--amber)}.stat.red .num{color:var(--red)}table.data{width:100%;border-collapse:collapse;font-size:13px}table.data th{text-align:left;padding:10px 12px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border)}table.data td{padding:11px 12px;border-bottom:1px solid #f1f5f9;vertical-align:middle}table.data tr:hover td{background:#f8fafc}table.data .title{font-weight:700}table.data .sub{font-size:11.5px;color:var(--muted)}.wrap-scroll{overflow-x:auto}.editor-grid{display:grid;grid-template-columns:190px 1fr 280px;grid-gap:16px;gap:16px;align-items:start}@media (max-width:1100px){.editor-grid{grid-template-columns:1fr}}.palette-item{display:flex;align-items:center;gap:9px;padding:9px 11px;border:1.5px dashed var(--border);border-radius:9px;margin-bottom:7px;background:#fbfdff;cursor:-webkit-grab;cursor:grab;font-size:12.5px;font-weight:600;color:var(--ink)}.palette-item:hover{border-color:var(--azul);background:#f0f8fd}.palette-item .e{font-size:16px}.palette-item.dragging{opacity:.4}.canvas{background:#fbfdff;border:1.5px solid var(--border);border-radius:var(--radius);padding:14px;min-height:320px;display:flex;flex-direction:column;gap:10px}.canvas.drag-over{border-color:var(--azul);background:#f0f8fd}.canvas.empty{align-items:center;justify-content:center;color:var(--muted);font-size:13px}.blk{background:#fff;border:1.5px solid var(--border);border-radius:10px;padding:12px 14px;display:flex;align-items:center;gap:12px;cursor:-webkit-grab;cursor:grab;position:relative}.blk:hover{border-color:var(--azul);box-shadow:0 2px 8px rgba(0,115,174,.12)}.blk.selected{border-color:var(--azul);box-shadow:0 0 0 3px rgba(0,115,174,.18)}.blk.drag-over{border-color:var(--azul);background:#f0f8fd}.blk .grip{color:#cbd5e1;cursor:-webkit-grab;cursor:grab;display:inline-flex}.blk .e,.blk .grip{font-size:17px}.blk .name{font-weight:700;font-size:13px}.blk .desc{font-size:11.5px;color:var(--muted)}.blk .badge{margin-left:auto;font-size:10.5px;font-weight:700;padding:3px 8px;border-radius:50px;background:#eef2f7;color:var(--muted);white-space:nowrap}.blk .actions{display:flex;gap:4px}.blk .actions button{border:none;background:none;cursor:pointer;padding:5px;border-radius:6px;color:var(--muted);display:inline-flex}.blk .actions button:hover{background:#f1f5f9;color:var(--ink)}.blk .actions button.del:hover{color:var(--red);background:#fde8e8}.props label{display:block;font-size:11.5px;font-weight:700;color:var(--muted);margin:12px 0 5px;text-transform:uppercase;letter-spacing:.04em}.props label.lbl-flat{text-transform:none;letter-spacing:0;font-size:12.5px;color:var(--ink);display:flex;align-items:center;gap:8px}.props input[type=number],.props input[type=text],.props select,.props textarea{width:100%;border:1.5px solid var(--border);border-radius:8px;padding:8px 10px;font-family:inherit;font-size:12.5px;outline:none;color:var(--ink);background:#fff}.props input:focus,.props select:focus,.props textarea:focus{border-color:var(--azul)}.props textarea{resize:vertical;min-height:60px}.props .hint{font-size:11px;color:var(--muted);margin-top:3px;text-transform:none;letter-spacing:0;font-weight:400}.view-toggle{display:flex;gap:4px;background:#eef2f7;border-radius:9px;padding:3px}.view-toggle button{border:none;background:transparent;padding:6px 12px;border-radius:7px;font-family:inherit;font-weight:700;font-size:12px;color:var(--muted);cursor:pointer;display:inline-flex;align-items:center;gap:5px}.view-toggle button.active{background:#fff;color:var(--ink);box-shadow:0 1px 3px rgba(0,0,0,.1)}.save-state{font-size:11.5px;color:var(--muted);display:flex;align-items:center;gap:5px;white-space:nowrap}.save-state .dot{width:7px;height:7px;border-radius:50%;background:#94a3b8}.save-state.saved .dot{background:var(--verde)}.save-state.dirty .dot{background:var(--amber)}.preview-wrap{display:flex;justify-content:center}.preview-frame{border:8px solid #1e293b;border-radius:22px;background:#fff;overflow:hidden;transition:all .25s}.preview-frame.mobile{width:375px;max-width:100%}.preview-frame.desktop{width:100%;max-width:720px;border-width:3px;border-radius:12px}.preview-inner{padding:16px;font-size:12px}.preview-inner .ph{background:#e2e8f0;border-radius:6px;height:10px;margin:6px 0}.preview-inner .ph.w60{width:60%}.preview-inner .ph.w40{width:40%}.preview-inner .pv-hero{background:linear-gradient(120deg,var(--deep),var(--azul));border-radius:10px;color:#fff;padding:18px 14px;margin-bottom:12px}.preview-inner .pv-hero.claro{background:linear-gradient(120deg,#e0f0f9,#ffffff);color:var(--deep);border:1px solid var(--border)}.preview-inner .pv-hero.verde{background:linear-gradient(120deg,#4a7a20,var(--verde))}.preview-inner .pv-hero b{font-size:15px}.preview-inner .pv-hero p{font-size:11px;opacity:.85;margin-top:4px}.preview-inner .pv-card{border:1px solid var(--border);border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:6px}.preview-inner .pv-card-row{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin:10px 0}.preview-inner .pv-btn{background:var(--azul);color:#fff;border-radius:6px;padding:6px;text-align:center;font-weight:700;font-size:11px}.preview-inner .pv-section{border:1px solid var(--border);border-radius:10px;padding:12px;margin-bottom:10px}.preview-inner .pv-section b{font-size:12px}.preview-inner .pv-row{display:flex;justify-content:space-between;margin-top:6px;font-size:11px}.preview-inner .pv-fila{display:flex;gap:6px;align-items:flex-start;margin-top:6px;font-size:11px}.preview-inner .pv-banner{background:linear-gradient(120deg,var(--oro),#fbbf24);color:#594500;border-radius:10px;padding:14px;margin-bottom:10px}.preview-note{text-align:center;margin-top:16px;font-size:12.5px;color:var(--muted)}.menu-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:16px;gap:16px}.menu-tree{list-style:none;min-width:0}.menu-tree li{background:#fff;border:1.5px solid var(--border);border-radius:9px;padding:9px 12px;margin-bottom:7px;display:flex;flex-wrap:wrap;align-items:flex-start;gap:9px;cursor:-webkit-grab;cursor:grab;min-width:0}.menu-tree li.drag-over,.menu-tree li:hover{border-color:var(--azul)}.menu-tree li.drag-over{background:#f0f8fd}.menu-tree li>ul{flex-basis:100%;padding-left:20px;margin-top:2px;min-width:0}.menu-tree li .lvl{font-size:10px;font-weight:800;background:#eef2f7;color:var(--muted);padding:2px 7px;border-radius:50px;flex-shrink:0;margin-top:1px}.menu-tree li .mid{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1}.menu-tree li .nm{font-weight:600;font-size:13px}.menu-tree li .nm,.menu-tree li .u{white-space:normal;overflow-wrap:anywhere}.menu-tree li .u{font-size:11px;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.menu-tree ul{list-style:none;padding-left:20px;margin-top:6px;min-width:0}.menu-tree ul li{padding:8px 11px}.menu-tree ul li .u{font-size:10.5px}.menu-item-edit{display:flex;flex-direction:column;gap:6px;width:100%}.menu-item-edit input{border:1.5px solid var(--border);border-radius:8px;padding:6px 9px;font-family:inherit;font-size:12.5px;outline:none}.menu-item-edit input:focus{border-color:var(--azul)}.menu-item-tools{display:flex;gap:4px;align-items:center}.menu-item-tools button{border:none;background:none;cursor:pointer;color:var(--muted);padding:4px;border-radius:6px;display:inline-flex}.menu-item-tools button:hover{background:#f1f5f9;color:var(--ink)}.menu-item-tools button.del:hover{color:var(--red);background:#fde8e8}.role-chip{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;padding:4px 10px;border-radius:50px}.role-editor{background:#e0f0f9;color:#005b8c}.role-revisor{background:#fdf3d7;color:#8a6d00}.role-admin{background:#eaf5de;color:#3f6d1b}.role-auditor{background:#f1f5f9;color:#475569}.permisos-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}table.permisos{min-width:560px}.mini-card{display:flex;align-items:center;gap:8px;border:1.5px solid var(--border);border-radius:9px;padding:7px 9px;background:#fff;cursor:-webkit-grab;cursor:grab}.mini-card.selected,.mini-card:hover{border-color:var(--azul)}.mini-card.selected{box-shadow:0 0 0 2px rgba(0,115,174,.18)}.mini-card .grip{color:#cbd5e1;cursor:-webkit-grab;cursor:grab;display:inline-flex}.mini-card .mc-icon{font-size:15px}.mini-card .del{border:none;background:none;color:var(--muted);cursor:pointer;font-size:13px;padding:2px 5px;border-radius:5px;display:inline-flex}.mini-card .del:hover{color:var(--red);background:#fde8e8}.mini-card input{border:1px solid transparent;border-radius:6px;padding:5px 7px;font-family:inherit;font-size:12.5px;outline:none;flex:1 1;min-width:60px;color:var(--ink)}.mini-card input:focus{border-color:var(--azul);background:#f8fafc}.list-row{display:flex;align-items:center;gap:8px;border:1.5px solid var(--border);border-radius:9px;padding:7px 9px;background:#fff;margin-bottom:6px}.list-row .grip{color:#cbd5e1;cursor:-webkit-grab;cursor:grab;display:inline-flex}.list-row input,.list-row textarea{border:1px solid transparent;border-radius:6px;padding:5px 7px;font-family:inherit;font-size:12.5px;outline:none;flex:1 1;min-width:0;color:var(--ink)}.list-row textarea{resize:vertical;min-height:30px}.list-row input:focus,.list-row textarea:focus{border-color:var(--azul);background:#f8fafc}.list-row .del{border:none;background:none;color:var(--muted);cursor:pointer;font-size:13px;padding:2px 5px;border-radius:5px;display:inline-flex}.list-row .del:hover{color:var(--red);background:#fde8e8}.timeline{display:flex;flex-direction:column;gap:0}.tl-item{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid #f1f5f9}.tl-item:last-child{border-bottom:none}.tl-dot{width:9px;height:9px;border-radius:50%;margin-top:5px;flex-shrink:0}.tl-item .who{font-weight:700;font-size:12.5px}.tl-item .what{font-size:12.5px;color:var(--muted)}.tl-item .when{font-size:11px;color:#94a3b8;margin-left:auto;white-space:nowrap}.grid-suc{display:grid;grid-template-columns:1fr 340px;grid-gap:16px;gap:16px;align-items:start}.loc-map-wrap{position:relative;z-index:0;border-radius:var(--radius);overflow:hidden;border:1px solid var(--border)}.loc-map{height:420px;background:#e8eef4}.loc-legend{top:12px;display:flex;flex-direction:column;gap:4px;pointer-events:none}.loc-hint,.loc-legend{position:absolute;left:12px;background:rgba(255,255,255,.94);border-radius:10px;padding:8px 12px;font-size:11px;box-shadow:var(--shadow);z-index:500}.loc-hint{bottom:12px}.loc-list{max-height:420px;overflow-y:auto;padding:8px 12px}.loc-list .tl-item{cursor:pointer;border-radius:8px;padding:10px 8px}.loc-list .tl-item:hover{background:#f8fafc}.loc-list .tl-item.selected{background:#eef6fc;border:1px solid #bfdcef}.loc-item-actions{display:flex;gap:2px;align-items:center}.loc-item-actions button{border:none;background:none;cursor:pointer;color:var(--muted);padding:4px;border-radius:6px;display:inline-flex}.loc-item-actions button:hover{color:var(--ink);background:#f1f5f9}.loc-item-actions button.del:hover{color:var(--red);background:#fde8e8}.pin-caj,.pin-suc{filter:drop-shadow(0 2px 3px rgba(0,0,0,.35))}.modal-back{position:fixed;inset:0;background:rgba(15,23,42,.55);display:none;align-items:center;justify-content:center;z-index:3000;padding:20px}.modal-back.open{display:flex}.modal{background:#fff;border-radius:16px;width:100%;max-width:520px;padding:26px;box-shadow:0 20px 60px rgba(0,0,0,.3);max-height:calc(100vh - 40px);overflow-y:auto;-webkit-overflow-scrolling:touch}.modal h3{font-size:17px;font-weight:800;margin-bottom:8px;color:var(--ink)}.modal p{font-size:13px;color:var(--muted);margin-bottom:14px}.modal .modal-actions{display:flex;justify-content:flex-end;gap:8px;position:-webkit-sticky;position:sticky;bottom:0;background:#fff;padding-top:12px;margin-top:14px;border-top:1px solid var(--border)}@media (max-width:640px){.modal-back{padding:10px;align-items:flex-end}.modal{max-width:100%;max-height:92vh;border-radius:18px 18px 0 0;padding:22px 18px 30px}.modal .modal-actions{position:-webkit-sticky;position:sticky;bottom:0;background:#fff;padding-top:12px}}.loc-mini-map{height:200px;background:#e8eef4;border-radius:10px;position:relative}.loc-map-hint{position:absolute;top:8px;left:8px;background:rgba(255,255,255,.92);border-radius:8px;padding:5px 10px;font-size:10.5px;font-weight:700;color:var(--muted);box-shadow:0 1px 4px rgba(0,0,0,.15);pointer-events:none;z-index:500}.loc-type-btn{flex:1 1;text-align:center}.loc-type-btn.active-suc{border-color:var(--azul)!important;background:#e0f0f9!important}.loc-type-btn.active-caj{border-color:var(--verde)!important;background:#eaf5de!important}.loc-type-btn.active-boc{border-color:#c99700!important;background:#fdf3d8!important}.checkbox-row{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:var(--ink);cursor:pointer;margin:0 0 7px}.checkbox-row input{accent-color:var(--azul);width:16px;height:16px}.toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#0f172a;color:#fff;padding:12px 20px;border-radius:10px;font-size:13px;font-weight:600;box-shadow:0 8px 24px rgba(0,0,0,.3);opacity:0;pointer-events:none;transition:opacity .25s;z-index:300;max-width:min(90vw,560px)}.toast.show{opacity:1}.alert{border-radius:8px;padding:12px 14px;margin:16px 0;font-size:14px;border:1px solid}.alert-ok{background:#e8f5dc;border-color:#cfe8b4;color:#3f6b1a}.alert-err{background:#fdf1f0;border-color:#f0c8c2;color:#8f2d22}.alert-info{background:#e3f0f9;border-color:#bfdcef;color:#005f8f}.form-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:16px}.field.full{grid-column:1/-1}.field label{font-size:13px;font-weight:600;color:var(--deep)}.field input[type=text],.field input[type=url],.field select,.field textarea{padding:9px 12px;border:1.5px solid var(--border);border-radius:8px;font:inherit;color:var(--ink);background:#fff;outline:none}.field textarea{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.45;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--azul)}.field .hint{font-size:12px;color:var(--gnb-texto-suave)}.acciones{display:flex;gap:12px;margin-top:20px;flex-wrap:wrap;align-items:center}.meta-line{color:var(--gnb-texto-suave);font-size:13px;margin-bottom:8px}.meta-line strong{color:var(--ink)}code{background:#eef3f7;border:1px solid var(--border);border-radius:4px;padding:1px 6px;font-size:12.5px}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:14px;gap:14px}.media-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.media-thumb{height:110px;display:grid;place-items:center;color:#fff;font-weight:800;font-size:26px}.media-meta{padding:10px;font-size:11.5px}.media-meta b{display:block;font-size:11.5px;overflow-wrap:anywhere}.media-meta .sub{color:var(--muted);font-size:11px}.media-drop{border:2px dashed var(--border);border-radius:var(--radius);min-height:150px;display:grid;place-items:center;text-align:center;color:var(--muted);font-size:12.5px;cursor:pointer;transition:border-color .15s,background .15s}.media-drop:hover{border-color:var(--azul);background:#f0f8fd}.config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:12px;gap:12px}.config-grid .stat .num{font-size:15px}@media (max-width:900px){.editor-grid{grid-template-columns:1fr}.editor-grid .panel:nth-child(2){order:-1}}@media (max-width:1100px) and (min-width:901px){.editor-grid{grid-template-columns:160px 1fr 240px;gap:10px}}@media (max-width:760px){.stats{grid-template-columns:1fr 1fr}.topbar{flex-direction:column;align-items:flex-start}.topbar-actions{flex-wrap:wrap}.preview-frame.mobile{width:100%;border-width:3px}}@media (max-width:640px){.stats{grid-template-columns:1fr}.main{padding:14px 12px 60px}.form-grid{grid-template-columns:1fr}.grid-suc{grid-template-columns:1fr!important}.grid-suc .panel:first-child{order:2}.grid-suc .panel:last-child{order:1}.grid-plantillas{grid-template-columns:1fr!important}}.grid-2,.grid-plantillas{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.grid-plantillas{align-items:start}@media (max-width:900px){.grid-2,.grid-plantillas{grid-template-columns:1fr}}.grid-auto{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));grid-gap:16px;gap:16px}.api-note{margin-bottom:14px;padding:10px 14px;background:#e0f0f9;border-radius:10px;font-size:12px;color:#005b8c}.api-note.warn{background:#fdf3d7;color:#8a6d00}