/**
 * Fonts
 */

@font-face {
	font-family: 'uncanny-learndash-toolkit';
	src:
		url( '../fonts/uncanny-learndash-toolkit.ttf' ) format( 'truetype' ),
		url( '../fonts/uncanny-learndash-toolkit.woff' ) format( 'woff' ),
		url( '../fonts/uncanny-learndash-toolkit.svg' ) format( 'svg' );
	font-weight: normal;
	font-style: normal;
}

.ult .ult-icon {
	font-family: 'uncanny-learndash-toolkit' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

	.ult .ult-icon.ult-icon--th:before {
		content: '\e900';
	}

	.ult .ult-icon.ult-icon--th-list:before {
		content: '\e901';
	}

	.ult .ult-icon.ult-icon--times:before {
		content: '\e902';
	}

	.ult .ult-icon.ult-icon--times-circle:before {
		content: '\e903';
	}

	.ult .ult-icon.ult-icon--lock-alt:before {
		content: '\e904';
	}

	.ult .ult-icon.ult-icon-spinner-third-light:before {
		content: '\e905';
	}

	.ult .ult-icon.ult-icon-spinner-third-regular:before {
		content: '\e906';
	}

	.ult .ult-icon.ult-icon-spinner-third-bold:before {
		content: '\e907';
	}

	.ult .ult-icon.ult-icon-angle-left:before {
		content: '\e909';
	}
	.ult .ult-icon.ult-icon-angle-right:before {
		content: '\e90a';
	}
	.ult .ult-icon.ult-icon-angle-up:before {
		content: '\e90b';
	}
	.ult .ult-icon.ult-icon-angle-down:before {
		content: '\e90c';
	}
	.ult .ult-icon.ult-icon-twitter:before {
		content: '\f099';
	}
	.ult .ult-icon.ult-icon-facebook:before {
		content: '\f09a';
	}
	.ult .ult-icon.ult-icon-linkedin:before {
		content: '\f0e1';
	}

/**
 * Admin tabs
 */

.ult-admin-nav {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

	.ult-admin-nav-items {}

	.ult-admin-nav-social-icons {
		position: relative;
		padding-top: 5px;

		display: flex;
	}

		.ult-admin-nav-social-icon {
			position: relative;
	
			width: 22px;
			height: 22px;

			font-size: 12px;
			color: #f1f1f1;

			background: #939393;
			border-radius: 50%;

			cursor: pointer;

			transition: color 150ms ease-in-out, background 150ms ease-in-out;
		}

			.ult-admin-nav-social-icon:hover,
			.ult-admin-nav-social-icon:focus,
			.ult-admin-nav-social-icon:active {
				border: 0;
				box-shadow: none;
				background: #0790e8;
				color: #f1f1f1;
			}

			.ult-admin-nav-social-icon span {
				position: absolute;
				top: 50%;
				left: 50%;
				transform: translate(-50%,-50%);
			}

		.ult-admin-nav-social-icon:not(:last-child) {
			margin-right: 8px;
		}

		.ult-admin-nav-social-icon--facebook {
			font-size: 23px;
			color: #939393;
			background: transparent;
		}

			.ult-admin-nav-social-icon--facebook:hover,
			.ult-admin-nav-social-icon--facebook:active,
			.ult-admin-nav-social-icon--facebook:focus {
				background: transparent;
				color: #0790e8;
			}

		.ult-admin-nav-social-icon--linkedin span {
			margin-left: 1px;
		}

	@media screen and (max-width: 600px){
		.ult-admin-nav-social-icons {
			display: none;
		}
	}
	
/**
 * Fields
 */

.ult input,
.ult select,
.ult textarea {
	font-size: inherit;
	font-family: inherit;
}

/**
 * No scrolling
 */

html.noscroll {
	overflow: hidden 
}

html.noscroll #wpwrap,
html.noscroll .ult-modal {
	overflow-y: scroll;
}

/**
 * Form Element
 */

	/**
	 * Button
	 */

	.ult .ult-btn {
		background-color: transparent;
		border: 1px solid transparent;
		border-radius: 8px;
		box-shadow: 0 2px 5px 0 rgb(0 0 0 / 10%);
		cursor: pointer;
		display: inline-block;
		font-size: 14px;
		font-weight: 500;
		line-height: 1.5;
		outline: none;
		padding: 5px 15px;
		position: relative;
		text-align: center;
		transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
		user-select: none;
		vertical-align: middle;
		white-space: nowrap;
		text-decoration: none !important;
	}

		.ult .ult-btn + .ult-btn {
			margin-left: 7px;
		}

		.ult .ult-btn--primary {
			color: #0790e8;
			border-color: #0790e8;
		}

			.ult .ult-btn--primary.ult-btn--loading,
			.ult .ult-btn--primary.ult-btn--disabled,
			.ult .ult-btn--primary:disabled,
			.ult .ult-btn--primary:hover,
			.ult .ult-btn--primary:focus {
				color: #fff;
				background-color: #0790e8;
			}

			.ult .ult-btn--primary:not(.ult-btn--disabled):active,
			.ult .ult-btn--primary:not(.ult-btn--disabled):focus {
				box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, .5);
			}

		.ult .ult-btn--secondary {
			color: #6c757d;
			border-color: #b7b7b7;
		}

			.ult .ult-btn--secondary.ult-btn--loading,
			.ult .ult-btn--secondary.ult-btn--disabled,
			.ult .ult-btn--secondary:disabled,
			.ult .ult-btn--secondary:hover,
			.ult .ult-btn--secondary:focus {
				color: #fff;
				border-color: #9e9e9e;
				background-color: #9e9e9e;
			}

			.ult .ult-btn--secondary:not(.ult-btn--disabled):active,
			.ult .ult-btn--secondary:not(.ult-btn--disabled):focus {
				box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, .2);
			}

		.ult .ult-btn--dependency {
			color: #5ead4f;
			border-color: #75cb64;
		}

			.ult .ult-btn--dependency.ult-btn--loading,
			.ult .ult-btn--dependency.ult-btn--disabled,
			.ult .ult-btn--dependency:disabled,
			.ult .ult-btn--dependency:hover,
			.ult .ult-btn--dependency:focus {
				color: #fff;
				border-color: #6bc45a;
				background-color: #6bc45a;
			}

			.ult .ult-btn--dependency:not(.ult-btn--disabled):active,
			.ult .ult-btn--dependency:not(.ult-btn--disabled):focus {
				box-shadow: 0 0 0 0.2rem rgba(107, 196, 90, .2);
			}

		.ult .ult-btn--disabled,
		.ult .ult-btn:disabled {
			opacity: .6;
			cursor: not-allowed;
		}

		.ult .ult-btn--loading {
			color: transparent !important;
		}

			.ult .ult-btn--loading:before {
				content: '\e907';
				font-family: 'uncanny-learndash-toolkit';

				position: absolute;
				top: 50%;
				left: 50%;
				transform: translate(-50%,-50%);

				color: #fff;
				font-size: 16px;

				animation: rotating-centered 2s linear infinite;
			}

			.ult .ult-btn--loading:hover {
				color: transparent !important;
			}

	/**
	 * Input
	 */
	
	.ult .ult-form-element__field {
		position: relative;
	}

	.ult .ult-form-element__field input {
		width: 100%;

		line-height: 1;

		padding-left: 12px;
		padding-right: 12px;
		padding-top: 6px;
		padding-bottom: 7px;

		transition: all 150ms ease-in-out;

		border-radius: 3px;
		border: 1px solid #cdcdcd;
		/* box-shadow: 0 2px 5px 0 rgba(0,0,0,.1); */

		outline: none;
	}

	/**
	 * Select
	 */
	
	body > .select2-container--ult-select2 {
		z-index: 100000;
	}
	
	.ult .ult-form-element__select {
		width: 100%;
		padding: 4px 12px;

		border-radius: 3px;
		border: 1px solid #cdcdcd;
		transition: all 150ms ease-in-out;
		-webkit-appearance: none;

		outline: none !important;

		/* box-shadow: 0 2px 5px 0 rgba(0,0,0,.1); */
	}

		/* Select2 */

		.ult .select2-container--ult-select2 {
			width: 100% !important;
			z-index: 1;
		}

		.ult .select2-container--ult-select2 .select2-selection {
			height: auto !important;

			outline: none;

			padding-left: 4px;
			padding-top: 1px;
			padding-bottom: 1px;

			border: 1px solid #cdcdcd;
		}

		.ult .select2-container--ult-select2 .select2-selection--single {
			border: 1px solid #cdcdcd;
			/* box-shadow: 0 2px 5px 0 rgba(0,0,0,.1); */
		}

		.ult .select2-container--ult-select2 .select2-selection--single .select2-selection__arrow {
			height: 21px;
		}

		.ult .form-element--error .select2-selection {
			border-color: #d9534f !important;
		}

		.ult .select2-container--ult-select2 .select2-selection--single .select2-selection__arrow b,
		.ult .select2-container--ult-select2.select2-container--open .select2-selection--single .select2-selection__arrow b {
			display: block;
			border: 0;
		}

		.ult .select2-container--ult-select2 .select2-selection--single .select2-selection__arrow {
			right: 7px;
			top: 0;
		}

		.ult .select2-container--ult-select2 .select2-selection--single .select2-selection__arrow b:before,
		.ult .select2-container--ult-select2.select2-container--open .select2-selection--single .select2-selection__arrow b:before {
			content: '';
			font-family: 'uncanny-learndash-toolkit';
			right: 5px;
			color: #a2a2a2;
		}

		.ult .select2-container--ult-select2 .select2-selection--single .select2-selection__arrow b:before {
			content: '\e90c';
		}

		.ult .select2-container--ult-select2.select2-container--open .select2-selection--single .select2-selection__arrow b:before {
			content: '\e90b';
		}

		.select2-container--ult-select2 .select2-dropdown {
			border: 0 !important;
			font-size: 14px;
			font-family: -apple-system, system-ui, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
		}

		.select2-container--ult-select2 .select2-search--dropdown {
			padding: 0 !important;
			box-shadow: 0 2px 5px 0 rgba(0,0,0,.1);
		}

			.select2-container--ult-select2 .select2-search--dropdown .select2-search__field {
				border: 1px solid #cdcdcd !important;
				border-radius: 0 !important;
				padding: 8px 15px;
				outline: none;
				font-size: 15px;
				font-family: inherit;
				line-height: 1 !important;
			}

				.select2-container--ult-select2 .select2-search--dropdown .select2-search__field:hover {
					border-color: #b9b9b9 !important;
				}

				.select2-container--ult-select2 .select2-search--dropdown .select2-search__field:focus {
					border-color: #0790e8 !important;
					box-shadow: none;
				}

				.select2-container--ult-select2 .select2-dropdown.select2-dropdown--below .select2-search--dropdown .select2-search__field {
					margin-top: -1px;

					/* WordPress tries to overwrite this */
					margin-left: 0;
					margin-right: 0;
					margin-bottom: 0;
				}

				.select2-container--ult-select2 .select2-dropdown.select2-dropdown--above .select2-search--dropdown .select2-search__field {
					border-top-left-radius: 3px;
					border-top-right-radius: 3px;
				}

			.select2-container--ult-select2 .select2-results {
				border: 1px solid #cdcdcd;
				border-top: 0;
			}

			.select2-container--ult-select2 .select2-dropdown:not(.select2-dropdown--above) .select2-results {
				border-bottom-right-radius: 3px;
				border-bottom-left-radius: 3px;
			}

			.select2-container--ult-select2 .select2-results__option {
				padding: 10px 15px !important;

				/* WordPress tries to overwrite this */
				margin: 0 !important;
			}

				.select2-container--ult-select2 .select2-results__option:not(:last-child){
					border-bottom: 1px solid #ececec;
				}

			.select2-container--ult-select2 .select2-results>.select2-results__options::-webkit-scrollbar {
				width: 10px;
				background-color: rgba(0,0,0,.09);
				border-radius: 150px;
			}

			.select2-container--ult-select2 .select2-results>.select2-results__options::-webkit-scrollbar-thumb:vertical {
				background: rgba(0,0,0,.3);
				border-radius: 150px;
				background-clip: padding-box;
				border: 2px solid rgba(0,0,0,0);
				min-height: 10px;
			}

		.select2-container--ult-select2.select2-container--open.select2-container--below .select2-selection--single,
		.select2-container--ult-select2.select2-container--open.select2-container--below .select2-selection--multiple {
			border-bottom: 0px !important;
			margin-bottom: 1px;
		}

		.select2-container--ult-select2 .select2-results__option {
			color: #000 !important;
		}
		
		.select2-container--ult-select2 .select2-results__option:not(.select2-results__option--highlighted)[aria-selected=true] {
			background: #fff !important;
		}

		.select2-container--ult-select2 .select2-results__option--highlighted[aria-selected] {
			background: #f3f3f3 !important;
		}

		.ult .form-element--loading .select2-selection {
			background: #ebebeb !important;
			border-color: #cdcdcd !important;
			cursor: not-allowed;
			pointer-events: none; /* Prevent clicks */
		}

	/**
	 * Toggle
	 */
	
	.ult .ult-form-checkbox {
		width: 100%;
	}

		.ult .ult-form-element--loading .ult-form-checkbox {
			opacity: .5;
			cursor: not-allowed;
			pointer-events: none; /* Prevent clicks */
		}

		.ult .ult-form-checkbox__container {
			display: block;
			position: relative;
			padding-left: 23px;
			cursor: pointer;
			transition: opacity 150ms ease-in-out;
		}

			.ult .ult-form-checkbox__container:not(:last-child){
				margin-bottom: 10px;
			}

		.ult .ult-checkbox--hidden {
			display: none;
		}

		.ult .ult-form-checkbox.ult-form-checkbox--toggle .ult-form-checkbox__container {
			padding-right: 3px;
		}

		.ult .ult-form-checkbox.ult-form-checkbox--toggle .ult-checkbox--show {
			width: 30px;
			height: 16px;
			position: absolute;
			top: 1px;
			left: 0;
		}

		.ult .ult-form-checkbox.ult-form-checkbox--toggle .ult-checkbox--show:before {
			content: '';
			width: 100%;
			height: 100%;
			border-radius: 150px;
			border: 2px solid #c8c8c8;
			display: block;
			position: absolute;
			box-sizing: border-box;
			z-index: 1;

			transition: border 150ms ease-in-out, background 150ms ease-in-out;
		}

			.ult .ult-form-checkbox.ult-form-checkbox--toggle.ult-form-checkbox--toggle-gutenberg .ult-checkbox--show:before {
				border-color: #6c7781;
			}

		.ult .ult-form-checkbox.ult-form-checkbox--toggle .ult-checkbox--show:after {
			content: '';
			width: 8px;
			height: 8px;
			background: #afafaf;
			border-radius: 50%;
			display: block;

			position: absolute;
			top: 50%;
			left: 5px;
			transform: translateY(-50%);
			z-index: 2;

			transition: left 150ms ease-in-out, background 150ms ease-in-out;
		}

			.ult .ult-form-checkbox.ult-form-checkbox--toggle.ult-form-checkbox--toggle-gutenberg .ult-checkbox--show:after {
				background: #6c7781;
			}

		/* Blue toggle */

		.ult .ult-form-checkbox.ult-form-checkbox--toggle .ult-checkbox--hidden:checked ~ .ult-checkbox--show:before {
			background: #6bc45a;
			border-color: #6bc45a;
		}

		.ult .ult-form-checkbox.ult-form-checkbox--toggle .ult-checkbox--hidden:checked ~ .ult-checkbox--show:after {
			background: #fff;
			left: 18px;
		}

		/* Green toggle */

		.ult .ult-form-checkbox.ult-form-checkbox--toggle.ult-form-checkbox--toggle-green .ult-checkbox--hidden:checked ~ .ult-checkbox--show:before {
			background: #6bc45a;
			border-color: #6bc45a;
		}

		/* Text in toggle */

		.ult .ult-form-checkbox .ult-checkbox-label {
			display: none;
			font-weight: 600;
			user-select: none;
			transition: opacity 150ms ease-in-out;
		}

			.ult .ult-checkbox-label.ult-checkbox-label--off {
				color: #888888;
			}

			.ult .ult-form-checkbox.ult-form-checkbox--toggle.ult-form-checkbox--toggle-gutenberg .ult-checkbox-label.ult-checkbox-label--off {
				color: #6c7781;
			}			

		.ult .ult-checkbox-label.ult-checkbox-label--on {
			color: #0790e8;
		}

			.ult .ult-form-checkbox.ult-form-checkbox--toggle.ult-form-checkbox--toggle-green .ult-checkbox-label.ult-checkbox-label--on {
				color: #5faa51;
			}

		.ult .ult-checkbox--hidden:not(:checked) ~ .ult-checkbox-label.ult-checkbox-label--off {
			display: block;
		}

		.ult .ult-checkbox--hidden:checked ~ .ult-checkbox-label.ult-checkbox-label--on {
			display: block;
		}

		/* Toggle on the right, with label on right */

		.ult .ult-form-checkbox--toggle-right {
			text-align: right;
		}

			.ult .ult-form-checkbox--toggle-right .ult-form-checkbox__container {
				padding-left: 0 !important;
				padding-right: 35px;
			}

			.ult .ult-form-checkbox--toggle-right .ult-checkbox--show {
				left: auto !important;
				right: 0;
			}

			.ult .ult-form-checkbox--loading-inline.ult-form-checkbox--toggle-right .ult-form-checkbox__container:after {
				right: -20px;
				top: 1px;
			}

/**
 * Header
 */

.uo-plugins-header {
	width: 100%;
	margin-top: 20px;
}

	.uo-plugins-header__title {
		font-size: 25px;
		color: #4c4c4c;
		font-weight: 600;
		line-height: 1.2;
	}

	.uo-plugins-header__author {
		width: 100%;
	}

		.uo-plugins-header__author span {
			display: inline-block;
			vertical-align: bottom;
			margin-right: 5px;
		}

		.uo-plugins-header__logo {
			display: inline-block;
			vertical-align: bottom;
		}

			.uo-plugins-header__logo img {
				display: inline-block;
				width: 100px;
			}

.uo-plugins-tabs {
	margin: 5px 0 20px 0;
}

/**
 * Directory
 * This CSS styles the page where you select what modules you want to enable
 */

	/**
	 * Actions
	 */

	.ult .ult-directory-actions {
		display: flex;
		flex-wrap: wrap;
		vertical-align: bottom;
		margin-bottom: 20px;
		font-size: 14px;
	}

		.ult .ult-directory-filters {
			flex: 0 0 auto;
			display: flex;
			margin: 0 -5px;
		}

			.ult .ult-directory-filter {
				padding: 0 5px;
			}

			.ult .ult-directory-filter--version {
				width: 135px;
			}

			.ult .ult-directory-filter--categories {
				width: 155px;
			}

			.ult .ult-directory-filter--statuses {
				width: 135px;
			}

		.ult .ult-directory-search {
			flex: 1 1 auto;
			padding: 0 10px;
			text-align: right;
		}

			.ult .ult-directory-search .ult-form-element__field {
				width: 400px;
				max-width: 100%;
				display: inline-block;
			}

			@media screen and (max-width: 1150px){
				.ult .ult-directory-search .ult-form-element__field {
					width: 100%;
				}
			}

		.ult .ult-directory-layout {
			flex: 0 0 auto;
		}

			.ult #ult-directory-layout-toggle {
				display: flex;
				height: 100%;

				background: #fff;
				border-radius: 3px;
				border: 1px solid #cdcdcd;
			}

				.ult .ult-directory-layout-item {
					width: 50%;
					height: 100%;
					padding: 0 20px;
					position: relative;

					color: #939393;
					background: #d9d9d9;
					font-size: 18px;

					cursor: pointer;

					transition: background 150ms ease-in-out, color 150ms ease-in-out;
				}

				.ult .ult-directory-layout-item--active {
					background: #fff;
					color: #0790e8;
				}

				.ult .ult-directory-layout-item:first-child {
					border-top-left-radius: 3px;
					border-bottom-left-radius: 3px;
				}

				.ult .ult-directory-layout-item:last-child {
					border-top-right-radius: 3px;
					border-bottom-right-radius: 3px;
				}

					.ult .ult-directory-layout-item span {
						position: absolute;
						top: 50%;
						left: 50%;
						transform: translate(-50%,-50%);
					}

	@media screen and (max-width: 768px){
		.ult .ult-directory-actions {
			flex-wrap: wrap;
		}

		.ult .ult-directory-filters {
			width: 100%;
			flex-wrap: wrap;
			margin: 0;
			margin-top: -10px;
		}

		.ult .ult-directory-filter,
		.ult .ult-directory-filter--version,
		.ult .ult-directory-filter--categories,
		.ult .ult-directory-filter--statuses {
			width: 100%;
			padding: 0;
			margin-top: 8px;
		}

		.ult .ult-directory-search {
			width: 100%;
			padding: 0;
			margin-top: 10px;
		}

		/** The difference is too small, doesn't make sense */
		.ult .ult-directory-layout {
			display: none;
		}
	}

	/**
	 * Modules
	 */

	.ult .ult-directory-modules {
		width: auto;
		display: flex;
		flex-wrap: wrap;
		margin: 0 -10px -20px -10px;
	}

		.ult .ult-directory-module {
			width: 25%;
			position: relative;
		}

			.ult .ult-directory-module-content {
				position: relative;

				padding: 15px;

				background: #fff;
				border: 1px solid #d9d9d9;
				border-radius: 8px;

				width: calc(100% - 20px);
				height: calc(100% - 20px);
				margin: 0 10px 20px 10px;

				display: flex;
				flex-direction: column;
			}

			@media screen and (min-width: 961px) and (max-width: 1400px){
				.ult .ult-directory-module {
					width: 33.333%;
				}
			}

			@media screen and (min-width: 769px) and (max-width: 960px){
				.ult .ult-directory-module {
					width: 50%;
				}
			}

			@media screen and (max-width: 768px){
				.ult .ult-directory-module {
					width: 100%;
					height: auto;
					padding: 0 10px 20px 10px;
				}

				.ult .ult-directory-module-content {
					width: 100%;
					position: relative;
					margin: 0;
				}
			}

			.ult .ult-directory-module--cant-use .ult-directory-module-content {
				background: #f9f9f9;
			}

				.ult .ult-directory-module-content:before,
				.ult .ult-directory-module-content:after {
					content: '';
					opacity: 0;
					transition: opacity 150ms ease-in-out;
				}

				.ult .ult-directory-module--loading .ult-directory-module-content:before,
				.ult .ult-directory-module--loading .ult-directory-module-content:after {
					position: absolute;
					transform: translate(-50%, -50%);
					top: 50%;
					left: 50%;
					opacity: 1;
				}

				.ult .ult-directory-module--loading .ult-directory-module-content:before {
					width: 100%;
					height: 100%;
					z-index: 10;

					border-radius: 8px;

					background: rgba(255, 255, 255, .7);
				}

				.ult .ult-directory-module--loading .ult-directory-module-content:after {
					content: '\e906';

					font-family: 'uncanny-learndash-toolkit';
					font-size: 40px;
					color: #7e7e7e;

					animation: rotating-centered 2s linear infinite;

					z-index: 11;
				}

				.ult .ult-directory-module--loading .ult-directory-module-header,
				.ult .ult-directory-module--loading .ult-directory-module__description,
				.ult .ult-directory-module--loading .ult-directory-module-actions {
					filter: blur(2px);
				}

				.ult .ult-directory-module-notice {
					flex: 0 0 auto;

					width: calc( 100% + 30px );
					margin: -15px -15px 15px -15px;
					padding: 15px 15px;

					border-top-left-radius: 3px;
					border-top-right-radius: 3px;

					background: #d2eaff;
					color: #000;

					line-height: 1.4;

					font-size: 15px;

					display: flex;
				}

					.ult-directory-module-notice__icon {
						padding-right: 4px;
					}

					.ult-directory-module-notice__text {}

					.ult .ult-directory-module-notice a {
						font-weight: 600;
						color: #000;
						text-decoration: underline;
					}

					.ult .ult-directory-module-notice .ult-icon {
						margin-right: 5px;
					}
		
				.ult .ult-directory-module-header {
					flex: 0 0 auto;

					display: flex;
				}

					.ult .ult-directory-module-header-left {
						flex: 1 1 auto;
						padding-right: 20px;
						line-height: 1.4;
					}

						.ult .ult-directory-module__title {
							display: inline;

							font-size: 16px;
							color: #454545;
						}

						.ult .ult-directory-module__pro-label {
							display: inline-block;

							color: #fff;
							background: #6bc45a;
							padding: 1px 6px;
							font-size: 13px;
							border-radius: 150px;
							margin-left: 2px;
							text-decoration: none;
						}

							.ult .ult-directory-module--cant-use .ult-directory-module__pro-label {
								background: #adadac;
							}

					.ult .ult-directory-module__status {
						flex: 0 0 auto;
					}
				
				.ult .ult-directory-module__description {
					flex: 1 1 auto;

					color: #767676;
					font-size: 14px;
					margin: 5px 0;
					line-height: 1.3;
				}

				.ult .ult-directory-module-actions {
					flex: 0 0 auto;
				}

					.ult .ult-directory-module-actions .ult-directory-module__btn {
						margin-top: 10px;
					}

				.ult .ult-directory-module-header,
				.ult .ult-directory-module__description,
				.ult .ult-directory-module-actions {
					transition: filter 150ms ease-in-out;
				}

	/**
	 * Table view
	 */

	.ult .ult-directory--table .ult-directory-modules {
		margin-bottom: 0;
	}

	.ult .ult-directory--table .ult-directory-module {
		width: 100%;
		padding-bottom: 0;
	}

	.ult .ult-directory--table .ult-directory-module-content {
		border-radius: 0;
	}

	.ult .ult-directory--table .ult-directory-module:first-child .ult-directory-module-content {
		border-top-left-radius: 3px;
		border-top-right-radius: 3px;
	}

	.ult .ult-directory--table .ult-directory-module:last-child .ult-directory-module-content {
		border-bottom-left-radius: 3px;
		border-bottom-right-radius: 3px;
	}

	.ult .ult-directory--table .ult-directory-module:not(:last-child) .ult-directory-module-content {
		border-bottom: 0;
	}

	.ult .ult-directory--table .ult-directory-module__description {
		padding-bottom: 5px;
	}

	.ult-directory--table .ult-directory-module {
		min-height: 0;
	}

	.ult .ult-directory--table .ult-directory-module {
		height: auto;
	}

	.ult .ult-directory--table .ult-directory-module-content {
		position: relative;
		margin-bottom: 0;
	}

/**
 * Modal
 */

#wpwrap {
	transition: filter 150ms ease-in-out;
}

	#wpwrap.ult-modal-open {}

.ult-modal {
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,.4);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10001;
	display: none;
}

	.ult-modal-box {
		width: 100%;
		max-width: 500px;
		max-height: 80vh;

		border-radius: 8px;

		background: #fff;

		overflow: hidden;

		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		
		font-size: 15px;
		font-family: -apple-system, system-ui, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;

		display: flex;
		flex-direction: column;
	}

		.ult-modal input,
		.ult-modal select,
		.ult-modal textarea {
			font-size: inherit;
			font-family: inherit;
		}

		.ult-modal,
		.ult-modal * {
			box-sizing: border-box;
		}

		.ult-modal__header {
			padding: 20px;
			flex: 0 0 auto;
		}

			.ult-modal-title {
				display: flex;
				align-items: center;
			}

				.ult-modal-title__icon {
					flex: 0 0 auto;

					width: 36px;
					height: 36px;
					border-radius: 50%;
					background: rgba(7,144,232,.2);

					position: relative;
				}

					.ult-modal-title__icon:before {
						content: '';

						width: 18px;
						height: 18px;

						position: absolute;
						top: 50%;
						left: 50%;
						transform: translate(-50%,-50%);

						background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBmaWxsPSIjMDc5MGU4IiBkPSJNNDQ0Ljc4OCAyOTEuMWw0Mi42MTYgMjQuNTk5YzQuODY3IDIuODA5IDcuMTI2IDguNjE4IDUuNDU5IDEzLjk4NS0xMS4wNyAzNS42NDItMjkuOTcgNjcuODQyLTU0LjY4OSA5NC41ODZhMTIuMDE2IDEyLjAxNiAwIDAgMS0xNC44MzIgMi4yNTRsLTQyLjU4NC0yNC41OTVhMTkxLjU3NyAxOTEuNTc3IDAgMCAxLTYwLjc1OSAzNS4xM3Y0OS4xODJhMTIuMDEgMTIuMDEgMCAwIDEtOS4zNzcgMTEuNzE4Yy0zNC45NTYgNy44NS03Mi40OTkgOC4yNTYtMTA5LjIxOS4wMDctNS40OS0xLjIzMy05LjQwMy02LjA5Ni05LjQwMy0xMS43MjN2LTQ5LjE4NGExOTEuNTU1IDE5MS41NTUgMCAwIDEtNjAuNzU5LTM1LjEzbC00Mi41ODQgMjQuNTk1YTEyLjAxNiAxMi4wMTYgMCAwIDEtMTQuODMyLTIuMjU0Yy0yNC43MTgtMjYuNzQ0LTQzLjYxOS01OC45NDQtNTQuNjg5LTk0LjU4Ni0xLjY2Ny01LjM2Ni41OTItMTEuMTc1IDUuNDU5LTEzLjk4NUw2Ny4yMTIgMjkxLjFhMTkzLjQ4IDE5My40OCAwIDAgMSAwLTcwLjE5OWwtNDIuNjE2LTI0LjU5OWMtNC44NjctMi44MDktNy4xMjYtOC42MTgtNS40NTktMTMuOTg1IDExLjA3LTM1LjY0MiAyOS45Ny02Ny44NDIgNTQuNjg5LTk0LjU4NmExMi4wMTYgMTIuMDE2IDAgMCAxIDE0LjgzMi0yLjI1NGw0Mi41ODQgMjQuNTk1YTE5MS41NzcgMTkxLjU3NyAwIDAgMSA2MC43NTktMzUuMTNWMjUuNzU5YTEyLjAxIDEyLjAxIDAgMCAxIDkuMzc3LTExLjcxOGMzNC45NTYtNy44NSA3Mi40OTktOC4yNTYgMTA5LjIxOS0uMDA3IDUuNDkgMS4yMzMgOS40MDMgNi4wOTYgOS40MDMgMTEuNzIzdjQ5LjE4NGExOTEuNTU1IDE5MS41NTUgMCAwIDEgNjAuNzU5IDM1LjEzbDQyLjU4NC0yNC41OTVhMTIuMDE2IDEyLjAxNiAwIDAgMSAxNC44MzIgMi4yNTRjMjQuNzE4IDI2Ljc0NCA0My42MTkgNTguOTQ0IDU0LjY4OSA5NC41ODYgMS42NjcgNS4zNjYtLjU5MiAxMS4xNzUtNS40NTkgMTMuOTg1TDQ0NC43ODggMjIwLjlhMTkzLjQ4NSAxOTMuNDg1IDAgMCAxIDAgNzAuMnpNMzM2IDI1NmMwLTQ0LjExMi0zNS44ODgtODAtODAtODBzLTgwIDM1Ljg4OC04MCA4MCAzNS44ODggODAgODAgODAgODAtMzUuODg4IDgwLTgweiIgY2xhc3M9IiI+PC9wYXRoPjwvc3ZnPg==);
						background-size: contain;
						background-position: center center;
						background-repeat: no-repeat;
					}

				.ult-modal-title__text {
					flex: 1 1 auto;
					padding-left: 10px;

					font-size: 18px;
					font-weight: 500;
					color: #363636;
					line-height: 1.2;
				}

		.ult-modal-form {
			flex: 1 1 auto;
			display: flex;
			flex-direction: column;

			/**
			 * An initial setting on a flex container is min-height: auto.
			 * This means that, by default, a flex item cannot be shorter than its content.
			 * We have to overwrite this
			 */
			min-height: 0px;
		}

			.ult-modal-options {
				width: calc(100% - 20px);
				flex: 1 1 auto;
				overflow-y: auto;
				margin: 0 10px;
				padding: 10px;
				background: #fff;

				/**
				 * An initial setting on a flex container is min-height: auto.
				 * This means that, by default, a flex item cannot be shorter than its content.
				 * We have to overwrite this
				 */
				min-height: 0px;
			}

				.ult-modal-options::-webkit-scrollbar {
					width: 10px;
					background-color: rgba( 0, 0, 0, .09 );
					border-radius: 150px;
				}

				.ult-modal-options::-webkit-scrollbar-thumb:vertical {
					background: #afafaf;
					border-radius: 150px;
					background-clip: padding-box;
					border: 2px solid rgba( 0, 0, 0, 0 );
					min-height: 10px;
				}

				.ult-modal-options h2 {
					color: #383838;
					font-size: 18px;
					font-weight: 500;
					border-top: 1px solid #dedede;
					padding-top: 15px;
					padding-bottom: 15px;
                    margin: 20px 0 0 0;
				}

					.ult-modal-options h2:first-child {
						border-top: 0;
						margin-top: 0;
						padding-top: 0;
					}

					.ult-modal-options .ult-modal__field:first-child > h2 {
						padding-top: 0;
						margin-top: 0;
						border-top: 0;
					}

				.ult-modal-form-row {
					position: relative;
				}

					.ult-modal-form-row--children {
						padding-left: 15px;
						border-left: 10px solid #eee;
					}

					.ult-modal-form-row--hide {
						display: none;
					}

					.ult-modal-form-row:not(:last-child){
						margin-bottom: 15px;
					}

					.ult-modal-form-row__label {
						font-weight: 500;
						margin-bottom: 12px;
						color: #5f5f5f;
					}

					
					input[type=text].ult-modal-form-row__input {
						padding: 8px 12px;
						width: 100%;
						border-radius: 3px;
						border: 1px solid #cdcdcd;
						line-height: 1;
						outline: none;
						transition: border 150ms ease-in-out;
						box-shadow: 0 2px 5px 0 rgba(0,0,0,.1);
					}

						input[type=text].ult-modal-form-row__input:hover {
							border-color: #b9b9b9;
						}

						input[type=text].ult-modal-form-row__input:focus {
							border-color: #0790e8;
							box-shadow: 0 2px 5px 0 rgba(0,0,0,.1);
						}

					select.ult-modal-form-row__select {
						width: 100%;
						height: 38px;
						padding: 6px 12px;

						position: static;

						border-radius: 3px;
						border: 1px solid #cdcdcd;
						transition: all 150ms ease-in-out;

						outline: none !important;

						box-shadow: 0 2px 5px 0 rgba(0,0,0,.1);
					}

						/* Select2 */

						.ult-select2.ult-select2--modal.select2-container.select2-container--ult-select2 {
							z-index: 1000000;
						}

						.ult-modal .select2-container {
							width: 100% !important;
							z-index: 1;
						}

						.ult-modal .select2-selection {
							height: auto !important;

							outline: none;

							padding-left: 4px;
							padding-top: 3px;
							padding-bottom: 3px;

							border: 1px solid #cdcdcd;
							/* transition: border 150ms ease-in-out; */
						}

						.ult-modal .select2-container--ult-select2 .select2-selection--single {
							border: 1px solid #cdcdcd;
							box-shadow: 0 2px 5px 0 rgba(0,0,0,.1);
						}

						.ult-modal .form-element--error .select2-selection {
							border-color: #d9534f !important;
						}

						.ult-modal .select2-container--ult-select2 .select2-selection--single .select2-selection__arrow b,
						.ult-modal .select2-container--ult-select2.select2-container--open .select2-selection--single .select2-selection__arrow b {
							display: block;
							border: 0;
						}

						.ult-modal .select2-container--ult-select2 .select2-selection--single .select2-selection__arrow {
							right: 7px;
							top: 0;
						}

						.ult-modal .select2-container--ult-select2 .select2-selection--single .select2-selection__arrow b:before,
						.ult-modal .select2-container--ult-select2.select2-container--open .select2-selection--single .select2-selection__arrow b:before {
							content: '';
							font-family: 'uncanny-learndash-toolkit' !important;
							speak: none;
							font-style: normal;
							font-weight: normal;
							font-variant: normal;
							text-transform: none;
							line-height: 1;
							-webkit-font-smoothing: antialiased;
							-moz-osx-font-smoothing: grayscale;
							right: 5px;
							color: #a2a2a2;
						}

						.ult-modal .select2-container--ult-select2 .select2-selection--single .select2-selection__arrow b:before {
							content: '\e90c';
						}

						.ult-modal .select2-container--ult-select2.select2-container--open .select2-selection--single .select2-selection__arrow b:before {
							content: '\e90b';
						}

						.ult-modal .form-element--loading .select2-selection {
							background: #ebebeb !important;
							border-color: #cdcdcd !important;
							cursor: not-allowed;
							pointer-events: none; /* Prevent clicks */
						}

					.ult-modal-form-row__description {
						color: rgba(0,0,0,.6);
						margin-top: 7px;
						font-size: 14px;
						line-height: 1.4;
					}

					.ult-modal-form-row__radio-label {
						width: 100%;
						display: flex;
						align-items: center;
						padding: 4px 0;
					}
					
						.ult-modal-form-row__radio-label input {
							margin-top: 0;
							margin-right: 0;
						}

						.ult-modal-form-row__radio-label span {
							display: block;
							padding-left: 8px;
						}

			.ult-modal-footer {
				flex: 0 0 auto;
				padding-top: 10px;
			}

				.ult-modal-notice {
					display: none;
					padding: 15px;
					margin: 0 15px 20px 15px;
					background: #e7e7e7;
					border: 1px solid #d8d8d8;
					color: #737373;
					border-radius: 3px;
					text-align: center;
					line-height: 1.3;
				}

					.ult-modal-notice--error {
						background: #fceded;
						border: 1px solid #d8d8d8;
					}

					.ult-modal-notice--success {
						background: #e0f0e2;
						border: 1px solid #d8d8d8;
					}

				.ult-modal-actions {
					background: #f3f5f6;
					padding: 15px 7px;
					display: flex;
					justify-content: space-between;
				}

					.ult-modal-actions__left,
					.ult-modal-actions__right {
						display: flex;
					}

					.ult-modal-action {
						padding: 0 8px;
					}

						.ult-modal-action__btn {
							width: 100%;
							background: #0790e8;
							color: #fff;
							font-size: 15px;
							line-height: 1.5;
							display: inline-block;
							outline: none;
							font-weight: 400;
							text-decoration: none;
							text-align: center;
							white-space: nowrap;
							vertical-align: middle;
							user-select: none;
							border: 1px solid transparent;
							padding: 6px 15px;
							border-radius: 3px;
							transition: color 150ms ease-in-out, background-color 150ms ease-in-out,border-color 150ms ease-in-out, box-shadow 150ms ease-in-out, opacity 150ms ease-in-out;
							cursor: pointer;
							box-shadow: 0 2px 5px 0 rgba(0,0,0,.1);
							position: relative;
						}

							.ult-modal-action__btn:hover {
								background: #0e7dc5;
							}

							.ult-modal-action__btn:not(.ult-modal-action__btn--loading):focus {
								box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, .5);
							}

							.ult-modal-action__btn--secondary {
								background: transparent;
								color: #6c757d;
								border-color: #b7b7b7;
							}

								.ult-modal-action__btn--secondary:hover,
								.ult-modal-action__btn--secondary:focus,
								.ult-modal-action__btn--secondary.ult-modal-action__btn--loading {
									color: #fff;
									border-color: #9e9e9e;
									background: #9e9e9e;
								}

								.ult-modal-action__btn--secondary:not(.ult-modal-action__btn--loading):focus {
									box-shadow: 0 0 0 0.2rem rgba(158, 158, 158, .5);
								}

							.ult-modal-action__btn--loading:before {
								opacity: 0;
								transition: opacity 150ms ease-in-out;
							}

							.ult-modal-action__btn--loading {
								color: transparent;
							}

							.ult-modal-action__btn--loading:before {
								content: '';

								width: 18px;
								height: 18px;

								opacity: 1;

								position: absolute;
								top: 50%;
								left: 50%;
								transform: translate(-50%,-50%);
								transform-origin: 0 0;

								animation: spin-centered .8s linear infinite;

								z-index: 2;

							 	background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj48cGF0aCBmaWxsPSIjZmZmIiBkPSJNNDU2LjQzMyAzNzEuNzJsLTI3Ljc5LTE2LjA0NWMtNy4xOTItNC4xNTItMTAuMDUyLTEzLjEzNi02LjQ4Ny0yMC42MzYgMjUuODItNTQuMzI4IDIzLjU2Ni0xMTguNjAyLTYuNzY4LTE3MS4wMy0zMC4yNjUtNTIuNTI5LTg0LjgwMi04Ni42MjEtMTQ0Ljc2LTkxLjQyNEMyNjIuMzUgNzEuOTIyIDI1NiA2NC45NTMgMjU2IDU2LjY0OVYyNC41NmMwLTkuMzEgNy45MTYtMTYuNjA5IDE3LjIwNC0xNS45NiA4MS43OTUgNS43MTcgMTU2LjQxMiA1MS45MDIgMTk3LjYxMSAxMjMuNDA4IDQxLjMwMSA3MS4zODUgNDMuOTkgMTU5LjA5NiA4LjA0MiAyMzIuNzkyLTQuMDgyIDguMzY5LTE0LjM2MSAxMS41NzUtMjIuNDI0IDYuOTJ6IiBjbGFzcz0iIj48L3BhdGg+PC9zdmc+);
							 	background-size: contain;
							 	background-position: center center;
							 	background-repeat: no-repeat;
							}

							.ult-modal-action__btn--disabled {
								opacity: .6;
								cursor: not-allowed;
								pointer-events: none;
							}

							@-ms-keyframes spin-centered {
				                from {
				                    -ms-transform: rotate(0deg) translate(-50%,-50%);
				                }
				                to {
				                    -ms-transform: rotate(360deg) translate(-50%,-50%);
				                }
				            }

				            @-moz-keyframes spin-centered {
				                from {
				                    -moz-transform: rotate(0deg) translate(-50%,-50%);
				                }
				                to {
				                    -moz-transform: rotate(360deg) translate(-50%,-50%);
				                }
				            }

				            @-webkit-keyframes spin-centered {
				                from {
				                    -webkit-transform: rotate(0deg) translate(-50%,-50%);
				                }
				                to {
				                    -webkit-transform: rotate(360deg) translate(-50%,-50%);
				                }
				            }

				            @keyframes spin-centered {
				                from {
				                    transform: rotate(0deg) translate(-50%,-50%);
				                }
				                to {
				                    transform: rotate(360deg) translate(-50%,-50%);
				                }
				            }

			/**
			 * Loading
			 */
			
			.uo-modal--loading {}

				.ult-modal--loading .ult-modal-form-row > * {
					display: none !important;
				}

				.ult-modal-form-row:before {
					content: '';
					opacity: 0;
					z-index: -1;
					top: 0;
					left: 0;
					display: none;
				}

				.ult-modal--loading .ult-modal-form-row:before {
					opacity: 1;
					z-index: 1;
	
					width: 100%;
					height: 40px;
					border-radius: 3px;

					display: block;

					animation: placeHolderShimmer 1.8s linear infinite;
					animation-fill-mode: forwards;
					background: #f6f7f8;
					background: linear-gradient(to right, #f0f0f0 8%, #dedede 38%, #f0f0f0 54%);
					background-size: 1000px 640px;
				}

					.ult-modal--loading .ult-modal-form-row__label {
						color: transparent;
						display: none;
					}

/*
* Animations
*/

@keyframes rotating {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(360deg);
	}
}

@keyframes rotating-centered {
	from {
		transform: translate(-50%,-50%) rotate(0deg);
	}
	to {
		transform: translate(-50%,-50%) rotate(360deg);
	}
}

@keyframes placeHolderShimmer {
	0% {
		background-position: -800px 0
	}
	100% {
		background-position: 800px 0
	}
}