@import url("fonts/avenir/fonts-QK5NV2P.css");

/***** SKEMA STYLE *****/
:root, [data-bs-theme=light] {
    --bs-blue: #0d6efd;
    --bs-indigo: #6610f2;
    --bs-purple: #6f42c1;
    --bs-pink: #d63384;
    --bs-red: #dc3545;
    --bs-orange: #fd7e14;
    --bs-yellow: #ffc107;
    --bs-green: #198754;
    --bs-teal: #20c997;
    --bs-cyan: #0dcaf0;
    --bs-black: #000;
    --bs-white: #fff;
    --bs-gray: #6c757d;
    --bs-gray-dark: #343a40;
    --bs-gray-100: #f8f9fa;
    --bs-gray-200: #e9ecef;
    --bs-gray-300: #dee2e6;
    --bs-gray-400: #ced4da;
    --bs-gray-500: #adb5bd;
    --bs-gray-600: #6c757d;
    --bs-gray-700: #495057;
    --bs-gray-800: #343a40;
    --bs-gray-900: #212529;
    --bs-primary: #E7433C;
    --bs-secondary: #6c757d;
    --bs-success: #198754;
    --bs-info: #0dcaf0;
    --bs-warning: #ffc107;
    --bs-danger: #dc3545;
    --bs-light: #f8f9fa;
    --bs-dark: #212525;
    --bs-primary-rgb: 231, 67, 60;
    --bs-secondary-rgb: 108, 117, 125;
    --bs-success-rgb: 25, 135, 84;
    --bs-info-rgb: 13, 202, 240;
    --bs-warning-rgb: 255, 193, 7;
    --bs-danger-rgb: 220, 53, 69;
    --bs-light-rgb: 248, 249, 250;
    --bs-dark-rgb: 33, 37, 41;
    --bs-primary-text-emphasis: #052c65;
    --bs-secondary-text-emphasis: #2b2f32;
    --bs-success-text-emphasis: #0a3622;
    --bs-info-text-emphasis: #055160;
    --bs-warning-text-emphasis: #664d03;
    --bs-danger-text-emphasis: #58151c;
    --bs-light-text-emphasis: #495057;
    --bs-dark-text-emphasis: #495057;
    --bs-primary-bg-subtle: #cfe2ff;
    --bs-secondary-bg-subtle: #e2e3e5;
    --bs-success-bg-subtle: #d1e7dd;
    --bs-info-bg-subtle: #cff4fc;
    --bs-warning-bg-subtle: #fff3cd;
    --bs-danger-bg-subtle: #f8d7da;
    --bs-light-bg-subtle: #fcfcfd;
    --bs-dark-bg-subtle: #ced4da;
    --bs-primary-border-subtle: #9ec5fe;
    --bs-secondary-border-subtle: #c4c8cb;
    --bs-success-border-subtle: #a3cfbb;
    --bs-info-border-subtle: #9eeaf9;
    --bs-warning-border-subtle: #ffe69c;
    --bs-danger-border-subtle: #f1aeb5;
    --bs-light-border-subtle: #e9ecef;
    --bs-dark-border-subtle: #adb5bd;
    --bs-white-rgb: 255, 255, 255;
    --bs-black-rgb: 0, 0, 0;
    --bs-font-sans-serif: "Avenir-Medium", sans-serif;
    --bs-font-monospace: "Avenir-Medium", sans-serif;
    --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
    --bs-body-font-family: "Avenir-Medium", sans-serif;
    --bs-body-font-size: 1rem;
    --bs-body-font-weight: 400;
    --bs-body-line-height: 1.5;
    --bs-body-color: #212529;
    --bs-body-color-rgb: 33, 37, 41;
    --bs-body-bg: #fff;
    --bs-body-bg-rgb: 255, 255, 255;
    --bs-emphasis-color: #000;
    --bs-emphasis-color-rgb: 0, 0, 0;
    --bs-secondary-color: rgba(33, 37, 41, 0.75);
    --bs-secondary-color-rgb: 33, 37, 41;
    --bs-secondary-bg: #e9ecef;
    --bs-secondary-bg-rgb: 233, 236, 239;
    --bs-tertiary-color: rgba(33, 37, 41, 0.5);
    --bs-tertiary-color-rgb: 33, 37, 41;
    --bs-tertiary-bg: #F5EFE3;
    --bs-tertiary-bg-rgb: 241, 236, 225;
    --bs-heading-color: inherit;
    --bs-link-color: #ffffff;
    --bs-link-color-rgb: 13, 110, 253;
    --bs-link-decoration: underline;
    --bs-link-hover-color: #ffffff;
    --bs-link-hover-color-rgb: 10, 88, 202;
    --bs-code-color: #d63384;
    --bs-highlight-color: #212529;
    --bs-highlight-bg: #fff3cd;
    --bs-border-width: 1px;
    --bs-border-style: solid;
    --bs-border-color: #dee2e6;
    --bs-border-color-translucent: rgba(0, 0, 0, 0.175);
    --bs-border-radius: 0.5rem;
    --bs-border-radius-sm: 0.25rem;
    --bs-border-radius-lg: 0.5rem;
    --bs-border-radius-xl: 1rem;
    --bs-border-radius-xxl: 2rem;
    --bs-border-radius-2xl: var(--bs-border-radius-xxl);
    --bs-border-radius-pill: 50rem;
    --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
    --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);
    --bs-btn-focus-shadow-rgb: 231, 67, 60;
    --bs-focus-ring-width: 0.25rem;
    --bs-focus-ring-opacity: 0.25;
    --bs-focus-ring-color: rgba(13, 110, 253, 0.25);
    --bs-form-valid-color: #198754;
    --bs-form-valid-border-color: #198754;
    --bs-form-invalid-color: #dc3545;
    --bs-form-invalid-border-color: #dc3545;
    --sk-background-secondary: #F8F8F8;
    --sk-border: #CECECE;
    --sk-border-dark: #888888;
    --sk-green-validate: #16b12b;
    --sk-green-dark: #259c35;
    --sk-beige-light: #FBFAF6;
    --sk-beige: #F1ECE1;
    --sk-grey: #6B6B6B;
}

a:hover {
    text-decoration: none;
}

.bg-primary {
    --bs-bg-opacity: 1;
    background: transparent linear-gradient(90deg, var(--bs-primary), #d55145 26%, #c9443f 50%, #b93338 75%, #bf0030) 0 0 no-repeat padding-box !important;
}

.bg-dark {
    --bs-bg-opacity: 1;
    background-color: #252525 !important;
}

.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-font-weight: normal;
    --bs-btn-font-size: 14px;
    --bs-btn-hover-color: #fff;
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--bs-gray-800);
    --bs-btn-active-border-color: var(--bs-gray-800);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #fff;
    --bs-btn-bg: var(--bs-dark);
    --bs-btn-border-radius: 50px;
    --bs-btn-border-color: var(--bs-dark);
    --bs-btn-disabled-bg: var(--bs-dark);
    --bs-btn-disabled-border-color: var(--bs-dark);
    --bs-btn-hover-bg: var(--bs-gray-800);
    --bs-btn-hover-border-color: var(--bs-gray-800);
    --bs-btn-padding-x: 1rem;
    --bs-btn-padding-y: 0.5rem;
    text-transform: uppercase;
}

.btn-secondary {
    --bs-btn-color: var(--bs-dark);
    --bs-btn-font-weight: normal;
    --bs-btn-font-size: 14px;
    --bs-btn-hover-color: var(--bs-dark);
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--sk-beige-light);
    --bs-btn-active-border-color: var(--bs-dark);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-bg: transparent;
    --bs-btn-border-radius: 50px;
    --bs-btn-border-color: var(--bs-dark);
    --bs-btn-hover-bg: var(--sk-beige-light);
    --bs-btn-hover-border-color: var(--bs-gray-800);
    --bs-btn-disabled-color: var(--bs-gray-800);
    --bs-btn-disabled-bg: #fff;
    --bs-btn-disabled-border-color: var(--bs-gray-800);
    --bs-btn-padding-x: 1rem;
    --bs-btn-padding-y: 0.5rem;
    text-transform: uppercase;
}

.bg-grey {
    background-color: var(--sk-background-secondary)
}

.bg-beige-light {
    background-color: var(--sk-beige-light) !important;
}

.bg-beige {
    background-color: var(--sk-beige);
}

.text-grey {
    color: var(--sk-border-dark)
}

.text-beige {
    color: var(--sk-beige)
}

/***** HEADER *****/
.bg-card {
    border-color: var(--bs-white);
    border-radius: 4px;
    background-color: var(--bs-white);
}

.divider {
    width: 100%;
    border: 1px solid var(--bs-gray);
}

#social ul li {
    border: none;
    background: none;
    padding: 5px;
}

#social i {
    color: #FFFFFF;
    font-size: 1rem;
}

.header-flex {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.header-actions {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 20px;
}

.new-banner {
    height: 300px;
    width: 100%;
    background-image: url("../images/skema-banner-EHlJPOG.jpeg") !important;
    background-position: bottom center;
    background-repeat: no-repeat;
    background-size: 650px;
}

.interview-btn {
    display: flex;
    gap: 15px;
    align-items: center;
    color: var(--bs-dark);
    text-decoration: none;
}

.dropdown-menu {
    position: absolute;
    inset: 0px auto auto 0px;
    margin: 0px;
    transform: translate(-28px, 26px);
    top: 15px !important;
    left: -30px !important;
}

@media (min-width: 768px) {
    .header-container .navbar-collapse {
        display: none !important;
    }

    .interview-btn {
        padding: 8px 24px;
        border: 1px solid var(--bs-dark);
        color: var(--bs-dark);
        font-weight: bold;
        text-decoration: none;
    }

    .dropdown-menu {
        top: 0 !important;
        left: 0 !important;
    }
}

/***** FOOTER *****/

.footer {
    min-height: 185px;
    padding-top: 15px;
    display: flex;
    justify-content: start;
    align-items: center;
    flex-wrap: wrap;
    background-color: var(--bs-dark) !important;
}

.footer span, .footer a, .footer p {
    color: var(--sk-beige) !important;
    font-weight: bold;
    text-decoration: none;
    display: flex;
    flex-wrap: wrap;
    gap: 3rem;
    align-items: center;
}

.footer table {
    border-color: var(--sk-beige) !important;
}

.footer > :last-child .footer-link {
    border: none;
}

.footer-link {
    border-right: 1px solid var(--sk-beige);
    padding: 0 10px;
}

.footer-link a {
    color: white;
}

@media (min-width: 768px) {
    .footer {
        justify-content: center;
    }
}

/***** BODY *****/

#main {
    /* Hauteur de l'écran - hauteur du header & footer */
    min-height: calc(100vh - 314px);
}

.page-title {
    padding: 25px 0 20px 0;
    font-weight: bold;

    @media (min-width: 768px) {
        font-weight: normal;
        padding: 10px 0;
    }
}

.content {
    padding: 0 20px;

    @media (min-width: 768px) {
        padding: 0;
    }
}

/***** MENU *****/

#menu_logout {
    padding: 30px 25px;
    border-bottom: none;
    background-color: var(--sk-beige);
}

#menu_header {
    padding: 30px 25px;
    border-bottom: 1px solid var(--sk-border);
    background-color: var(--sk-beige);
}

.menu .ul {
    list-style-type: none;
}

.menu-item {
    padding: 20px 25px;
    border-bottom: 1px solid var(--sk-border);
    background-color: var(--sk-beige-light);
}

.menu-item-child {
    padding: 15px 50px;
    border-bottom: 1px solid var(--sk-border);
    background-color: var(--sk-beige-light);
}

.nav-action {
    font-size: 14px;
}

.nav-link {
    display: flex;
    align-items: center;
    gap: 15px;
}

.nav-link span {
    text-decoration: none !important;
}

@media (min-width: 768px) {
    #menu_login.current {
        font-weight: normal;
        border: none;
    }

    #menu_logout {
        border-bottom: none;
        background-color: var(--sk-beige-light);
    }

    #menu_header {
        border-bottom: none;
        background-color: var(--sk-beige);
    }

    .nav-action-full {
        border-radius: 50px;
        background-color: var(--bs-dark) !important;
        color: var(--sk-beige) !important;
        padding: 5px 20px;
    }

    .nav-action-full:hover {
        background-color: var(--bs-gray-800) !important;
        color: var(--sk-beige) !important;
    }

    .nav-action-empty {
        border: 1px solid var(--bs-dark);
        border-radius: 50px;
        color: var(--bs-dark);
        padding: 5px 20px;
    }

    .nav-action-empty:hover {
        background-color: var(--sk-beige) !important;
    }

    .current {
        font-weight: bold;
        border-right: 4px solid var(--bs-dark);
    }

    .current_ancestor > :first-child {
        font-weight: bold;
        border-right: 4px solid var(--bs-dark);
    }

    .menu-left {
        min-width: 220px;
        max-width: 280px;
    }

    .menu-item {
        width: 100%;
        height: 100%;
        padding: 5px 20px;
        margin: 20px 0;
        border-bottom: none;
        background-color: var(--sk-beige);
    }

    .menu-item-child {
        margin-left: 50px;
        padding: 5px 0;
        border-bottom: none;
        background-color: var(--sk-beige);
    }

    .menu-item-child.current {
        color: var(--sk-beige);
        font-weight: bold;
        background-color: var(--bs-dark);
    }
}

@media (min-width: 1024px) {
    .menu-left {
        width: 280px;
    }
}

/***** BLOCKS *****/
.link-white p a {
    color: white !important;
}

.info-msg {
    margin-top: -1rem;
    font-size: .875rem;
    font-style: italic;
}

/***** FORM *****/

.form-required::after, fieldset.legend-required > legend::after {
    display: inline-block;
    width: 6px;
    height: 6px;
    margin: 0 0.3em;
    content: "";
    vertical-align: super;
    background-image: url("../images/required-oMhuzpJ.svg");
    background-repeat: no-repeat;
    background-size: 6px 6px;
}

.form-card {
    padding: 20px;
    background-color: white;
}

.form-select {
    border: none;
    border-bottom: 1px solid black;
    border-radius: 0;
}

.form-select:focus {
    border-bottom: 1px solid black;
    box-shadow: none;
}

.form-check-input {
    border-color: var(--sk-border-dark);
}

.form-check-input:checked {
    border: 3px solid white;
    background-color: black;
    box-shadow: 0 0 0 2px black;
}

.form-check-input:checked[type=radio] {
    --bs-form-check-bg-image: none;
}

.form-checkbox > .form-check > .form-check-input {
    border-radius: 4px;
}

.form-checkbox > .form-check > .form-check-input:checked {
    border: none;
    background-color: black;
    box-shadow: none;
}

.form-control {
    border: none;
    border-bottom: 1px solid black;
    border-radius: 0;
    transition: all 0.1s ease-in;
}

.form-control:focus {
    transition: all 0.1s ease-in;
    border-bottom: 3px solid black;
    box-shadow: none;
}

.form-control::placeholder {
    color: var(--sk-grey);
    font-family: 'Source SansSerif Pro', serif;
}

.exam-languages {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;

    @media (min-width: 768px) and (max-width: 991px) {
        grid-template-columns: repeat(3, 1fr);
    }

    @media (min-width: 992px) {
        grid-template-columns: repeat(4, 1fr);
    }

}

#profile-jury-form-content {
    @media (min-width: 1400px) {
        padding-right: 100px;
    }
}

#login-page .form-label {
    font-weight: bold;
}

#login-page input::placeholder {
    color: var(--bs-gray-500);
}

#request-reset-password-main .form-label {
    font-weight: bold;
}

@media (min-width: 768px) {
    .form-card {
        margin: 20px 0;
        border-radius: 8px;
        box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
    }

    .form-content {
        max-width: 500px;
    }

    .form-check-inline {
        margin-right: 3rem;
    }
}

/***** CONTACT *****/
.contact-typology-title {
    text-decoration: underline
}

/***** PROFILE-CARDS *****/
.profile-cards {
    @media (min-width: 768px) and (max-width: 991px) {
        display: flex;
        flex-direction: column;
    }
}

.profile-card .card-body {
    display: flex !important;
    flex-direction: column;
    justify-content: space-between;

    @media (min-width: 992px) {
        min-height: 280px;
    }

    @media (min-width: 1200px) {
        min-height: 210px;
    }
}

/***** PASSWORD *****/

.password-container {
    position: relative;
    margin-top: 40px;
}

.password-input {
    padding-right: 60px !important;
}

.password-icon {
    position: absolute;
    top: 28px;
    right: 10px;
    background-color: transparent;
    border: none;
    font-size: 30px;
}

/***** CALENDAR *****/

.campus {
    display: flex;
    flex-grow: 1;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 10px 30px;
    text-transform: uppercase;
    border: 1px solid black;
    background-color: white;
    border-bottom: none;

    @media (min-width: 768px) {
        border-bottom: 1px solid black;
        border-right: none;
    }
}

.campus:last-child {
    border-bottom: 1px solid black;

    @media (min-width: 768px) {
        border-right: 1px solid black;
    }
}


.typology {
    width: 100%;

    @media (min-width: 992px) {
        width: 33%;
    }
}

.campus-selected {
    background: var(--sk-beige);
}

.campus:hover {
    background-color: var(--sk-beige);
    cursor: pointer;
}

.calendar-content {
    flex: 0.5;
}

.calendar-dates {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    grid-gap: 15px;
    margin-bottom: 20px;
}

.date {
    text-align: center;
    font-weight: bold;
    padding: 15px 0;
    border: 2px solid transparent;
    border-radius: 4px;
}

.date-not-available {
    font-weight: normal;
}

.date-available {
    border-bottom: 2px solid var(--bs-dark);
    cursor: pointer;
}

.date-available:hover {
    border: 2px solid var(--bs-dark);
}

.date-retained, .date-booked {
    border-bottom: 3px solid var(--bs-red);
}

.date-scheduled, .date-removal, .date-blocked {
    background-color: var(--sk-green-validate);
    border-radius: 4px;
    color: white;
}

.date-complete {
    background-color: var(--bs-gray);
    border-radius: 4px;
    color: white;
}

/***** RECAP AVAILABILITIES *****/
.recap-availabilities-list {
    padding: 0 20px 20px 20px;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 20px;

    @media (min-width: 768px) {
        padding: 0 0 20px 0;
    }

    @media (min-width: 992px) {
        grid-template-columns: repeat(2, 1fr);
    }

    @media (min-width: 1401px) {
        grid-template-columns: repeat(3, 1fr);
    }
}

.recap-availabilities-card {
    padding: 20px;
    background-color: white;
    border-radius: 8px;
    box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
}

.recap-card-content {
    display: flex;
    flex-direction: column;
}

.recap-card-content--disabled {
    color: grey;
}

.recap-card-head {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.recap-card-valid {
    color: var(--sk-green-validate);
}

.recap-card-passed {
    color: grey;
}

/***** BROCHURES ENTRETIEN *****/
.brochure {
    @media (max-width: 768px) {
        padding: 0 20px;
    }
}

.brochures-links > div {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.brochures-links a {
    text-decoration: none;
    padding: 10px 15px;
    border: 1px solid black;
    border-radius: 50px;
}

/***** PAGINATION *****/
.pagination  {
    /* GLOBAL*/
    --bs-pagination-bg: var(--bs-white);
    --bs-pagination-color: var(--bs-dark);

    /*BORDER */
    --bs-pagination-border-width: var(--bs-border-width);
    --bs-pagination-border-color: var(--bs-black);
    --bs-pagination-border-radius: 50px;

    /* HOVER */
    --bs-pagination-hover-bg: var(--sk-beige);
    --bs-pagination-hover-color: var(--bs-dark);
    --bs-pagination-hover-border-color: var(--bs-dark);

    /* FOCUS */
    --bs-pagination-focus-color: #FFFFFF;
    --bs-pagination-focus-bg: var(--sk-beige);
    --bs-pagination-focus-box-shadow: none;

    /* ACTIVE */
    --bs-pagination-active-color: #FFFFFF;
    --bs-pagination-active-bg: #000000;
    --bs-pagination-active-border-color: #000000;

    /* DISABLED */
    --bs-pagination-disabled-color: #FFFFFF;
    --bs-pagination-disabled-bg: #a7a9ab;
    --bs-pagination-disabled-border-color: #a7a9ab;
}

a.page-link:hover {
    color: var(--bs-dark);
}