.custom-control-label::before {
    top: 0.5rem;
    width: 1.5rem;
    height: 1.5rem;
}
.custom-control-input:checked ~ .custom-control-label::before {
    border-color: var(--color-theme-joa);
    background-color: var(--color-theme-joa);
}
.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
    background-image: none;
}

.config-label-check {
    display:flex;
    margin-left: 40px;
    margin-top: -10px;
}

.config-label-liste {
    display:flex;
    font-weight: 600;
    margin-left: 20px;
    margin-bottom: 10px;
}

.config-label-radio {
    display:flex;
    margin-left: 10px;
    margin-top: 0;
}
    
.radio-button-config, .checkbox-button-config, .liste-button-config {
    font-weight: 400;
    font-size: 15px;
    line-height: 1.0em;
    cursor: pointer;
}

.checkbox-button-config {
    /*margin-left: 20px;*/
    margin-left: 0;
}

.checkbox-button-config {
    /*margin-left: 20px;*/
    margin-left: 0;
}

.bloc-pack .checkbox-button-config {
    margin-left: 20px;
}

.radio-button-config-mini {
    font-size: 11px;
    line-height: 17px;
}

label.radio-button-config {
    border: 2px solid var(--color-secondary-40);
    width: 100%;
    height: 55px;
    padding-left: 5px;
    padding-right: 10px;
    padding-top: 3px;
    border-radius: var(--border-radius-small);
    margin-bottom: 0;
}
label.radio-button-config-actif {
    border: 2px solid var(--color-black-22);
    background-color: var(--color-gray-11);
}
label.radio-button-config.disabled {
    background-color: var(--color-secondary-20);
    color: var(--color-gray-40);
}

.option-input {
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    -o-appearance: none;
    appearance: none;
    position: relative;
    top: 10px;
    right: 0;
    bottom: 0;
    left: 0;
    height: 20px;
    width: 20px;
    background: none;
    border: 2px solid var(--color-theme-joa);
    color: var(--color-white);
    cursor: pointer;
    display: inline-block;
    margin-right: 0.5rem;
    outline: none;
    position: relative;
    z-index: 1000;
}

.option-input-mini {
    height: 25px;
    width: 25px;
    border-width: 1px;
    top: 8.3333333333px;
}

.option-input.radio {
    border: none;
    height: 0;
    width: 0;
}

.option-input.check-option, 
.option-input.pack-select {
    border: 2px solid var(--color-secondary-40);
}

.option-input.check-option:hover,
.option-input.pack-select:hover {
    border: 2px solid var(--color-black-22);
    background-color: var(--color-gray-11);
}

.option-input.check-option:checked::before,
.option-input.pack-select:checked::before 
{
    color: var(--color-black-22);
    position: absolute;
    display: inline-block;
    content: '\2713';       /* check mark */
    left: 2.5px;
    top: 1.5px;
    font-weight: bold;
}

.option-input.check-option:checked, 
.option-input.pack-select:checked {
    border: 2px solid var(--color-black-22);
    background-color: var(--color-gray-11);
}


.option-input:checked::after {
    -webkit-animation: click-wave 0.65s;
    -moz-animation: click-wave 0.65s;
    animation: click-wave 0.65s;
    background-color: #40e0d0;
    content: '';
    display: block;
    position: relative;
    z-index: 100;
}


.option-input.radio:disabled, .disablelabel {
    border-color: var(--color-gray-light);
    color: var(--color-gray-light);
}

.disablelabel .option-input.radio:hover {
    background-color: white;
}

.option-input.pack-select:disabled {
    background-color: var(--color-gray-lightest);
    border-color: var(--color-gray-lightest);
}

.option-input.pack-select.pack-checked-disabled {
    background-color: var(--color-red-light);
    border-color: var(--color-red-light);
}

.form-radio-lib-disabled {
    color: var(--color-gray-lightest);
}


.div-checkbox {
    width: 100%;
    padding-right: 10px;
}

.prix-pack, .prix-option1N, .prix-option-check {
    float: right;
    position: relative;
}

.prix-pack {
    top: 8px;
    font-weight: 600;
}

.prix-option1N {
    top: -15px;
    font-weight: 600;
}

.prix-option-check {
    top: 8px;
    font-weight: 600;
}
