body {
    font-family: system-ui, sans-serif;
    padding: 20px;
}

nav a {
    text-decoration: none;
    font-weight: 600;
}

@media (max-width: 768px) {

    .js-plotly-plot .plotly {
        height: 1200px !important;
    }

}

.Select-value-label {
    white-space: normal !important;
}


/* Barre de filtres sticky */

.filter-bar{
    position: sticky;
    top: 10px;
    z-index: 1000;
    backdrop-filter: blur(6px);
}


/* Labels des filtres */

.filter-bar label{
    font-weight:600;
    font-size:0.85rem;
}


/* Dropdown plus lisibles */

.Select-control{
    min-height:42px;
}


/* Texte non coupé */

.Select-value-label{
    white-space: normal !important;
}


/* Mobile spacing */

@media (max-width:768px){

    .filter-bar{
        top:5px;
    }

}


.theme-icon {
    font-size: 1.1rem;
    transition: all 0.3s ease;
    opacity: 0.4;
}

.theme-icon.active {
    opacity: 1;
    transform: scale(1.2);
}

/* Option bonus glow */
.theme-icon.sun-active {
    filter: drop-shadow(0 0 4px rgba(255, 200, 0, 0.6));
}

.theme-icon.moon-active {
    filter: drop-shadow(0 0 4px rgba(180, 200, 255, 0.6));
}

.form-check-input {
    cursor: pointer;
}

.form-check-input:checked {
    background-color: #222;
    border-color: #222;
}

body {
    transition: background-color 0.3s ease, color 0.3s ease;
}

.dropdown-item a {
    text-decoration: none;
    color: inherit;
    display: block;
    width: 100%;
}