.d-flex { display: flex !important; }
.align-items-start { align-items: start !important; }
.align-items-center { align-items: center !important; }

.justify-content-start { justify-content: flex-start !important; }
.justify-content-center { justify-content: center !important; }
.justify-content-between { justify-content: space-between !important; }

.flex-wrap { flex-wrap: wrap !important; }
.flex-grow-1 { flex-grow: 1 !important; }
.form-row { display: flex; flex-wrap: wrap; margin-right: -5px; margin-left: -5px; }
.form-row > .col, .form-row > [class*="col-"] { padding-left: 5px; padding-right: 5px; }

.col, .col-auto, .col-12, .col-md, .col-md-auto { position: relative; width: 100%; padding-left: 10px; padding-right: 10px; }
.col { flex-grow: 1; flex-basis: 0; max-width: 100%; }
.col-auto { flex: 0 0 auto; width: auto; max-width: 100%; }
.col-12 { flex: 0 0 100%; max-width: 100%; }
@media (min-width: 768px) {
    .col-md { flex-grow: 1; flex-basis: 0; max-width: 100%; }
    .col-md-auto { flex: 0 0 auto; width: auto; max-width: 100%; }
}

.position-static { position: static !important; }
.position-relative { position: relative !important; }
.position-absolute { position: absolute !important; }

.d-inline-block { display: inline-block !important; }
.d-none { display: none !important; }

.w-100 { width: 100% !important; }
.h-auto { height: auto !important; }

.font-weight-bold { font-weight: 700 !important; }

.ml-1 { margin-left: 0.25rem !important; }
.mr-1 { margin-right: 0.25rem !important; }
.mr-2 { margin-right: .5rem !important; }
.mr-4 { margin-right: 1.5rem !important; }
.my-1 { margin-top: .25rem !important; margin-bottom: .25rem !important; }
.mt-0 { margin-top: 0 !important; }
.mt-1 { margin-top: 0.25rem !important; }
.mt-4 { margin-top: 1.5rem !important; }
.mt-5 { margin-top: 3rem !important; }
.mb-3 { margin-bottom: 1rem !important; }
.mb-4 { margin-bottom: 1.5rem !important; }
.pl-0 { padding-left: 0 !important; }
.px-0 { padding-left: 0 !important; padding-right: 0 !important; }
.px-3 { padding-left: 1rem !important; padding-right: 1rem !important; }
.px-4 { padding-left: 1.5rem !important; padding-right: 1.5rem !important; }
.pt-1 { padding-top: .25rem !important; }
.pb-3 { padding-bottom: 1rem !important; }
.py-2 { padding-top: 0.5rem !important; padding-bottom: 0.5rem !important; }

.stretched-link::after { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: 1; }
.badge-info { background-color: #17a2b8; color: #fff; }
.badge-secondary { background-color: #6c757d; color: #fff; }

/* Classes existantes BS3 */
.tpl_search_liste_2 .media { display: flex; align-items: flex-start; /**/ margin: 0; overflow: visible; }
.tpl_search_liste_2 .media-body { flex: 1; /**/ display: block; width: auto; overflow: visible; }

.tpl_search_liste_2 .row { display: flex; flex-wrap: wrap; margin-left: -10px; margin-right: -10px; }
.tpl_search_liste_2 .row::before,
.tpl_search_liste_2 .row::after { display: none; }
@media (min-width:768px) {
    .tpl_search_liste_2 .col-md-8 { flex: 0 0 66.666667%; max-width: 66.666667%; }
}

.tpl_search_liste_2 .badge { display: inline-block; vertical-align: baseline; padding: .25em .4em; border-radius: .25rem; font-weight: 700; font-size: 75%; line-height: 1; text-align: center; white-space: nowrap; }
.tpl_search_liste_2 .form-control { display: block; width: 100%; border: 1px solid #ced4da; padding: .375rem .75rem; background-color: #fff; border-radius: .25rem; background-clip: padding-box; font-size: 1rem; line-height: 1.5; color: #495057; }

.tpl_search_liste_2 .btn { /*display: inline-block; vertical-align: middle; border: 1px solid transparent; padding:.375rem .75rem; border-radius: .25rem; font-weight: 400; font-size: 1rem; line-height: 1.5; text-align: center; white-space: nowrap; user-select: none;*/ }
.tpl_search_liste_2 .btn-primary { /*color: #fff; background-color: #007bff; border-color: #007bff;*/ }