.btn-close {
    color: #f2efe6;
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23f2efe6'%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;
}

/* Cyborg (assets/scss/bs_theme.scss) forces links in alerts to white, for its own saturated
   alerts. These carry the restaurant's background and text pair instead (the text contrast-repaired
   on every save), so a link follows that text, in bold — Bootstrap's own .alert-link look. White
   left the "call us" phone number at 1.23:1 on the default info box. Bold, not underline: the phone
   include is text-decoration-none. Same specificity as Cyborg's rule: this sheet is linked after it.
   :hover and :focus too, or the `a:hover` rule below (same specificity, later) would turn it back to
   the link colour under the pointer. */
.alert a,
.alert .alert-link,
.alert a:hover,
.alert a:focus,
.alert .alert-link:hover,
.alert .alert-link:focus {
    color: inherit;
    font-weight: 700;
}

body {
    background-color: #121212;
}

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

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

/* 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: #c9a227;
}

a:hover {
    color: #b58e13;
}

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

.text-success {
    color: #7D9B49 !important;
}

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

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

.text-info {
    color: #6C8C96 !important;
}

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

.form-control:focus {
    border-color: #fffc81;
    box-shadow: 0 0 0 0.25rem #6f4800;
}

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

.form-check-input:checked {
    background-color: #c9a227;
    border-color: #c9a227;
    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: #fffc81;
    box-shadow: 0 0 0 0.25rem #6f4800;
}

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

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

.btn-primary:focus {
    background-color: #a17a00;
    border-color: #a17a00;
    color: #000000;
    box-shadow: 0 0 0 0.25rem #6f4800;
}

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

.dropdown-item {
    color: #FFFFFF;
}

.btn-secondary {
    background-color: #6e6354;
    border-color: #6e6354;
    color: #ffffff;
}

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

.btn-secondary:focus {
    background-color: #463b2c;
    border-color: #463b2c;
    color: #ffffff;
    box-shadow: 0 0 0 0.25rem #140900;

}

.btn-light {
    background-color: #2a2a2a;
    border-color: #2a2a2a;
    color: #ffffff;
}

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

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

.btn-success {
    background-color: #6e8c3a;
    border-color: #6e8c3a;
    color: #000000;
}

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

.btn-success:focus {
    background-color: #466412;
    border-color: #466412;
    color: #000000;
    box-shadow: 0 0 0 0.25rem #143200;
}

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

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

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

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

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

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

.btn-info {
    background-color: #4e6e78;
    border-color: #4e6e78;
    color: #ffffff;
}

.btn-info:hover {
    background-color: #264650;
    border-color: #264650;
    color: #ffffff;
}

.btn-info:focus {
    background-color: #264650;
    border-color: #264650;
    color: #ffffff;
    box-shadow: 0 0 0 0.25rem #00141e;
}

.modal-content {
    background-color: #0a0a0a;
    color: #FFFFFF;
}

.booking-step {
    --bk-page-text: #F2EFE6;
    --bk-page-muted: #F2EFE68C;
}

.booking-card {
    --bk-surface: #1e1e1e;
    --bk-text: #FFFFFF;
    --bk-muted: #FFFFFF8C;
    --bk-soft: #FFFFFF66;
    --bk-hover: #FFFFFF1A;
    --bk-selected-bg: #c9a227;
    --bk-selected-fg: #000000;
    --bk-accent-bg: #6e6354;
    --bk-accent-fg: #ffffff;
    --bk-available-bg: #322F2C;
    --bk-available-fg: #FFFFFF;
}

.list-group-item {
    background-color: #0a0a0a;
    color: #FFFFFF;
    border-color: #000000;
}

.list-group-item-action:hover,
.list-group-item-action:focus {
    background-color: #c9a227;
    color: #000000;
    border-color: #a17a00;
}

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

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