.column-selector {
    cursor: pointer;
    user-select: none;
}

.column-selector.selected,
.column-selector.selected-cell {
    background-color: #0d6efd !important;
    color: white !important;
}

/* ============================= */
/* Layout général                */
/* ============================= */

body {
    margin: 0;
    background-color: #f5f6f8;
}

/* ============================= /
/ PAGE D'ACCUEIL /
/ ============================= */

.card {
border-radius: 12px;
}

.card {
transform: translateY(-2px);
transition: transform 0.2s ease;
}

/* ============================= /
/ PAGE DE CONNEXION /
/ ============================= */

.login-page {
min-height: 100vh;

display: flex;

align-items: center;

justify-content: center;

padding: 2rem;

background:
    linear-gradient(
        135deg,
        #f5f7fa 0%,
        #e9eef5 100%
    );

}

.login-card {
width: 100%;

max-width: 450px;

border-radius: 16px;

}

.login-logo {
width: 80px;

height: 80px;

margin: 0 auto;

display: flex;

align-items: center;

justify-content: center;

font-size: 3rem;

border-radius: 20px;

background-color: #0d6efd;

color: white;

}

.login-main {
    min-height: 100vh;
}

/* ============================= /
/ BOUTON MICROSOFT /
/ ============================= */

.login-card .btn-primary {
padding: 0.75rem 1rem;

font-weight: 500;

}

/* ============================= */
/* Sidebar                      */
/* ============================= */

.sidebar {
    width: 250px;
    min-height: 100vh;
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    z-index: 1000;
}


.sidebar-header {
    padding: 1.5rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}


.sidebar-menu {
    padding: 1.5rem;
    flex-grow: 1;
}


.sidebar-footer {
    padding: 1.5rem;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}


/* ============================= */
/* Liens du menu                */
/* ============================= */

.sidebar .nav-link,
.offcanvas .nav-link {
    padding: 0.75rem 1rem;
    border-radius: 0.5rem;
    transition: background-color 0.2s;
}


.sidebar .nav-link:hover,
.offcanvas .nav-link:hover {
    background-color: rgba(255, 255, 255, 0.1);
}


.sidebar .nav-link.active,
.offcanvas .nav-link.active {
    background-color: #0d6efd;
}


/* ============================= */
/* Contenu principal             */
/* ============================= */

.main-content {
    margin-left: 250px;
    min-height: 100vh;
}


/* ============================= */
/* Mobile                       */
/* ============================= */

@media (max-width: 991.98px) {

    .main-content {
        margin-left: 0;
    }

}
