/* style.css */

body { 
    background-color: #f4f7f6; 
    padding: 10px; 
    overflow-x: hidden; 
	
}

/* Cabeçalho com Logomarca */
.header-container {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 15px;
    gap: 20px;
}
.logo-header { 
    height: 65px; 
    width: auto; 
}
.main-title { 
    color: #1a1a1a; 
    margin: 0; 
    padding: 5px; 
    font-size: 1.3rem; 
}

/* Cor Azul Institucional customizada */
.btn-primary {
    background-color: #00387a !important;
    border-color: #00387a !important;
}
.btn-primary:hover {
    background-color: #002654 !important;
}

/* Mapa e Tela Cheia */
.map-wrapper { 
    position: relative; 
    background: white; 
    border-radius: 12px; 
}
#map { 
    height: 78vh; 
    width: 100%; 
    border-radius: 12px; 
}

/* Comportamento Fullscreen */
:fullscreen #map { height: 100vh; border-radius: 0; }
:-webkit-full-screen #map { height: 100vh; border-radius: 0; }

.btn-fullscreen {
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 1000;
    background: white;
    border: 1px solid #ccc;
    border-radius: 6px;
    padding: 6px 12px;
    cursor: pointer;
    font-weight: 600;
    font-size: 0.85rem;
    box-shadow: 0 2px 6px rgba(0,0,0,0.2);
}
.btn-fullscreen.is-active { 
    background: #FFFFFF; 
    color: black; 
    border-color: #FFFFFF; 
}

/* Sidebar e Imagem fig_02 */
.card-custom { 
    border: none; 
    border-radius: 12px; 
    height: 78vh; 
    overflow-y: auto; 
}
.img-sidebar {
    width: 130px;
    float: left;
    margin-right: 15px;
    margin-bottom: 5px;
    border-radius: 8px;
}

/* Estilo dos nomes das cidades (Leaflet Tooltip) */
.city-label {
    background: rgba(255, 255, 255, 0);
    border: none;
    box-shadow: none;
	font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    color: #1a1a1a;
    font-weight: 700;
    font-size: 11px;
    text-transform: none;
    text-shadow: 1px 1px 2px white;
    pointer-events: none;
}

.btn-visit-site {
    background-color: #ffffff;
    color: #00387a;
    border: 1px solid #00387a; 
    transition: all 0.3s ease;
    font-weight: 600;
}
.btn-visit-site:hover { 
    background-color: #00387a; 
    color: #ffffff; 
}

/* Botões de Navegação Pequenos com Setas Maiores */
.nav-buttons { 
    margin-top: 20px; 
    margin-bottom: 10px; 
}

.btn-nav-small { 
    width: 35px;
    height: 35px;
    font-size: 1.8rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    border-radius: 4px;
    line-height: 0;
    padding-bottom: 12px;
}

/* Responsividade */
@media (min-width: 992px) {
    .col-custom-map { width: 70%; }
    .col-custom-sidebar { width: 28%; }
}
@media (max-width: 991px) {
    #map, .card-custom { height: 50vh; }
    .header-container { flex-direction: column; text-align: center; }
}


/* --- Estilo da Lista de Municípios (Versão Final) --- */
.city-list {
    column-width: 130px; 
    column-gap: 20px;
    margin-left: 10px;  /* Margens menores para evitar empurrar o conteúdo */
    margin-right: 10px;
    margin-top: 15px;
    padding: 0;         /* Zeramos o padding para não somar na largura */
    font-size: 1rem;
    color: #4a4a4a;
    list-style-type: none;
    
    /* O SEGREDO: Largura automática e controle de caixa */
    width: auto;        
    max-width: 100%;
    box-sizing: border-box; 
    overflow: hidden;   /* Garante que nada escape do container */
}

/* Alinhamento do ponto com o texto */
.city-list li {
    break-inside: avoid;
    margin-bottom: 6px;
    display: flex;
    align-items: flex-start;
}

/* Ponto manual */
.city-list li::before {
    content: '•';
    color: #4a4a4a;
    font-size: 1.1rem;
    margin-right: 6px;
    flex-shrink: 0;     /* Impede que o ponto seja "esmagado" */
    line-height: 1.2;   /* Ajuste para alinhar com o topo */
}

<style>
/* Remove os marcadores padrão e diminui a distância entre as linhas */
.lista-municipios {
    list-style: none;
    padding-left: 0;
}

.lista-municipios li {
    display: flex;
    align-items: center;
    padding: 2px 0; /* Diminui a distância entre as linhas */
    transition: background 0.2s;
    border-radius: 4px;
}

/* Cria o Dot Azul idêntico ao da imagem */
.lista-municipios li::before {
    content: "";
    display: inline-block;
    width: 8px;          /* Tamanho do dot */
    height: 8px;         /* Tamanho do dot */
    background-color: #003574; /* Azul da imagem */
    border-radius: 50%;
    margin-right: 12px;   /* Espaço entre o ponto e o texto */
    flex-shrink: 0;
}

/* Estilo dos links */
.lista-municipios li a {
    text-decoration: none;
    color: #333;
    font-family: sans-serif;
    font-size: 15px;
    width: 100%;
}

/* Efeito de hover suave (opcional, como na imagem) */
.lista-municipios li:hover {
    background-color: #f1f5f9;
}
</style>

/* Legenda do Mapa (Versão Reduzida) */
.info.legend {
    padding: 8px;                 /* Reduzi um pouco o respiro interno */
    background: rgba(255, 255, 255, 0.9);
    box-shadow: 0 0 10px rgba(0,0,0,0.2);
    border-radius: 5px;
    color: #333;
    
    font-size: 8px;              /* TAMANHO DA FONTE MENOR */
    line-height: 14px;            /* ESPAÇAMENTO ENTRE LINHAS MENOR */
}

.info.legend strong {
    font-size: 11px;              /* Título da legenda levemente maior que o texto */
    display: block;
    margin-bottom: 4px;
}

.info.legend i {
    width: 10px;                  /* QUADRADINHO MENOR */
    height: 10px;                 /* QUADRADINHO MENOR */
    float: left;
    margin-right: 6px;
    margin-top: 4px;              /* Ajuste para alinhar com o texto menor */
    border: 1px solid #999;
}
