:root {
    --form-valid-color: #0acf97;
    --form-error-color: #fa5c7c;
}
  
/* --- container --- */
.form-container { position: relative; }
.form-container .row { }
.form-container .col-12 { }
.form-container .col-md-6 { }

/* --- elements textes --- */
.form-legend { 
    margin: 0;
}
.form-divide {
    margin: 1rem 0 1.25rem ;
}
.form-content { 
    margin: 1.25rem 0;
}

/* --- inputs classiques --- */
.form-input { position: relative; }
.form-label { 
    font-size: 1rem;
    margin-bottom: .25rem;
}

/* --- checkboxes / radioboxes --- */
.form-group {
    padding-top: .5rem;
    padding-bottom: .5rem;
}
.form-group h4 {
    font-size: 1rem;
    margin: 0 0 .75rem;
}
.form-check-inline { }
.form-check .form-label { margin-bottom: 0; }
.form-check .form-check-input {
    margin-top: .55rem;
    margin-bottom: 0;
}
input + .form-text {
    display: block;
    margin-top: .33rem;
}

/* --- bootstrap maxlenght --- */
.bootstrap-maxlength {
    font-size: .75rem;
    padding: .25rem .5rem;
    border-radius: 5px;
    color: #fff;
}
.label-info {
    background-color: var(--form-valid-color);
}
.label-warning {
    background-color: var(--form-error-color);
}

/* --- inputs numbers --- */
/* data-toggle="touchspin" */
.input-number {
    position: relative;
}
.input-number input[type=number]::-webkit-inner-spin-button,
.input-number input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    appearance: none;
    margin: 0;
}
.input-number input[type=number] {
    -moz-appearance: textfield;
}

.input-number input[type=number] {
   padding: 0 60px;
   height: 40px;
   min-width: 200px;
}
.input-number input:focus {
    outline: 0;
}
.input-number-increase,
.input-number-decrease {
    position: absolute;
    height: calc(100% - 1px);
    width: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    top: 0;
    transition: all .3s;
}
.input-number-increase::before,
.input-number-decrease::before {
    font-size: .875rem;
}
.input-number-increase:hover,
.input-number-decrease:hover {
    background-color: #e3e3e3;
    color: rgba(0,0,0,.9);
}
.input-number-increase {
    right: 0;
    border-left: #e3e3e3 1px solid;
}
.input-number-decrease {
    left: 0;
    border-right: #e3e3e3 1px solid;
}
.input-number-increase::before { content: "+"; }
.input-number-decrease::before { content: "-"; }

/* --- inputs date --- */
.input-date {
    position: relative;
}
.input-date input {
    padding-right: 40px;
    background-position: right 15px center;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='%23878787' viewBox='0 0 24 24'%3E%3Cpath d='M20 20h-4v-4h4v4zm-6-10h-4v4h4v-4zm6 0h-4v4h4v-4zm-12 6h-4v4h4v-4zm6 0h-4v4h4v-4zm-6-6h-4v4h4v-4zm16-8v22h-24v-22h3v1c0 1.103.897 2 2 2s2-.897 2-2v-1h10v1c0 1.103.897 2 2 2s2-.897 2-2v-1h3zm-2 6h-20v14h20v-14zm-2-7c0-.552-.447-1-1-1s-1 .448-1 1v2c0 .552.447 1 1 1s1-.448 1-1v-2zm-14 2c0 .552-.447 1-1 1s-1-.448-1-1v-2c0-.552.447-1 1-1s1 .448 1 1v2z'/%3E%3C/svg%3E");
    background-size: 20px 20px;
    background-repeat: no-repeat;
}
.input-date input::-webkit-calendar-picker-indicator {
    -webkit-appearance: none;
            appearance: none;
    display: none;
    opacity: 0;
}
/*.form-date::-webkit-calendar-picker-indicator:hover {
    background-color: #e3e3e3;
    border-radius: 5px;
    opacity: 1;
}*/
.input-date input[type="date"] {
    -moz-appearance: textfield;
}

/* --- inputs files --- */
input[type="file"].form-control {
    height: 40px;
}


/* ---- Validations ---- */
.errorfield {
    border-color: var(--form-error-color);
    color: var(--form-error-color);
}
.invalid-feedback { 
    text-align: right;
    font-size: .75rem;
    line-height: .75rem;
    margin-top: 0.125rem;
    margin-bottom: -0.5rem;
}
.errorfield + .invalid-feedback { 
    display: block;
}
/*
.errorfield,
.form-control:invalid {
    border-color: var(--form-error-color);
    color: var(--form-error-color);
}
/*
.validfield,
.form-control:valid {
    border-color: var(--form-valid-color);
}
*/

/* --- Textarea --- */
textarea.form-control { min-height: 200px; }
textarea.form-control[rows="5"]  { min-height: 140px; }
textarea.form-control[rows="10"] { min-height: 260px; }
textarea.form-control[rows="15"] { min-height: 480px; }
textarea.form-control[rows="30"] { min-height: 640px; }

/* --- vendor DatePicker styles --- */
.datepicker {
    padding: 7px;
    border-radius: 4px;
    direction: ltr;
}
.datepicker-inline { width: 220px; }
.datepicker-rtl { direction: rtl; }
.datepicker-rtl.dropdown-menu { left: auto; }
.datepicker-rtl table tr td span { float: right; }
.datepicker-dropdown {
    top: 0;
    left: 0;
}
.datepicker-dropdown:before {
    content: "";
    display: inline-block;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    border-bottom: 7px solid #999;
    border-top: 0;
    border-bottom-color: rgba(0, 0, 0, 0.2);
    position: absolute;
}
.datepicker-dropdown:after {
    content: "";
    display: inline-block;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom: 6px solid #fff;
    border-top: 0;
    position: absolute;
}
.datepicker-dropdown.datepicker-orient-left:before { left: 6px; }
.datepicker-dropdown.datepicker-orient-left:after { left: 7px; }
.datepicker-dropdown.datepicker-orient-right:before { right: 6px; }
.datepicker-dropdown.datepicker-orient-right:after { right: 7px; }
.datepicker-dropdown.datepicker-orient-bottom:before { top: -7px; }
.datepicker-dropdown.datepicker-orient-bottom:after { top: -6px; }
.datepicker-dropdown.datepicker-orient-top:before {
    bottom: -7px;
    border-bottom: 0;
    border-top: 7px solid #999;
}
.datepicker-dropdown.datepicker-orient-top:after {
    bottom: -6px;
    border-bottom: 0;
    border-top: 6px solid #fff;
}
.datepicker table {
    margin: 0;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.datepicker td,
.datepicker th {
    text-align: center;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    font-size: .75rem;
    border: none;
}
.table-striped .datepicker table tr td,
.table-striped .datepicker table tr th {
    background-color: transparent;
}
.datepicker table tr td.day.focused,
.datepicker table tr td.day:hover {
    background: #eee;
    cursor: pointer;
}
.datepicker table tr td.new,
.datepicker table tr td.old {
    color: #999;
}
.datepicker table tr td.disabled,
.datepicker table tr td.disabled:hover {
    background: 0 0;
    color: #999;
    cursor: default;
}
.datepicker table tr td.highlighted {
    background: #d9edf7;
    border-radius: 0;
}
.datepicker table tr td.today,
.datepicker table tr td.today.disabled,
.datepicker table tr td.today.disabled:hover,
.datepicker table tr td.today:hover {
    background-color: #fde19a;
    background-image: linear-gradient(to bottom, #fdd49a, #fdf59a);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fdd49a', endColorstr='#fdf59a', GradientType=0);
    border-color: #fdf59a #fdf59a #fbed50;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
    color: #000;
}
.datepicker table tr td.today.active,
.datepicker table tr td.today.disabled,
.datepicker table tr td.today.disabled.active,
.datepicker table tr td.today.disabled.disabled,
.datepicker table tr td.today.disabled:active,
.datepicker table tr td.today.disabled:hover,
.datepicker table tr td.today.disabled:hover.active,
.datepicker table tr td.today.disabled:hover.disabled,
.datepicker table tr td.today.disabled:hover:active,
.datepicker table tr td.today.disabled:hover:hover,
.datepicker table tr td.today.disabled:hover[disabled],
.datepicker table tr td.today.disabled[disabled],
.datepicker table tr td.today:active,
.datepicker table tr td.today:hover,
.datepicker table tr td.today:hover.active,
.datepicker table tr td.today:hover.disabled,
.datepicker table tr td.today:hover:active,
.datepicker table tr td.today:hover:hover,
.datepicker table tr td.today:hover[disabled],
.datepicker table tr td.today[disabled] {
    background-color: #fdf59a;
}
.datepicker table tr td.today.active,
.datepicker table tr td.today.disabled.active,
.datepicker table tr td.today.disabled:active,
.datepicker table tr td.today.disabled:hover.active,
.datepicker table tr td.today.disabled:hover:active,
.datepicker table tr td.today:active,
.datepicker table tr td.today:hover.active,
.datepicker table tr td.today:hover:active { background-color: #fbf069; }
.datepicker table tr td.today:hover:hover { color: #000; }
.datepicker table tr td.today.active:hover { color: #fff; }
.datepicker table tr td.range,
.datepicker table tr td.range.disabled,
.datepicker table tr td.range.disabled:hover,
.datepicker table tr td.range:hover { 
    background: #eee;
    border-radius: 0;
}
.datepicker table tr td.range.today,
.datepicker table tr td.range.today.disabled,
.datepicker table tr td.range.today.disabled:hover,
.datepicker table tr td.range.today:hover {
    background-color: #f3d17a;
    background-image: linear-gradient(to bottom, #f3c17a, #f3e97a);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f3c17a', endColorstr='#f3e97a', GradientType=0);
    border-color: #f3e97a #f3e97a #edde34;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
    border-radius: 0;
}
.datepicker table tr td.range.today.active,
.datepicker table tr td.range.today.disabled,
.datepicker table tr td.range.today.disabled.active,
.datepicker table tr td.range.today.disabled.disabled,
.datepicker table tr td.range.today.disabled:active,
.datepicker table tr td.range.today.disabled:hover,
.datepicker table tr td.range.today.disabled:hover.active,
.datepicker table tr td.range.today.disabled:hover.disabled,
.datepicker table tr td.range.today.disabled:hover:active,
.datepicker table tr td.range.today.disabled:hover:hover,
.datepicker table tr td.range.today.disabled:hover[disabled],
.datepicker table tr td.range.today.disabled[disabled],
.datepicker table tr td.range.today:active,
.datepicker table tr td.range.today:hover,
.datepicker table tr td.range.today:hover.active,
.datepicker table tr td.range.today:hover.disabled,
.datepicker table tr td.range.today:hover:active,
.datepicker table tr td.range.today:hover:hover,
.datepicker table tr td.range.today:hover[disabled],
.datepicker table tr td.range.today[disabled] { background-color: #f3e97a; }
.datepicker table tr td.range.today.active,
.datepicker table tr td.range.today.disabled.active,
.datepicker table tr td.range.today.disabled:active,
.datepicker table tr td.range.today.disabled:hover.active,
.datepicker table tr td.range.today.disabled:hover:active,
.datepicker table tr td.range.today:active,
.datepicker table tr td.range.today:hover.active,
.datepicker table tr td.range.today:hover:active { background-color: #efe24b; }
.datepicker table tr td.selected,
.datepicker table tr td.selected.disabled,
.datepicker table tr td.selected.disabled:hover,
.datepicker table tr td.selected:hover {
    background-color: #9e9e9e;
    background-image: linear-gradient(to bottom, #b3b3b3, grey);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#b3b3b3', endColorstr='#808080', GradientType=0);
    border-color: grey grey #595959;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
    color: #fff;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.datepicker table tr td.selected.active,
.datepicker table tr td.selected.disabled,
.datepicker table tr td.selected.disabled.active,
.datepicker table tr td.selected.disabled.disabled,
.datepicker table tr td.selected.disabled:active,
.datepicker table tr td.selected.disabled:hover,
.datepicker table tr td.selected.disabled:hover.active,
.datepicker table tr td.selected.disabled:hover.disabled,
.datepicker table tr td.selected.disabled:hover:active,
.datepicker table tr td.selected.disabled:hover:hover,
.datepicker table tr td.selected.disabled:hover[disabled],
.datepicker table tr td.selected.disabled[disabled],
.datepicker table tr td.selected:active,
.datepicker table tr td.selected:hover,
.datepicker table tr td.selected:hover.active,
.datepicker table tr td.selected:hover.disabled,
.datepicker table tr td.selected:hover:active,
.datepicker table tr td.selected:hover:hover,
.datepicker table tr td.selected:hover[disabled],
.datepicker table tr td.selected[disabled] {
    background-color: grey;
}
.datepicker table tr td.selected.active,
.datepicker table tr td.selected.disabled.active,
.datepicker table tr td.selected.disabled:active,
.datepicker table tr td.selected.disabled:hover.active,
.datepicker table tr td.selected.disabled:hover:active,
.datepicker table tr td.selected:active,
.datepicker table tr td.selected:hover.active,
.datepicker table tr td.selected:hover:active { background-color: #666; }
.datepicker table tr td.active,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active:hover {
    background-color: #006dcc;
    background-image: linear-gradient(to bottom, #08c, #04c);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#08c', endColorstr='#0044cc', GradientType=0);
    border-color: #04c #04c #002a80;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
    color: #fff;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.datepicker table tr td.active.active,
.datepicker table tr td.active.disabled,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled.disabled,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover,
.datepicker table tr td.active.disabled:hover.active,
.datepicker table tr td.active.disabled:hover.disabled,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active.disabled:hover:hover,
.datepicker table tr td.active.disabled:hover[disabled],
.datepicker table tr td.active.disabled[disabled],
.datepicker table tr td.active:active,
.datepicker table tr td.active:hover,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active:hover.disabled,
.datepicker table tr td.active:hover:active,
.datepicker table tr td.active:hover:hover,
.datepicker table tr td.active:hover[disabled],
.datepicker table tr td.active[disabled] {
    background-color: #04c;
}
.datepicker table tr td.active.active,
.datepicker table tr td.active.disabled.active,
.datepicker table tr td.active.disabled:active,
.datepicker table tr td.active.disabled:hover.active,
.datepicker table tr td.active.disabled:hover:active,
.datepicker table tr td.active:active,
.datepicker table tr td.active:hover.active,
.datepicker table tr td.active:hover:active { background-color: #039; }
.datepicker table tr td span {
    display: block;
    width: 23%;
    height: 54px;
    line-height: 54px;
    float: left;
    margin: 1%;
    cursor: pointer;
    border-radius: 4px;
}
.datepicker table tr td span.focused,
.datepicker table tr td span:hover { background: #eee; }
.datepicker table tr td span.disabled,
.datepicker table tr td span.disabled:hover {
    background: 0 0;
    color: #999;
    cursor: default;
}
.datepicker table tr td span.active,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active.disabled:hover,
.datepicker table tr td span.active:hover {
    background-color: #006dcc;
    background-image: linear-gradient(to bottom, #08c, #04c);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#08c', endColorstr='#0044cc', GradientType=0);
    border-color: #04c #04c #002a80;
    border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
    filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
    color: #fff;
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
}
.datepicker table tr td span.active.active,
.datepicker table tr td span.active.disabled,
.datepicker table tr td span.active.disabled.active,
.datepicker table tr td span.active.disabled.disabled,
.datepicker table tr td span.active.disabled:active,
.datepicker table tr td span.active.disabled:hover,
.datepicker table tr td span.active.disabled:hover.active,
.datepicker table tr td span.active.disabled:hover.disabled,
.datepicker table tr td span.active.disabled:hover:active,
.datepicker table tr td span.active.disabled:hover:hover,
.datepicker table tr td span.active.disabled:hover[disabled],
.datepicker table tr td span.active.disabled[disabled],
.datepicker table tr td span.active:active,
.datepicker table tr td span.active:hover,
.datepicker table tr td span.active:hover.active,
.datepicker table tr td span.active:hover.disabled,
.datepicker table tr td span.active:hover:active,
.datepicker table tr td span.active:hover:hover,
.datepicker table tr td span.active:hover[disabled],
.datepicker table tr td span.active[disabled] { background-color: #04c; }
.datepicker table tr td span.active.active,
.datepicker table tr td span.active.disabled.active,
.datepicker table tr td span.active.disabled:active,
.datepicker table tr td span.active.disabled:hover.active,
.datepicker table tr td span.active.disabled:hover:active,
.datepicker table tr td span.active:active,
.datepicker table tr td span.active:hover.active,
.datepicker table tr td span.active:hover:active { background-color: #039; }
.datepicker table tr td span.new,
.datepicker table tr td span.old {
    color: #999;
}
.datepicker .datepicker-switch {
    width: 145px;
}
.datepicker .datepicker-switch,
.datepicker .next,
.datepicker .prev,
.datepicker tfoot tr th {
    cursor: pointer;
}
.datepicker .datepicker-switch:hover,
.datepicker .next:hover,
.datepicker .prev:hover,
.datepicker tfoot tr th:hover {
    background: #eee;
}
.datepicker .next.disabled,
.datepicker .prev.disabled {
    visibility: hidden;
}
.datepicker .cw {
    font-size: 10px;
    width: 12px;
    padding: 0 2px 0 5px;
    vertical-align: middle;
}
.input-append.date .add-on,
.input-prepend.date .add-on {
    cursor: pointer;
}
.input-append.date .add-on i,
.input-prepend.date .add-on i {
    margin-top: 3px;
}
.input-daterange input {
    text-align: center;
}
.input-daterange input:first-child {
    border-radius: 3px 0 0 3px;
}
.input-daterange input:last-child {
    border-radius: 0 3px 3px 0;
}
.input-daterange .add-on {
    display: inline-block;
    width: auto;
    min-width: 16px;
    height: 18px;
    padding: 4px 5px;
    font-weight: 400;
    line-height: 18px;
    text-align: center;
    text-shadow: 0 1px 0 #fff;
    vertical-align: middle;
    background-color: #eee;
    border: 1px solid #ccc;
    margin-left: -5px;
    margin-right: -5px;
}

/* === loading === */
.form-container.loading::after {
    content: "";
    position: absolute;
    opacity: .75;
    top: 0; left: 0;
    bottom: 0; right: 0;
    background-color: #fff;
    background-position: center;
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml,%3Csvg id='spinnerLoaderRef' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 100 100' width='100' height='100' overflow='visible' fill='%23919191' stroke='%23919191' class='single-loader' style=''%3E%3Cdefs%3E%3Crect id='spinner' x='46.5' y='45' width='6' height='14' rx='2' ry='2' transform='translate(0 -30)'/%3E%3C/defs%3E%3Cuse xmlns:xlink='http://www.w3.org/1999/xlink' xlink:href='%23spinner' transform='rotate(0 50 50)'%3E%3Canimate attributeName='opacity' values='0;1;0' dur='1s' begin='0s' repeatCount='indefinite'/%3E%3C/use%3E%3Cuse xmlns:xlink='http://www.w3.org/1999/xlink' xlink:href='%23spinner' transform='rotate(36 50 50)'%3E%3Canimate attributeName='opacity' values='0;1;0' dur='1s' begin='0.1s' repeatCount='indefinite'/%3E%3C/use%3E%3Cuse xmlns:xlink='http://www.w3.org/1999/xlink' xlink:href='%23spinner' transform='rotate(72 50 50)'%3E%3Canimate attributeName='opacity' values='0;1;0' dur='1s' begin='0.2s' repeatCount='indefinite'/%3E%3C/use%3E%3Cuse xmlns:xlink='http://www.w3.org/1999/xlink' xlink:href='%23spinner' transform='rotate(108 50 50)'%3E%3Canimate attributeName='opacity' values='0;1;0' dur='1s' begin='0.3s' repeatCount='indefinite'/%3E%3C/use%3E%3Cuse xmlns:xlink='http://www.w3.org/1999/xlink' xlink:href='%23spinner' transform='rotate(144 50 50)'%3E%3Canimate attributeName='opacity' values='0;1;0' dur='1s' begin='0.4s' repeatCount='indefinite'/%3E%3C/use%3E%3Cuse xmlns:xlink='http://www.w3.org/1999/xlink' xlink:href='%23spinner' transform='rotate(180 50 50)'%3E%3Canimate attributeName='opacity' values='0;1;0' dur='1s' begin='0.5s' repeatCount='indefinite'/%3E%3C/use%3E%3Cuse xmlns:xlink='http://www.w3.org/1999/xlink' xlink:href='%23spinner' transform='rotate(216 50 50)'%3E%3Canimate attributeName='opacity' values='0;1;0' dur='1s' begin='0.6s' repeatCount='indefinite'/%3E%3C/use%3E%3Cuse xmlns:xlink='http://www.w3.org/1999/xlink' xlink:href='%23spinner' transform='rotate(252 50 50)'%3E%3Canimate attributeName='opacity' values='0;1;0' dur='1s' begin='0.7s' repeatCount='indefinite'/%3E%3C/use%3E%3Cuse xmlns:xlink='http://www.w3.org/1999/xlink' xlink:href='%23spinner' transform='rotate(288 50 50)'%3E%3Canimate attributeName='opacity' values='0;1;0' dur='1s' begin='0.8s' repeatCount='indefinite'/%3E%3C/use%3E%3Cuse xmlns:xlink='http://www.w3.org/1999/xlink' xlink:href='%23spinner' transform='rotate(324 50 50)'%3E%3Canimate attributeName='opacity' values='0;1;0' dur='1s' begin='0.9s' repeatCount='indefinite'/%3E%3C/use%3E%3C/svg%3E");
    background-size: 50px 50px;
}

/* === RGPD === */
.form-input-privacy {
    margin-top: 1rem;
    display: flex;
    align-items: flex-start;
    position: relative;
}
.form-input-privacy .invalid-feedback {
    position: absolute;
    text-align: left;
    bottom: 0.25rem;
    padding-left: 2rem;
    left: 0;
}
.form-input-privacy input {
    margin-right: .5rem;
    flex: 0 0 auto;
}
.form-input-privacy a { text-decoration: underline; }
