/* SAVING STATES, ETC */
.savingState, .no-pending-message, .calendarSavingState, #data-ajax-url, #timepickerTemplate { display:none; }
.topSavingState.savingState { top: 23px; right: 30px; font-size: 14px; color: #bbcad2; position:absolute; }
.hide-in-admin { display:none !important; }
.faded { opacity:0.2; }

/* GENERAL STYLES */
.bookedClearFix:after { content: ""; display: table; clear: both; }
.booked-settings-wrap { padding:0 3px; margin:0 20px 0 0; position:relative; }
.wrap .booked-settings-title { margin:25px 0 0 0; padding:23px 0 23px; background:#365769; color:#fff; font-size:20px; text-align:center; text-transform:uppercase; }
body.booked_bookings_page_booked_plugin .settings-error code { display:block; margin:5px 0; }
#booked_plugin_booked_bookings_section .inside { margin:0; padding:40px; }
.wrap .booked-settings-title, table.booked-calendar th, table.booked-calendar td { font-family:"Montserrat",sans-serif; font-weight:400; }


.booked-addon-block { background:#f9f9f9; text-align:center; box-sizing:border-box; width:30.3%; padding:30px 30px 20px; border:1px solid #ddd; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; float:left; margin:1.5% }
.booked-addon-block .addon-new { font-weight:bold; margin:0 0 15px; text-transform:uppercase; display:inline-block; padding:5px 7px; color:#fff; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; background:#D54E21; }
.booked-addon-block img { display:block; margin:0 auto 15px; width:125px; height:auto; max-width:100%; }
#booked-admin-panel-container .section-row .section-head .booked-addon-block h3 { font-size:17px; margin:0 0 15px; text-transform:none; }
#booked-admin-panel-container .section-row .section-head .booked-addon-block p { font-size:13px; line-height:1.8; color:#888; margin:0 0 25px }


/* BOOKED SETTINGS PANELS */
#booked-admin-panel-container { position:relative; margin:0; font-family: 'Open Sans', sans-serif; }
#booked-admin-panel-container *:focus { box-shadow:none; outline:0; }
#booked-admin-panel-container .booked-admin-tabs { list-style:none; margin:0; padding:0; background:#264452; }
#booked-admin-panel-container .booked-admin-tabs li { float:left; display:inline-block; margin:0; padding:0; }
#booked-admin-panel-container .booked-admin-tabs li a { display:block; color:#fff; background:#213946; text-decoration:none; padding:0 15px; line-height:40px; }
#booked-admin-panel-container .booked-admin-tabs li a:hover { background:#161a1c; color:#fff; }
#booked-admin-panel-container .booked-admin-tabs li.active a, #booked-admin-panel-container .booked-admin-tabs li.active a:hover { background:#365769; color:#fff; cursor:default; }
#booked-admin-panel-container .form-wrapper { border:1px solid #ddd; border-top:0; background:#fff; }
#booked-admin-panel-container .form-wrapper .tab-content { padding:40px; }
#booked-admin-panel-container .view-import-export, #booked-admin-panel-container .view-uninstall { margin:0 0 0 10px; display:inline-block; padding:5px 10px 6px; background:#eee; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; color:#888; text-decoration:none; font-weight:600; }
#booked-admin-panel-container .view-uninstall { color:#f12804; }
#booked-admin-panel-container .view-import-export:hover { background:#888; color:#fff; }
#booked-admin-panel-container .view-uninstall:hover { background:#f12804; color:#fff; }
#booked-admin-panel-container input[type=text] { border:1px solid #ccc; padding:10px 12px; }
#booked-admin-panel-container p.submit { margin:0; padding:0; }
#booked-admin-panel-container .section-row { padding-bottom: 20px; }
#booked-admin-panel-container .section-row .section-head { padding-bottom: 20px; }
#booked-admin-panel-container .section-row .section-head h3 { padding: 0; margin: 0; font-size: 15px; line-height: 20px; color: #2ea2cc; text-transform: uppercase; font-weight: 600; }
#booked-admin-panel-container .section-row .section-body { position: relative; }
#booked-admin-panel-container .section-row .hint-p { padding: 10px 5px; margin: 0; font-size: 13px; line-height: 1.7; color: #999999; }
#booked-admin-panel-container .section-row .hint-p a { color: #47aad1; text-decoration: none; font-weight: 600; }

#booked-admin-panel-container input[type=text].booked-color-field { padding:3px 5px; }
#booked-admin-panel-container label.booked-color-label { display:block; font-weight:600; margin:0 0 10px; }
#booked-admin-panel-container .wp-picker-container { margin:0 0 15px; }
#booked-admin-panel-container p.submit { margin:0; padding:0; }

#booked-admin-panel-container .section-row input.field { display:block; margin:0 0 20px; width: 50%; padding: 10px; font-size: 14px; line-height: 23px; }
#booked-admin-panel-container .section-row textarea.field { width: 100%; padding: 20px; resize: none; font-size: 14px; line-height: 23px; }
#booked-admin-panel-container .section-row textarea.field.small { height: 100px; }
#booked-admin-panel-container .section-row textarea.field.med { height: 240px; }
#booked-admin-panel-container .section-row textarea.field.large { height: 340px; }

#booked-admin-panel-container .section-row .checkbox-radio-label { padding:0 0 0 5px; position:relative; top:-2px; }

#booked_email_logo-img { display:block; max-width:600px; height:auto; margin:20px 0 15px; }



/* CUSTOM FIELDS */
#booked-cf-sortable-templates, #booked-cf-sortables { display:none; }
#booked-admin-panel-container .booked-cf-block { padding:30px; background:#f5f5f5; border:2px dashed #ddd; }
#booked-admin-panel-container #booked-cf-sortables { margin:0 0 30px; padding:0; list-style:none; width:100%; }
#booked-admin-panel-container #booked-cf-sortables li { position:relative; margin:0 0 2px; padding:20px; background:#fff; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; }
#booked-admin-panel-container #booked-cf-sortables li small { font-size:12px; font-weight:600; text-transform:uppercase; display:block; padding:0; margin:0 0 8px; color:#2EA2CC; }
#booked-admin-panel-container #booked-cf-sortables li i.main-handle, #booked-admin-panel-container #booked-cf-sortables li i.sub-handle { font-size: 20px; color: #888; display: block; float: left; margin: 1px 10px 0 -8px; width: 40px; height: 98px; line-height: 20px; text-align: center; cursor:move; cursor: -webkit-grab; }
#booked-admin-panel-container #booked-cf-sortables li.ui-sortable-helper { box-shadow:1px 1px 10px rgba(0,0,0,0.15); }
#booked-admin-panel-container #booked-cf-sortables input[type=text] { padding:7px 11px; font-size:13px; width:540px; }
#booked-admin-panel-container #booked-cf-sortables ul input[type=text] { width:475px; }
#booked-admin-panel-container #booked-cf-sortables li .cf-delete { opacity:0.2; color: #fff; font-size: 13px; line-height: 19px; position: absolute; top: 20px; right: 20px; background: #dd0000; width: 20px; height: 20px; text-align: center; border-radius: 10px; }
#booked-admin-panel-container #booked-cf-sortables li:hover .cf-delete { opacity:1;  }
#booked-admin-panel-container #booked-cf-sortables li .cf-delete:hover { background:#880000; }
#booked-cf-sortables li label { color:#888; font-size:12px; }
#booked-cf-saveButton { float:left; }
.cf-updater.savingState { float:left; padding:5px 0 0 15px; color:#888; }
#booked-admin-panel-container #booked-cf-sortables ul, #booked-admin-panel-container #booked-cf-sortables button { margin:0 0 0 43px; }
#booked-admin-panel-container #booked-cf-sortables ul li .cf-delete { right:auto; left:30px; top:18px; }
#booked-admin-panel-container #booked-cf-sortables button { margin-top:10px; }
#booked-admin-panel-container #booked-cf-sortables ul li { margin:0; padding:10px 0 0; background:none; -moz-border-radius:0; -webkit-border-radius:0; border-radius:0; width:541px; }
#booked-admin-panel-container #booked-cf-sortables ul li i.sub-handle { font-size: 16px; margin: 1px 35px 0 -11px; height: 34px; line-height: 34px; }
#booked-admin-panel-container #booked-cf-sortables ul li.ui-sortable-helper { box-shadow:none; }



@media screen and (max-width:720px){
	
	#booked-admin-panel-container .form-wrapper { border-top:none; }
	#booked-admin-panel-container .booked-admin-tabs { border-bottom:3px solid #365769; }
	#booked-admin-panel-container .booked-admin-tabs li { float:none; display:block; margin:2px 0 0; }
	#booked-admin-panel-container .booked-admin-tabs li a { text-align:center; -moz-border-radius:0; -webkit-border-radius:0; border-radius:0; }
	
}



/* TIMESLOTS TABLE */
table.booked-timeslots { font-weight:400; background:#fff; text-align:center; border-spacing: 0; border-collapse: collapse; width:100%; }
table.booked-timeslots thead { background:#365769; color:#fff; text-transform:uppercase; }
table.booked-timeslots thead th { padding:12px 0; color:#fff; border:1px solid #365769; font-size:14px; width:14.285%; border-right:5px solid #365769; font-family:"Montserrat",sans-serif; font-weight:bold; }
table.booked-timeslots tbody td { vertical-align:top; border:none; padding:0; border-right:5px solid #ddd; }
table.booked-timeslots tbody td p small { color:#aaa; }
table.booked-timeslots tbody td .timeslot { font-weight:600; text-align:center; padding:10px 0 44px; display:block; border-bottom:1px solid #ddd; position:relative; }
table.booked-timeslots tbody td .timeslot:last-child { border:none; }
table.booked-timeslots thead th:first-child, table.booked-timeslots tbody td:first-child { border-left:none; }
table.booked-timeslots thead th:last-child, table.booked-timeslots tbody td:last-child { border-right:none; }
table.booked-timeslots tbody td .button { margin:0; }
table.booked-timeslots tbody td .button-mobile { display:none; }
table.booked-timeslots tbody td .start { display:inline-block; text-align:left; }
table.booked-timeslots tbody td .end { display:inline-block; text-align:left; }
table.booked-timeslots tbody td .delete { cursor:pointer; position:absolute; right:10px; bottom:7px; text-align:right; color:#f59e9e }
table.booked-timeslots tbody td .delete:hover { color:#e35656; }
table.booked-timeslots tbody td .slotsBlock { text-align:left; position:absolute; bottom:0; left:0; width:100%; padding:7px 0; background:#f5f5f5; }
table.booked-timeslots tbody td .add { -webkit-user-select: none; -moz-user-select: none; -khtml-user-select: none; -ms-user-select: none; display:inline-block; cursor:pointer; color:#ccc; padding-left:5px }
table.booked-timeslots tbody td .add:hover { color:#888; }
table.booked-timeslots tbody td .count { display:inline-block; text-align:left; color:#aaa; padding-left:5px }
table.booked-timeslots tbody td .count em { font-style:normal; }
table.booked-timeslots tbody td .minus { -webkit-user-select: none; -moz-user-select: none; -khtml-user-select: none; -ms-user-select: none; display:inline-block; cursor:pointer; color:#ccc; padding-left:10px }
table.booked-timeslots tbody td .minus:hover { color:#888; }
table.booked-timeslots tbody td.addTimeslot { padding:15px 0; background:#f5f5f5; border-bottom:1px solid #ddd; }
table.booked-timeslots tbody td.addTimeslot .setTimeslot { -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; margin:0 8% 5%; width:84%; box-sizing:border-box; padding:5px; text-align:center; background:#f5f5f5; border:1px solid #ddd; }
table.booked-timeslots tbody td.addTimeslot .setTimeslot:hover { background:#eee; cursor:pointer; }
table.booked-timeslots tbody td.addTimeslot .cancel { display:none; }
table.booked-timeslots tbody td.addTimeslot.active .cancel { margin-right:5px; display:inline-block; }
table.booked-timeslots tbody td.addTimeslot .timeslotTabs { margin:0 9% 10px; border-bottom:2px solid #365769; }
table.booked-timeslots tbody td.addTimeslot .addTimeslotTab { float:left; -moz-border-radius:3px 3px 0 0; -webkit-border-radius:3px 3px 0 0; border-radius:3px 3px 0 0; box-sizing:border-box; display:inline-block; width:49%; font-size:11px; background:#ddd; color:#555; padding:5px 10px; text-decoration:none; }
table.booked-timeslots tbody td.addTimeslot .addTimeslotTab:last-child { float:right; }
table.booked-timeslots tbody td.addTimeslot .addTimeslotTab:hover { background:#ccc; color:#000; }
table.booked-timeslots tbody td.addTimeslot .addTimeslotTab.active, table.booked-timeslots tbody td.addTimeslot .addTimeslotTab.active:hover { background:#365769; color:#fff; }
table.booked-timeslots tbody td.addTimeslot select { box-sizing: border-box; width:82%; margin:5px 9%; display:block; font-size:11px; }
table.booked-timeslots tbody td.addTimeslot .tsTabContent select:last-child { margin-bottom:15px; }

table.booked-timeslots tbody td.addTimeslot .allday-wrap { box-sizing: border-box; width:80%; margin:10px 10%; text-align:center; display:block; font-size:11px; }

@media screen and (max-width:1250px){
	table.booked-timeslots tbody td .timeslot span.start, table.booked-timeslots tbody td .timeslot span.end { font-size:11px; }
}

@media screen and (max-width:1150px){
	table.booked-timeslots tbody td .timeslot { padding:10px 0; }
	table.booked-timeslots tbody td .timeslot span.start, table.booked-timeslots tbody td .timeslot span.end { line-height:1; font-size:11px; display:block; text-align:center; width:100%; }
	table.booked-timeslots tbody td .timeslot span.start { padding-top:10px; }
	table.booked-timeslots tbody td .timeslot span.end { padding-bottom:10px; }
	table.booked-timeslots tbody td .slotsBlock { font-size:11px; position:relative; background:none; text-align:center; padding:0 0 5px; display:block; }
	table.booked-timeslots tbody td .slotsBlock span { padding:0 2px; }
	table.booked-timeslots tbody td .delete { position:relative; top:0; right:0; text-align:center; width:100%; display:block; }
}

@media screen and (max-width:660px){
	.topSavingState.savingState { display:none !important; }
	table.booked-timeslots thead th, table.booked-timeslots tbody td { font-size:11px; }
	table.booked-timeslots tbody td .button { display:none; }
	table.booked-timeslots tbody td .button-mobile { padding:10px 0; display:inline-block; font-size:16px; color:#555; }
}



/* PENDING APPOINTMENTS */
.booked-pending-headings { background:#264452; color:#fff; padding:11px 0; font-size:15px; font-weight:400; font-family:"Montserrat",sans-serif; }
.booked-pending-headings .left { float:left; padding-left:30px; }
.booked-pending-headings .right { float:right; padding-right:30px; }
.booked-pending-appt-list { border:1px solid #ddd; border-top:0; padding:20px; margin:0; background:#fff; }
.booked-pending-appt-list .pending-appt { padding:10px; font-size:14px; box-sizing:border-box; line-height:1.8; font-family:"Open Sans",sans-serif; color:#888; border-bottom:1px solid #ddd; }
.booked-pending-appt-list .pending-appt:last-child { border-bottom:0; }
.booked-pending-appt-list .pending-appt a { font-size:16px; font-weight:600; text-decoration:none; }
.booked-pending-appt-list .pending-appt button { float:right; margin:11px 0 0 0; }
.booked-pending-appt-list .pending-appt a.delete { float:right; margin:11px 0 0 20px; font-size:20px; line-height:1.3; color:#F59E9E; }
.booked-pending-appt-list .pending-appt a.delete:hover { color:#E35656; }
.booked-pending-appt-list .pending-appt .late-appt { color:#D54E21; }

/* Dashboard Widget */
.booked-pending-appt-list.booked-dashboard-widget { border:none; padding:0 5px; background:transparent; }
.booked-pending-appt-list.booked-dashboard-widget .pending-appt, .booked-pending-appt-list.booked-dashboard-widget .pending-appt a { font-size:13px; line-height:1.7 }


/* ADMIN CALENDAR STYLES */
#booked-plugin-page .booked-admin-calendar-wrap { padding:0 23px 0 3px; }

.booked-calendarSwitcher { display:inline-block; margin:25px 0 0 3px; padding:5px 10px 5px 12px; background:#264452; color:#fff; -moz-border-radius:5px 5px 0 0; -webkit-border-radius:5px 5px 0 0; border-radius:5px 5px 0 0; }
.booked-calendarSwitcher p { line-height:1; margin:0; }
.booked-calendarSwitcher p i.fa { font-size:17px; margin:0 5px 0 3px; position:relative; top:2px; }
.booked-calendarSwitcher select { min-width:200px; border:none; background:#264452; color:#fff; }
.booked-calendarSwitcher select:active, .booked-calendarSwitcher select:focus { -moz-box-shadow:none; -webkit-box-shadow:none; box-shadow:none; }
.noCalendarsSpacer { height:25px; }

#booked-timeslotsSwitcher { display:inline-block; margin:5px 0 0 0; padding:5px 10px 5px 12px; background:#264452; color:#fff; -moz-border-radius:5px 5px 0 0; -webkit-border-radius:5px 5px 0 0; border-radius:5px 5px 0 0; }
#booked-timeslotsSwitcher p { line-height:1; margin:0; }
#booked-timeslotsSwitcher p i.fa { font-size:17px; margin:0 5px 0 3px; position:relative; top:2px; }
#booked-timeslotsSwitcher select { min-width:200px; border:none; background:#264452; color:#fff; }
#booked-timeslotsSwitcher select:active, #booked-timeslotsSwitcher select:focus { -moz-box-shadow:none; -webkit-box-shadow:none; box-shadow:none; }

#bookedTimeslotsWrap { position:relative; }

table.booked-calendar { background:#F1F1F1; text-align:center; border-spacing: 0; border-collapse: collapse; width:100%; }
table.booked-calendar thead { background:#365769; color:#fff; text-transform:uppercase; }
table.booked-calendar th { position:relative; font-size:20px; width:14.285%; border:1px solid #365769;  padding:21px 0 21px; line-height:1; }
table.booked-calendar tr.days { background:#264452; color:#fff; text-transform:uppercase; }
table.booked-calendar tr.days th { padding:13px 0 12px; border:1px solid #264452; font-size:14px; }
table.booked-calendar th .monthName a, table.booked-calendar th .monthName span { font-size:12px; position:relative; top:-3px; left:0; padding-right:20px; text-decoration:none; text-transform:none; color:#90a0a9; }
table.booked-calendar th .monthName span { padding-right:0; padding-left:20px; color:#fff; }
table.booked-calendar th .monthName a:hover { color:#b6c7d1; left:-3px; }
table.booked-calendar th .page-left { font-size:24px; color:#fff; position:absolute; left:20px; top:19px; }
table.booked-calendar th .page-right { font-size:24px; color:#fff; position:absolute; right:20px; top:19px; }
table.booked-calendar th .page-left:hover { left:19px; }
table.booked-calendar th .page-right:hover { right:19px; }
table.booked-calendar td { overflow:hidden; position:relative; font-size:20px; color:#888888; padding:0; border:1px solid #ddd; }
table.booked-calendar td .date { background:#fff; display:block; width:100%; height: 100%; }
table.booked-calendar td .date .number { display:inline-block; -moz-border-radius:25px; -webkit-border-radius:25px; border-radius:25px; transform:scale(1); width: 40px; height: 40px; line-height: 40px; }
table.booked-calendar td.blur .date, table.booked-calendar td.blur:hover .date { cursor:default; background:#EEEEEE; color:#ccc; }
table.booked-calendar td.partial .date .number { border:2px solid #ffce59; color:#555; }
table.booked-calendar td.booked .date .number { border:2px solid #f15934; color:#555; }
table.booked-calendar td.today .date .number { border:2px solid #6dc3ee; color:#555; }
table.booked-calendar td.today .date { background:#f0faff; color:#000; }
table.booked-calendar td:hover .date { background:#f9f9f9; cursor:pointer; color:#000; }
table.booked-calendar td.partial:hover .date { background:#fff4ce; }
table.booked-calendar td.booked:hover .date { background:#ffe4df; }
table.booked-calendar td.today:hover .date { background:#dceff8; }
table.booked-calendar td .count { cursor:pointer; position:absolute; top:-40px; left:0; background:#fff; padding:10px 0; font-size:11px; text-transform:uppercase; width:100%; display:block; }
table.booked-calendar td:hover .count { top:0; }
table.booked-calendar tr.week td.active { border-bottom-color:#ddd; }
table.booked-calendar tr.week td.active .date { background:#ddd; color:#555; }
table.booked-calendar tr.week td.active .date .number { border:none; transform:scale(1.75); background:#fff; color:#000; }
table.booked-calendar tr.week td.active { background:#ddd; }
table.booked-calendar tr.entryBlock { background:#ddd; color:#fff; }
table.booked-calendar tr.entryBlock td { padding:2%; text-align:left; color:#fff; border-bottom-color:#ddd; }
table.booked-calendar tr.entryBlock.loading td { height:132px; }

table.booked-calendar .booked-appt-list { transform:scale(0.95); display:none; color:#000; background:#fff; padding:30px 35px 10px; font-size:15px; line-height:1.7; }
table.booked-calendar .booked-appt-list.shown { transform:scale(1); }
table.booked-calendar .booked-appt-list h2 { color:#555; font-size:20px; margin:0 0 20px; }
table.booked-calendar .booked-appt-list p { font-family:"Open Sans",sans-serif; color:#888; font-weight:400; margin:0 0 20px; }
table.booked-calendar .booked-appt-list p a { text-decoration:none; }
table.booked-calendar .booked-appt-list .timeslot { box-sizing:border-box; line-height:1.8; font-family:"Open Sans",sans-serif; color:#888; border-top:1px solid #ddd; }
table.booked-calendar .booked-appt-list .timeslot.faded { opacity:0.25; }
table.booked-calendar .booked-appt-list .timeslot:hover { background:#f9f9f9; }
table.booked-calendar .booked-appt-list .timeslot:last-child { margin:0 0 20px; }
table.booked-calendar .booked-appt-list .timeslot .timeslot-time { padding:10px 0 10px 15px; box-sizing:border-box; float:left; }
table.booked-calendar .booked-appt-list .timeslot .timeslot-time i.fa { color:#aaa; }
table.booked-calendar .booked-appt-list .timeslot .timeslot-count { padding:10px 0; box-sizing:border-box; float:left; }
table.booked-calendar .booked-appt-list .timeslot .timeslot-people { padding:10px 10px 10px 0; box-sizing:border-box; float:right; }
table.booked-calendar .booked-appt-list .timeslot .timeslot-time { width:30%; font-weight: 600; color: #555; font-size: 16px; }
table.booked-calendar .booked-appt-list .timeslot .timeslot-count { padding-left:15px; border-left:1px solid #ddd; width:50%; }
table.booked-calendar .booked-appt-list .timeslot .timeslot-count.count-wide { width:70%; }
table.booked-calendar .booked-appt-list .timeslot .spots-available { text-transform:uppercase; font-size:11px; display:block; line-height:2.7; color:#aaa; }
table.booked-calendar .booked-appt-list .timeslot .spots-available.empty { color:#E35656; }
table.booked-calendar .booked-appt-list .timeslot .timeslot-people { width:20%; }
table.booked-calendar .booked-appt-list .timeslot .timeslot-people button { float:right; margin:0 0 0 10px }
table.booked-calendar .booked-appt-list .timeslot a { font-weight:600; text-decoration:none; }

table.booked-calendar .timeslot-count strong { display:block; text-transform:uppercase; margin:20px 0 10px; }
table.booked-calendar .appt-block { width:80%; border-top:1px solid #ddd; display:block; padding:10px 0; }
table.booked-calendar .timeslot-count button { float:right; margin:0 0 0 10px; }
table.booked-calendar .timeslot-count a.delete { float:left; margin:0 10px 0 0; font-size:20px; line-height:1.3; color:#F59E9E; }
table.booked-calendar .timeslot-count a.delete:hover { color:#E35656; }
table.booked-calendar tr.week td.active:hover .count { top:-40px; }

/* Appointment Tabs */
table.booked-calendar #bookedAppointmentTabs { border-bottom:2px solid #264452; width:100%; list-style:none; margin:0 0 30px; padding:0; }
table.booked-calendar #bookedAppointmentTabs li { margin:0 3px 0 0; padding:0; display:inline-block; float:left; }
table.booked-calendar #bookedAppointmentTabs li a { display:block; padding:10px 14px; background:#eee; color:#888; -moz-border-radius:3px 3px 0 0; -webkit-border-radius:3px 3px 0 0; border-radius:3px 3px 0 0; text-decoration:none; font-weight:300; font-size:13px; }
table.booked-calendar #bookedAppointmentTabs li a:active, table.booked-calendar #bookedAppointmentTabs li a:focus { -moz-box-shadow:none; -webkit-box-shadow:none; box-shadow:none; }
table.booked-calendar #bookedAppointmentTabs li.active a { background:#365769; color:#fff; }
table.booked-calendar #bookedAppointmentTabs li a span { background:#D54E21; color:#fff; min-height:18px; min-width:8px; padding:0 5px; display:inline-block; line-height:18px; margin:0 0 0 10px; position:relative; top:-1px; font-size:11px; font-weight:300; -moz-border-radius:20px; -webkit-border-radius:20px; border-radius:20px; text-align:center; }
table.booked-calendar #bookedAppointmentTabs li.active a span { background:#FFCE59; color:#000; }

table.booked-calendar .bookedAppointmentTab { display:none; -webkit-transform:scale(1.02); -moz-transform:scale(1.02); transform:scale(1.02); }
table.booked-calendar .bookedAppointmentTab.active { -webkit-transform:scale(1); -moz-transform:scale(1); transform:scale(1); }

table.booked-calendar .bookedAppointmentTab {
	-webkit-transition: all .2s ease-in-out;
	-moz-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}

/* CUSTOM TIME SLOTS */
#booked-admin-panel-container .form-wrapper #booked-custom-timeslots.tab-content { padding:25px 40px 40px; }
#customTimeslotsWrapper { background:#fff; margin:1em 0 20px; padding:0; }
#booked-admin-panel-container .booked-customTimeslotTemplate { display:none; }
#booked-custom-timeslots .addCustomTimeslot { float:left; margin:0 10px 0 0; }

#customTimeslotsContainer .booked-customTimeslot { position: relative; margin: 0 0 10px; padding:25px; background: #eee; -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px; border:1px solid #ddd; }
#customTimeslotsContainer .booked-customTimeslot:last-child { margin:0 0 25px; }
#customTimeslotsContainer .booked-customTimeslot > input[type="text"], #customTimeslotsContainer .booked-customTimeslot > select { width:150px; margin:0 10px 0 0; padding:6px 10px; font-size:12px; }
#customTimeslotsContainer .booked-customTimeslot > select { width:auto; max-width:200px; }
#customTimeslotsContainer .booked-customTimeslot > input[type="checkbox"] { margin:0 0 0 10px; }
#customTimeslotsContainer .booked-customTimeslot > button { display:inline-block; margin:25px 0 0 0; }
#customTimeslotsContainer .booked-customTimeslot > label { position:relative; top:0; left:5px; }
#customTimeslotsContainer .booked-customTimeslot > .deleteCustomTimeslot { opacity: 0.2; color: #fff; font-size: 13px; line-height: 19px; position: absolute; top: 30px; right: 25px; background: #dd0000; width: 20px; height: 20px; text-align: center; border-radius: 10px; }
#customTimeslotsContainer .booked-customTimeslot > .deleteCustomTimeslot:hover { opacity:1; }

#booked-customTimePickerTemplates { display:none; padding:10px; margin:15px 0 0 0; background:#fff; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; }
#booked-customTimePickerTemplates select { margin:0 10px 0 0; font-size:12px; }
#booked-customTimePickerTemplates .allday-wrap { display:inline-block; padding:0 20px 0 10px; }
#booked-customTimePickerTemplates .allday-wrap input[type="checkbox"] { position:relative; top:2px; }
#booked-customTimePickerTemplates .button, #booked-customTimePickerTemplates .button-primary { float:right; margin:0 0 0 10px; }

#customTimeslotsContainer .booked-customTimeslot .customTimeslotsList .timeslot { font-weight: 600; padding: 10px; margin: 0; display: block; border-bottom: 1px solid #ddd; position: relative; background: #fff; }	
#customTimeslotsContainer .booked-customTimeslot .customTimeslotsList .timeslot:last-child { border:none; }
#customTimeslotsContainer .booked-customTimeslot .customTimeslotsList .delete { cursor:pointer; position:absolute; right:12px; top:9px; text-align:right; font-size:17px; color:#f59e9e }
#customTimeslotsContainer .booked-customTimeslot .customTimeslotsList .delete:hover { color:#e35656; }
#customTimeslotsContainer .booked-customTimeslot .customTimeslotsList .slotsBlock { padding:0; width:130px; display:inline-block; }
#customTimeslotsContainer .booked-customTimeslot .customTimeslotsList .add { -webkit-user-select: none; -moz-user-select: none; -khtml-user-select: none; -ms-user-select: none; display:inline-block; cursor:pointer; color:#ccc; padding-left:5px }
#customTimeslotsContainer .booked-customTimeslot .customTimeslotsList .add:hover { color:#888; }
#customTimeslotsContainer .booked-customTimeslot .customTimeslotsList .count { display:inline-block; color:#aaa; padding-left:5px }
#customTimeslotsContainer .booked-customTimeslot .customTimeslotsList .count em { font-style:normal; }
#customTimeslotsContainer .booked-customTimeslot .customTimeslotsList .minus { -webkit-user-select: none; -moz-user-select: none; -khtml-user-select: none; -ms-user-select: none; display:inline-block; cursor:pointer; color:#ccc; padding-left:0 }
#customTimeslotsContainer .booked-customTimeslot .customTimeslotsList .minus:hover { color:#888; }
#customTimeslotsContainer .booked-customTimeslot .customTimeslotsList .cts-header { margin-top:25px; background:#365769; color:#fff; padding:10px; }
#customTimeslotsContainer .booked-customTimeslot .customTimeslotsList .cts-header .slotsTitle { width:130px; display:inline-block; }

#booked-saveCustomTimeslots { float:left; }
.cts-updater.savingState { float:left; padding:5px 0 0 15px; color:#888; }

/* END CUSTOM TIME SLOTS */

/* CUSTOM DATE PICKER STYLING */
#ui-datepicker-div.booked_custom_date_picker { background:#fff; margin-top:2px; width:230px; border:1px solid #d5d5d5; padding:8px; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; box-shadow:0 1px 4px rgba(0,0,0,0.15); }
#ui-datepicker-div.booked_custom_date_picker .ui-datepicker-header { position:relative; background:#365769; color:#fff; }
#ui-datepicker-div.booked_custom_date_picker .ui-datepicker-header .ui-datepicker-prev,
#ui-datepicker-div.booked_custom_date_picker .ui-datepicker-header .ui-datepicker-next { cursor:pointer; top:9px; font-size:16px; position:absolute; display: inline-block; font-family:FontAwesome; text-rendering: auto; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; transform: translate(0, 0); color:#fff; }
#ui-datepicker-div.booked_custom_date_picker .ui-datepicker-header .ui-datepicker-prev .ui-icon,
#ui-datepicker-div.booked_custom_date_picker .ui-datepicker-header .ui-datepicker-next .ui-icon { display:none; }
#ui-datepicker-div.booked_custom_date_picker .ui-datepicker-header .ui-datepicker-prev { left:9px; }
#ui-datepicker-div.booked_custom_date_picker .ui-datepicker-header .ui-datepicker-next { right:9px; }
#ui-datepicker-div.booked_custom_date_picker .ui-datepicker-header .ui-datepicker-title { font-family:"Montserrat",sans-serif; text-transform:uppercase; padding:9px 0 10px; text-align:center; }
#ui-datepicker-div.booked_custom_date_picker .ui-datepicker-header .ui-datepicker-prev:hover,
#ui-datepicker-div.booked_custom_date_picker .ui-datepicker-header .ui-datepicker-next:hover { opacity:0.7; }
#ui-datepicker-div.booked_custom_date_picker .ui-datepicker-header .ui-datepicker-prev:before { content: "\f060"; }
#ui-datepicker-div.booked_custom_date_picker .ui-datepicker-header .ui-datepicker-next:before { content: "\f061"; }
#ui-datepicker-div.booked_custom_date_picker table.ui-datepicker-calendar { width:100%; border-collapse: collapse; }
#ui-datepicker-div.booked_custom_date_picker table.ui-datepicker-calendar thead, #ui-datepicker-div.booked_custom_date_picker table.ui-datepicker-calendar thead th { font-size:11px; font-weight:normal; background:#213946; color:#fff; }
#ui-datepicker-div.booked_custom_date_picker table.ui-datepicker-calendar thead th { width:14.285%; text-align:center; padding:5px 0; }
#ui-datepicker-div.booked_custom_date_picker table.ui-datepicker-calendar tbody { border-top:8px solid #fff; }
#ui-datepicker-div.booked_custom_date_picker table.ui-datepicker-calendar tbody, #ui-datepicker-div.booked_custom_date_picker table.ui-datepicker-calendar tbody td { font-size:12px; font-weight:normal; background:#fff; color:#888; }
#ui-datepicker-div.booked_custom_date_picker table.ui-datepicker-calendar tbody td { text-align:center; padding:0px; }
#ui-datepicker-div.booked_custom_date_picker table.ui-datepicker-calendar tbody td a { display:block; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; line-height:33px; text-decoration:none; color:#333; }
#ui-datepicker-div.booked_custom_date_picker table.ui-datepicker-calendar tbody td a:hover { background:#eee; }
#ui-datepicker-div.booked_custom_date_picker table.ui-datepicker-calendar tbody td span { display:block; line-height:33px;  }
#ui-datepicker-div.booked_custom_date_picker table.ui-datepicker-calendar tbody td.ui-datepicker-unselectable span { color:#ddd; }
#ui-datepicker-div.booked_custom_date_picker table.ui-datepicker-calendar tbody td.ui-datepicker-week-end a { color:#888; }
#ui-datepicker-div.booked_custom_date_picker table.ui-datepicker-calendar tbody td.ui-datepicker-today a { background:#F0FAFF; color:#6DC3EE; }
#ui-datepicker-div.booked_custom_date_picker table.ui-datepicker-calendar tbody td.ui-datepicker-today a:hover { background:#DCEFF8; }
#ui-datepicker-div.booked_custom_date_picker table.ui-datepicker-calendar tbody td a.ui-state-active, #ui-datepicker-div.booked_custom_date_picker table.ui-datepicker-calendar tbody td a.ui-state-active:hover { background:#fff1cc; color:#bf9931; }

/* END CUSTOM DATE PICKER STYLING */


@media screen and (max-width:1100px){
	table.booked-calendar td .count { padding:5px 0; font-size:9px; }
	table.booked-calendar td .date .number { width:30px; height:30px; line-height:30px; font-size:14px; }
}

@media screen and (max-width:720px){

	table.booked-calendar thead th { font-size:16px; padding:13px 0 10px; }
	table.booked-calendar thead tr.days th { font-size:11px; padding:7px 0 5px; }
	table.booked-calendar td { font-size:13px; }
	table.booked-calendar thead th .page-left { left:10px; top:11px; font-size:15px; }
	table.booked-calendar thead th .page-right { right:10px; top:11px; font-size:15px; }
	table.booked-calendar thead th .page-left:hover { left:9px; }
	table.booked-calendar thead th .page-right:hover { right:9px; }
	table.booked-calendar th .monthName a { top:-2px; font-size:10px; }
	
	table.booked-calendar td .count { display:none; }
	table.booked-calendar td .date { height:100%; }
	table.booked-calendar td .date .number { border:none; display:inline-block; -moz-border-radius:0; -webkit-border-radius:0; border-radius:0; transform:scale(1); width:auto; height:auto; line-height:100%; }
	table.booked-calendar td.blur .date, table.booked-calendar td.blur:hover .date { cursor:default; background:#EEEEEE; color:#ccc; }
	table.booked-calendar td.partial .date { background:#FFF4CE; }
	table.booked-calendar td.booked .date { background:#FFE4DF; }
	table.booked-calendar td.partial .date .number { border:none; background:none; color:#555; }
	table.booked-calendar td.booked .date .number { border:none; background:none; color:#555; }
	table.booked-calendar td.today .date { background:#f0faff; color:#555; }
	table.booked-calendar td:hover .date { background:#f9f9f9; cursor:pointer; color:#000; }
	table.booked-calendar tr.week td.active .date .number { border:none; transform:scale(2); background:none; color:#000; }
	
}



/* ADMIN MODAL FORM */
form.booked-form { padding-top:5px; }
form.booked-form .field { margin:5px 0; }
form.booked-form .field:after { content: ""; display: table; clear: both; }
form.booked-form input[type=radio], form.booked-form input[type=checkbox] { position:relative; top:2px; }
form.booked-form .field select, form.booked-form .field input[type=text], form.booked-form .field input[type=password], form.booked-form .field input[type=tel], form.booked-form .field input[type=email] { margin-right:1.5%; width:49%; float:left; }
form.booked-form .field .chosen-search input[type=text] { float:none; width:100%; margin:0; padding:4px 5px; }
form.booked-form .field input:last-child { margin-right:0; }
form.booked-form .field input[type=text], form.booked-form .field input[type=password], form.booked-form .field input[type=tel], form.booked-form .field input[type=email] { font-size:13px; padding:7px 10px; color:#aaa; }
form.booked-form .field input.hasContent { color:#555; }
form.booked-form .field input.large, form.booked-form .field select.large { width:100%; margin-right:1px; width:99.8%; }
form.booked-form .spacer { padding:5px 0 0 0; margin:0; display:block; }
form.booked-form hr { border:none; border-top:1px solid #ddd; padding:20px 0 0 0; margin:25px 0 0 0; }
body .booked-form .condition-block, body .booked-settings-form .condition-block { display:none; }
body .booked-form .condition-block.default, body .booked-settings-form .condition-block.default { display:block; }
form.booked-form input[type=submit], form.booked-form button { float:left; margin:0 10px 0 0; }

form.booked-form .field label.field-label { display:block; font-weight:bold; color: #888; padding: 15px 0 8px; text-transform: uppercase; font-size: 13px; }
form.booked-form .field textarea { height:100px; width:100%; }
form.booked-form .field .checkbox-radio-block { display:block; padding:0 0 7px 10px; }
form.booked-form .field .checkbox-radio-block label { color:#555; display:inline-block; padding-left:3px; position:relative; top:3px; }
form.booked-form .field .checkbox-radio-block input[type=radio], form.booked-form .field .checkbox-radio-block input[type=checkbox] { top:5px; position:relative; }

form.booked-form .cf-block { background:#fff; border:1px solid #ddd; padding:2px 25px 22px 25px; margin: 27px 0 25px; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; }
form.booked-form .cf-block select { font-size:13px; width:100%; height:33px; margin-right:0; }
form.booked-form .cf-block input, form.booked-form .cf-block textarea { background:#f9f9f9; }

form.booked-form .required-asterisk { color:#E35656; margin:-1px 0 0 7px; }

/* MODAL WINDOWS */
.booked-modal { padding-top: 130px; padding-bottom: 130px; position: fixed; overflow: auto; -webkit-overflow-scrolling: touch; z-index: 1111; top: 0; right: 0; bottom: 0; left: 0; }
.booked-modal .bm-overlay { animation: booked-fadein 0.2s; -webkit-animation: booked-fadein 0.2s; -moz-animation: booked-fadein 0.2s; -ms-animation: booked-fadein 0.2s; -o-animation: booked-fadein 0.2s; -webkit-backface-visibility: hidden; position: fixed; background: rgba(0, 0, 0, 0.4); top: 0; right: 0; bottom: 0; left: 0; }
.booked-modal .bm-window { animation: booked-flyin 0.2s; -webkit-animation: booked-flyin 0.2s; -moz-animation: booked-flyin 0.2s; -ms-animation: booked-flyin 0.2s; -o-animation: booked-flyin 0.2s; -webkit-backface-visibility: hidden; padding:30px 30px 25px; width:450px; position:relative; margin:0 auto; background:#fff; -moz-border-radius:5px; -webkit-border-radius:5px; border-radius:5px; }
.booked-modal.bm-closing .bm-overlay { animation: booked-fadeout 0.2s; -webkit-animation: booked-fadeout 0.2s; -moz-animation: booked-fadeout 0.2s; -ms-animation: booked-fadeout 0.2s; -o-animation: booked-fadeout 0.2s; -webkit-backface-visibility: hidden; }
.booked-modal.bm-closing .bm-window { animation: booked-flyout 0.2s; -webkit-animation: booked-flyout 0.2s; -moz-animation: booked-flyout 0.2s; -ms-animation: booked-flyout 0.2s; -o-animation: booked-flyout 0.2s; -webkit-backface-visibility: hidden; }
.booked-modal .bm-window { background:#f5f5f5; }
.booked-modal .bm-window p { margin:0 0 5px; font-size:13px; }
.booked-modal .bm-window p small { display:block; margin:0 0 15px; color:#888; text-transform:uppercase; font-size:13px; font-weight:600; }
.booked-modal .bm-window p.name { font-size:15px; margin:0 0 10px; }
.booked-modal .bm-window p strong { font-size:12px; text-transform:uppercase; display:inline-block; padding-right:3px; width:100%; }
.booked-modal .bm-window p strong.booked-left-title { width:65px; }
.booked-modal .bm-window p.cf-meta-value { padding:10px 0 0 0; line-height:1.7; }
.booked-modal .bm-window .cf-meta-values { background:#fff; padding:10px 24px 15px; margin:20px 0 5px 0; border:1px solid #ddd; -moz-border-radius:3px; -webkit-border-radius:3px; border-radius:3px; }
.booked-modal .bm-window a { text-decoration:none; }
.booked-modal .bm-window .close { color:#F59E9E; font-size:20px; position:absolute; top:30px; right:30px; }
.booked-modal .bm-window .close:hover { color:#E35656; }
.booked-modal .bm-window p i.fa { color:#888; }

@media screen and (max-width:720px){
	
	.booked-modal { padding:0; }
	.booked-modal .bm-window { margin:3%; width:94%; padding:30px; box-sizing:border-box; }
	.booked-modal .bm-overlay { background:rgba(0, 0, 0, 0.8); }
	.booked-modal .bm-window p.name b { display:block; }
	.booked-addon-block { width:100%; margin:1.5% 0; }
	
}



/* ANIMATION */
table.booked-calendar td .count,
table.booked-calendar thead th a,
.booked-appt-list .timeslot,
#booked-admin-panel-container #booked-cf-sortables li .cf-delete,
#booked-admin-panel-container .booked-admin-tabs li a {
	-webkit-transition: all .1s ease-out;
	-moz-transition: all .1s ease-out;
	-o-transition: all .1s ease-out;
	transition: all .1s ease-out;
}

table.booked-calendar td .date .number {
	-webkit-transition: transform .2s ease-in-out;
	-moz-transition: transform .2s ease-in-out;
	-o-transition: transform .2s ease-in-out;
	transition: transform .2s ease-in-out;
}

.booked-appt-list {
	-webkit-transition: transform .4s ease-in-out;
	-moz-transition: transform .4s ease-in-out;
	-o-transition: transform .4s ease-in-out;
	transition: transform .4s ease-in-out;
}