.gform-admin {

	.gform-swatch {
		align-items: center;
		display: flex;
		flex-wrap: nowrap;
		gap: var(--gform-admin-spacer-2);
		position: relative;
	}

	.gform-swatch__options {
		display: flex;
		flex-wrap: nowrap;
		gap: var(--gform-admin-spacer-2);
		margin: 0;
		padding: 0;
	}

	.gform-swatch__option,
	.gform-swatch__new {
		border-radius: 50%;
		cursor: pointer;
		list-style: none;
	}

	.gform-swatch__option {

		&:hover .gform-swatch__option-preview {
			box-shadow: 0 0 0 rgba(0, 0, 0, 0.05), 0 4px 6px rgba(0, 0, 0, 0.05), 0 10px 32px rgba(0, 0, 0, 0.10), 0 1px 1px rgba(0, 0, 0, 0.11), var(--gform-admin-box-shadow-super);

			&::after {
				opacity: 0.15;
			}
		}

		&:focus .gform-swatch__option-preview {
			box-shadow: var(--gform-admin-box-shadow-swatch);
			outline: 2px solid var(--gform-admin-color-focus);

			&::after {
				opacity: 0;
			}
		}

		&:hover,
		&:focus {

			.gform-swatch__option-icon--delete {
				display: block;
			}
		}
	}

	.gform-swatch__option-preview,
	.gform-swatch__new-preview {
		border: 2px solid var(--gform-admin-color-white);
		border-radius: 50%;
		box-shadow: 0 0 0 rgba(0, 0, 0, 0.05), 0 4px 6px rgba(0, 0, 0, 0.05), 0 10px 32px rgba(0, 0, 0, 0.10), 0 1px 1px rgba(0, 0, 0, 0.11);
		cursor: pointer;
		display: block;
		height: 30px;
		position: relative;
		transition: var(--gform-admin-transition-cl-button-focus);
		width: 30px;
	}

	.gform-swatch__option-preview::after {
		background: var(--gform-admin-color-white);
		block-size: 100%;
		border-radius: 50%;
		content: '';
		inline-size: 100%;
		inset-block-start: 0;
		inset-inline-start: 0;
		opacity: 0;
		position: absolute;
		transition: opacity 0.2s ease;
	}

	.gform-swatch__option-icon {
		color: var(--gform-admin-color-white);
		font-size: 1.625rem;
		inset-block-start: 50%;
		inset-inline-start: 50%;
		position: absolute;
		transform: translate(-50%, -50%);
	}

	.gform-swatch__option-icon--delete {
		background: var(--gform-admin-color-red);
		border: 1px solid var(--gform-admin-color-white);
		border-radius: 100%;
		display: none;
		font-size: 1rem;
		left: auto;
		padding: 0;
		right: 0;
		top: 0;
		transform: translate(50%, -50%);
	}

	.gform-swatch__new {
		block-size: auto;
		inline-size: auto;
		padding: 0;

		&:hover .gform-swatch__new-preview {
			border-color: var(--gform-admin-color-alabaster);
		}

		&:focus {
			outline: 2px solid var(--gform-admin-color-focus);

			.gform-swatch__new-preview {
				border-color: var(--gform-admin-color-white);
				transition: none;
			}
		}
	}

	.gform-swatch__new-preview {
		background: var(--gform-admin-color-white);
		border: 2px solid var(--gform-admin-color-snuff);
		box-shadow: none;
		outline: 1px dashed var(--gform-admin-color-santas);
		outline-offset: -3px;
		transition: var(--gform-admin-transition-cl-button-focus);
	}

	.gform-swatch__new-icon {
		color: var(--gform-admin-color-port);
		font-size: 1.25rem;
		inset-block-start: 50%;
		inset-inline-start: 50%;
		position: absolute;
		transform: translate(-50%, -50%);
	}
}
