/* region mise en page */
.header-title { line-height: 25px; /*border-bottom: solid 1px #1E7FCB; padding-bottom: 12px;*/ }

#preloader {
    background-color: #ffffff78
}

.hidden { display: none !important; }

.w-100 {
    width : 100%;
}

.list-flex      { display: flex; }
.list-flex li   { flex: auto; }
.list-unstyled  { padding-left: inherit; }
.list-unindent  { padding-left: 0; }

.space-between { justify-content: space-between; }
.flex-end { justify-content: flex-end; }
.row-gap-10 { row-gap: 10px; }
.flex-grow-1 { flex-grow: 1; }

.v-align-top {
    vertical-align: top;
}
.v-align-middle {
    vertical-align: middle;
}

.font-italic {
    font-style: italic;
}

.p-sticky {
    position: sticky;
}
.p-sticky-top {
    top: 0;
}

.pl-0 {
    padding-left: 0;
}
.ml-2 {
    margin-left: .75rem !important;
}

.fontsize-inherit {
    font-size: inherit;
}

ol.list-group-numbered > .list-group-item.hidden-li {
    /*!*content: counters(section, ".") ". ";*!*/
    /*counter-increment: section;*/
    position: absolute;
    left: -9999px;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
}
ol.list-group-numbered > .list-group-item.list-group-unnumbered-item::before {
    content: "";
    counter-reset: reversed(section); /* retir 1 au compteur => la section n'a pas d'impact sur le compteur caril est incrémenté par défaut dans _list-group.scss */
}

footer.footer {
    padding: 7px 15px;
}

.search-bar span {
    z-index: 0;
}

/* region scrollbar */
/* --- Firefox --- */
* {
    scrollbar-width: thin;
}

/* --- Chrome --- */
::-webkit-scrollbar {
    width: 7px;
}
/* Track */
::-webkit-scrollbar-track {
    border-radius: 8px;
}
/* Handle */
::-webkit-scrollbar-thumb {
    background: #ddd;
    border-radius: 8px;
}
/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
    background: #bbb;
}
/* endregion scrollbar */
/* endregion mise en page */

.text-caption {
    border: 1px dotted #6c757d;
    border-radius: 10px;
    color: #6c757d;
    padding: 5px;
    font-style: italic;
}

.nav-pills i[class*='ri'] {
    vertical-align: top;
}

.tab-content {
    padding: 20px;
}

/* region tippy */
/* Fix tippy appearance bug */
.tippy-popper .tippy-tooltip[data-animatefill] {
    background-color: #333 !important;
}
/* endregion tippy */

/* region select */
select.select-autowidth + span.select2.select2-container {
    width: auto !important;
}
select.select-autowidth + span.select2.select2-container span.select2-selection__rendered {
    padding-right: 35px;
}
select.select-smallwidth + span.select2.select2-container {
    max-width: 130px;
}
select.select-normalwidth + span.select2.select2-container {
    max-width: 200px;
}

/* Multiple : */
span.select2-container li.select2-results__option[aria-selected="true"][id]:before {
    content: "\f00c";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    /*color: rgb(26, 188, 156);*/
    margin-right: 8px;
}
/* endregion select */

/* region form */
.d-flex > .input-medium {
    min-width: 90px;
    max-width: fit-content;
    flex: 1 1 130px;
}

.input-preview,
.input-preview img {
    max-height: 40px !important;
}

div.form-collection-dashed.form-collection-enabled > div:not(:last-of-type) {
    border-bottom: 1px dashed rgba(108, 117, 125, 0.25);
}
div.form-collection-enabled > div {
    padding-bottom: 12px;
    margin-bottom: 12px;
}

div[class*="-collection-actions"].btn-group {
    width: auto;
}
/* endregion form */

/* region table */
th.border-top-dash,
td.border-top-dash,
tr.border-top-dash {
    border-top: dashed 2px;
    border-top-color: inherit ;
}
th.border-top-double,
td.border-top-double,
tr.border-top-double {
    border-top: double;
    border-top-color: inherit ;
}
/* endregion table */

.border-dash {
    border-style: dashed;
}

/* region choix chaufferie*/
body:has(.frame-heating-choice) {
    padding: 35px 55px;
    background-color: #1d3f56;
    min-height: auto;
}

@media (min-width: 768px) {
    html[data-sidebar-size=condensed]:not([data-sidebar-size=compact]):not(.auth-fluid-pages):has(.frame-heating-choice) {
        min-height: auto !important;
    }
}

.logo-heating-choice{
    margin: 0px auto 40px;

    height: 80px;
    width: auto;
}

.title-heating-choice {
    color: #fff;
}

.heating-choice-card-container{
    display: flex;
    flex-direction: row;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 20px;
}
.heating-choice-card-container button {
    all: unset;
}

.card-heating-choice{
    background: #fff;
    text-align: -webkit-center;
    width: 190px;
    height: 220px;
    padding: 25px 16px 35px;
    margin: 20px;
    border-radius: 15px;
}

.card-heating-choice:hover{
    background: #e3e3e3;
    cursor: pointer;
}

.card-heating-choice img{
    max-height: 80px;
    height: auto;
    width: auto;
    max-width: 158px;
    display: block;
    margin-right: auto;
    margin-left: auto;
}

.card-heating-choice p{
    color: #000;
    font-weight: bold;
    font-size: 20px;
    height: 60px;
    display: table-cell;
    vertical-align: middle;
}

.heating-choice-stick {
    --s: 2px;    /* control the size */
    --c: #EA6827; /* the color */
    margin-top: 20px;
    margin-bottom: 20px;
    height: var(--s);
    width: 100%;
    --_g: var(--s) top 50%,var(--c) calc(100% - 1px),#0000;
    background: 0/calc(4*var(--s)) space no-repeat;
    background-image:
            radial-gradient(circle closest-side at left  var(--_g)),
            radial-gradient(circle closest-side at right var(--_g)),
            linear-gradient(90deg,#0000 25%,var(--c) 0 75%,#0000 0);
}

.heating-choice-buttons-container{
    display: flex;
    flex-direction: row;
    justify-content: center;
}

.heating-choice-buttons-container .heating-choice-switchery{
    padding: 10px;
    width: 300px;
    border-radius: 15px;
    border: 1px dashed #fff;
    justify-content: center;
    color: #fff;
    gap: 10px;
    display: flex;
}

.heating-choice-switchery p{
    margin: 0;
}

.heating-choice-switchery input, 
.heating-choice-switchery span {
    min-width: 30px;
    margin-top: auto;
    margin-bottom: auto;
}
/* endregion choix chaufferie*/

@keyframes pulse-warning {
    0% {box-shadow: 0 0 0 0 rgba(var(--text-warning-rgb), 0.7);}
    70% {box-shadow: 0 0 0 10px rgba(var(--text-warning-rgb), 0);}
    100% {box-shadow: 0 0 0 0 rgba(var(--text-warning-rgb), 0);}
}
.pulse-warning { animation: pulse-warning 1.5s infinite; }

@keyframes pulse-alert {
    0%      { box-shadow: 0 0 0 0 rgba(var(--text-danger-rgb), 0.7);    }
    70%     { box-shadow: 0 0 0 10px rgba(var(--text-danger-rgb), 0);   }
    100%    { box-shadow: 0 0 0 0 rgba(var(--text-danger-rgb), 0);      }
}
.pulse-alert {animation: pulse-alert 1.5s infinite;}