@use 'exports' as *;

.checkbox {
	@layer components {
		@include vars;
		@include component;
	}

	@layer mods {
		&.mod-inline {
			@include inline;
		}

		&.mod-S {
			@include S;
		}

		&.mod-noLabel {
			@include noLabel;
		}

		&:is(.is-required, .required) {
			@include required;
		}

		&:is(.is-error, .error) {
			@include state('error');
		}

		&:is(.is-warning, .warning) {
			@include state('warning');
		}

		&:is(.is-success, .success) {
			@include state('success');
		}

		.checkbox-input {
			&:is(.is-incomplete, .incomplete) {
				@include incomplete;
			}

			&:is([disabled], [read-only]) {
				@include disabled;
			}

			&:is([aria-required]) {
				@include required;
			}
		}
	}
}
