/* Copyright 2024 New Vector Ltd. Copyright 2020 The Matrix.org Foundation C.I.C. SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only Please see LICENSE files in the repository root for full details. */ .mx_Checkbox { $size: $font-16px; $border-radius: 0.27rem; display: flex; align-items: flex-start; input[type="checkbox"] { appearance: none; margin: 0; padding: 0; & + label { display: flex; align-items: center; flex-grow: 1; } & + label > .mx_Checkbox_background { display: inline-flex; position: relative; flex-shrink: 0; height: $size; width: $size; size: 0.5rem; border: 1px solid var(--cpd-color-border-interactive-primary); box-sizing: border-box; border-radius: $border-radius; .mx_Checkbox_checkmark { display: none; height: 100%; width: 100%; mask-image: url("@vector-im/compound-design-tokens/icons/check.svg"); mask-position: center; mask-size: 100%; mask-repeat: no-repeat; } } &:checked + label > .mx_Checkbox_background .mx_Checkbox_checkmark { display: block; } & + label > *:not(.mx_Checkbox_background) { margin-left: 10px; } &:disabled + label { cursor: not-allowed; } &:focus-visible { & + label .mx_Checkbox_background { @mixin unreal-focus; } } } } .mx_Checkbox.mx_Checkbox_kind_solid input[type="checkbox"] { & + label > .mx_Checkbox_background .mx_Checkbox_checkmark { background: var(--cpd-color-icon-on-solid-primary); } &:checked + label > .mx_Checkbox_background { background: var(--cpd-color-bg-accent-rest); border-color: var(--cpd-color-bg-accent-rest); } &:checked:disabled + label > .mx_Checkbox_background { background: var(--cpd-color-bg-action-primary-disabled); border-color: var(--cpd-color-bg-action-primary-disabled); } } .mx_Checkbox.mx_Checkbox_kind_outline input[type="checkbox"] { & + label > .mx_Checkbox_background .mx_Checkbox_checkmark { background: var(--cpd-color-bg-accent-rest); } &:checked + label > .mx_Checkbox_background { background: transparent; border-color: var(--cpd-color-bg-accent-rest); } }