
body {
    min-height: 100vh;
    position: relative;
    margin: 0;
    box-sizing: border-box;
    /*background-color: #d7d6d6;*/
}

/* --- header ------------------------------------------------------------------------------------------------------------------------------------- */

.navbar-toggler {
    color: #beccd5;
    border-color: #beccd5;
    font-size: 0.7em;
    padding: var(--bs-navbar-toggler-padding-y) 0.5rem;
}

/* --- footer ------------------------------------------------------------------------------------------------------------------------------------- */

footer {
    position: absolute;
    bottom: 0;
    width: 100%;
    margin-top: 2rem;
    padding: 1rem 2rem;
    background-color: #414648;
}

footer a {
    color: #beccd5;
    text-decoration: none;
}

footer h5 {
    color: #f0f5f2;
}

footer a:hover {
    color: #94b7ce;
    text-decoration: none;
}

footer li {
    color: #dcc5c5;
}

/* --- Fix de la hauteur du footer ---------------------------------------------------------------------------------------------------------------- */

@media (max-width: 575px) {
    body {
        padding-bottom: 500px;
    }

    footer {
        height: 500px;
    }
}

@media (min-width: 576px) {
    body {
        padding-bottom: 370px;
    }

    footer {
        height: 370px;
    }
}

@media (min-width: 768px) {
    body {
        padding-bottom: 310px;
    }

    footer {
        height: 310px;
    }
}

@media (min-width: 992px) {
    body {
        padding-bottom: 250px;
    }

    footer {
        height: 250px;
    }
}

/* ------------------------------------------------------------------------------------------------------------------------------------------------ */

.nav-link {
    color: #e3dddd;
}

.nav-link:hover {
    color: #9a9696;
}

.vr {
    color: #ffffff;
    margin: 0.5em 0.8em 0 0.8em;
    height: 20px;
    width: 0.1em;
}

.bg-nav-black {
    --bs-bg-opacity: 1;
    background-color: #232222;!important
}

/* --- Barre de navigation du profil -------------------------------------------------------------------------------------------------------------- */

.nav-link-profil {
    color: #414648;
    text-decoration: none;
}

.nav-link-profil:hover {
    color: #217495;
    text-decoration: none;
}

.nav-link-active {
    color: #414648;
    /*border-top: 2px solid #414648;*/
    border-bottom: 2px solid #414648;
    padding: 0.3em 0;
}

@media (max-width: 575px) {
    .text-profil {
        display: none;
    }
}

.text-profil {
    margin-left: 0.5em;
}

/* --- modif boutons ------------------------------------------------------------------------------------------------------------------------------ */

.btn-outline-profil {
    --bs-btn-color: #e3dddd;
    --bs-btn-border-color: #212529;
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg:transparent;
    --bs-btn-hover-border-color: #212529;
    --bs-btn-focus-shadow-rgb: 25,135,84;
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: transparent;
    --bs-btn-active-border-color: #212529;
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    --bs-btn-disabled-color: #e3dddd;
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: #e3dddd;
    --bs-gradient: none;
}

.btn-outline-profil:hover {
    color: #e3dddd;
    background-color: transparent;
    border-color: #212529;
}

.bg-selected {
    background-color: #eceae4;
}

.navbar-toggler-icon {
    display: inline-block;
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
    background-image: var(--bs-navbar-toggler-icon-bg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100%;
}

/* ------------------------------------------------------------------------------------------------------------------------------------------------ */

.flag {
    width: 25px;
}

.infos .services {
    font-size: 0.8em;
}

.list-group {
    --bs-list-group-item-padding-y: 0.1rem;
    font-size: 0.8rem;
}

.card {
    --bs-card-border-radius: 0;
}

.card-house {
    border: 0;
    border-color: #0a3622;
}

.card-img, .card-img-top {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.card-footer {
    padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);
    color: transparent;
    background-color: transparent;
    border-top: 0;
    padding-top: 0;
}

.icon-perso {
    width: 16px;
    filter: invert(30%) sepia(1%) saturate(2476%) hue-rotate(86deg) brightness(50%) contrast(50%);
}

.section_title {
    color: #0f6674;
}

@media (max-width: 575px) {
    .section_title {
        font-size: 1.1em;
    }
}

.description {
    --tw-prose-body: #374151;
    --tw-prose-headings: #111827;
    --tw-prose-lead: #4b5563;
    --tw-prose-links: #111827;
    --tw-prose-bold: #111827;
    --tw-prose-counters: #6b7280;
    --tw-prose-bullets: #d1d5db;
    --tw-prose-hr: #e5e7eb;
    --tw-prose-quotes: #111827;
    --tw-prose-quote-borders: #e5e7eb;
    --tw-prose-captions: #6b7280;
    --tw-prose-code: #111827;
    --tw-prose-pre-code: #e5e7eb;
    --tw-prose-pre-bg: #1f2937;
    --tw-prose-th-borders: #d1d5db;
    --tw-prose-td-borders: #e5e7eb;
    --tw-prose-invert-body: #d1d5db;
    --tw-prose-invert-headings: #fff;
    --tw-prose-invert-lead: #9ca3af;
    --tw-prose-invert-links: #fff;
    --tw-prose-invert-bold: #fff;
    --tw-prose-invert-counters: #9ca3af;
    --tw-prose-invert-bullets: #4b5563;
    --tw-prose-invert-hr: #374151;
    --tw-prose-invert-quotes: #f3f4f6;
    --tw-prose-invert-quote-borders: #374151;
    --tw-prose-invert-captions: #9ca3af;
    --tw-prose-invert-code: #fff;
    --tw-prose-invert-pre-code: #d1d5db;
    --tw-prose-invert-pre-bg: rgba(0,0,0,.5);
    --tw-prose-invert-th-borders: #4b5563;
    --tw-prose-invert-td-borders: #374151;
    font-size: 1rem;
    line-height: 1.75;
}

.text-justify {
    text-align: justify;
    text-justify: inter-word;
}

/* --- Calendrier --------------------------------------------------------------------------------------------------------------------------------- */

table.lightgrey-weekends tbody td:nth-child(n+6) {
    background-color: #f3f3f3;
}

#calendar {
    border: 1px solid gray;
    padding: 1rem;
}

.zabuto-calendar__day, .zabuto-calendar__day--today {
    text-align: center;
    color: #0f5132;
    background-color: #d1e7dd;
    border: 1px solid #badbcc;
}

.zabuto-calendar__day--today > span {
    color: var(--bs-danger-text-emphasis);
    text-decoration: underline;
    font-weight: bold;
    /*border: 1px solid black;
    border-radius: 0.5em;
    padding: 0.1em 0.3em 0 0.3em;*/
}

.reserved {
    border: 1px solid;
    color: var(--bs-danger-text-emphasis);
    background-color: var(--bs-danger-bg-subtle);
    border-color: var(--bs-danger-border-subtle);
}

.simple-text {
    font-size: 0.9rem;
}

/* --- Surcharge pour certains éléments de formulaire --------------------------------------------------------------------------------------------- */

.form-control {
    color: var(--bs-body-color);
    background-color: var(--bs-body-bg);
    border: var(--bs-border-width) solid #0f6674;
    border-radius: var(--bs-border-radius);
    transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

.input-group-text {
    border: var(--bs-border-width) solid #0f6674;
}

.input-group-sm > .input-group-text {
    border-radius: var(--bs-border-radius);
}

.form-check-input {
    border: var(--bs-border-width) solid #0f6674;
}

/* --- Messagerie --------------------------------------------------------------------------------------------------------------------------------- */

/*.list-discussion {
    color: #f6efef;
}*/

.list-discussion:hover {
    color: #351a1a;
}

p.message {
    width: 75%;
    border: 1px solid gray;
    border-radius: 1rem;
    /*font-family: "Courier New";*/
    font-size: 0.8em;
    white-space: pre-line;
}

p.message_admin {
    background-color: #f4efef
}

p.message_renter {
    background-color: #dfdfec
}

.date_message {
    color: #141125;
    font-style: italic;
}

.author_message {
    color: #141125;
    font-weight: bolder;
}

#return_list_msg {
    display: none;
}

@media (max-width: 768px) {
    #l_message {
        display: none;
    }
}

@media (min-width: 768px) {
    #l_message {
        display: block;
    }
    #return_list_msg {
        display: none;
    }
}

/* ------------------------------------------------------------------------------------------------------------------------------------------------ */

.badge_turquoise {
    color: #1c5d60;
    background: #e2f1f1;
    border: 1px solid #086156;
}

.border-success {
    --bs-border-opacity: 1;
    border-color: rgba(15,102,116) !important;
}

.bg-cookie {
    border: 1px solid gray;
    background-color: #eef3ee;
    color: gray;
    margin: 1em;
}

/* --- Accordéon ---------------------------------------------------------------------------------------------------------------------------------- */

.accordion {
    --bs-accordion-btn-focus-box-shadow: 0 0 0 0rem rgba(0, 0, 0, 0);
    --bs-accordion-active-bg: #F9FAFB;
}

.accordion_search {
    --bs-accordion-btn-padding-x: 0.50rem;
    --bs-accordion-btn-padding-y: 0.25rem;
    --bs-accordion-border-radius: 0;
    --bs-accordion-inner-border-radius: 0;
    --bs-accordion-body-padding-x: 1rem;
    --bs-accordion-body-padding-y: 0.75rem;
    --bs-accordion-active-bg: #efeded;
    --bs-accordion-btn-focus-box-shadow: 0 0 0 0 whire;
    --bs-accordion-color: #595C5F;
}

/* --- Badges ------------------------------------------------------------------------------------------------------------------------------------- */

.my_badges {
    font-weight: normal;
    padding: 0.1em 0.8em 0.1em 0.8em;
    --bs-badge-border-radius: 1em;
    border-radius: 1em;
}

.my_badges_2 {
    font-weight: normal;
    padding: 0.5em 0.8em 0.5em 0.8em;
    --bs-badge-border-radius: 0.2em;
    border-radius: 0.2em;
}

.badge_light_violet {
    color: #bb6ec7;
    background: #32223c;
    border: 1px solid #7b4a87;
}

.badge_pink {
    color: #540254;
    background: #f489f4;
    border: 1px solid #a703a7;
}

.badge_gray {
    color: #aeacac;
    background: #353333;
    border: 1px solid #615f5f;
}

.badge_light_yellow {
    color: #5d4e1d;
    background: #f3dd92;
    border: 1px solid #c8a840;
}

.badge_violet {
    color: #2f155a;
    background: #b696ea;
    border: 1px solid #673bb0;
}

.badge_blue {
    color: #0b2338;
    background: #35abff;
    border: 1px solid #184c74;
}

.badge_red {
    color: #fd9b9d;
    background: #2c0e13;
    border: 1px solid #6c393c;
}

.badge_yellow {
    color: #393313;
    background: #04abf3;
    border: 1px solid #74610e;
}

.badge_green {
    color: #142f20;
    background: #438761;
    border: 1px solid #156520;
}

.badge_turquoise {
    color: #0b2627;
    background: #cbfdf8;
    border: 1px solid #086156;
}

/* --- Badges pour les statuts des locations ------------------------------------------------------------------------------------------------------ */

.badge_status_yellow {
    color: #5d4e1d;
    background: #f8edc7;
    border: 1px solid #5d4e1d;
}

.badge_status_turquoise {
    color: #0f4145;
    background: #bdf5fa;
    border: 1px solid #0f4145;
}

.badge_status_blue {
    color: #0f2a45;
    background: #c3d8f8;
    border: 1px solid #0f2a45;
}

.badge_status_green {
    color: #142f20;
    background: #cff1de;
    border: 1px solid #142f20;
}

.badge_status_red {
    color: #2c0e13;
    background: #f6d1d2;
    border: 1px solid #2c0e13;
}
