@CHARSET "UTF-8";
/* Form */
.TSBC_Button{
	padding: 5px 10px;
	font-size: 12px;
	}
	

.TSBC_Form{
	/*margin: 5px 10px 0 0;*/
	overflow: hidden;
}
.TSBC_Form p{
	clear: left;
	margin: 0 0 10px 0;
	overflow: hidden;
}
.TSBC_Form p img{
	margin: 0 17px 0 0;
	vertical-align: middle;	
}
.TSBC_Form label.title{
	display: block;
	font-weight: bold;
	float: left;
	width: 110px;
	text-align: right;
	padding: 0px 15px;
}
.TSBC_Form .TSBC_Field{
	border: solid 1px #7F9DB9;
	padding: 2px;
}
.TSBC_Form .TSBC_FieldText{
	width: 170px;
        height: 25px;
}
.TSBC_PseudoField{
	float: left;
	display: block;
	white-space: nowrap;
	width: 220px;
}
.TSBC_Form .TSBC_FieldTextSmall{
	width: 100px;
}
.TSBC_Form .TSBC_FieldTextarea{
	height: 80px;
	width: 180px;
	resize: none;
}
.TSBC_Form .TSBC_FieldSelect{
	width: 170px;
        height: 25px;
}
.TSBC_Form .TSBC_FieldSelectMedium{
	width: 101px;
}
.TSBC_Form .TSBC_FieldSelectMini{
	width: 45px;
}
.TSBC_Form .TSBC_FieldCheckbox{
	margin: 0;
}
.TSBC_Error{
	color: red;
}
/* Table */
.TSBC_Table{
	border-collapse: collapse;
	empty-cells: show;
	margin: 1px 10px 0 0;
}
.TSBC_Table tr{
	border-bottom: 1px solid #dddddd;
}

.TSBC_Table thead th{
	font-weight: normal;
	text-align: center;
}
.TSBC_Table tbody td{}
.TSBC_Head{
	/*background-color: #ddd;
	font-weight: bold !important;*/
	padding: 4px 2px;
}
.TSBC_Head a:link,.TSBC_Head a:hover, .TSBC_Head a:visited{
	color: #fff;
	text-decoration: none;
}
.TSBC_Head a:hover{
	text-decoration: underline;
}
.TSBC_Cart_Date{
	background-color: #EAEAEA;
	font-weight: bold;
}
.TSBC_Cart_Time{}

.TSBC_TableSlots{
	/*border-collapse: separate !important;
	border-spacing: 0 2px;*/
	float: left;
	margin: 0;
}
.TSBC_Table_Half{
	width: 49% !important;
}
.TSBC_TableSlots_Last{
	float: right;
}
.TSBC_TableSlots thead tr th{
	/*background-color: #DDDDDD;*/
}
.TSBC_TableSlots thead tr th:first-child{
	border-radius: 2px 0 0 2px;
	-moz-border-radius: 2px 0 0 2px;
	-webkit-border-radius: 2px 0 0 2px;
}
.TSBC_TableSlots thead tr th:last-child{
	border-radius: 0 2px 2px 0;
	-moz-border-radius: 0 2px 2px 0;
	-webkit-border-radius: 0 2px 2px 0;
}
.TSBC_TableSlots tbody tr td{
	/*background-color: #EBEBEB;*/
}
.TSBC_TableSlots tbody tr td:first-child{
	border-radius: 2px 0 0 2px;
	-moz-border-radius: 2px 0 0 2px;
	-webkit-border-radius: 2px 0 0 2px;
}
.TSBC_TableSlots tbody tr td:last-child{
	border-radius: 0 2px 2px 0;
	-moz-border-radius: 0 2px 2px 0;
	-webkit-border-radius: 0 2px 2px 0;
}

.TSBC_Date{
	width: 160px;
}
.TSBC_Time{
	width: 100px;
}
.TSBC_Rule{
	width: 150px;
}
.TSBC_Status{
	width: 200px;
}


}

.TSBC_StatusBox{
	height: 16px;
	display: block;
	text-align: center;
	text-transform: uppercase;
	padding: 2px;
	font-weight: bold;
}
.TSBC_Booked{
	background-color: #D20202;
	color: #ffffff;;
	width: 100%;
	height: 25px;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	padding: 7px 15px;
	font-weight: bold;
	font-size: 12px;
}
.TSBC_Available_Booked,
.TSBC_ApplyDiscount{
	background-color: #4faaff;
	/*poweder blue #4fa8ee*/
	color: #ffffff;;
	width: 100%;
	height: 25px;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	padding: 7px 15px;
	font-weight: bold;
	font-size: 12px;
}

.TSBC_PayNow{
	background-color: #4faaff;
	/*poweder blue #4fa8ee*/
	color: #ffffff;;
	width: 100%;
	height: 25px;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	padding: 6px 25px;
	font-weight: bold;
	font-size: 12px;
}

.TSBC_Available_Selected{
	background-color: #ff00ee;
	color: #ffffff;;
	width: 100%;
	height: 25px;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	padding: 7px 15px;
	font-weight: bold;
	font-size: 12px;
	}
.TSBC_Over{
	background-color: #fe9900;
	height: 30px;
	float: left;
}
.TSBC_Available{
	background-color: green;
	height: 30px;
	float: left;
	color: #ffffff;
	text-align: center;
	font-size: 8px;
	/*padding-bottom: 5px;*/
}
.TSBC_Slot{}
.TSBC_Slot_Hover td{
	background-color: #CAE6B3 !important;
}
.TSBC_Slot_Remove td{
	background-color: #E8A9B4 !important;
}
.TSBC_Slot_Disabled{}
.TSBC_Slot_Enabled,
.TSBC_Slot_Cart{
	cursor: pointer;
}
a.TSBC_Close{
	/*background: url(../img/btn_date.png) 0 0 no-repeat;*/
	background-color: #dddddd;
	border-radius: 1px;
	-moz-border-radius: 1px;
	-webkit-border-radius: 1px;
	color: #000;
	display: block;
	height: 27px;
	float: left;
	line-height: 27px;
	position: relative;
	width: 80%;
	text-decoration: none;
	text-indent: 5px;
	font-weight: bold;
}
a.TSBC_JS_Proceed{
	/*background: url(../img/btn_proceed.png) 0 0 no-repeat;*/
	background-color: #737373;
	background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0.35, rgb(115,115,115)), color-stop(0.84, rgb(168,168,168)));
	background-image: -moz-linear-gradient(center bottom, rgb(115,115,115) 35%, rgb(168,168,168) 84%);	
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	color: #fff;
	display: block;
	height: 27px;
	float: right;
	line-height: 27px;
	width: 143px;
	text-decoration: none;
	text-indent: 5px;
}
a.TSBC_Close abbr{
	background-color: #5D5C5D;
	border-radius: 2px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	color: #fff;
	height: 16px;
	line-height: 16px;
	right: 4px;
	position: absolute;
	text-shadow: 1px 1px 1px #111;
	top: 6px;
	width: 16px;	
}
a.TSBC_Close:hover,
a.TSBC_JS_Proceed:hover{
	background-color: #dddddd;
	border-radius: 1px;
	-moz-border-radius: 1px;
	-webkit-border-radius: 1px;
}
/* other */
.TSBC_Bold{
	font-weight: bold !important;
}
.TSBC_Center{
	text-align: center !important;
}
.TSBC_Right{
	text-align: right !important;
}
.TSBC_Slot_Nav{
	 overflow: hidden;
}
.TSBC_Preload{
	background: url(../img/loading_60.gif) center center no-repeat;
	left: 0;
	position: absolute;
	top: 0;
}
.TSBC_Orange{
	background-color: orange;
}
.TSBC_TableSlots .TSBC_Booked,
.TSBC_TableSlots .TSBC_PayNow,
.TSBC_ApplyDiscount{
	display: inline-block;
    text-decoration: none;
    width: auto;
}
.TSBC_TableSlots .TSBC_Head.TSBC_Date{
	width: 110px;
}
.TSBC_Button.TSBC_ApplyDiscount{
	border: none;
	text-transform: none !important;
	font-size: 13px;
	padding: 5px 10px !important;
	line-height: unset;
	height: auto;
	cursor: pointer;
	font-weight: normal;
}
@media only screen and (max-width:479px){
	.TSBC_FontCart .TSBC_Head.TSBC_Date{
		width: 62px;
	}
	.TSBC_FontCart .TSBC_Head.TSBC_Time{
		width: auto;
	}
	.TSBC_FontCart .TSBC_Head.TSBC_Rule{
		width: 57px;
	}
	.TSBC_FontCart .TSBC_Head.TSBC_Price{
		width: 60px;
	}
}
@media only screen and (max-width:599px){
   
.TSBC_Date{
	width: 80px;
}
.TSBC_Time{
	width: 55px;
}
.TSBC_Rule{
	width: 55px;
}
.TSBC_Status{
	width: 115px;
}
.TSBC_Booked, 
.TSBC_Available_Booked,
.TSBC_PayNow,
.TSBC_Available_Selected{
    font-size: 9px;
    padding: 6px 3px;
    white-space: nowrap;
    height: 22px;
}
.TSBC_TableSlots th{
	font-size: 9px;	
}
.TSBC_TableSlots td{
	font-size: 9px;	
}
.TSBC_Available, 
.TSBC_Over{
	height: 25px;
	}
.TSBC_Form p{
	font-size: 12px;
	}
.TSBC_Form label.title{
	font-size: 12px;
	}
.TSBC_Bold {
	font-size: 9px;
	}	
}
/* AMPED streamlined booking builder */
.TSBC_BookingBuilder{padding:18px;background:#242424;border:1px solid #444;box-sizing:border-box}.TSBC_BuilderGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.TSBC_BuilderField label{display:block;font-weight:bold;margin:0 0 7px}.TSBC_BuilderField select{width:100%;height:42px;padding:6px 10px}.TSBC_DurationPrices{margin:14px 0;padding:10px 12px;background:#333;border-radius:4px}.TSBC_TimeField{margin-top:16px}.TSBC_TimeButtons{display:flex;flex-wrap:wrap;gap:9px}.TSBC_TimeChoice{border:1px solid #54aaf5;background:#fff;color:#222;border-radius:5px;padding:11px 15px;font-weight:bold;cursor:pointer}.TSBC_TimeChoice:hover,.TSBC_TimeChoiceSelected{background:#3fa5f5;color:#fff}.TSBC_BuilderSummary{display:flex;gap:18px;flex-wrap:wrap;align-items:center;margin:18px 0 12px;padding:14px;background:#111;border-left:4px solid #ff8a00}.TSBC_BuilderContinue{min-width:160px;padding:12px 20px}.TSBC_BuilderContinue[disabled]{opacity:.45;cursor:not-allowed}.TSBC_NoTimes{padding:14px;background:#4a2525;border-radius:4px}.TSBC_BuilderError{margin-top:10px}@media(max-width:640px){.TSBC_BuilderGrid{grid-template-columns:1fr}.TSBC_TimeChoice{flex:1 0 29%;padding:12px 6px}.TSBC_BuilderSummary{display:grid;grid-template-columns:1fr 1fr;gap:8px}}

/* AMPED Bookings frontend calendar */
[id^="TSBC_Calendar_"] {
	box-sizing: border-box;
	width: 800px;
	max-width: 100%;
	margin: 24px auto;
	padding: 10px;
	background: #171717;
	border: 1px solid #3a3a3a;
	border-radius: 22px;
	box-shadow: 0 20px 55px rgba(0,0,0,.28);
}
[id^="TSBC_Calendar_"] table.calendarTable {
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	overflow: hidden;
	background: #fff !important;
	border: 0 !important;
	border-collapse: separate !important;
	border-spacing: 0 !important;
	border-radius: 14px;
	font-family: Inter, "Helvetica Neue", Arial, sans-serif !important;
	table-layout: fixed;
}
[id^="TSBC_Calendar_"] table.calendarTable td {
	box-sizing: border-box;
	border: 0 !important;
	border-right: 1px solid #deded9 !important;
	border-bottom: 1px solid #deded9 !important;
	font-weight: 800;
}
[id^="TSBC_Calendar_"] table.calendarTable tr td:last-child { border-right: 0 !important; }
[id^="TSBC_Calendar_"] table.calendarTable tr:last-child td { border-bottom: 0 !important; }
[id^="TSBC_Calendar_"] td.calendarMonth {
	height: 58px !important;
	padding: 0 12px !important;
	background: #ff8200 !important;
	color: #171717 !important;
	font-size: clamp(22px, 2.5vw, 34px) !important;
	font-weight: 900 !important;
	letter-spacing: -.025em;
}
[id^="TSBC_Calendar_"] td.calendarMonth a:link,
[id^="TSBC_Calendar_"] td.calendarMonth a:visited,
[id^="TSBC_Calendar_"] td.calendarMonth a:hover {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	background: #171717 !important;
	border-radius: 50%;
	color: #fff !important;
	font-size: 28px !important;
	font-weight: 900 !important;
	line-height: 1;
	text-decoration: none !important;
}
[id^="TSBC_Calendar_"] td.calendarMonth a:hover { background: #3a3a3a !important; transform: translateY(-1px); }
[id^="TSBC_Calendar_"] td.calendarWeekDay {
	height: 36px !important;
	padding: 0 4px !important;
	background: #242424 !important;
	color: #fff !important;
	font-size: 13px !important;
	font-weight: 900 !important;
	letter-spacing: .07em;
	text-transform: uppercase;
}
[id^="TSBC_Calendar_"] td.calendar,
[id^="TSBC_Calendar_"] td.calendarToday,
[id^="TSBC_Calendar_"] td.calendarPartly,
[id^="TSBC_Calendar_"] td.calendarDayoff,
[id^="TSBC_Calendar_"] td.calendarFull,
[id^="TSBC_Calendar_"] td.calendarPast,
[id^="TSBC_Calendar_"] td.calendarEmpty {
	position: relative;
	height: 64px !important;
	padding: 8px !important;
	color: #171717 !important;
	font-size: clamp(16px, 1.7vw, 23px) !important;
	transition: background-color .16s ease, box-shadow .16s ease, transform .16s ease;
}
[id^="TSBC_Calendar_"] td.calendar { background: #59a928 !important; }
[id^="TSBC_Calendar_"] td.calendarPartly { background: #a8d66d !important; color: #171717 !important; }
[id^="TSBC_Calendar_"] td.calendarDayoff,
[id^="TSBC_Calendar_"] td.calendarFull { background: #f0d4d2 !important; color: #57221f !important; }
[id^="TSBC_Calendar_"] td.calendarPast { background: #e6e6e2 !important; color: #65655f !important; }
[id^="TSBC_Calendar_"] td.calendarEmpty { background: #f6f6f3 !important; color: #888 !important; }
[id^="TSBC_Calendar_"] td.calendarToday {
	background: #59a928 !important;
	box-shadow: inset 0 0 0 4px #ff8200;
}
[id^="TSBC_Calendar_"] td.calendar:hover,
[id^="TSBC_Calendar_"] td.calendarPartly:hover,
[id^="TSBC_Calendar_"] td.calendarToday:hover,
[id^="TSBC_Calendar_"] td.calendarSelected {
	z-index: 1;
	background: #ffebd6 !important;
	box-shadow: inset 0 0 0 3px #ff8200, 0 8px 20px rgba(0,0,0,.14);
	transform: translateY(-1px);
}
[id^="TSBC_Calendar_"] .calendarLinkDate { text-align: center !important; }
[id^="TSBC_Calendar_"] table.calendarLegend {
	margin: 14px 0 0 !important;
	background: transparent !important;
	border: 0 !important;
	color: #fff !important;
	font-family: Inter, "Helvetica Neue", Arial, sans-serif !important;
}
[id^="TSBC_Calendar_"] table.calendarLegend td { padding: 7px 8px !important; border: 0 !important; }
[id^="TSBC_Calendar_"] table.calendarLegend td.calendarColor { width: 22px !important; border-radius: 6px; }
[id^="TSBC_Calendar_"] table.calendarLegend td.calendarColorSlot { background: #59a928 !important; }
[id^="TSBC_Calendar_"] table.calendarLegend td.calendarColorPartly { background: #a8d66d !important; }

@media only screen and (max-width: 640px) {
	[id^="TSBC_Calendar_"] { margin: 14px auto; padding: 7px; border-radius: 14px; }
	[id^="TSBC_Calendar_"] table.calendarTable { border-radius: 9px; }
	[id^="TSBC_Calendar_"] td.calendarMonth { height: 54px !important; padding: 0 5px !important; font-size: 20px !important; }
	[id^="TSBC_Calendar_"] td.calendarMonth a:link,
	[id^="TSBC_Calendar_"] td.calendarMonth a:visited,
	[id^="TSBC_Calendar_"] td.calendarMonth a:hover { width: 34px; height: 34px; font-size: 22px !important; }
	[id^="TSBC_Calendar_"] td.calendarWeekDay { height: 34px !important; font-size: 10px !important; letter-spacing: .02em; }
	[id^="TSBC_Calendar_"] td.calendar,
	[id^="TSBC_Calendar_"] td.calendarToday,
	[id^="TSBC_Calendar_"] td.calendarPartly,
	[id^="TSBC_Calendar_"] td.calendarDayoff,
	[id^="TSBC_Calendar_"] td.calendarFull,
	[id^="TSBC_Calendar_"] td.calendarPast,
	[id^="TSBC_Calendar_"] td.calendarEmpty { height: 58px !important; padding: 6px 2px !important; font-size: 14px !important; }
}
