.klaro {
    font-family: var(--font-family, inherit);
    font-size: var(--font-size, 14px);
}

.klaro button {
    font-family: var(--font-family, inherit);
    font-size: var(--font-size, 14px);
}

.klaro.cm-as-context-notice {
    height: 100%;
    padding: 12px 0;
}

/* Switch container */
.klaro .cookie-modal .cm-switch-container,
.klaro .context-notice .cm-switch-container,
.klaro .cookie-notice .cm-switch-container {
    border-bottom: var(--border-width, 1px) var(--border-style, solid) var(--light2, #c8c8c8);
    display: block;
    position: relative;
    padding: 10px 0 10px 66px;
    line-height: 20px;
    vertical-align: middle;
    min-height: 40px;
}

.klaro .cookie-modal .cm-switch-container:last-child,
.klaro .context-notice .cm-switch-container:last-child,
.klaro .cookie-notice .cm-switch-container:last-child {
    border-bottom: 0;
}

.klaro .cookie-modal .cm-switch-container:first-child,
.klaro .context-notice .cm-switch-container:first-child,
.klaro .cookie-notice .cm-switch-container:first-child {
    margin-top: 0;
}

.klaro .cookie-modal .cm-switch-container p,
.klaro .context-notice .cm-switch-container p,
.klaro .cookie-notice .cm-switch-container p {
    margin-top: 0;
}

/* Switches */
.klaro .cookie-modal .cm-switch,
.klaro .context-notice .cm-switch,
.klaro .cookie-notice .cm-switch {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 30px;
}

.klaro .cookie-modal .cm-list-input:checked+.cm-list-label .slider,
.klaro .context-notice .cm-list-input:checked+.cm-list-label .slider,
.klaro .cookie-notice .cm-list-input:checked+.cm-list-label .slider {
    background-color: var(--green1, #1a936f);
}

.klaro .cookie-modal .cm-list-input.half-checked:checked+.cm-list-label .slider,
.klaro .context-notice .cm-list-input.half-checked:checked+.cm-list-label .slider,
.klaro .cookie-notice .cm-list-input.half-checked:checked+.cm-list-label .slider {
    background-color: var(--green1, #1a936f);
    opacity: 0.6;
}

.klaro .cookie-modal .cm-list-input.half-checked:checked+.cm-list-label .slider::before,
.klaro .context-notice .cm-list-input.half-checked:checked+.cm-list-label .slider::before,
.klaro .cookie-notice .cm-list-input.half-checked:checked+.cm-list-label .slider::before {
    transform: translateX(10px);
}

.klaro .cookie-modal .cm-list-input.only-required+.cm-list-label .slider,
.klaro .context-notice .cm-list-input.only-required+.cm-list-label .slider,
.klaro .cookie-notice .cm-list-input.only-required+.cm-list-label .slider {
    background-color: var(--green2, #24cc9a);
    opacity: 0.8;
}

.klaro .cookie-modal .cm-list-input.only-required+.cm-list-label .slider::before,
.klaro .context-notice .cm-list-input.only-required+.cm-list-label .slider::before,
.klaro .cookie-notice .cm-list-input.only-required+.cm-list-label .slider::before {
    transform: translateX(10px);
}

.klaro .cookie-modal .cm-list-input.required:checked+.cm-list-label .slider,
.klaro .context-notice .cm-list-input.required:checked+.cm-list-label .slider,
.klaro .cookie-notice .cm-list-input.required:checked+.cm-list-label .slider {
    background-color: var(--green2, #24cc9a);
    opacity: 0.8;
    cursor: not-allowed;
}

.klaro .cookie-modal .slider,
.klaro .context-notice .slider,
.klaro .cookie-notice .slider {
    box-shadow: 0 4px 6px rgba(0,0,0,.2), 5px 5px 10px rgba(0,0,0,.19);
    background-color: var(--white2, #f2f2f2);
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    cursor: pointer;
    transition: 0.4s;
    display: inline-block;
    width: 50px;
}

.klaro .cookie-modal .cm-list-label .slider::before,
.klaro .context-notice .cm-list-label .slider::before,
.klaro .cookie-notice .cm-list-label .slider::before {
    background-color: var(--white3, #e6e6e6);
    position: absolute;
    content: "";
    height: 20px;
    width: 20px;
    left: 5px;
    bottom: 5px;
    transition: 0.4s;
    border-radius: 50%;
}

.klaro .cookie-modal .cm-list-label .slider.round,
.klaro .context-notice .cm-list-label .slider.round,
.klaro .cookie-notice .cm-list-label .slider.round {
    border-radius: 30px;
}

.klaro .cookie-modal .cm-list-label input:checked+.slider::before,
.klaro .context-notice .cm-list-label input:checked+.slider::before,
.klaro .cookie-notice .cm-list-label input:checked+.slider::before {
    transform: translateX(20px);
}

/* Buttons */
.klaro .cookie-modal .cm-btn,
.klaro .context-notice .cm-btn,
.klaro .cookie-notice .cm-btn {
    color: var(--button-text-color, #fff);
    background-color: var(--dark2, #5c5c5c);
    border-radius: var(--border-radius, 4px);
    border: none;
    padding: 0.4em 0.6em;
    font-size: 1em;
    cursor: pointer;
    margin-right: .5em;
}

.klaro .cookie-modal .cm-btn:disabled,
.klaro .context-notice .cm-btn:disabled,
.klaro .cookie-notice .cm-btn:disabled {
    opacity: 0.5;
}

.klaro .cookie-modal .cm-btn.cm-btn-close,
.klaro .context-notice .cm-btn.cm-btn-close,
.klaro .cookie-notice .cm-btn.cm-btn-close {
    background-color: var(--light2, #c8c8c8);
}

.klaro .cookie-modal .cm-btn.cm-btn-success,
.klaro .context-notice .cm-btn.cm-btn-success,
.klaro .cookie-notice .cm-btn.cm-btn-success {
    background-color: var(--green1, #1a936f);
}

.klaro .cookie-modal .cm-btn.cm-btn-success-var,
.klaro .context-notice .cm-btn.cm-btn-success-var,
.klaro .cookie-notice .cm-btn.cm-btn-success-var {
    background-color: var(--green2, #24cc9a);
}

.klaro .cookie-modal .cm-btn.cm-btn-info,
.klaro .context-notice .cm-btn.cm-btn-info,
.klaro .cookie-notice .cm-btn.cm-btn-info {
    background-color: var(--blue1, #2581c4);
}
