html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 60px;
}


/*Page Attestation Étude*/

.container {
    max-width: 100%;
}

.custom-card-header {
    background-color: #808080; /* Light grey background */
    color: white /* Black text */
}

.progress {
    height: 10px;
    background-color: #f1f1f1;
    margin-bottom: 20px;
}

.progress-bar {
    background-color: #007bff;
}



.etapes {
    display: flex;
    justify-content: space-between;
    margin: 20px 0;
}

.etape {
    position: relative;
    background-color: #f8f9fa;
    padding: 20px;
    width: 100px; /* Largeur du cercle */
    height: 100px; /* Hauteur du cercle */
    text-align: center;
    cursor: pointer;
    transition: background-color 0.3s ease;
    border: 2px solid #007bff;
    border-radius: 50%;
    display: flex;
    align-items: center; /* Centrer verticalement */
    justify-content: center; /* Centrer horizontalement */
}

.ligne {
    width: 25%; /* La ligne occupe toujours 20% de l'espace */
    border-top: 1px solid lightgray; /* Épaisseur de la ligne */
    margin-top: calc((100px / 2) - (1px / 2)); /* Centrer par rapport au cercle */
}

    .ligne.active {
        border-top: 1px solid #28a745;
    }

.etape.active {
    background-color: #007bff;
    color: white;
}

.etape-description {
    font-size: 14px;
    margin-top: 10px;
}

.derniereEtape {
    margin-right: 0; /* Pour la dernière étape, pas de marges à droite */
}

.etapes .etape.etapeTermine {
    background-color: #28a745; /* Couleur de fond pour les étapes terminées */
    color: white; /* Couleur du texte pour les étapes terminées */
    border-color: #28a745; /* Couleur de la bordure pour les étapes terminées */
}


.form {
    border: 1px solid #ccc;
    border-radius: 5px;
    padding: 20px;
}

.etape-content {
    display: none;
}

    .etape-content.active {
        display: block;
    }

.estInvalide {
    border-color: #dc3545;
}
   

.champObligatoire {
    display: flex;
    align-items: center;
}

    .champObligatoire::after {
        content: " *";
        color: red;
        margin-left: 4px; /* Espace entre le texte du label et l'étoile */
        font-size: 1.2em; /* Ajuster la taille si nécessaire */
    }
/*FIN Page Attestation Étude*/



.custom-select {
    display: block;
    width: 100%;
    height: calc(1.5em + .75rem + 2px);
    padding: .375rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
    /*appearance: auto;*/ /* Pour réinitialiser l'apparence du select */
    -webkit-appearance: menulist;
    -moz-appearance: menulist;
    appearance: menulist;
}

    .custom-select::-ms-expand {
        display: block; /* Pour afficher la flèche sous Edge */
    }

    /*.custom-select:focus {
        border-color: #66afe9;
        outline: 0;
    }*/

    .custom-select:focus {
        border-color: #86b7fe;
        outline: 0;
        box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
    }

    .custom-select option {
        padding: 6px 12px;
    }

    .custom-select:disabled {
        opacity: 0.6;
        cursor: not-allowed; /* Change le curseur pour indiquer qu'il est indisponible */
    }

    .custom-select.estInvalide {
        border-color: #dc3545;
    }


    /*info piece identité*/
.pieces-identite {
    font-family: Arial, sans-serif; 
    font-size: 16px; 
    color: #333; 
    margin: 20px 0; 
}

    .pieces-identite p {
        font-weight: bold; 
        margin-bottom: 10px; 
    }

    .pieces-identite ul {
        list-style-type: disc; 
        padding-left: 20px; 
    }

    .pieces-identite li {
        margin-bottom: 5px; 
    }

.message-securite {
    font-style: italic; 
    color: #d9534f; 
}


.radio-group {
    display: flex;
    flex-direction: column;
}

    .radio-group label {
        margin-bottom: 10px;
        display: flex;
        align-items: center;
    }

    .radio-group input[type="radio"] {
        margin-right: 10px;
    }

    /*Signature*/
.signature-container {
    padding: 15px;
    border: 1px solid #ddd;
    border-radius: 5px;
    background-color: #f9f9f9;
}

    .signature-container label {
        display: flex;
        align-items: center;
    }

    .signature-container input[type="checkbox"] {
        margin-right: 10px;
    }

    .signature-container button {
        margin-top: 15px;
        padding: 10px 20px;
        border: none;
        background-color: #007bff;
        color: white;
        border-radius: 5px;
        cursor: pointer;
    }

.signature {
    font-weight: bold;
    text-decoration: underline;
    margin: 0 10px;
}


.g-recaptcha {
    margin-top: 15px;
}
