.hide-overflow {
	overflow: hidden !important;
}

.cm_override {
	letter-spacing: 1.35px;
	background: #085078;
	background: linear-gradient(45deg, #287098, #085078);
	width: calc( 100% - 48px );
	margin: -6px -12px -12px;
	padding: 36px 36px 12px;
}

.cm-enable-container {
	width: 56px;
	margin-right: 24px;
	float: left;
}

.cm-method-container {
	width: 330px;
	position: absolute;
	right: 36px;
	box-shadow: 0 5px 15px -8px rgba(0,0,0,.5);
	z-index: 10;
}

.cm-url-container {
	width: calc( 100% - 434px );
	float: left;
}

/* Checkbox */
.cm_checkbox > input {
	display: none !important;
}

.cm_check {
	transform: scale(1.2);
	display: inline-block;
	border-radius: 50%;
	background: #fff;
	vertical-align: middle;
	cursor: pointer;
	transition: border .3s ease;
	width: 52px;
	height: 52px;
	position: relative;
	border: 2px solid #fff;
}

.cm_check .icon {
	opacity: 0.2;
	color: #333;
	transition: opacity .3s .1s ease;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate3d( -50%, -50%, 0 );
	width: 50%;
}

.cm_checkbox input:checked + .cm_check {
	animation: content_mask_check .5s cubic-bezier(0.895, 0.030, 0.685, 0.220) forwards;
	background: #00d478;
}

.cm_checkbox input:checked + .cm_check .icon {
	opacity: 1;
	transform: translate3d( -50%, -50%, 0 ) scale(1);
	color: #fff;
	animation: content_mask_icon .3s cubic-bezier(1.000, 0.008, 0.565, 1.650) .1s 1 forwards;
}

/* Text Area */
.cm_text {
	position: relative;
	margin: auto;
	border: none;
	border-radius: 3px;
	box-shadow: 0px 1em 2em -1.5em rgba(0, 0, 0, 0.5);
}

.cm_text > input {
	letter-spacing: 1.35px;
	border: none !important;
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	background: #fff;
	outline: none;
	border-radius: 3px;
	font-size: 13px;
	padding: 20px 24px;
}

/* Faux Select */
.cm_select {
	position: relative;
	overflow: hidden;
	display: block;
	margin: auto;
	width: 330px;
	height: 100%;
	border-bottom: 0px;
	border-radius: 3px;
	box-shadow: 0px 1em 2em -1.5em rgba(0, 0, 0, 0.5);
}

.cm_select svg {
	width: 16px;
	fill: #444;
	position: relative;
	top: 2px;
}

.cm_select .option svg {
	margin-right: 10px;
}

.cm_select > .toggle {
	pointer-events: none;
	position: absolute;
	z-index: 4;
	right: 1.5em;
	top: 1.8em;
	color: #ccc;
}

.cm_select .title,
.cm_select .placeholder {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	padding: 1.5em 2em;
	background: white;
	border-top: 1px solid rgba(0, 0, 0, 0.05);
	cursor: pointer;
}

.cm_select > input {
	position: absolute;
	left: 0px;
	top: 0px;
	z-index: 1;
	width: 100%;
	height: 100%;
	display: block;
	opacity: 0;
	cursor: pointer;
}

.cm_select > input:checked ~ .toggle.svg-arrow-down {
	display: none;
}

.cm_select > input:checked ~ .toggle.svg-arrow-up {
	display: block;
}

.cm_select > input:checked div.options label.option .title {
	display: none !important;
}

.cm_select > input:not(:checked) {
	z-index: 4;
}

.cm_select > input:not(:checked) ~ label.option > span.title {
	display: none;
}

.cm_select > input:not(:checked) ~ .toggle.svg-arrow-up {
	display: none;
}

.cm_select > input:not(:checked) ~ .toggle.svg-arrow-down {
	display: block;
}

.cm_select > input:disabled {
	cursor: no-drop;
}

.cm_select > span.placeholder {
	position: relative;
	z-index: 0;
	display: inline-block;
	width: 100%;
	color: #999;
	border-top: 0px;
}

.cm_select label.option {
	display: block;
	overflow: hidden;
	z-index: 1;
	width: 100%;
	transition: all 1s ease-out;
}

.cm_select label.option span.title {
	position: relative;
	z-index: 2;
	transition: background .3s ease-out;
}

.cm_select label.option span.title i.icon {
	padding-right: 8px;
	color: #92a8d1;
	position: relative;
	top: 1px;
}

.cm_select label.option span.title:hover {
	color: #fff;
	background: #6b96ae;
	box-shadow: inset 0px 1px 0px rgba(0, 0, 0, 0.1);
}

.cm_select input:checked ~ label.option span.title:hover svg {
	fill: #fff;
}

.cm_select label.option input {
	display: none;
}

.cm_select label.option input:checked ~ span.title {
	position: absolute;
	display: block;
	z-index: 3;
	top: 0px;
	background: #fff;
	border-top: 0px;
	box-shadow: none;
	color: inherit;
	width: 100%;
}

.cm_select_toggle {
	position: absolute !important;
	width: 100% !important;
	height: 57px !important;
}

/* Admin Page */
.content-mask-admin-table {
	margin-top: 10px;
	border-radius: 3px;
	background-color: #fff;
	box-shadow: 0 2px 2px 0 rgba(0,0,0,.14), 0 3px 1px -2px rgba(0,0,0,.2), 0 1px 5px 0 rgba(0,0,0,.12);
	min-width: 98%;
	min-width: calc( 100% - 20px );
	height: 678px; /* 20 Rows (630 for 20 rows, + 48 for header) */
	max-height: calc( 100vh - 155px );
	position: absolute;
}

.content-mask-admin-table-body {
	overflow-x: hidden;
	overflow-y: auto;
	height: calc(100% - 48px);
}

.content-mask-admin-table-header {
	content: '';
	top: 0;
	height: 48px;
	border-bottom: 1px solid rgba(0, 0, 0, 0.075);
}

.content-mask-admin-table table {
	white-space: nowrap;
	color: rgba(0, 0, 0, 0.87);
	width:100%;
	font-size: 12px;
	overflow-x: hidden;
	overflow-y: auto;
}

.content-mask-admin-table table td,
.content-mask-admin-table table th {
	line-height: 45px;
}

.content-mask-admin-table table th {
	height: 0;
	border: none;
	padding: 0;
	font-weight: 500;
}

.content-mask-admin-table table th div {
	font-weight: 600;
}

.content-mask-admin-table table th div,
.content-mask-admin-table table thead tr:last-child th,
.content-mask-admin-table table td {
	padding: 0 8px 0 24px;
}

.content-mask-admin-table table td {
	position: relative;
}

.content-mask-admin-table .mine .title div::before {
	content: "";
	width: 2px;
	background: #2295cc;
	position: absolute;
	left: 0px;
	height: 100%;
}

.content-mask-admin-table table .wp-core-ui.button,
.content-mask-admin-table table .wp-core-ui.button-primary {
	position: absolute;
	top: 50%;
	transform: translateY( -50% );
}

.content-mask-admin-table table thead tr:last-child th {
	line-height: 0;
	opacity: 0;
}

.content-mask-admin-table table thead th div {
	position: absolute;
	line-height: 48px;
	top: 0;
}

.content-mask-admin-table table tbody tr:hover {
	background-color: #EDEDF2;
}

.content-mask-admin-table table td.post-type {
	width: 140px;
}

.content-mask-admin-table tr.disabled {
	background: #eee;
	opacity: .5;
}

.content-mask-admin-table table th.method {
	width: 10px;
}

.content-mask-admin-table table td.edit,
.content-mask-admin-table table td.view {
	width: 60px;
}

.content-mask-admin-table table td.post-type div {
	text-transform: capitalize;
}

.content-mask-admin-table table td.post-type div:after {
	content: " - " attr(data-post-status);
	color: #bbb;
}

.content-mask-admin-table table td.method div {
	cursor: pointer;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 40px;
	height: 40px;
	background: #fff;
	border-radius: 20px;
	overflow: hidden;
}

.content-mask-admin-table table td.method svg {
	display: inline-block;
	width: 20px;
	height: 20px;
	padding: 10px;
}

.content-mask-admin-table table td.method svg.download {
	width: 24px;
	height: 24px;
	padding: 8px;
}

.content-mask-admin-table table tr.enabled td.method div {
	background: #00d478;
}

.content-mask-admin-table table tr.enabled td.method svg {
	fill: #fff;
}

.content-mask-admin-table table td.method div:hover {
	cursor: pointer;
	background: #7fe9bb !important;
	opacity: 1;
	color: #fff;
}

.content-mask-admin-table table tr td.method div.cm-reloading {
	animation: 1s content_mask_reload linear infinite;
	background-color: #0078d4 !important;
}

.content-mask-admin-table table tr td.method div.cm-reloading svg {
	display: none;
}

.content-mask-admin-table table tr td.method div.cm-reloading:after {
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	border-radius: 10px;
	position: absolute;
	top: 50%;
	left: 25%;
	transform: translate(-50%,-50%);
	background: #fff;
}

.wp-core-ui.toplevel_page_content-mask #wpbody-content > .wrap {
	position: relative;
}

.wp-core-ui.toplevel_page_content-mask .notice.cm-message {
	position: absolute;
	z-index: 10;
	top: 0;
	left: 160px;
	padding-right: 16px;
}

@media (max-width: 1440px){
	.cm-url-container {
		float: none;
		width: 100%;
		clear: both;
		padding-top: 24px;
	}

	.cm-method-container {
		left: 115px;
		right: auto;
	}
}

@media (max-width: 520px){
	.cm-method-container {
		position: relative;
		left: 0;
		width: 100%;
	}

	.cm_select {
		width: 100%;
	}
	
	.cm-enable-container {
		float: none;
		margin-bottom: 24px;
		margin: 0 auto 24px;
	}
}

@keyframes content_mask_reload {
	from {
		transform: translateY(-50%) rotate(0deg);
	}
	to {
		transform: translateY(-50%) rotate(360deg);
	}
}

@keyframes content_mask_icon {
	from {
		opacity: 0;
		transform: translate3d( -50%, -50%, 0 ) scale(0.3);
	}
	to {
		opacity: 1;
		transform: translate3d( -50%, -50%, 0 ) scale(1)
	}
}

@keyframes content_mask_check {
	to {
		width: 52px;
		height: 52px;
		border: 2px solid #FFF;
		background: #00d478;
	}
}