body {
    font-family: Roboto, Arial, sans-serif;
    gap: 0.5rem;
}

:root {
    --circle-toggle-darkgrey: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23636462'/%3e%3c/svg%3e");
    --circle-toggle-white: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
    
    font-size: 16px;
}


.atp-toggle {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
    min-height: 1.5rem;
    margin-bottom: 0.125rem;
    vertical-align: middle;
}

.atp-toggle-label {
    display: inline-block;
    box-sizing: border-box;
    color: var(--Color-Text-blacktext);
    font-size: 0.875rem;
}

.atp-toggle-input {
    float: left;
    width: 2.5rem;
    height: 1.25rem;
    margin-top: 0.25em;
    vertical-align: top;
    background-color: var(--Color-Neutre-white);
    background-repeat: no-repeat;
    background-size: contain;
    border: 1px solid var(--Color-Neutre-dark_grey);
    appearance: none;
    background-position: left center;
    border-radius: 2em;
    transition: background-position 0.15sease-in-out;
    background-image: var(--circle-toggle-darkgrey);
}

.atp-toggle-input:checked {
    background-position: right center;
    background-image: var(--circle-toggle-white);
    background-color: var(--Color-Primary-dark_blue);
    border-color: var(--Color-Primary-dark_blue);
}

.atp-toggle-input:checked:disabled {
    background-color: var(--Color-Neutre-DS_dark_grey);
}

input[type=checkbox] {
    cursor: pointer;
}

input[type=checkbox]:disabled {
    cursor: not-allowed;
    pointer-events: none;
    opacity: 0.5;
    background-color: var(--Color-Neutre-DS_light_grey);
}