:root{--azul: #0b5394;--azul2: #1c77c3;--linea: #d9e2ec;--fondo: #f7fafc}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,Arial,sans-serif;color:#3c4655}.layout{display:grid;grid-template-columns:320px 1fr;grid-template-rows:56px 1fr;grid-template-areas:"top top" "side map";height:100vh}.topbar{grid-area:top;background:var(--azul);color:#fff;display:flex;align-items:center;gap:14px;padding:0 18px}.topbar h1{font-size:18px;margin:0}.tag{font-size:12px;opacity:.85}.sidebar{grid-area:side;background:var(--fondo);padding:14px;overflow-y:auto}.map{grid-area:map}.card{background:#fff;border:1px solid var(--linea);border-radius:8px;padding:12px 14px;margin-bottom:12px}.card h3{margin:0 0 8px;font-size:14px;color:var(--azul)}.toggle{display:flex;gap:8px}.toggle button{flex:1;padding:8px;border:1px solid var(--linea);background:#fff;border-radius:6px;cursor:pointer;font-weight:600}.toggle button.active{background:var(--azul2);color:#fff;border-color:var(--azul2)}.metric{margin:8px 0}.metric span{font-size:22px;font-weight:700;color:var(--azul);display:block}.metric small{color:#6b7686}.ranking{margin:0;padding-left:18px}.ranking li{margin:6px 0}.ranking small{display:block;color:#6b7686;font-size:12px}.ranking li.top1>b{color:var(--azul)}.ranking small.region{color:#9aa5b4;font-size:11px}.loading-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--azul);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999;gap:14px;text-align:center;padding:20px}.loading-overlay h2{margin:0;font-size:22px}.loading-overlay p{margin:0;opacity:.85;font-size:14px;max-width:340px;line-height:1.5}.spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.map-legend{background:#fff;padding:10px 13px;border-radius:8px;font:13px Segoe UI,Arial,sans-serif;color:#3c4655;box-shadow:0 2px 8px #0000002e;line-height:1.5;min-width:195px;pointer-events:auto}.dept-select{width:100%;padding:7px 10px;border:1px solid var(--linea);border-radius:6px;font-size:14px;color:#3c4655;background:#fff;cursor:pointer}.dept-select:focus{outline:none;border-color:var(--azul2)}.detalle-card{position:absolute;top:14px;right:14px;z-index:1000;background:#fff;border:1px solid var(--linea);border-radius:10px;padding:14px 16px;width:260px;box-shadow:0 4px 16px #00000024;font-size:13px;color:#3c4655}.detalle-close{position:absolute;top:8px;right:10px;background:none;border:none;font-size:18px;line-height:1;cursor:pointer;color:#9aa5b4;padding:2px 5px}.detalle-close:hover{color:#3c4655}.detalle-nombre{margin:0 24px 10px 0;font-size:14px;font-weight:700;color:var(--azul);line-height:1.3}.detalle-row{display:flex;justify-content:space-between;align-items:baseline;margin:5px 0}.detalle-label{color:#6b7686;font-size:12px}.detalle-value{font-weight:600;text-align:right;max-width:140px}.detalle-value.accent{color:var(--azul);font-size:15px}.detalle-value.small{font-size:11px;font-weight:500}.detalle-divider{border:none;border-top:1px solid var(--linea);margin:8px 0}.detalle-badge{display:inline-block;margin-top:8px;padding:3px 8px;border-radius:12px;font-size:12px;font-weight:600}.detalle-badge.brecha{background:#fdecea;color:#b03a3a}.detalle-badge.lluvia{background:#fff3e0;color:#e67e22}.tab-bar{display:flex;border:1px solid var(--linea);border-radius:8px;overflow:hidden;margin-bottom:12px;background:#fff}.tab-bar button{flex:1;padding:8px 0;border:none;background:transparent;cursor:pointer;font-weight:600;font-size:13px;color:#6b7686;transition:background .15s,color .15s}.tab-bar button:not(:last-child){border-right:1px solid var(--linea)}.tab-bar button.active{background:var(--azul2);color:#fff}.tab-bar button:hover:not(.active){background:var(--fondo)}.stats-panel h3{margin-bottom:10px}.stats-subtitle{margin:10px 0 4px;font-size:12px;font-weight:700;color:#6b7686;text-transform:uppercase;letter-spacing:.03em}.stats-hint{margin:3px 0 0;font-size:11px;color:#9aa5b4}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-bottom:6px}.stat-cell{background:var(--fondo);border-radius:6px;padding:7px 10px;text-align:center}.stat-cell.wide{grid-column:span 2;text-align:left;display:flex;align-items:baseline;gap:8px}.stat-val{display:block;font-size:19px;font-weight:700;color:var(--azul)}.stat-val.brecha{color:#b03a3a}.stat-val.amber{color:#e67e22}.stat-lbl{display:block;font-size:11px;color:#6b7686;margin-top:2px;line-height:1.3}.stat-cell.wide .stat-val{font-size:17px}.stat-cell.wide .stat-lbl{margin-top:0}.layer-toggle{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer;-webkit-user-select:none;user-select:none}.layer-toggle input[type=checkbox]{width:15px;height:15px;cursor:pointer;accent-color:#e67e22}
