/*!***************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/auth.css ***!
  \***************************************************************************************************************/
/* Styles pour le menu d'authentification */
.nav-user-menu {
    position: relative;
}

.nav-link-cta {
    background-color: #28a745;
    color: white !important;
    border-radius: 0.375rem;
    padding: 0.5rem 1rem;
    font-weight: 600;
}

.nav-link-cta:hover {
    background-color: #218838;
    color: white !important;
}

.dropdown-menu {
    border: 1px solid #dee2e6;
    border-radius: 0.5rem;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    min-width: 200px;
}

.dropdown-item {
    padding: 0.5rem 1rem;
}

.dropdown-item:hover {
    background-color: #f8f9fa;
}

/* Amélioration de l'accessibilité */
.dropdown-toggle:focus {
    box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

/* Responsive */
@media (max-width: 768px) {
    .nav-user-menu .dropdown-menu {
        position: static;
        width: 100%;
        box-shadow: none;
        border: none;
        background-color: transparent;
    }
    
    .nav-link-cta {
        margin-top: 0.5rem;
        display: block;
        text-align: center;
    }
}

/* Mode éco-responsable */
@media (prefers-reduced-motion: reduce) {
    .dropdown-menu {
        transition: none !important;
    }
}

/* Styles pour les champs de mot de passe avec toggle visibility */
/* Utilisés dans : login, register, reset_password */
.d-flex {
    display: flex;
    flex-wrap: nowrap;
}

.input-group {
    position: relative;
    width: 100%;
}

.input-group .form-control {
    flex: 1 1 auto;
    min-width: 0;
}

.input-group .toggle-password {
    flex: 0 0 auto;
    background: transparent;
    border: 1px dashed var(--dark);
    border-left: none;
    padding: 0.8rem;
    cursor: pointer;
    border-radius: 0.25rem;
}

.input-group .toggle-password:hover,
.input-group .toggle-password:focus {
    background-color: var(--grey);
    outline: 2px solid var(--primary);
    outline-offset: -2px;
} 
/*!****************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].oneOf[1].use[1]!./assets/styles/login.css ***!
  \****************************************************************************************************************/
/* Styles éco-conçus pour la connexion */
.required-asterisk {
    color: #dc3545;
    font-weight: bold;
    margin-right: 0.25rem;
}

.card-header {
    border-radius: 0.5rem 0.5rem 0 0;
}

button {
    font-size: 1.1rem;
    font-weight: 500;
}

.form-control:focus {
    border-color: #0d6efd;
    box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
}



p.register-link {
    font-size: 1.2rem;
    font-weight: bold;
}

/* Optimisation pour l'impression */
@media print {
    .btn, .alert {
        display: none !important;
    }
}

/* Optimisation pour les petits écrans */
@media (max-width: 576px) {
    .container {
        padding-left: 15px;
        padding-right: 15px;
    }
    
    .card {
        border-radius: 0;
        border-left: none;
        border-right: none;
    }
} 

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGVzL2xvZ2luLmNzcyIsIm1hcHBpbmdzIjoiOzs7QUFBQSwyQ0FBMkM7QUFDM0M7SUFDSSxrQkFBa0I7QUFDdEI7O0FBRUE7SUFDSSx5QkFBeUI7SUFDekIsdUJBQXVCO0lBQ3ZCLHVCQUF1QjtJQUN2QixvQkFBb0I7SUFDcEIsZ0JBQWdCO0FBQ3BCOztBQUVBO0lBQ0kseUJBQXlCO0lBQ3pCLHVCQUF1QjtBQUMzQjs7QUFFQTtJQUNJLHlCQUF5QjtJQUN6QixxQkFBcUI7SUFDckIsNkNBQTZDO0lBQzdDLGdCQUFnQjtBQUNwQjs7QUFFQTtJQUNJLG9CQUFvQjtBQUN4Qjs7QUFFQTtJQUNJLHlCQUF5QjtBQUM3Qjs7QUFFQSxvQ0FBb0M7QUFDcEM7SUFDSSxnREFBZ0Q7QUFDcEQ7O0FBRUEsZUFBZTtBQUNmO0lBQ0k7UUFDSSxnQkFBZ0I7UUFDaEIsV0FBVztRQUNYLGdCQUFnQjtRQUNoQixZQUFZO1FBQ1osNkJBQTZCO0lBQ2pDOztJQUVBO1FBQ0ksa0JBQWtCO1FBQ2xCLGNBQWM7UUFDZCxrQkFBa0I7SUFDdEI7QUFDSjs7QUFFQSx5QkFBeUI7QUFDekI7SUFDSTtRQUNJLDJCQUEyQjtJQUMvQjtBQUNKOztBQUVBLGtFQUFrRTtBQUNsRSxvREFBb0Q7QUFDcEQ7SUFDSSxhQUFhO0lBQ2IsaUJBQWlCO0FBQ3JCOztBQUVBO0lBQ0ksa0JBQWtCO0lBQ2xCLFdBQVc7QUFDZjs7QUFFQTtJQUNJLGNBQWM7SUFDZCxZQUFZO0FBQ2hCOztBQUVBO0lBQ0ksY0FBYztJQUNkLHVCQUF1QjtJQUN2Qiw4QkFBOEI7SUFDOUIsaUJBQWlCO0lBQ2pCLGVBQWU7SUFDZixlQUFlO0lBQ2Ysc0JBQXNCO0FBQzFCOztBQUVBOztJQUVJLDZCQUE2QjtJQUM3QixpQ0FBaUM7SUFDakMsb0JBQW9CO0FBQ3hCLEU7Ozs7QUM1RkEsd0NBQXdDO0FBQ3hDO0lBQ0ksY0FBYztJQUNkLGlCQUFpQjtJQUNqQixxQkFBcUI7QUFDekI7O0FBRUE7SUFDSSxnQ0FBZ0M7QUFDcEM7O0FBRUE7SUFDSSxpQkFBaUI7SUFDakIsZ0JBQWdCO0FBQ3BCOztBQUVBO0lBQ0kscUJBQXFCO0lBQ3JCLGlEQUFpRDtBQUNyRDs7OztBQUlBO0lBQ0ksaUJBQWlCO0lBQ2pCLGlCQUFpQjtBQUNyQjs7QUFFQSxtQ0FBbUM7QUFDbkM7SUFDSTtRQUNJLHdCQUF3QjtJQUM1QjtBQUNKOztBQUVBLHdDQUF3QztBQUN4QztJQUNJO1FBQ0ksa0JBQWtCO1FBQ2xCLG1CQUFtQjtJQUN2Qjs7SUFFQTtRQUNJLGdCQUFnQjtRQUNoQixpQkFBaUI7UUFDakIsa0JBQWtCO0lBQ3RCO0FBQ0osRSIsInNvdXJjZXMiOlsid2VicGFjazovLy8uL2Fzc2V0cy9zdHlsZXMvYXV0aC5jc3MiLCJ3ZWJwYWNrOi8vLy4vYXNzZXRzL3N0eWxlcy9sb2dpbi5jc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLyogU3R5bGVzIHBvdXIgbGUgbWVudSBkJ2F1dGhlbnRpZmljYXRpb24gKi9cclxuLm5hdi11c2VyLW1lbnUge1xyXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG59XHJcblxyXG4ubmF2LWxpbmstY3RhIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMyOGE3NDU7XHJcbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAuMzc1cmVtO1xyXG4gICAgcGFkZGluZzogMC41cmVtIDFyZW07XHJcbiAgICBmb250LXdlaWdodDogNjAwO1xyXG59XHJcblxyXG4ubmF2LWxpbmstY3RhOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMTg4Mzg7XHJcbiAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcclxufVxyXG5cclxuLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2RlZTJlNjtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcclxuICAgIGJveC1zaGFkb3c6IDAgMC41cmVtIDFyZW0gcmdiYSgwLCAwLCAwLCAwLjE1KTtcclxuICAgIG1pbi13aWR0aDogMjAwcHg7XHJcbn1cclxuXHJcbi5kcm9wZG93bi1pdGVtIHtcclxuICAgIHBhZGRpbmc6IDAuNXJlbSAxcmVtO1xyXG59XHJcblxyXG4uZHJvcGRvd24taXRlbTpob3ZlciB7XHJcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhO1xyXG59XHJcblxyXG4vKiBBbcOpbGlvcmF0aW9uIGRlIGwnYWNjZXNzaWJpbGl0w6kgKi9cclxuLmRyb3Bkb3duLXRvZ2dsZTpmb2N1cyB7XHJcbiAgICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gcmdiYSgwLCAxMjMsIDI1NSwgMC4yNSk7XHJcbn1cclxuXHJcbi8qIFJlc3BvbnNpdmUgKi9cclxuQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XHJcbiAgICAubmF2LXVzZXItbWVudSAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgcG9zaXRpb246IHN0YXRpYztcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBib3gtc2hhZG93OiBub25lO1xyXG4gICAgICAgIGJvcmRlcjogbm9uZTtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIH1cclxuICAgIFxyXG4gICAgLm5hdi1saW5rLWN0YSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogMC41cmVtO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgIH1cclxufVxyXG5cclxuLyogTW9kZSDDqWNvLXJlc3BvbnNhYmxlICovXHJcbkBtZWRpYSAocHJlZmVycy1yZWR1Y2VkLW1vdGlvbjogcmVkdWNlKSB7XHJcbiAgICAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgdHJhbnNpdGlvbjogbm9uZSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBTdHlsZXMgcG91ciBsZXMgY2hhbXBzIGRlIG1vdCBkZSBwYXNzZSBhdmVjIHRvZ2dsZSB2aXNpYmlsaXR5ICovXHJcbi8qIFV0aWxpc8OpcyBkYW5zIDogbG9naW4sIHJlZ2lzdGVyLCByZXNldF9wYXNzd29yZCAqL1xyXG4uZC1mbGV4IHtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcclxufVxyXG5cclxuLmlucHV0LWdyb3VwIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG59XHJcblxyXG4uaW5wdXQtZ3JvdXAgLmZvcm0tY29udHJvbCB7XHJcbiAgICBmbGV4OiAxIDEgYXV0bztcclxuICAgIG1pbi13aWR0aDogMDtcclxufVxyXG5cclxuLmlucHV0LWdyb3VwIC50b2dnbGUtcGFzc3dvcmQge1xyXG4gICAgZmxleDogMCAwIGF1dG87XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlcjogMXB4IGRhc2hlZCB2YXIoLS1kYXJrKTtcclxuICAgIGJvcmRlci1sZWZ0OiBub25lO1xyXG4gICAgcGFkZGluZzogMC44cmVtO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgYm9yZGVyLXJhZGl1czogMC4yNXJlbTtcclxufVxyXG5cclxuLmlucHV0LWdyb3VwIC50b2dnbGUtcGFzc3dvcmQ6aG92ZXIsXHJcbi5pbnB1dC1ncm91cCAudG9nZ2xlLXBhc3N3b3JkOmZvY3VzIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6IHZhcigtLWdyZXkpO1xyXG4gICAgb3V0bGluZTogMnB4IHNvbGlkIHZhcigtLXByaW1hcnkpO1xyXG4gICAgb3V0bGluZS1vZmZzZXQ6IC0ycHg7XHJcbn0gIiwiQGltcG9ydCAnYXV0aC5jc3MnO1xyXG5cclxuLyogU3R5bGVzIMOpY28tY29uw6d1cyBwb3VyIGxhIGNvbm5leGlvbiAqL1xyXG4ucmVxdWlyZWQtYXN0ZXJpc2sge1xyXG4gICAgY29sb3I6ICNkYzM1NDU7XHJcbiAgICBmb250LXdlaWdodDogYm9sZDtcclxuICAgIG1hcmdpbi1yaWdodDogMC4yNXJlbTtcclxufVxyXG5cclxuLmNhcmQtaGVhZGVyIHtcclxuICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbSAwLjVyZW0gMCAwO1xyXG59XHJcblxyXG5idXR0b24ge1xyXG4gICAgZm9udC1zaXplOiAxLjFyZW07XHJcbiAgICBmb250LXdlaWdodDogNTAwO1xyXG59XHJcblxyXG4uZm9ybS1jb250cm9sOmZvY3VzIHtcclxuICAgIGJvcmRlci1jb2xvcjogIzBkNmVmZDtcclxuICAgIGJveC1zaGFkb3c6IDAgMCAwIDAuMnJlbSByZ2JhKDEzLCAxMTAsIDI1MywgMC4yNSk7XHJcbn1cclxuXHJcblxyXG5cclxucC5yZWdpc3Rlci1saW5rIHtcclxuICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbn1cclxuXHJcbi8qIE9wdGltaXNhdGlvbiBwb3VyIGwnaW1wcmVzc2lvbiAqL1xyXG5AbWVkaWEgcHJpbnQge1xyXG4gICAgLmJ0biwgLmFsZXJ0IHtcclxuICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIE9wdGltaXNhdGlvbiBwb3VyIGxlcyBwZXRpdHMgw6ljcmFucyAqL1xyXG5AbWVkaWEgKG1heC13aWR0aDogNTc2cHgpIHtcclxuICAgIC5jb250YWluZXIge1xyXG4gICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAuY2FyZCB7XHJcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcclxuICAgICAgICBib3JkZXItbGVmdDogbm9uZTtcclxuICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XHJcbiAgICB9XHJcbn0gIl0sIm5hbWVzIjpbXSwic291cmNlUm9vdCI6IiJ9*/