﻿


.select-wrapper {
    position: relative;
    display: inline-block;
    width: 100%;
}

    .select-wrapper select {
        appearance: none;
        -webkit-appearance: none;
        -moz-appearance: none;
        background-color: #f2f2f2;
        color: #333;
        padding: 8px 32px 8px 12px;
        border: none;
        border-radius: 20px;
        font-size: 16px;
        width: 100%;
        cursor: pointer;
    }

    /* Flecha dibujada con pseudo-elemento */
    .select-wrapper::after {
        content: "▼";
        font-size: 12px;
        color: #555;
        position: absolute;
        right: 12px;
        top: 50%;
        transform: translateY(-50%);
        pointer-events: none;
    }




.container-portada-area  {
    min-height: 70vh;
}

.sidebar-custom-closed .container-portada-area {
    min-height: calc(70vh + 60px); /* aumenta el alto como compensación */
}



.btn-menu {
    margin-top: 10px;
    margin-right: 15px;
    cursor: pointer;
    border: 1px solid rgb(227, 6, 19);
    padding: 5px;
    border-radius: 10px;
    color: #E30613;
    font-size: 0.8rem;
    font-weight: bold;
    padding: 5px 20px;
    background-color: white;
    white-space: nowrap;
    display: inline-block; /* garantiza que el margin se aplique bien */
    margin-bottom: 5px; /* da espacio entre botones */
}

    .btn-menu:hover {
        color: #e20d16;
    }



.btn-menu-active {
    color: white;
    background-color: #E30613;
}
    .btn-menu-active:hover {
        color: white !important;              
    }


.legend-container {
    display: flex;
    gap: 40px; /* Espacio entre ítems */
    align-items: center;
    margin-top: 10px;
}

.legend-item {
    display: flex;
    align-items: center;
    font-family: Arial, sans-serif;
    font-size: 14px;
    color: #333;
}

.legend-dot {
    width: 14px;
    height: 14px;
    border-radius: 50%;
    display: inline-block;
    margin-right: 8px;
}
      


.floating-label-centered {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    margin-bottom: 5px;
    text-align: center;
    font-weight: 400;
}

.dep-label {
    background: transparent;
    border: none;
    box-shadow: none;
    color: #333;
    font-weight: bold;
    font-size: 12px;
    text-align: center;
    pointer-events: none;
    background-color: transparent !important;
    border: 1px solid transparent !important;
    font-size: 8px !important;
    box-shadow: none !important;
}


.leaflet-control.legend {
    background: white;
    padding: 10px;
    line-height: 18px;
    font-size: 13px;
    color: #333;
    box-shadow: 0 0 5px rgba(0,0,0,0.3);
    border-radius: 5px;
}


.centrado {
    display: flex;
    flex-direction: column;
    justify-content: center; /* centrado vertical */
    align-items: center; /* centrado horizontal */
    text-align: center;
    /* opcional: asegurar altura para que se note el centrado */
    min-height: 180px;
}


:root {
    --house-width: 160px; /* puedes ajustar el tamaño */
}

.house-wrapper {
    position: relative;
    width: var(--house-width);
    aspect-ratio: 241 / 180; /* mantiene proporción del SVG original */
    max-width: 100%;
    margin: 2rem auto;
}

.house-svg {
    width: 100%;
    height: 100%;
    display: block;
}

.number-proyecto {
    position: absolute;
    inset: 0; /* ocupa todo el contenedor */
    display: flex;
    justify-content: center;
    font-family: system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
    font-weight: 700;
    /* tamaño relativo al contenedor para que escale */
    font-size: calc(var(--house-width) * 0.25);
    line-height: 1;
    color: #000;
    user-select: none;
    pointer-events: none;
    margin-bottom: 30px;
    margin-top: 25px;
}

/* pequeño control para cambiar número */
.controls {
    text-align: center;
    margin-top: 1rem;
    font-family: sans-serif;
}

    .controls input {
        width: 60px;
        font-size: 1rem;
        padding: 4px 6px;
        text-align: center;
    }


.big-percentage {
    font-family: "Segoe UI", system-ui, -apple-system, sans-serif;
}
          
.label-proyecto {
    font-size: 1.25rem;
    font-weight: 600;
    color: #2f6fc1;
}

.small-block .subtitle {
    font-size: 0.9rem;
    font-weight: 600;
    color: #444;
    margin-bottom: 0.25rem;
    line-height: 1.1;
}

.percentage-small {
    font-size: 2.5rem;
    font-weight: 700;
    color: #2f6fc1;
    line-height: 1;
}

.label-small {
    font-size: 1rem;
    font-weight: 600;
    color: #2f6fc1;
}

.visual-badge {
    display: inline-block;       
    border-radius: 50px;
    padding: 6px 14px;
    font-weight: 600;
    font-size: 0.85rem;
    line-height: 1.1;
    text-align: center;
    white-space: normal;
    max-width: 100%;
    border: 2px solid #cc1f1a;
    color: #cc1f1a;
}

.visual-badge {
    /* asegura que quede abajo si el contenedor crece */
    flex-shrink: 0;
}
