.gform-admin {

	.gform-kanban {
		border: 1px solid var(--gform-admin-color-metal-gray);
		border-radius: 3px;
		display: flex;
		flex-direction: column;

		&,
		& * {
			box-sizing: border-box;
		}
	}

	.gform-kanban__header {
		align-items: flex-start;
		border-block-end: 1px solid var(--gform-admin-color-metal-gray);
		display: flex;
		justify-content: space-between;
		padding: var(--gform-admin-spacer-5) var(--gform-admin-spacer-6);
	}

	.gform-kanban__controls {
		border-block-end: 1px solid var(--gform-admin-color-metal-gray);
		display: flex;
		flex-direction: column-reverse;
		inline-size: 100%;

		@media (min-width: 40.625rem) {
			flex-direction: row;
		}
	}

	.gform-kanban__controls-inner {
		padding-block: var(--gform-admin-spacer-4);
		padding-inline: var(--gform-admin-spacer-6);
	}

	.gform-kanban__controls-inner--left:not(:last-child) {
		border-block-start: 1px solid var(--gform-admin-color-metal-gray);

		@media (min-width: 40.625rem) {
			border-block-start: 0;
		}
	}

	.gform-kanban__controls-inner--right {
		display: flex;
		gap: var(--gform-admin-spacer-3);

		@media (min-width: 40.625rem) {
			margin-inline-start: auto;
		}
	}

	.gform-kanban__controls-search {
		align-items: center;
		display: flex;
		gap: var(--gform-admin-spacer-3);
		inline-size: 100%;
		justify-content: flex-end;

		@media (min-width: 40.625rem) {
			max-inline-size: 28.75rem;
		}
	}

	.gform-kanban__controls-search-input {
		flex-grow: 1;

		.gform-input {
			inline-size: 100%;
		}
	}

	.gform-kanban__controls-simple-filters {
		position: relative;
	}

	.gform-kanban__controls-simple-filters-list-item--reset {

		&.gform-kanban__controls-simple-filters-list-item:last-child { /* extra selectors to override droplist styles */
			margin-block-end: calc(var(--gform-admin-spacer-1) * -1);
		}

		.gform-droplist__item-trigger-text {
			color: var(--gform-admin-color-blue-ribbon);
			padding: 0;
			text-align: center;
		}
	}

	.gform-kanban__controls-simple-filters-count {
		align-items: center;
		background: var(--gform-admin-color-blue-ribbon);
		block-size: 0.875rem;
		border-radius: 0.125rem;
		color: var(--gform-admin-color-white);
		display: flex;
		inline-size: 0.875rem;
		inset-block-start: -2px;
		inset-inline-end: -2px;
		justify-content: center;
		position: absolute;
	}

	.gform-kanban__active-filters {
		align-items: center;
		border-block-end: 1px solid var(--gform-admin-color-metal-gray);
		display: flex;
		flex-wrap: wrap;
		gap: var(--gform-admin-spacer-3);
		justify-content: center;
		padding-block: var(--gform-admin-spacer-2);
		padding-inline: var(--gform-admin-spacer-6);
	}

	.gform-kanban__grid-container {
		display: flex;
		flex: 1;
		overflow-x: auto;
		overflow-y: hidden;
		position: relative;
	}

	.gform-kanban__grid-inner {
		flex: 1 0 auto;
		min-inline-size: 100%;
		padding: var(--gform-admin-spacer-6);
	}

	.gform-kanban__grid {
		block-size: 100%;
	}

	.gform-kanban__column {
		background: var(--gform-admin-color-white);
		block-size: 100%;
		inline-size: 275px;
		position: relative;

		&:hover,
		&:focus-within {

			.gform-kanban__column-header-actions {
				opacity: 1;
			}
		}
	}

	.gform-kanban__column--drag-layer {
		background-color: var(--gform-admin-color-alabaster);
		border: 1px solid var(--gform-admin-color-porcelain-gray);
		border-radius: 6px;
		box-shadow: var(--gform-admin-box-shadow-super);
		inline-size: 301px;
		padding: var(--gform-admin-spacer-3);

		.gform-kanban__card-header {
			cursor: grabbing;
		}

		.gform-kanban__column-header-actions {
			opacity: 1;
		}
	}

	.gform-kanban__column--drop-left::before,
	.gform-kanban__column--drop-right::before {
		background: var(--gform-admin-color-blue-ribbon);
		block-size: 100%;
		border-radius: 2px;
		content: "";
		inline-size: 4px;
		inset-block-start: 0;
		position: absolute;
	}

	.gform-kanban__column--drop-left::before {
		inset-inline-start: -8px;
	}

	.gform-kanban__column--drop-right::before {
		inset-inline-end: -8px;
	}

	.gform-kanban__column--is-dragging > .gform-kanban__column-grid {
		opacity: 0;
	}

	.gform-kanban__column-grid {
		block-size: 100%;

		.gform-kanban__column-grid-item--cards {
			flex: auto;
		}
	}

	.gform-kanban__column-header {
		align-items: center;
		justify-content: space-between;
		position: relative;
	}

	.gform-kanban__column-header-label .gform-kanban__loader {
		margin-block: 6px 7px;
	}

	.gform-kanban__column-header-actions {
		align-items: center;
		opacity: 0;
		transition: var(--gform-admin-transition-dropdown);
	}

	.gform-kanban__column-overlay {
		inset-block-start: 100%;
	}

	.gform-kanban__column-grid-item--cards {
		display: flex;
		flex-direction: column;
		gap: var(--gform-admin-spacer-3);
		margin-block-end: calc(var(--gform-admin-spacer-6) * -1);
		overflow: auto;
		padding-block-end: var(--gform-admin-spacer-6);
	}

	.gform-kanban__column--card-drop-when-empty .gform-kanban__column-grid-item--cards {
		position: relative;

		&::before {
			background: var(--gform-admin-color-blue-ribbon);
			block-size: 4px;
			border-radius: 2px;
			content: "";
			inline-size: 100%;
			inset-block-start: 0;
			inset-inline-start: 0;
			position: absolute;
		}
	}

	.gform-kanban__card {
		aspect-ratio: auto;
		background: var(--gform-admin-color-white);
		border: 1px solid var(--gform-admin-color-snuff);
		box-shadow: var(--gform-admin-box-shadow-outline-light);
		position: relative;
	}

	.gform-kanban__card-header {
		align-items: center;
		border-block-end: 1px solid var(--gform-admin-color-snuff);
		cursor: grab;
		justify-content: space-between;
		padding: var(--gform-admin-spacer-3) var(--gform-admin-spacer-6);
	}

	.gform-kanban__card-header-actions {
		margin-inline-start: auto;
	}

	.gform-kanban__card-content {
		padding: var(--gform-admin-spacer-6);
	}

	.gform-kanban__card-footer {
		border-block-start: 1px solid var(--gform-admin-color-snuff);
		padding: var(--gform-admin-spacer-3) var(--gform-admin-spacer-6);
	}

	.gform-kanban__card--drop-above::before,
	.gform-kanban__card--drop-below::before {
		background: var(--gform-admin-color-blue-ribbon);
		block-size: 4px;
		border-radius: 2px;
		content: "";
		inline-size: 100%;
		inset-inline-start: 0;
		position: absolute;
	}

	.gform-kanban__card--drop-above {

		&::before {
			inset-block-start: -8px;
		}

		&:first-child::before {
			inset-block-start: 0;
		}
	}

	.gform-kanban__card--drop-below {

		&::before {
			inset-block-end: -8px;
		}

		&:last-child::before {
			inset-block-end: 0;
		}
	}

	.gform-kanban__drag-layer {
		block-size: 100%;
		inline-size: 100%;
		inset-block-start: 0;
		inset-inline-start: 0;
		pointer-events: none;
		position: fixed;
		z-index: 1;
	}

	.gform-kanban__loader {
		background-color: var(--gform-admin-color-porcelain-gray);
		block-size: 22px;
		border-radius: 11px;
		opacity: 1;

		&.gform-kanban__loader--animating {
			animation: gformKanbanOpacityCycle 1s ease-in-out infinite;
			animation-delay: -0.5s;
		}
	}

	.gform-kanban__empty {
		align-items: center;
		background: var(--gform-admin-color-white);
		border: 1px solid var(--gform-admin-color-white-iris);
		border-radius: 3px;
		box-shadow: var(--gform-admin-box-shadow-mega);
		display: flex;
		flex-direction: column;
		inset-block-start: 50%;
		inset-inline-start: 50%;
		justify-content: center;
		padding: var(--gform-admin-spacer-6);
		position: absolute;
		text-align: center;
		transform: translate(-50%, -50%);
	}
}

@keyframes gformKanbanOpacityCycle {

	0%,
	100% {
		opacity: 1;
	}

	50% {
		opacity: 0.5;
	}
}
