:root{--azul:#0B2A5B;--laranja:#E8632B;--tinta:#16202B;--mut:#5C6773;--linha:#D9DEE4;--fundo:#F3F5F7;--mancha:#377EB8}
*{box-sizing:border-box}html,body{margin:0;height:100%}
body{font:15px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--tinta);background:var(--fundo)}
.topo{background:var(--azul);color:#fff;border-bottom:3px solid var(--laranja);padding:10px 16px;display:flex;gap:12px;align-items:center;justify-content:space-between}
.topo h1{margin:0;font-size:17px;line-height:1.25}.topo .sub{font-size:13px;opacity:.85;margin-top:2px}
.topo a{color:#fff;font-size:13px;white-space:nowrap;text-decoration:underline}
body.mapa{display:flex;flex-direction:column;height:100dvh}#mapa{flex:1;min-height:0}
.leg{background:#fff;border-radius:6px;padding:8px 10px;box-shadow:0 1px 4px rgba(0,0,0,.3);font-size:13px;max-width:240px}
.leg .item{display:flex;align-items:center;gap:8px;font-weight:600}.sw{width:18px;height:14px;background:var(--mancha);opacity:.8;border:1px solid #000;flex:none}
.btns{display:flex;flex-direction:column;gap:6px}
.btns button,.btns a{font:600 13px system-ui,sans-serif;background:#fff;color:var(--azul);border:0;border-radius:6px;padding:9px 12px;box-shadow:0 1px 4px rgba(0,0,0,.3);cursor:pointer;text-decoration:none;text-align:center}
.aviso{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:1000;pointer-events:none;padding:16px}
.aviso div{background:#fff;border-radius:8px;padding:16px 18px;box-shadow:0 2px 10px rgba(0,0,0,.25);max-width:340px;text-align:center;pointer-events:auto}
.aviso b{display:block;margin-bottom:4px;font-size:16px}
.lista{max-width:760px;margin:0 auto;padding:16px}
.busca{width:100%;font:inherit;padding:11px 12px;border:1px solid var(--linha);border-radius:8px;margin:4px 0 14px}
.bacia{margin:18px 0 6px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--mut)}
.mun{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#fff;border:1px solid var(--linha);border-radius:8px;padding:12px 14px;margin:6px 0;color:inherit;text-decoration:none}
.mun:hover{border-color:var(--azul)}.st{font-size:12px;font-weight:600;padding:2px 8px;border-radius:99px;white-space:nowrap}
.st.sim{background:#DCEBF7;color:#0B4F8A}.st.nao{background:#ECEEF0;color:var(--mut)}
.rodape{color:var(--mut);font-size:12.5px;margin-top:22px}
@media (max-width:520px){.topo h1{font-size:15px}.topo a.todos{display:none}}
