.btn-close {
    color: #ecf1f1;
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ecf1f1'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
}

.alert-info {
    color: #195f80;
    background-color: #d4ecf7;
    border-color: #98b0bb;
}

.alert-success {
    color: #476b00;
    background-color: #e4f0cc;
    border-color: #a8b490;
}

.alert-warning {
    color: #995200;
    background-color: #ffe7cc;
    border-color: #c3ab90;
}

.alert-danger {
    color: #7a0000;
    background-color: #f5cccc;
    border-color: #b99090;
}

body {
    background-color: #101314;
}

.h1,.h2,.h3,.h4,.h5 {
    color: #ecf1f1;
}

body, h1, h2, h3, h4, h5 {
    color: #ecf1f1;
}

/* Banner H1 overlays the banner image, so it has its own colour (set by the
   restaurant) instead of mainTextColor — the #id outranks the rules above. */
#h1-title {
    color: #ffffff;
}

a {
    color: #3fb58c;
}

a:hover {
    color: #2ba178;
}

.text-primary {
    color: #3fb58c !important;
}

.text-success {
    color: #3fb58c !important;
}

.text-warning {
    color: #c7a53a !important;
}

.text-danger {
    color: #DE6E5C !important;
}

.text-info {
    color: #3f90b5 !important;
}

.dropdown-item:hover, .dropdown-item:focus {
    background-color: #3fb58c;
    color: #000000;
}

.form-control:focus {
    border-color: #99ffe6;
    box-shadow: 0 0 0 0.25rem #005b32;
}

.btn-primary {
    background-color: #3fb58c;
    border-color: #3fb58c;
    color: #000000;
}

.form-check-input:checked {
    background-color: #3fb58c;
    border-color: #3fb58c;
    color: #000000;
}

.form-check-input:checked[type=checkbox] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23000000' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
}

.form-check-input:checked[type=radio] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23000000'/%3e%3c/svg%3e");
}

.form-switch .form-check-input:checked {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23000000'/%3e%3c/svg%3e");
}

.form-check-input:focus {
    border-color: #99ffe6;
    box-shadow: 0 0 0 0.25rem #005b32;
}

.btn-primary:disabled {
    background-color: #037950;
    border-color: #037950;
    color: #5a5a5a;
}

.btn-primary:hover {
    background-color: #178d64;
    border-color: #178d64;
    color: #000000;
}

.btn-primary:focus {
    background-color: #178d64;
    border-color: #178d64;
    color: #000000;
    box-shadow: 0 0 0 0.25rem #005b32;
}

.card, .dropdown-menu {
    background-color: #1b2022;
    color: #FFFFFF;
}

.dropdown-item {
    color: #FFFFFF;
}

.btn-secondary {
    background-color: #5e6e70;
    border-color: #5e6e70;
    color: #ffffff;
}

.btn-secondary:hover {
    background-color: #364648;
    border-color: #364648;
    color: #ffffff;
}

.btn-secondary:focus {
    background-color: #364648;
    border-color: #364648;
    color: #ffffff;
    box-shadow: 0 0 0 0.25rem #041416;

}

.btn-light {
    background-color: #232a2c;
    border-color: #232a2c;
    color: #ffffff;
}

.btn-light:hover {
    background-color: #000204;
    border-color: #000204;
    color: #ffffff;
}

.btn-light:focus {
    background-color: #000204;
    border-color: #000204;
    color: #ffffff;
    box-shadow: 0 0 0 0.25rem #000000;
}

.btn-success {
    background-color: #3fb58c;
    border-color: #3fb58c;
    color: #000000;
}

.btn-success:hover {
    background-color: #178d64;
    border-color: #178d64;
    color: #000000;
}

.btn-success:focus {
    background-color: #178d64;
    border-color: #178d64;
    color: #000000;
    box-shadow: 0 0 0 0.25rem #005b32;
}

.btn-warning {
    background-color: #c7a53a;
    border-color: #c7a53a;
    color: #000000;
}

.btn-warning:hover {
    background-color: #9f7d12;
    border-color: #9f7d12;
    color: #000000;
}

.btn-warning:focus {
    background-color: #9f7d12;
    border-color: #9f7d12;
    color: #000000;
    box-shadow: 0 0 0 0.25rem #6d4b00;
}

.btn-danger {
    background-color: #c0503e;
    border-color: #c0503e;
    color: #ffffff;
}

.btn-danger:hover {
    background-color: #982816;
    border-color: #982816;
    color: #ffffff;
}

.btn-danger:focus {
    background-color: #982816;
    border-color: #982816;
    color: #ffffff;
    box-shadow: 0 0 0 0.25rem #660000;
}

.btn-info {
    background-color: #3f90b5;
    border-color: #3f90b5;
    color: #000000;
}

.btn-info:hover {
    background-color: #17688d;
    border-color: #17688d;
    color: #000000;
}

.btn-info:focus {
    background-color: #17688d;
    border-color: #17688d;
    color: #000000;
    box-shadow: 0 0 0 0.25rem #00365b;
}

.modal-content {
    background-color: #070c0e;
    color: #FFFFFF;
}

.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange,
.flatpickr-day.selected.inRange,
.flatpickr-day.startRange.inRange,
.flatpickr-day.endRange.inRange,
.flatpickr-day.selected:focus,
.flatpickr-day.startRange:focus,
.flatpickr-day.endRange:focus,
.flatpickr-day.selected:hover,
.flatpickr-day.startRange:hover,
.flatpickr-day.endRange:hover,
.flatpickr-day.selected.prevMonthDay,
.flatpickr-day.startRange.prevMonthDay,
.flatpickr-day.endRange.prevMonthDay,
.flatpickr-day.selected.nextMonthDay,
.flatpickr-day.startRange.nextMonthDay,
.flatpickr-day.endRange.nextMonthDay {
    background: #3fb58c;
    color: #000000;
    border-color: #3fb58c;
}

.flatpickr-calendar.arrowBottom:after {
    border-top-color: #3fb58c;
}

.flatpickr-calendar {
    background-color: #1b2022;
    color: #FFFFFF;
}

.flatpickr-day.inRange,
.flatpickr-day.prevMonthDay.inRange,
.flatpickr-day.nextMonthDay.inRange,
.flatpickr-day.today.inRange,
.flatpickr-day.prevMonthDay.today.inRange,
.flatpickr-day.nextMonthDay.today.inRange,
.flatpickr-day:hover,
.flatpickr-day.prevMonthDay:hover,
.flatpickr-day.nextMonthDay:hover,
.flatpickr-day:focus,
.flatpickr-day.prevMonthDay:focus,
.flatpickr-day.nextMonthDay:focus {
    background: #5e6e70;
    border-color: #5e6e70;
    color: #ffffff;
}

span.flatpickr-weekday {
    background: #5e6e70;
    color: #ffffff;
}

.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month {
    background-color: #5e6e70;
    color: #ffffff;
}

.flatpickr-months .flatpickr-month
{
    background-color: #5e6e70;
    color: #ffffff;
}

.flatpickr-current-month .flatpickr-monthDropdown-months  {
    background-color: #5e6e70;
    color: #ffffff;
}

.flatpickr-day.today {
    border-color: #ecf1f1;
}

.flatpickr-day {
    color: #FFFFFF;
}

.flatpickr-day.flatpickr-disabled, .flatpickr-day.flatpickr-disabled:hover {
    color: #575c5e;
}

.flatpickr-day.today:hover, .flatpickr-day.today:focus {
    background: #5e6e70;
    color: #ffffff;
    border-color: #3fb58c;
}

.list-group-item {
    background-color: #070c0e;
    color: #FFFFFF;
    border-color: #000000;
}

.list-group-item-action:hover,
.list-group-item-action:focus {
    background-color: #3fb58c;
    color: #000000;
    border-color: #178d64;
}

.badge.bg-primary {
    background-color: #3fb58c !important;
    color: #000000;
}

#groupe-ludovic-frank {
    color: #FFFFFF;
}