/**
 * @version     CVS: 1.0.2
 * @package     com_mapa_galeria_anocoop
 * @subpackage  mod_mapa_galeria_anocoop
 * @copyright   2025 Maurício Magalhães Domingues
 * @license     GNU General Public License versão 2 ou posterior; consulte o arquivo License. txt
 * @author      Maurício Magalhães Domingues <mauricio.domingues@ths.inf.br>
 */

/* Estilos padrão dos estados no mapa */
#map-oraganizacao-estaduais .state {
    fill: #04B2AA;
    stroke: #ffffff;
    cursor: pointer;
    stroke-width: 1;
    border: #8A8098;
}

/* Flexbox para organizar o mapa e as informações lado a lado */
#map-oraganizacao-estaduais.container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 20px auto;
    max-width: 1200px; /* Limita a largura máxima */
    gap: 20px; /* Espaçamento entre o mapa e o card de informações */
    background: #A9D7B6;
}

/* Contêiner do mapa */
#map-oraganizacao-estaduais .mapa-container {
    flex: 1 1 50%; /* O mapa ocupa 50% do espaço */
    padding-right: 20px;
    box-sizing: border-box;
    max-width: 600px; /* Tamanho máximo do mapa */
}

/* Ajuste para o mapa */
#mapa-brasil {
    width: 100%;
    height: auto;
    max-width: 600px;
}

/* Contêiner de informações */
#map-oraganizacao-estaduais .dados-container {
    flex: 1 1 45%; /* As informações ocupam 45% do espaço */
    box-sizing: border-box;
}

/* Card de informações */
#map-oraganizacao-estaduais .card {
    border: 1px solid #04B2AA;
    border-radius: 8px;
    background-color: #f4f4f4;
    padding: 20px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    margin-top: 70px;
    width: 80%;
}

/* Estilo para os ícones de mídias sociais */
#map-oraganizacao-estaduais .social-icons {
    display: flex;
    justify-content: flex-start;
    gap: 15px; /* Espaçamento entre os ícones */
    margin-top: 10px;
}

#map-oraganizacao-estaduais .social-icons {
    display: flex;
    justify-content: flex-start; /* Alinha à esquerda */
    gap: 15px; /* Espaçamento entre os ícones */
    margin-top: 10px;
}

#map-oraganizacao-estaduais .social-icons a {
    display: inline-block;
    width: 40px; /* Largura do ícone */
    height: 40px; /* Altura do ícone */
    color: #fff; /* Cor do ícone (branco) */
    border-radius: 50%; /* Torna o ícone circular */
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 18px; /* Tamanho do ícone */
    transition: background-color 0.3s ease;
}

#map-oraganizacao-estaduais .social-icons a i {
    color: #ffffff; /* Mantém o ícone sempre branco */
    font-size: 18px; /* Tamanho do ícone */
}

#sem-dados {
    border: 1px solid #ddd;
    padding: 20px;
    background-color: #f4f4f4;
    border-radius: 8px;
    margin-top: 20px;
    text-align: center;
}

#map-oraganizacao-estaduais .info-container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px; /* Espaçamento entre a imagem e o texto */
}

#map-oraganizacao-estaduais .imagem-container {
    width: 35%;
}

#map-oraganizacao-estaduais .imagem-container img {
    max-width: 100%;
    height: 100%;
    border-radius: 8px;
}

#map-oraganizacao-estaduais .info-container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px; /* Espaçamento entre a imagem e o texto */
}

#map-oraganizacao-estaduais .dados {
    font-family: Intro, sans-serif;
}

#map-oraganizacao-estaduais .info p {
    margin: 10px 0;
    font-size: 14px;
    color: #333;
}

#map-oraganizacao-estaduais .info a:hover {
    text-decoration: underline;
}

/* grade de thumbs */
#map-oraganizacao-estaduais .coop {
    margin-bottom: 1rem;
}
#map-oraganizacao-estaduais .coop h4 {
    margin: .25rem 0 .5rem;
}
#map-oraganizacao-estaduais .thumbs {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(96px, 1fr));
    gap: .5rem;
}
#map-oraganizacao-estaduais .thumbs a {
    display: block;
    border-radius: 6px;
    overflow: hidden;
    background: #f5f5f5;
    border: 1px solid rgba(0,0,0,.05);
}
#map-oraganizacao-estaduais .thumbs a {
    display:block; border-radius:10px; overflow:hidden;
    background:#111; border:1px solid rgba(255,255,255,.06);
}

#map-oraganizacao-estaduais .thumbs a:hover img { transform: scale(1.03); }

/* backdrop um pouco mais escuro */
.lg-backdrop { background-color: rgba(0,0,0,0.3) !important; }

/* botão base já estava no seu tema */
.lg-prev, .lg-next{
    width:44px; height:44px; border-radius:999px;
    background:rgba(255,255,255,.14) !important;
    color:#fff !important; border:1px solid rgba(255,255,255,.18) !important;
    display:flex; align-items:center; justify-content:center;
    box-shadow:0 6px 18px rgba(0,0,0,.25);
}

/* ícone FA dentro do botão */
.lg-prev i, .lg-next i{
    font-size:28px; line-height:1; color:#fff; pointer-events:none;
}

/* hover/focus */
.lg-prev:hover, .lg-next:hover{
    background:rgba(255,255,255,.22) !important;
    border-color:rgba(255,255,255,.28) !important;
}
.lg-prev:focus-visible, .lg-next:focus-visible{
    outline:2px solid #1DBF73; outline-offset:2px;
}

/* Remove completamente o ícone nativo do lightGallery nas setas */
.lg-prev::before,
.lg-prev::after,
.lg-next::before,
.lg-next::after{
    content: none !important;
    background: none !important;
    -webkit-mask: none !important;
    mask: none !important;
}

/* Garante que só o ícone FA apareça centralizado */
.lg-prev, .lg-next{
    padding: 0 !important;
    line-height: 0 !important;
}
.lg-prev i, .lg-next i{
    font-size: 28px;  /* ajuste se quiser maior/menor */
    color: #fff;
    pointer-events: none; /* clique fica no botão */
}

/* ativo + hover com a cor do tema */
.lg-thumb-outer .lg-thumb-item.active,
.lg-thumb-outer .lg-thumb-item:hover {
    border-color: #04b2aa !important;
    box-shadow: 0 0 0 2px; /* 20% */
}

/* bloco de cada cooperativa dentro do card-info */
#card-info .coop{
    padding: 12px 0;
}

/* linha divisória entre uma coop e a próxima */
#card-info .coop + .coop{
    border-top: 1px solid rgba(0,0,0,.12);   /* cor clara */
    margin-top: 12px;                        /* espaço antes da linha */
}

.gal-divider{
    height: 1px;
    background: #A9D7B6;
    margin: 16px 0 8px;
}

/* se usa tema escuro no card, pode suavizar: */
@media (prefers-color-scheme: dark){
    #card-info .coop + .coop{
        border-top-color: rgba(255,255,255,.12);
    }
}

/* título e thumbs com um respiro */
#card-info .coop h4{
    margin: 0 0 8px 0;
}
#card-info .coop .thumbs{
    margin-top: 6px;
}

#map-oraganizacao-estaduais .card-info::after {
    content: '';
    position: absolute;
    top: 50px;
    right: -10px;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid #4D80CF;
}

/* ===========================
   BALÃO COM “SETINHA” LATERAL
   =========================== */

#card-info.balloon{
    --bubble-bg: #fff;
    --bubble-border: #04B2AA;
    --tail-top: 120px;

    position: relative;
    background: var(--bubble-bg);
    border: 1px solid #04B2AA;
    border-radius: 20px;
    box-shadow: 0 10px 24px rgba(0,0,0,.06);
    overflow: visible;
}

/* Camada de CONTORNO da setinha (um triângulo um pouco maior) */
#card-info.balloon::before{
    content: "";
    position: absolute;
    left: -18px;
    top: var(--tail-top);
    border-top: 14px solid transparent;
    border-bottom: 14px solid transparent;
    border-right: 18px solid var(--bubble-border);
    filter: drop-shadow(-2px 2px 0 rgba(0,0,0,.03));
}

#sem-dados.balloon::before{
    content: "";
    position: absolute;
    left: -18px;
    top: var(--tail-top);
    border-top: 14px solid transparent;
    border-bottom: 14px solid transparent;
    border-right: 18px solid var(--bubble-border);
    filter: drop-shadow(-2px 2px 0 rgba(0,0,0,.03));
}

/* Camada de PREENCHIMENTO da setinha (um triângulo menor por cima) */
#card-info.balloon::after{
    content: "";
    position: absolute;
    left: -17px;
    top: calc(var(--tail-top) + 1px);
    border-top: 13px solid transparent;
    border-bottom: 13px solid transparent;
    border-right: 17px solid var(--bubble-bg);
}

#sem-dados.balloon::after{
    content: "";
    position: absolute;
    left: -17px;
    top: calc(var(--tail-top) + 1px);
    border-top: 13px solid transparent;
    border-bottom: 13px solid transparent;
    border-right: 17px solid var(--bubble-bg);
}

.gal-divider{
    height: 1px;
    background: #A9D7B6;
    margin: 16px 0 12px;
    border-radius: 1px;
}

/* bolinhas das UFs no mapa */
#mapa-brasil svg .uf-badges { pointer-events: none; } /* não bloqueia hover/click dos estados */
#mapa-brasil svg .uf-badges .uf-dot {
    fill: #F0F2F4;             /* cinza claro */
    stroke: #D5DBE0;           /* contorninho sutil */
    stroke-width: 1.25px;
}
#mapa-brasil svg .uf-badges .uf-code {
    fill: #2B2F33;             /* texto escuro */
    font-weight: 600;
    font-size: 10px;           /* ajuste fino se quiser */
    text-anchor: middle;
    dominant-baseline: middle; /* centraliza verticalmente */
}

.lg-outer div[vw],
.lg-outer span[vp-click-blocker] {
    display: none !important;
}
.disclamed{
    font-size: 12px;
    color: #171C66;
    margin-top: 10px;
    margin-left: 20px;
    margin-bottom: 15px;
}

.disclamed a{
    color: #171C66;
    text-decoration: underline;}

div[vw].enabled {
    left: auto !important;
    right: 20px !important;
    top: auto !important;
    bottom: 20px !important;
    transform: none !important;
}


/* Resolução para mobile */
@media (max-width: 768px) {
    #map-oraganizacao-estaduais .container {
        flex-direction: column;
        align-items: center;
    }

    #map-oraganizacao-estaduais .mapa-container,
    #map-oraganizacao-estaduais .dados-container {
        width: 100%;
        padding: 0;
    }

    #map-oraganizacao-estaduais .imagem-container {
        width: 100%;
        margin-top: 20px;
    }

    #map-oraganizacao-estaduais .info-container {
        flex-direction: column;
        align-items: center;
    }

    #map-oraganizacao-estaduais .info {
        width: 100%;
        text-align: center;
    }

    #map-oraganizacao-estaduais .imagem-container {
        width: 100%;
        margin-top: 20px;
    }
}






