/* elements */

a {
	text-decoration: none;
}
a:focus {
	box-shadow: none;
}

pre {
	word-break: break-all;
	word-wrap: break-word;
	white-space: pre-wrap;
}

img {
	max-width: 100%;
}

/* required */

label.invalid,
b.invalid,
a.invalid {
	color: #9d261d;
}
input.invalid {
	border: 1px solid #9d261d;
	background: #f2dede;
}

/* unset useless margin due to a hidden php error */
.php-error #adminmenuback,
.php-error #adminmenuwrap {
	margin: 0 !important;
}

/* system toolbar */

.jtoolbar {
	margin-bottom: 10px;
}

/* system messages */

.notice.no-decoration {
	padding: 0;
	margin: 0;
	border: 0;
	background: none;
	box-shadow: none;
}

.notice.activate-success {
	background: #dff0d8;
	border: 2px solid #56b360;
	color: #3c763d;
	box-shadow: none;
}

.modal-body .notice {
	margin-left: 10px;
	margin-right: 10px;
}
.modal-body form .notice {
	margin-left: inherit;
	margin-right: inherit;
}

#adminForm table[align="center"] {
	display: block;
	float: right;
}

.tablenav input[type="search"] {
	float: left;
	height: 28px;
	margin: 0 4px 0 0;
}

table.wp-list-table i.vap-quest-popover {
	/* ignore margin when popover is inside a list table */
	margin-left: 0;
	transform: none !important;
	color: #555;
}
table.wp-list-table th i {
	margin-left: 2px;
}
table.wp-list-table th.left,
table.wp-list-table td.left {
	text-align: left;
}
table.wp-list-table th.center,
table.wp-list-table td.center {
	text-align: center;
}
table.wp-list-table th.right,
table.wp-list-table td.right {
	text-align: right;
}

.sortable-handler.inactive {
	opacity: 0.3;
	filter: alpha(opacity=30);
}

.nowrap {
	white-space: nowrap;
}

.acl-rule-allowed,
.acl-rule-denied {
	color: #fff;
	border-radius: 3px;
	padding: 2px 6px;
	font-weight: bold;
	font-size: 12px;
	line-height: 32px;
}

.acl-rule-allowed {
	background: #3c763d;
}

.acl-rule-denied {
	background: #a94442;
}

/* postbox */

.postbox-container {
	width: 100%;
}
.postbox-container h2 {
	font-size: 14px;
	padding: 8px 12px;
	margin: 0;
	line-height: 1.4;
}
.postbox-container.vap .inside {
	margin: 6px 0 0 0;
}
.postbox-container div.control {
	font-size: 13px;
	line-height: 1.5;
	margin: 1em 0;
}
.postbox-container div.control .control-value {
	display: inline-block;
	width: calc(100% - 140px);
}
.postbox-container p > label,
.postbox-container div.control > label {
	width: 120px;
	display: inline-block;
	vertical-align: top;
	line-height: 26px;
	position: relative;
	padding-right: 12px;
	margin-right: 4px;
}
.postbox-container input {
	border-radius: 2px;
	padding: 4px 6px;
	max-width: 100%;
}

/* fix layout for h2 within .inside selector */
.postbox-container .inside .postbox-container h2.hndle {
	font-size: 14px;
	padding: 8px 12px;
	margin: 0;
	line-height: 1.4;
}

/* fix layout for span[n] within .inside selector */
.postbox-container .inside div[class*="span"] {
	width: 100%;
	margin: 0;
}

div[class*="span"].full-width .wp-calendar-box input {
	width: 100% !important;
}
div[class*="span"].full-width input,
div[class*="span"].full-width .control-value textarea {
	width: 90% !important;
}

div.full-width .form-vertical .control input, 
div.full-width .form-vertical .control textarea,
div.full-width .form-vertical .control .select2-container {
	width: 100% !important;
}

/* in case of right container, we need to turn off the style of the parent wrapper */
#right-container > .postbox-container {
	padding: 0;
	margin: 0;
}
#right-container > .postbox-container > .postbox {
	padding: 0;
	margin: 0;
	background: transparent;
	border: 0;
	box-shadow: none;
}
#right-container > .postbox-container > .postbox > .inside {
	padding: 0;
	margin: 0;
}

/* CodeMirror */

.modal-body .CodeMirror {
	height: 65vh;
}

.CodeMirror-wrap pre {
	word-break: break-word !important;
}

/* TinyMCE */
.mce-menubar[role="menubar"] {
	/* always hide menu bar */
	display: none;
}
.quicktags-toolbar input[type="button"].ed_button {
	/* fix width conflict with code buttons */
    width: auto !important;
}

/* Media manager */

.image-preview-wrapper img {
	max-height: 100px;
	max-width: 200px;
	width: auto;
}

.vap-media-modal .vap-media-grid-box {
	background: #fff;
}

/* Yes-No buttons */

.switch-field {
	font-family: "Lucida Grande", Tahoma, Verdana, sans-serif;
	padding: 2px;
	overflow: hidden;
	display: inline-block;
}
.switch-title {
	margin-bottom: 6px;
}
.switch-field input {
	position: absolute !important;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	width: 1px;
	border: 0;
	overflow: hidden;
}
.switch-field label {
	float: left;
}
.switch-field label {
	display: inline-block;
	width: 60px;
	background-color: #e4e4e4;
	color: rgba(0, 0, 0, 0.6);
	font-size: 14px;
	font-weight: normal;
	text-align: center;
	text-shadow: none;
	padding: 6px 14px;
	border: 1px solid rgba(0, 0, 0, 0.2);
	-webkit-box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3), 0 1px rgba(255, 255, 255, 0.1);
	box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.3), 0 1px rgba(255, 255, 255, 0.1);
	-webkit-transition: all 0.1s ease-in-out;
	-moz-transition:    all 0.1s ease-in-out;
	-ms-transition:     all 0.1s ease-in-out;
	-o-transition:      all 0.1s ease-in-out;
	transition:         all 0.1s ease-in-out;
}
.switch-field label:hover {
	cursor: pointer;
}
.switch-field input:checked + label {
	-webkit-box-shadow: none;
	box-shadow: none;
	color: #fff;
}
.switch-field input:checked + label.button-yes {
	background-color: #2f6f2f;
}
.switch-field input:checked + label.button-no {
	background-color: #802420;
}
.switch-field label:first-of-type {
	border-radius: 4px 0 0 4px;
}
.switch-field label:last-of-type {
	border-radius: 0 4px 4px 0;
}

/* select2 */

.select2-drop-mask, .select2-drop {
	/* must be higher than bootstrap modal (999999) and lower than tooltip (100001) */
	z-index: 100000 !important;
}

/* btn toolbar */

.btn-toolbar {
	/* fixed height for toolbar */
	height: 32px;
	/* WP5 */
	display: inline-block;
	width: 100%;
	margin: 5px 0;
}
.btn-group,
.input-append,
.input-prepend {
	/*display: inline-block;*/
	display: inline-flex;
	vertical-align: top;
	white-space: nowrap;
}
.pull-right {
	float: right;
}
.pull-left {
	float: left;
}
.btn-group + .btn-group {
	margin-left: 3px;
}

.btn-toolbar .btn-group.pull-left .select2-container {
	margin-right: 5px;
}
.btn-toolbar .btn-group.pull-right .select2-container {
	margin-left: 5px;
}

.btn-group .btn,
.input-append .btn,
.input-prepend .btn {
	min-height: 28px;
	min-width: 28px;
	margin-top: 0;
	vertical-align: top;
}

.btn-group .btn:not(:last-child),
.input-append .btn:not(:last-child),
.input-prepend .btn:not(:last-child) {
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
	border-right-width: 0;
	/*margin-right: -3px;*/
}
.btn-group .btn + .btn,
.input-append .btn + .btn,
.input-prepend .btn + .btn {
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
	/*margin-left: -1px;*/
}

.btn-group input,
.input-append input,
.input-prepend input {
	vertical-align: middle;
}

.input-append .wp-calendar-box input {
	height: 28px;
	padding: 0 6px;
	margin: 0;
	border-radius: 0;
}

/* button classes */

.btn {
	background-color: #f3f3f3;
	color: #333;
	display: inline-block;
	font-weight: 400;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	/*border: 1px solid #b3b3b3;*/
	border: 1px solid #8c8f94;
	padding: 4px 8px;
	font-size: 13px;
	line-height: 17px;
	border-radius: .25rem;
	transition: background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
	cursor: pointer;
	box-sizing: border-box;
}
span.btn:hover {
	cursor: default;
	color: #333;
	background-color: #f3f3f3;
	/*border-color: #b3b3b3;*/
	border: 1px solid #8c8f94;
}
.btn:focus:not([disabled]), .btn:hover:not([disabled]) {
	color: #343a40;
	background-color: #f8f9fa;
	border-color: #6c757d;
	text-decoration: none;
}
.btn-small {
    padding: 2px 10px;
    font-size: 12px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}
.btn-mini {
	padding: 0 6px;
	font-size: 9.75px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	min-height: auto;
}
.btn-group .btn-mini,
.input-append .btn-mini,
.input-prepend .btn-mini {
	min-height: auto;
}
.btn-success {
	color: #fff;
	background-color: #438243;
	border: 1px solid #117211;
}
.btn-success:hover {
	color: #fff;
	background-color: #366936;
	border-color: #326032;
}
.btn-danger {
	color: #fff;
	background-color: #d9534f;
	border: 1px solid #b93e3a;
}
.btn-danger:hover {
	color: #fff;
	background-color: #d23430;
	border-color: #c9302c;
}
.btn-primary {
	color: #fff;
	background-color: #006898;
	border: 1px solid #03577e;
}
.btn-primary:hover {
	color: #fff;
	background-color: #004e72;
	border: 1px solid #004565;
}
.btn-warning {
	color: #fff;
	background-color: #f89406;
	border: 1px solid #c27408;
}
.btn-warning:hover {
	color: #fff;
	background-color: #ad6704;
	border: 1px solid #f89406;
}
.btn-secondary {
	color: #343a40;
	background-color: #fefefe;
	/*border-color: #b3b3b3;*/
	border: 1px solid #8c8f94;
}
.btn-secondary:focus,.btn-secondary:hover {
	color: #343a40;
	background-color: #f8f9fa;
	border-color: #6c757d;
}
a.btn {
	text-decoration: none !important;
}

.btn img {
	vertical-align: middle;
}

a.btn {
	/* fix block layout on button links */
	box-sizing: border-box;
}

a.disabled,
.btn.disabled,
.btn[disabled] {
	cursor: default;
	background-image: none;
	opacity: 0.65;
	filter: alpha(opacity=65);
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
}

a.disabled,
a.disabled:hover {
	color: #999999;
	background-color: transparent;
	cursor: default;
	text-decoration: none;
}

/* calendar field */

.wp-calendar-box {
	background: transparent;
	display: inline-block;
	vertical-align: top;
	position: relative;
}
.wp-calendar-box input[type="text"] {
	padding-right: 24px;
}
.wp-calendar-box i.dashicons-calendar-alt {
	position: absolute;
	top: 5px;
	right: 4px;
}

/* native icons */

i[class^="icon-"] {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	line-height: 1;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
}
i.icon-search:before {
	content: "\f002";
}
i.icon-apply:before {
	content: "\f00c";
}
i.icon-remove:before {
	content: "\f00d";
}
i.icon-pencil:before {
	content: "\f044";
}
i.icon-eye:before {
	content: "\f06e";
}
i.icon-eye-close:before {
	content: "\f070";
}
i.icon-location:before {
	content: "\f041";
}
i.icon-calendar:before {
	content: "\f073";
}
i.icon-loop:before {
	content: "\f021";
}
i.icon-save-copy:before {
	content: "\f0c5";
}
i.icon-new:before {
	content: "\f055";
}
i.icon-file:before {
	content: "\f15b";
}

/* native */

table.table,
table.order-status-table {
	width: 100%;
	border-collapse: collapse;
}
table.table th,
table.table td {
	text-align: left;
	padding: 8px;
}
table.table td {
	border-top: solid 1px #ddd;
}

legend.adminlegend {
	font-size: 19.5px;
}

.vap-config-searchbar {
	height: 50px;
}

.vapdash-container {
	background-color: #fff;
}
.vapdash-tab-button a {
	background-color: #f1f1f1;
}
.vapdash-tab-button a.active {
	color: #0073aa;
}

.vap-archive-main {
	background-color: #fff;
}

.select2-container.vap-phones-select {
	vertical-align: top;
}

.vap-orderbasket-badge {
	width: calc(50% - 26px);
}
.vap-orderbasket-badge:not(.large):nth-of-type(even) {
	float: right;
}
.vap-orderbasket-badge.large {
	width: calc(100% - 20px);
}

.cal-events-list .event-row:first-child {
	border-top: 0;
}
.cal-events-list .no-event {
	border-top: 0;
	padding: 0;
}
table.vap-workday-calendar {
	border-collapse: collapse;
	border-spacing: 0;
}


#employee_workdays .row-fluid {
	margin-top: 0 !important;
}

.ui-dialog {
	z-index: 10001 !important;
}
.ui-widget-overlay {
	z-index: 10000 !important;
}
.ui-dialog-content table.adminform span {
	font-size: smaller;
}

/* fix caldays pointer position on wordpress */
/* fix participants overlay position on wordpress */
#wpbody div.slot-pointer,
#wpbody div.smart-overlay {
	margin-top: -32px; /* exclude admin bar height */
	margin-left: -180px; /* exclude admin sidebar width */
}

table .fa.fa-qrcode.vap-quest-popover {
	/* increase font size of QR icon within shortcodes list */
	font-size: 18px;
}

.custmail-top-control {
	margin-bottom: 10px;
}

/* force max width for payment images */
.vikpayparamdiv img {
	max-width: 100%;
}

.dashboard-widgets-container {
	background: #fcfcfc;
}

/* license */

#vap-main-menu.vap-horizontal-menu .license-box {
	float: right;
	padding: 10px;
	background-color: #4a9468;
	font-size: 14px;
	border-radius: 4px;
}

/* rates debug */
#debug-wrap {
	margin: 0;
	width: 100%;
}

/* media print */

@media print {
	body {
		background-color: #fff !important;
		height: auto !important;
	}
	#adminmenumain, #wpadminbar, #wpfooter {
		display: none !important;
	}
	#wpcontent {
		margin-left: 0 !important;
	}
	html.wp-toolbar {
		padding: 0px !important;
	}
}

/**
 * PURCHASER INFO MODAL
 */

.order-container .order-left-box {
	border-right-color: #ddd;
}
.order-container .order-left-box .order-left-top-box {
	border-bottom-color: #ddd;
}
.order-container .order-left-box .order-left-bottom-box .order-custom-fields:not(:only-of-type) {
	border-left-color: #ddd;
}

/* mobile */

@media screen and (max-width: 767px) {
	.order-global-details {
		border-bottom-color: #ddd;
	}
	.order-custom-fields {
		border-bottom-color: #ddd !important;
	}
	.order-options-list {
		border-bottom-color: #ddd !important;
	}
}

/* unset padding from media manager modal */
#jmodal-box-mediamanager {
	padding: 0;
}
.modal-header + div#jmodal-box-mediamanager {
	height: calc(100% - 112px) !important;
}
#jmodal-box-mediamanager .vap-media-gallery {
	max-height: calc(90% - 158px);
}

/* adjust inspector */
.record-inspector {
	padding: 30px 0 0 0;
}
.record-inspector .inspector-footer {
	bottom: 0;
}
.inspector-form ul.nav-tabs {
	margin: 10px 0 15px 0;
}

.control label i.vap-quest-popover,
.postbox-header i.vap-quest-popover {
	vertical-align: initial;
	transform: none;
	font-size: inherit;
	margin-left: 5px;
}
.control label i.vap-quest-popover {
	margin-right: 5px;
	margin-top: 8px;
	position: absolute;
}
.inspector-form .control label i.vap-quest-popover {
    margin-right: 0;
    margin-top: 0;
    position: initial;
}

.inspector-form .control label {
	margin-bottom: 4px;
	display: block;
}
.record-inspector .inspector-body .inspector-form input,
.record-inspector .inspector-body .inspector-form select,
.record-inspector .inspector-body .inspector-form textarea,
.record-inspector .inspector-body .inspector-form .select2-container {
	width: 100% !important;
	margin: 0 0 10px 0;
}
.record-inspector .inspector-body .inspector-form .wp-calendar-box {
	width: 100% !important;
}
.record-inspector .inspector-body .inspector-form .switch-ios {
	margin: 0 0 2px 0;
}
.record-inspector .inspector-body .inspector-form .btn-group,
.record-inspector .inspector-body .inspector-form .input-append,
.record-inspector .inspector-body .inspector-form .input-prepend {
	width: 100%;
	display: flex;
	margin-bottom: 10px;
}

/* user notes */
.vap-unotes {
	padding: 0;
}
.vap-unotes > h1 {
	padding-top: 0;
}
.vap-unotes > ul > li .usernote-content,
.vap-unotes > ul > li .usernote-files {
	background: #fff;
}

/* api users */
.vap-ips-container .control-group {
	margin-bottom: 10px;
}

/* Reviews modal */
#jmodal-box-review {
	background: #fdfdfd;
}

/* Reservations */
#customerinfo_appointments .order-status-table {
	background: #fff;
}
#customerinfo_notes .user-note-box legend {
	display: block;
	width: 100%;
}

/* Navigation tabs */
.customer-info-modal #customerinfoTabs .badge.tab-badge-count {
	line-height: 11px;
	font-size: 10px;
}

/* Configuration */
.configuration-panel #configuration-navbar {
	background: #f8f8f8;
}
.config-fieldset-body .control {
	margin: 8px 0;
	display: inline-block;
	width: 100%;
}
.config-fieldset-body .control > label {
	width: 160px;
	max-width: 160px;
	display: inline-block;
	vertical-align: top;
	margin-top: 5px;
	position: relative;
	padding-right: 12px;
	margin-right: 4px;
}
.config-fieldset-body .control > label i.vap-quest-popover {
	margin-top: 3px;
}
.config-fieldset-body .control-value {
	display: inline-block;
	width: calc(100% - 180px);
}
@media screen and (max-width : 1620px) {
	#vap-main-menu.vap-horizontal-menu .license-box a {
		padding: 6px 3px;
	}
	#vap-main-menu.vap-horizontal-menu .license-box span {
		display: none;
	}
	#vap-main-menu.vap-horizontal-menu .license-box i {
		width: 18px;
		font-size: 16px;
	}
}

@media screen and (max-width : 767px) {
	.config-fieldset-body label {
		width: 100%;
		max-width: 100%;
		display: block;
		font-weight: bold;
	}
	.config-fieldset-body .control-value {
		display: block;
		width: 100%;
	}
	.hidden-phone {
		display: none !important;
	}
}

/* form vertical */

.postbox-container .form-vertical .control > label,
.postbox-container .form-vertical .control .control-value {
	display: block;
	width: 100%;
	max-width: 100%;
}
.postbox-container .control-group.separator.custom-field {
	margin: 20px 0;
}

/* wizard */
.vap-wizard .wizard-step .wizard-step-body,
.vap-wizard .wizard-step .wizard-step-footer-bar {
	background: #f9f9f9 !important;
}
.vap-wizard div.control {
	font-size: 13px;
	line-height: 1.5;
	margin: 0.5em 0;
	display: inline-block;
	width:  100%;
}
.vap-wizard div.control-group {
	margin-bottom: 1em;
}
.vap-wizard div.control .control-value {
	display: flex;
}
.vap-wizard div.control > label {
	width: 120px;
	display: inline-block;
	vertical-align: top;
	line-height: 26px;
	float: left;
}
.vap-wizard div.control label i.vap-quest-popover {
	margin:  5px;
	position: initial;
}
.vap-wizard .wizard-step .wizard-form input[type="text"],
.vap-wizard .wizard-step .wizard-form input[type="email"],
.vap-wizard .wizard-step .wizard-form input[type="tel"],
.vap-wizard .wizard-step .wizard-form textarea,
.vap-wizard .wizard-step .wizard-form select {
	flex: 1;
	margin: 0;
	max-width: 100%;
}

/* working days import */
.vap-worktime-import-wrapper .import-editor,
.vap-worktime-import-wrapper #wd-import-tip {
	margin: 10px 0 0 0;
}
.worktime-import-preview ul ul {
	padding: 5px 0 0 20px;
}

/* configuration customizer */
.config-panel-tabview-inner .config-fieldset.full-width .input-prepend,
.config-panel-tabview-inner .config-fieldset.full-width .input-append {
	display: flex;
}
.config-panel-tabview-inner .config-fieldset.full-width .input-prepend input,
.config-panel-tabview-inner .config-fieldset.full-width .input-append input {
	flex: 1;
	width: 0 !important;
	min-width: 0;
}
.config-panel-tabview-inner .config-fieldset.full-width .input-prepend .color-picker-preview {
	padding-right: 16px;
}

@media screen and (max-width: 1440px) {
	.config-panel-tabview-inner .config-fieldset.full-width .control label,
	.config-panel-tabview-inner .config-fieldset.full-width .control .control-value {
		display: block;
		width: 100%;
		max-width: 100%;
		margin: 0;
	}
}

/* colorpicker  */
.colorpicker input {
	min-height: 0;
	line-height: 15px;
	font-size: 10px !important;
}
.colorpicker input:focus {
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
}

/* toast conflict */

.vap-toast-wrapper.error {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* rss  */

.display-flex {
	display: flex;
}
