/* ResetCSS */
/* v1.0 | 20080212 */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
form, label,
caption {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
}
body { line-height: 1; }
ol, ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
/* remember to define focus styles! */
:focus { outline: 0; }
/* remember to highlight inserts somehow! */
ins { text-decoration: none; }
del { text-decoration: line-through; }
/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}
fieldset { margin: 3px 0 0 0; }
/* /ResetCSS */

html {
    height: 100%;
    width: 100%;
}

body {
	padding: 0;
	margin: 0;
	height: 100%;
	width: 100%;
}
form {
	padding: 0;
	margin: 0;
}

/* Minimal bootstrap style classes */
.col-12, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1
.col-mob-12, .col-mob-11, .col-mob-10, .col-mob-9, .col-mob-8, .col-mob-7, .col-mob-6, .col-mob-5, .col-mob-4, .col-mob-3, .col-mob-2, .col-mob-1 {
    position: relative;
    min-height: 1px;
}

.col-12, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1 { float: left; }
.col-12 { width: 100%; }
.col-11 { width: 91.66666666666666%; }
.col-10 { width: 83.33333333333334%; }
.col-9 { width: 75%; }
.col-8 { width: 66.66666666666666%; }
.col-7 { width: 58.333333333333336%; }
.col-6 { width: 50%; }
.col-5 { width: 41.66666666666667%; }
.col-4 { width: 33.33333333333333%; }
.col-3 { width: 25%; }
.col-2 { width: 16.666666666666664%; }
.col-1 { width: 8.333333333333332%; }

.row { clear: both; padding: 2px 0; }
.row:before, .row:after { display: table; content: " "; }
.row:after { clear: both; }
.fr { float: right !important; }
.space-above { margin-top: 10px; }
.trans-margin { margin-left: 10px; margin-right: 10px; }

/* Put clear on a block to make it size itself based on floating elements inside it */
.clear:before, .clear:after { display: table; content: " "; }
.clear:after { clear: both; }

/* Horizontal and vertical centring */
.hctr {
    display: table;
    margin-left: auto;
    margin-right: auto;
}
.vctr-container {
    display: table;
    height: 100%;
}
.vctr-content {
    display: table-cell;
    vertical-align: middle;
}

/* OLB Layout */

.Header {
    min-width: 600px;
    width: 100%;
    background-color: Yellow;
}
.OuterPanel {
    width: 833px;
    margin-left: auto;
    margin-right: auto;
    padding: 10px;
    min-height: 605px;
}
.FooterPanel {
	background-image: url(../Images/topfade.png);
	width: 833px;
    margin-left: auto;
    margin-right: auto;
    padding: 3px 10px 3px 10px;
    text-align: right;
}
.FooterPanel table {margin-left: auto;}
.FooterPanel * {font-size: 0.95em; }
.InnerPanel {
	width: 70%;
}

.UserPanel {
	margin-left: auto;
	margin-right: auto;
    padding: 2px 10px 2px 10px;
    width: 833px;
    min-height: 25px;
}
.NavigationPanel { width: 100%; }
.NavigationPanel * { vertical-align: middle; }
.TitlePanel { clear: both; }
.MainPanel {
	width: 100%;
    padding: 0 0 10px 0;
	margin: 20px 0 0 0;
}

.PageTextPanel { margin-bottom: 10px; }
.SpacerPanel { margin-bottom: 10px; }
.HeaderPanel { width: 100%; }
.LogoPanel {
    margin-left: 10px;
    padding-bottom: 10px;
    float: left;
}
.OpeningHoursSpacerPanel {
    padding: 0 5px 0 5px;
    width: 250px;
}
.AvailableTimesSpacerPanel {
    background-image: url(../Images/topfade.png);
    padding: 10px;
}
.FormTable .Td1 { width: 30%; }
.FormTable .Td2 {
    width: 65%;
    text-align:right;
}
.FormTable .Td3 { width: 5%; }
.FormTable td { padding: 0 0 0 4px; line-height: 25px;}
.FormTable td:first-child { padding-left: 0; }

.SearchPanel { text-align: right; }
.CreditCardPanel {
	padding: 5px;
	border: solid 1px #FFFFFF;
}
.SiteSelectionTableNorm, .SiteSelectionTableAlt { width: 100%; }

.SiteSelectionTableNorm td, SiteSelectionTableAlt td {
    vertical-align: top;
    text-align: left;
}
.AddressBar {
	padding-right: 15px;
	text-align: right;
}
.PayDetailsPanel { text-align: left; }

 .ajax__calendar_active div
 {
    font-weight: bold !important;
    background-color: silver !important;
    text-align: center;
    vertical-align: middle;
}

.ajax__calendar_day {
    text-align: center !important;
    vertical-align: middle !important;
}

.ajax__calendar_today { padding: 0 !important; }

/* Service selection */
.SelectServicesTable { width: 100%; }
.SelectServicesTable td {
    padding-left: 10px;
    height: 27px;
}
.SelectServicesTable td:first-child { padding-left: 0; }
.SelectServicesSpacerPanel { padding-right: 37px; }
.SelectServicesTableButtons { padding-top: 7px; }

/* Time selection */
.StartDatePanel div { display: inline-block; }
.SelectTimesTable td, .TimeslotsTable td { padding: 2px 5px 2px 5px !important; }
.TimeslotsDayCell { width: 40px; }
.TimeslotsTimeCell { width: 145px; }
#ctl00_MainContentHolder_ChangeEmailTransGroup {
    max-width: 450px;
    padding: 10px 0 7px 10px;
}
#ctl00_MainContentHolder_PrevApptsImg { padding-right: 3px; }

/* Appointment History */
.HistorySpacerPanel {
	margin-top: 20px;
    margin-bottom: 20px;
    margin-left: 0;
    padding: 0;
    text-align: left;
}
.HistorySpacerPanel .FormButton { margin-right: 10px; }

/* Appointment Booked */
.AppointmentBookedInnerPanel {
    width: 70%;
    margin-left: 30px;
	margin-top: 65px;
}

/* Security related */
.login-fieldset {
    overflow: hidden;
    line-height: 1.1;
    padding: 10px 8px;
}
.login-or { height: 50px; }
.fb_iframe_widget { margin-bottom: 5px; }
.SelectTimesSpacerPanel { padding-right: 37px; }
.ClientDetailsTable { width: 100%; }
#ctl00_MainContentHolder_AvailableTimesTransBacking { margin-bottom: 0px; }
#ctl00_MainContentHolder_StartDateTxt { min-width: 150px; }
#ctl00_MainContentHolder_ClientDetailsView_UserDetailsPanel select { margin-left: 1px; }
#LoginTransBacking { max-width: 470px; }
#login-standard div { margin-bottom: 5px; }
#login-fb .vctr-container {
    width: 100%;
    height: 86%;
}
.ManualBookingPanel { max-width: 350px; }
.ManualBookingPanel input[type="text"] { width: 100%; }
.ManualBookingPanel textarea { width: 100%; height: 150px; }
