:block(checkbox):mod(theme simple) {
    position: relative;

    :block(checkbox):elem(control) {
        position: absolute;
        z-index: -1;

        visibility: hidden;
    }

    :block(checkbox):elem(box) {
        display: inline-block;

        &:before {
            line-height: 0.6em;

            display: inline-block;

            width: 0.75em;
            height: 0.75em;
            margin: 0.1em 0.2em 0.3em;

            content: ' ';
            vertical-align: middle;

            border-radius: 2px;
            background: var(--color-control-default);
            box-shadow: inset 0 0 1px 1px rgba(0, 0, 0, 0.5);
        }
    }

    &:block(checkbox):mod(disabled) {
        opacity: 0.6;
    }

    &:block(checkbox):mod(checked) :block(checkbox):elem(box):before {
        content: '\2713';

        background: var(--color-control-check);
    }
}

/* hack for Safari only */
_::-webkit-full-page-media,
_:future,
:root :block(checkbox):mod(theme islands) :block(checkbox):elem(box) {
    pointer-events: none; /* NOTE: Fix #1472 and #1590 */
}
