/* Reservations */

body { width: 99.9%; margin: 0; } /* To avoid losing the last pixel in FF */
div.Loading { color: #999999; padding: 5px 30px 5px 0; background-image: url("../../assets/reservations/Loading.gif"); background-repeat: no-repeat; background-position: right center; }

.page h1 { color: #003343 important!; }
body p { margin: 0 0 0.25em; } /* Over-riding annoying setting from screen.css */

/* Headers and Menus */
.ResOption .Header, 
.ResCart .Header,
.Itinerary .Items .Head, 
.Transaction .Head, 
.PopUp .Title,
h3.Title, h2.Title
{ 
	background-color: #0D91C6;
	font-size: 1em;
	font-weight: bold; 
	color: #FFFFFF; 
}

h4.HelpText { color: #FF4B14; text-align: left; font-weight: bold; margin: 0.25em 0; }

.message { color: #FF4B14; }
.message.bad {}


fieldset { border-radius: 3px; padding: 5px; margin: 5px 0; border-color: #0D91C6; }

form input.text, 
form input[type="text"], 
form input[type="password"], 
form textarea, 
form select { font-size: 1em; margin: 0.25em 0.25em 0.25em 0; padding: 2px 1px; }

input.fieldTiny   { width:  2em; }
input.fieldSmall  { width:  4em; }
input.fieldMedium { width:  8em; }
input.fieldLarge  { width: 16em; }
input.fieldXlarge { width: 24em; }
div.first { clear: left; }

/* Control Buttons */
.Actions, fieldset.Actions { text-align: right; overflow: hidden; }

.Actions a, a.Action { 
	cursor: pointer; 
	display: inline-block; zoom: 1; *display:inline; 
	font-weight: bold; 
	text-decoration: none; 
	margin-left: 0.5em; 
	padding: 0.1em 0.5em; 
	}
.Actions input, .formaction input.action { 
	cursor: pointer; 
	font-weight: bold; 
	margin-left: 0.5em; 
	padding: 0.1em 0.3em; 
	}

/* Important (core-workflow) Buttons - Orange */
.Actions input.action, .Actions input[type="submit"], .formaction input.action, .Actions a.Submit { 
	color: #FFFFFF; 
	border-radius: 3px; border-style: solid; border-width: 2px; 
	background-color: #F15322; border-color: #F56032 #F0704A #D74518 #F07550; }
.Actions input.action:hover, .Actions input[type="submit"]:hover, .formaction input.action:hover, .Actions a.Submit:hover { 
	background-color: #E34D20; border-color: #ED6F49 #ED6F49 #D24317 #ED6F49; }
.Actions input.action:active, .Actions input[type="submit"]:active, .formaction input.action:active, .Actions a.Submit:active { 
	background-color: #E34D20; border-color: #D24317 #D24317 #F16439 #D24317; }

/* Standard Buttons - Grey */
.Actions a.Action, .Actions input.Edit, .Actions input.Login { 
	color: #FFFFFF; 
	border-radius: 3px; border-style: solid; border-width: 2px; 
	background-color: #444444; border-color: #555555 #555555 #555555 #555555; }
.Actions a.Action:hover, .Actions input.Edit:hover, .Actions input.Login:hover { 
	background-color: #333333; border-color: #666666 #666666 #666666 #666666; }
.Actions a.Action:active, .Actions input.Edit:active, .Actions input.Login:active { 
	background-color: #333333; border-color: #555555 #555555 #555555 #555555; }

/* Other Links / Navigation - Dark Blue Text */
.Actions a.Exit, .Actions a.Navigate, .Actions a.EmptyCart, .Actions a.PaxDetail, .ResCartSummary .Controls a, form.sectorsearchform a.Action { 
	background: none; border: none;
	color: #0A7FAC; 
	}

.Actions a.PrintBtn { 
	background: url("../../assets/reservations/Print.png") no-repeat scroll 2px 4px #EEEEEE; padding: 5px 3px 3px 22px; 
	border-radius: 3px; border: 1px solid #0D91C6; text-decoration: none; 
	}
.Actions a.Confirm { 
	background: url("../../assets/reservations/Confirm.png") no-repeat scroll 2px 4px #EEEEEE; padding: 3px 2px 2px 20px; 
	border-radius: 3px; border: 1px solid #0D91C6; text-decoration: none; margin: 1px; margin-collapse: collapse; 
	}

a.stoppicker { 
	background: url("../../assets/reservations/button_dropdown.png") no-repeat scroll 0 0 #EEEEEE; 
	margin: 0.3em; text-indent: -999em; height: 24px; width: 26px; 
	}


/* Messages */
.Messages { margin: 1em; padding: 0.5em; border: 1px solid #FF4B14; border-radius: 3px; background-color: #EEEEEE; }
.Messages .Message { margin: 0.2em; }
.Messages .Message.Error { font-weight: bold; color: #FF4B14; }
.Messages .Message.Warning { font-weight: bold;  }


/* Search Form (narrow = Sidebar. wide = full width of main.) */
form.sectorsearchform h3 { color: #023345; font-size: 1em; font-weight: bold; margin-bottom: 0.1em; text-align: left; }
form.sectorsearchform label { color: #023345; text-align: left; display: block; float: none; font-weight: bold; }
form.sectorsearchform fieldset { border: none; margin: 0; padding: 2px; }

form.sectorsearchform.narrow { border-right: 1px inset rgba(0, 0, 0, 0.4); box-shadow: -1px -1px 3px 2px rgba(0, 0, 0, 0.1) inset; padding: 2px 4px 4px 2px; }
form.sectorsearchform.wide {}

form.sectorsearchform div.OneWayOrReturn { min-width: 10em; text-align: left; }
form.sectorsearchform div.OneWayOrReturn label { display: inline; }
form.sectorsearchform.narrow div.OneWayOrReturn > div { display: inline; }

form.sectorsearchform div.field { float: left; margin-right: 1em; }
form.sectorsearchform div.field .fieldgroupField { display: inline-block; zoom: 1; *display:inline; }
form.sectorsearchform.narrow div.field { margin-top: 0.5em; }

form.sectorsearchform div.field.readonly span.readonly { line-height: 22px; }

form.sectorsearchform .stopPicker .middleColumn .fieldgroupField { vertical-align: bottom; }

form.sectorsearchform div.FromStop input, form.sectorsearchform div.ToStop input { width: 15em; }
form.sectorsearchform.narrow div.FromStop label, 
form.sectorsearchform.narrow div.ToStop label { display: none; }

form.sectorsearchform div.field input.date { width: 6em; display: inline; vertical-align: bottom; }
form.sectorsearchform.narrow #Date_Travel { border-top: 1px solid #dbdbdb; padding-top: 2px; width: 99%; text-align: left; }
form.sectorsearchform.wide #Date_Travel { clear: left; margin-left: 11em; }

form.sectorsearchform.narrow #Date_Return { clear: left; }

form.sectorsearchform #PaxCompStr a.Action { margin-left: 1em; }
form.sectorsearchform.narrow #PaxCompStr { clear: left; }

form.sectorsearchform .PaxComp { display: block; float: left; width: 99%; border-top: 1px solid #dbdbdb; padding: 2px 0;  }
form.sectorsearchform .PaxComp.Closed { display: none; }
form.sectorsearchform .PaxComp div.fieldgroupField { margin-left: 1em; display: inline-block; }
form.sectorsearchform .PaxComp div label { display: inline; font-weight: normal; margin-right: 0.2em; }
form.sectorsearchform.narrow .PaxComp div label { display: inline-block; zoom: 1; *display:inline; width: 8em; }
form.sectorsearchform .PaxComp .extraPaxTypes { }
form.sectorsearchform.narrow .PaxComp > div.fieldgroup { min-width: 15em; width: 48%; text-align: left; }
form.sectorsearchform.narrow .PaxComp div.fieldgroupField { display: block; }
form.sectorsearchform.wide #ADCHGA { width: 49%; text-align: right; }
form.sectorsearchform .PaxComp .ShowDiscTypes { display: none; }
form.sectorsearchform .PaxComp .ShowDiscTypes.Active { clear: left; display: block; padding-right: 24px; color: #0D91C6;
	background-image: url("../../assets/reservations/lightbluearrow_down.png"); background-position: right 0.5em; background-repeat: no-repeat; cursor: pointer; 
	text-align: right; }
form.sectorsearchform.narrow #STBPIN.Closed { display: none; }

form.sectorsearchform #action_search { float: right; }
form.sectorsearchform div.field.formaction label { display: none; }

div.SearchFormInline div.Actions { }

div.SearchFormInline { border: none; } 
div.SearchFormInlineBorderTop { border-top: 1px solid #dbdbdb; height: 9px; background: url("../../assets/reservations/searchform_top_bg.png") no-repeat center top; margin: 0; padding: 0; }
div.SearchFormInlineBorderBot { border-bottom: 1px solid #dbdbdb; height: 9px; background: url("../../assets/reservations/searchform_bottom_bg.png") no-repeat center top; margin: 0; padding: 0; }

.SearchFormToggle { text-align: left; }
#SearchFormToggle { display: none; }
#SearchFormToggle.Active { display: inline; padding-right: 20px; color: #0D91C6;
	background-image: url("../../assets/reservations/lightbluearrow_down.png"); background-position: 98% 0.3em; background-repeat: no-repeat; cursor: pointer; 
	}
#SearchFormToggle.Active.Open { background-image: url("../../assets/reservations/lightbluearrow_up.png"); }
div.SearchFormInline.Closed { display: none; }


/* Search Results */
h4.SearchParams   { margin: 1em 0; }
div.SearchDayTabs { width: 100%; text-align: left; }
div.SearchDayTabs span { display: inline-block; zoom: 1; *display: inline; 
			width: 7em; border: 1px solid #0D91C6; border-bottom: none; border-radius: 3px 3px 0 0; 
			padding: 2px; margin-right: 1px; font-weight: bold; text-align: center; }
div.SearchDayTabs span.request { background-color: #0D91C6; }
div.SearchDayTabs span.request a { color: #FFFFFF; }
div.SearchDayTabs span a { text-decoration: none; color: #0D91C6; }

div.SearchOptions { border: 1px solid #0D91C6; border-radius: 0 3px 3px 3px; padding-bottom: 2px; }

.ResOption { margin: 0; }
.ResOption.odd  { background-color: #FFFFFF; border-width: 1px; border-style: solid; border-color: #0D91C6 transparent transparent transparent; }
.ResOption.even { background-color: #EEEEEE; border-width: 1px; border-style: solid; border-color: #0D91C6 transparent transparent transparent; }
.ResOption.odd:Hover, .ResOption.even:Hover { border: 1px solid #FF4B14; }
div.ResOption.Header {  }
div.ResOptSector { text-align: left; padding: 0; margin: 0 2px; min-height: 24px; vertical-align: top; }
div.ResOptSector.Header { margin: 0; }
div.ResOptSector.Head { }

.ResOptSector.NotAvail { color: #999999; background: none; }
.ResOptSector > span { padding: 5px 3px; min-height: 24px; text-align: center; vertical-align: top; 
			display: table-cell; zoom: 1; *display:inline; }
.ResOptSector.Head > span { border-left: 1px solid #BBCCFF; font-weight: bold; }
.Closed .ResOptSector.Head span { font-weight: normal; }
.ResOptSector span.Departs   { width: 8em; font-weight: bold; border-left: none; }
.ResOptSector span.Departs i { font-weight: normal; font-size: smaller; }
.ResOptSector span.Arrives   { width: 8em; }
.ResOptSector span.Arrives i { font-size: smaller; }
.ResOptSector span.PriceDef  { width: 11em; }
.ResOptSector span.PriceStd  { width: 11em; }
.ResOptSector span.TermsLink  { background: url("../../assets/reservations/info.png") no-repeat right 0.5em; cursor: pointer; }
.ResOptSector span.OptStatus { width: 23em; }
.ResOptSector span.SvcInfo   { width: 12em; }
.ResOptSector span.Amenities { width: 12em; }
.PriceDef value, .PriceStd value { }
.ResOption.Detail span.Departs  { background: url("../../assets/reservations/row_toggle_up.png") no-repeat left 0.5em; }
.ResOption.Detail span.Departs, .ResOption.Detail span.Arrives, .ResOption.Detail span.SvcInfo   { cursor: pointer; }
.ResOption.Detail.Closed span.Departs { background-image: url("../../assets/reservations/row_toggle_down.png"); }

.Amenities .Amenity { background-position: center top; background-repeat: no-repeat; height: 14px; width: 18px; display: inline-block; zoom: 1; *display:inline; }
.Amenities .Amenity.AIRCON       { background-image: url("../../assets/reservations/ac.png"); }
.Amenities .Amenity.AIRPORT      { background-image: url("../../assets/reservations/plane.png"); }
.Amenities .Amenity.BAG1         { background-image: url("../../assets/reservations/luggage1.png"); }
.Amenities .Amenity.BAG2         { background-image: url("../../assets/reservations/luggage2.png"); }
.Amenities .Amenity.BAG1-20      { background-image: url("../../assets/reservations/luggage1.png"); }
.Amenities .Amenity.BAG2-20      { background-image: url("../../assets/reservations/luggage2.png"); }
.Amenities .Amenity.BAG1-25      { background-image: url("../../assets/reservations/luggage1.png"); }
.Amenities .Amenity.BAG2-25      { background-image: url("../../assets/reservations/luggage2.png"); }
.Amenities .Amenity.BOAT         { background-image: url("../../assets/reservations/ferry.png"); }
.Amenities .Amenity.COMMENTARY   { background-image: url("../../assets/reservations/mic.png"); }
.Amenities .Amenity.MULTILINGUAL { background-image: url("../../assets/reservations/earphones.png"); }
.Amenities .Amenity.RESTSTOP     { background-image: url("../../assets/reservations/rest.png"); }
.Amenities .Amenity.TOILET       { background-image: url("../../assets/reservations/unisex.png"); }
.Amenities .Amenity.WIFI         { background-image: url("../../assets/reservations/wifi.png"); }

.ResOption.Closed .ResLegs { display: none; }
.ResLegs { border-width: 1px; border-color: #BBCCFF; border-style: solid none none none; border-radius: 0; padding: 2px 4px; width: 99%; }
.ResLegs div { text-align: left; }
.ResLegs .ResLeg { border-bottom: 1px solid #EEEEEE; margin: 7px 0 3px; }
.ResLegs .Product { color: #0D91C6; font-weight: bold; margin: 2px 0; }
.ResLegs .Product div.crrLogo { float: right; width: 150px; text-align: center; }
div.NAReason span { background-color: #FFDDDD; }

.ResOption .Extras { overflow: hidden; padding: 3px; border-bottom: 1px solid #0D91C6; }
.ResOption .Extras > h4.HelpText { background-image: url("../../assets/reservations/darkarrow_up.png"); background-position: 98% top; background-repeat: no-repeat; cursor: pointer; }
.ResOption .Extras div.Category { float: left; width: 49%; min-width: 20em; margin: 0 0.5% 0 0; border: 1px solid #0D91C6; border-radius: 3px; }
.ResOption .Extras div.Category:last-child { margin-right: 0; }
.ResOption .Extras div.Category h4.Category {  background-color: #0D91C6; font-weight: bold; color: #FFFFFF; text-align: left; margin-bottom: 0; padding: 0.5em; 
		background-image: url("../../assets/reservations/darkarrow_up.png"); background-position: 98% center; background-repeat: no-repeat; cursor: pointer; 
		}
.ResOption .Extras div.Category.Closed h4.Category { background-image: url("../../assets/reservations/darkarrow_down.png"); }
.ResOption .Extras div.Category.Closed .Extra { display: none; }

.ResOption .Extra { border-bottom: 1px solid #CCCCCC; padding: 2px; text-align: left; background-color: #DEF; }
.ResOption .Extra span { vertical-align: bottom; }
.ResOption .Extra .ExtraHead { margin: 0.2em 0; width: 100%; text-align: left; background: url("../../assets/reservations/toggle_up.png") no-repeat top right; cursor: pointer; }
.ResOption .Extra .ExtraDescr { font-weight: bold; color: #0D91C6; padding-right: 20px; }
.ResOption .Extra .ExtraDetail { margin: 0 1em; }
.ResOption .Extra .Pricing { margin: 0.5em 0; }
.ResOption .Extra .Pricing select  { margin: 0; }
.ResOption .Extra .Pricing label  { font-weight: normal; }
.ResOption .Extra .ExtraFoot { text-align: right; font-weight: bold; font-size: larger; overflow: hidden; }
.ResOption .Extra .ExtraFoot > label { float: left; padding-left: 0.2em; }
/* Some magic to convert the checkboxes... */
.ResOption:not(#foo) .Extra .ExtraPrice { display: block; float: right; }
.ResOption:not(#foo) .Extra .ExtraPrice .CBWrapper { }
.ResOption:not(#foo) .Extra .ExtraPrice input[type='checkbox'] { margin: 0; float: left; opacity: 0; }
.ResOption:not(#foo) .Extra .ExtraPrice input[type='checkbox'] + label { 
	margin: 0; clear: none; min-width: 3em; cursor: pointer; display: inline-block;
	text-align: center; padding: 0.1em; color: #FFFFFF; border-radius: 3px; border-width: 3px; border-style: solid;
	background-color: #F15322; border-color: #F56032 #F0704A #D74518 #F07550; 
}
.ResOption:not(#foo) .Extra .ExtraPrice input[type='checkbox'] + label:hover { 
	background-color: #E34D20; border-color: #ED6F49 #ED6F49 #D24317 #ED6F49; }
.ResOption:not(#foo) .Extra .ExtraPrice input[type='checkbox']:checked + label { 
	background: url("../../assets/reservations/Tick-24.png.html") no-repeat top left #DEF; color: transparent; 
	border-color: transparent;
}

.ResOption .Extras.Closed { }
.ResOption .Extras.Closed > h4.HelpText { background-image: url("../../assets/reservations/darkarrow_down.png"); }
.ResOption .Extras.Closed div.Category { display: none; }
.ResOption .Extra.Closed { background-color: #FFFFFF; }
.ResOption .Extra.Closed .ExtraHead { background-image: url("../../assets/reservations/toggle_down.png"); height: 1.5em; overflow: hidden; }
.ResOption .Extra.Closed .ExtraDetail { display: none; }

.ResOption .Extra span.PriceTerms { display: none; }

.ResOption div.DiscPrice       { }
.ResOption div.DiscPrice label { }
.ResOption select.DiscPrice { text-align: right; }
.ResOption select.DiscPrice option { width: 6em;  }

.toggleBtn { background: url("../../assets/reservations/toggle_down.png") no-repeat; height:16px; width: 16px; padding:0; border:none; text-indent:-999em; }
.toggleBtn.open { background-image: url("../../assets/reservations/toggle_up.png"); }

footer.BookTotals { background: #b6deee; border-radius: 3px; margin: 1em 0; padding: 1em; overflow: hidden; }
footer.BookTotals div.BookingText { width: 50%; float: left; color: #666; text-align: left; }
footer.BookTotals div.CartTotals { width: 15em; float: right; clear: right; text-align: right; }
footer.BookTotals div.CartTotals label { display: inline-block; zoom: 1; *display:inline; float: left; width: 9em; margin-right: 1em; font-weight: normal; text-align: left; }
footer.BookTotals div.CartTotals > span  { display: inline-block; zoom: 1; *display:inline; width: 5em; text-align: right; }
footer.BookTotals div.CartTotals > div { margin-top: 0.5em; }
footer.BookTotals div.CartTotals .TotalDue { border-top: 1px solid black; border-bottom: 1px solid black; }
footer.BookTotals div.CartTotals .TotalDue * { font-weight: bold; }
footer.BookTotals div.Actions { float: right; clear: right; margin-top: 1em; }


/* Cart Summary */
div.ResCartSummary { border: 1px solid #0D91C6; border-radius: 3px; padding: 2px; margin: 2px 0; height: 1.5em; overflow: hidden; text-align: right; }
div.ResCartSummary > div { display: inline-block; zoom: 1; *display:inline; vertical-align: top; }
div.ResCartSummary > div.Expires  { float: left; color: #FF4B14; font-weight: bold; }
div.ResCartSummary > div.Items    { margin-left: 1em; }
div.ResCartSummary > div.Value    { margin-left: 0.2em; }
div.ResCartSummary > div.Actions {  }
div.ResCartSummary > div.Actions a { display: inline; margin-left: 1em; padding: 2px; }
div.ResCartSummary > div.Actions a.Cart   { background: url("../../assets/reservations/Cart.png")  no-repeat scroll 0 0 transparent; padding-left: 20px; }
div.ResCartSummary > div.Actions a.Logout { background: url("../../assets/reservations/Logout.png")  no-repeat scroll 0 0 transparent; padding-left: 20px; }
div.ResCartSummary > div.Actions a.Trash  { background: url("../../assets/reservations/Trash.png")  no-repeat scroll 0 0 transparent; padding-left: 20px; }
div.NoCart { display : none; }


/* Cart Detail */
.ResCart { text-align: left;  border: 1px solid #0D91C6; border-radius: 3px; padding: 2px; margin: 2px; }
.ResCart .Header     { padding: 2px; }
.ResCart .Item       { border: 1px solid transparent; padding: 2px; }
.ResCart .Item.Head  { }
.ResCart .Item.odd   { background-color: #EEEEEE; }
.ResCart .Item.even  { background-color: #FFFFFF; }
.ResCart .Item:Hover { border: 1px solid #FF4B14; }
.ResCart div span { padding: 0 0.1%; display: inline-block; text-align: left; vertical-align: top; zoom: 1; *display:inline; }
.ResCart .Description { width: 39%; }
.ResCart .Composition { width: 23%; }
.ResCart .Price       { width: 13%; text-align: right; }
.ResCart .Controls    { width: 22.5%; text-align: center; }
.ResCart .Controls .Status  { text-align: center; width: 48%; }
.ResCart .Controls .Actions { text-align: right; width: 48%; }
.ResCart .Holding .Price  { font-weight: bold; }
.ResCart .Fee .Description { width: 62.4%; text-align: left; }
.ResCart .Fee .Price  { font-weight: bold; }
footer.CartTotals { background: #b6deee; border-radius: 3px; margin: 1em 0; padding: 1em; overflow: hidden; }
footer.CartTotals div.CartFreewayText { width: 50%; float: left; color: #666; text-align: left; }
footer.CartTotals div.CartTotals { width: 15em; float: right; clear: right; text-align: right; }
footer.CartTotals div.CartTotals label { display: inline-block; zoom: 1; *display:inline; width: 9em; margin-right: 1em; font-weight: normal; text-align: left; }
footer.CartTotals div.CartTotals span  { display: inline-block; zoom: 1; *display:inline; width: 5em; text-align: right; }
footer.CartTotals div.CartTotals p     { text-align: left; margin: 0; font-size: smaller; }
footer.CartTotals div.CartTotals > div { margin-top: 0.5em; }
footer.CartTotals div.CartTotals .TotalDue { border-top: 1px solid black; border-bottom: 1px solid black; }
footer.CartTotals div.CartTotals .TotalDue span, footer.CartTotals div.CartTotals .TotalDue label { font-weight: bold; }
footer.CartTotals div.Actions { float: right; clear: right; margin-top: 0.5em; }


/* Customer Details Form */
#LoginOrGuest { border: 1px solid #0D91C6; border-radius: 3px; padding: 0; margin: 0.5em 0; overflow: hidden; }
#LoginOrGuest h4 { font-size: 1em; font-weight: bold; margin-bottom: 0.25em; padding: 0.3em; text-align: left; }
#LoginOrGuest > div { clear: left; float: left; width: 48%; margin: 0.5%; padding: 0.25em; text-align: left; }
#LoginOrGuest > #GuestCheckout, 
#LoginOrGuest > div.Actions { clear: right; float: right; }
#LoginOrGuest > div.Actions { text-align: right; }
#LoginOrGuest > #GuestCheckout { border-left: 1px solid #CCCCCC; min-height: 13em; }
#LoginOrGuest > #FreewayJoin   { border-top: 1px solid #CCCCCC; }
#LoginOrGuest > #FreewayJoin .Actions { display: none; }
#LoginOrGuest.Active > #FreewayJoin .Actions { display: block; }
#LoginOrGuest > div > h4 { color: #003343; margin: 0.25em 0; }
#LoginOrGuest.Active > div.LoginClub > h4 { padding-right: 20px; background-image: url("../../assets/reservations/darkarrow_up.png"); background-position: 98% 0.6em; background-repeat: no-repeat; cursor: pointer; }
#LoginOrGuest.Active > div.LoginClub.Closed > h4 { background-image: url("../../assets/reservations/darkarrow_down.png"); }
#LoginOrGuest > div.LoginClub.Closed form { display: none; }
#LoginOrGuest .LoginForm { min-height: 2em; margin: 0.5%; border: none; }
#LoginOrGuest > div.Actions a.ClosePopup { display: none; }
.ui-dialog #LoginOrGuest .Title { display: none; }
.ui-dialog #LoginOrGuest { border: none; }
.ui-dialog #LoginOrGuest > div.Actions a.ClosePopup { display: inline-block; }

.CustomerForm { border: 1px solid #0D91C6; border-radius: 3px; padding: 0; margin: 0.5em 0; }
.CustomerForm .Title { text-align: left; margin-bottom: 0; padding: 0.5em; }
#Form_Customer { min-height: 30em; }
#Form_Customer fieldset { border: none; }
#Form_Customer div.field { float: left; text-align: left; }
#Form_Customer div.field label { color: #000066; font-weight: normal; display: inline-block; width: 10em; }
#Form_Customer div.field div.middleColumn { display: inline; }
#Form_Customer #PhoneNumber label { display: none; }
#Form_Customer #FreewaySignup { float: right; width: 30em; padding: 0.3em; text-align: right; background-color: #EEEEEE; border: 1px solid #FF4B14; border-radius: 3px; }
#Form_Customer #FreewaySignup div.middleColumn { float: left; position: relative; top: -1.75em; }
#Form_Customer #FreewaySignup label { padding-left: 1.5em; width: auto; }
#Form_Customer div.fieldgroup.UnacMinor { clear: both; width: 96%; margin: 0.5em 1%; padding-bottom: 0.5em; background-color: #EEEEEE; border: 1px solid #FF4B14; border-radius: 3px; }
#Form_Customer div.fieldgroup.UnacMinor label { margin-left: 0.5em; }
#Form_Customer div.fieldgroup.UnacMinor .UMHead { margin: 0 0 0.5em 0; }
#Form_Customer div.fieldgroup.UnacMinor .UMHead > * { margin-bottom: 0.5em; padding-left: 0.5em; }
#Form_Customer div.fieldgroup.UnacMinor .UMTerms { margin: 0.5em; }
#Form_Customer div.fieldgroup.UnacMinor .UMTerms p { margin: 0.2em 0; }
#Form_Customer div.fieldgroup.UnacMinor label[for="Form_Customer_UMAcceptTerms"] { font-weight: bold; width: auto; }
#Form_Customer .Actions { margin: 0.2em; }


/* Payment / Confirmation */
.Confirmation { text-align: left; }
.Confirmation h3.Title { padding: 0.5em; margin: 0 0 0.5em 0; }
.Confirmation > .CartTotals > div label { display: inline-block; zoom: 1; *display:inline; width: 9em; margin-right: 1em; font-weight: normal; text-align: left; }
.Confirmation > .CartTotals > div > span  { display: inline-block; zoom: 1; *display:inline; width: 5em; text-align: right; }
.Confirmation > .CartTotals > div > span.UsePoints { display: none; }
.Confirmation > .CartTotals > div > span.ClubPtValueUsed { width: auto; margin-left: 1em; }
.Confirmation > .CartTotals > div > span.ClubPtValueUsed > label { width: auto; }
.Confirmation fieldset { border: none; }
#Form_PaymentForm input.text { display: inline; }
#Form_PaymentForm .fieldgroupField { margin: 0.25em; }
#Form_PaymentForm .fieldgroupField .nolabel { margin-left: 13em; }
#Form_PaymentForm .fieldgroupField .rightlabel { }
#Form_PaymentForm .field { margin: 0; float: left; }
#Form_PaymentForm .field label { font-weight: normal; text-align: left; width: 13em; display: inline-block; zoom: 1; *display:inline; }
#Form_PaymentForm .field label.leftlabel  { }
#Form_PaymentForm .field label.rightlabel { display: inline; width: auto; }
#Form_PaymentForm .field div.middleColumn { display: inline-block; zoom: 1; *display:inline; }
#Form_PaymentForm .fieldgroup > div.fieldgroupField { float: left; clear: left; }
#Form_PaymentForm .fieldgroup > div.fieldgroupField.UsePoints { clear: right; }
#Form_PaymentForm .fieldgroup > div.fieldgroupField.UsePoints .rightlabel { margin-left: 2em; }
#Form_PaymentForm > fieldset > div { clear: left; }
#Form_PaymentForm input.CCNum    { text-align: center; width: 4em; }
#Form_PaymentForm input.CardName { width: 20em; }
#Form_PaymentForm input.CCExpiry { text-align: center; width: 2.5em; }
#Form_PaymentForm input.CardCVC  { text-align: center; width: 4em; }
#Form_PaymentForm .fieldgroup > div.fieldgroupField.CVC { clear: right; }
#Form_PaymentForm .fieldgroup > div.fieldgroupField.CVC label { width: auto; margin-right: 0.25em; }
#Form_PaymentForm ul.optionset { display: inline; list-style-type: none; margin: 0; padding: 0; }
#Form_PaymentForm ul.optionset li { display: inline; margin-right: 2em; }
#Form_PaymentForm ul.optionset li label { display: inline; }
#Form_PaymentForm #ExpYear label { width: 1.5em; }
#Form_PaymentForm #PayFormTerms { clear: both; width: 96%; margin: 0.5em 1%; padding-bottom: 0.5em; border: 1px solid #AAAAAA; border-radius: 3px; }



/* Itinerary / Confirmation */
.Itinerary label, .Itinerary span { 
	display: inline-block; zoom: 1; *display:inline; 
	vertical-align: top; padding: 3px 0px; }
.Itinerary label { min-width: 9em; width: 10%; }
.Itinerary .Customer, .Itinerary .PassSummary { text-align: left; }
.Itinerary .PNR, .Itinerary .PassNum { clear: right; float: right; font-weight: bold; color: #003343; text-align: right; }
.Itinerary .PNR label, .Itinerary .PassNum label { display: block; width: 100%; }
.Itinerary .PNR span, .Itinerary .PassNum span { font-size: x-large; }
.Itinerary .PassSummary .PassDescr label { display: none; }
.Itinerary .PassSummary .PassDescr span { font-size: larger; font-weight: bold; color: #003343; }

.Itinerary .Items div { text-align: left; border-top: 1px solid #DDDDDD; }
.Itinerary .Items div label { padding: 3px 0px; }
.Itinerary .Items div label.Sector { font-weight: bold; }
.Itinerary .Items div span  { padding: 3px 0px; max-width: 89%; }
.Itinerary .Items div span.Fare, .Itinerary .Items div span.Duration { float: right; }
.Itinerary .Items .Head { margin-top: 10px; border-top: 1px solid #AAAAAA; }
.Itinerary .Items .Head span { font-weight: bold; }
.Itinerary .Items .JoinExtras { font-size: x-large; font-weight: bold; line-height: 1.1; border-top: none; margin-top: 0; text-align: center; }
.Itinerary .Items .Head.Extra { margin-top: 0; border-top-color: #CCCCCC; }
.Itinerary .Items .Extra span.Name { width: 50% }
.Itinerary .Items .Extra span.Qty { width: 34% }
.Itinerary .Items img.crrLogo { float: right; background-color: #FFFFFF; }

.Payment     { text-align: center;  border: 1px solid #0D91C6; border-radius: 3px; padding: 2px; margin: 20px 1px 1px 1px;  }
.Payment .Transaction { text-align: left; }
.Payment .Transaction * { white-space: nowrap; overflow: hidden; }
.Payment .Transaction .Head   { display: block; margin: 0; border-radius: 3px 3px 0 0; }
.Payment .Transaction .Date   { display: inline-block; margin: 0.5%; width: 15%; }
.Payment .Transaction .Total  { display: inline-block; margin: 0.5%; text-align: right; width: 15%; }
.Payment .Transaction .Method { display: inline-block; margin: 0.5%; width: 25%; }
.Payment .Transaction .Item   { display: inline-block; margin: 0.5%; width: 40%; }
.Payment .Transaction .Amount { display: inline-block; margin: 0.5%; text-align: right; width: 15%; }
.Payment .TaxNote { text-align: right; font-style: italic; }

.Itinerary .Terms { margin-top: 0.5em; }
.Itinerary .Terms h4 { margin: 0.5em 0; }
.Itinerary .Terms .Term { text-align: left; }
.Itinerary .Terms .Term label { display: block; margin: 0.5em 0 0 0; width: 100%; }


/* Login/Manage Page */
.LoginForm { float: left; width: 21em; min-height: 21em; text-align: left;
	border: 1px solid #0D91C6; border-radius: 3px; padding: 0 0 2px 0; margin: 0.5em 0.5em 0.5em 0; }
.LoginForm h3.Title { padding: 0.2em 0.5em; margin: 0 0 0.5em 0; }
.LoginForm p { margin: 0 1em; }
.LoginForm fieldset { border: none; margin: 0 1em; padding: 0; }
.LoginForm label { display: none; }
.LoginForm input.text { width: 15em; }
.LoginForm .Actions { margin: 0 1em; }


/* Club Member Dashboard/Home */
.Club > .ClubStatus { display: block; min-width: 15em; vertical-align: top; text-align: left; width: 30%; float: right; }
.Club > .ClubStatus label { display: inline-block; width: 9em; margin-right: 0.25em; zoom: 1; *display:inline; }
.Club > .ClubMember { display: block; min-width: 20em; vertical-align: top; text-align: left; width: 68%; margin-right: 1%; }
.Club > .ClubMember label { display: inline-block; width: 7em; margin-right: 0.25em; zoom: 1; *display:inline; }

.Club > .Actions > .Action.Edit { display: none; }
.Club.View > .Actions > .Action.Edit { display: inline-block; }
.Club > .Update { clear: both; }
.Club.View > .Update { display: none; }
.Club.Edit > .ClubMember { display: none; }
.Club > .Update form fieldset div.field { float: left; text-align: left; }
.Club > .Update form div.field label { color: #000066; font-weight: normal; }
.Club > .Update form #PhoneNumber label { color: transparent; }
.Club > .Update form #PhoneNumber2 label { color: white; color: transparent; }
.Club > .Update form #Address2 label { display: none; }
.Club > .ClubItineraries { }
.Club > .ClubItineraries h3 { background-color: #0D91C6; color: #FFFFFF; font-size: 1.4em; font-weight: bold; padding: 0.25em 0; margin: 1em 0 0.25em 0; border-radius: 3px 3px 0 0; }
.Club > .ClubItineraries th.DateMade { width: 8em; }
.Club > .ClubItineraries td.Descr    { overflow: hidden; }
.Club > .ClubItineraries th.BookRef  { width: 5em; }
.Club > .ClubItineraries th.Status   { width: 7em; }
.Club > .ClubItineraries h3.Active   { background-position: right 0.25em; background-repeat: no-repeat; background-image: url("../../assets/reservations/darktoggle_down.png"); }
.Club > .ClubItineraries h3.Active.Open { background-image: url("../../assets/reservations/darktoggle_up.png"); }
.Club > .ClubItineraries table.Closed { display: none; }
.Club > .ClubPoints {}
.Club > .ClubPoints h3 { background-color: #0D91C6; color: #FFFFFF; font-size: 1.4em; font-weight: bold; padding: 0.25em 0; margin: 1em 0 0.25em 0; border-radius: 3px 3px 0 0; }
.Club > .ClubPoints th.DateMade { width: 8em; padding-left:1.3em !important; }
.Club > .ClubPoints td.DateMade{ padding-left:1.5em; }
.Club > .ClubPoints td.Descr    { overflow: hidden; }
.Club > .ClubPoints th.ClubPoints  { width: 5em; }
.Club > .ClubPoints h3.Active   { background-position: right 0.25em; background-repeat: no-repeat; background-image: url("../../assets/reservations/darktoggle_down.png"); }
.Club > .ClubPoints h3.Active.Open { background-image: url("../../assets/reservations/darktoggle_up.png"); }
.Club > .ClubPoints h3.Edge { margin: 0.8em; width: 97.9%; }
.Club > .ClubPoints div.ClubPointsHist { max-height: 250px; overflow-y: scroll; overflow:-moz-scrollbars-vertical; width: 99%; }
.Club > .ClubPoints span.Expiry { font-weight: bold; padding-left: 1em; } 


/* Pass Home Page */
.PassHome h2.Title { margin: 0; padding: 0.3em; }
.PassHome .Overview { border: 1px solid #0D91C6; border-radius: 3px; margin: 0; padding: 0; text-align: left; overflow: hidden; }
.PassHome .Overview > div { border-left: 1px solid #BBCCFF; float: left; margin-right: 0.1%; padding: 0.5%; width: 32%; min-height: 7em; }
.PassHome .Overview div > label { display: inline-block; zoom: 1; *display:inline; width: 9em; font-weight: normal; color: #003343; }
.PassHome .Overview .PassInfo .PassNo span { font-weight: bold; color: #003343; }
.PassHome .Overview div.Actions { margin: 0.5em 0.2em 0.2em 0.5em; }

.PassHome .Trip span.Controls, 
.PassHome .TripDetails span.Controls { float: right; }
.PassHome .TripDetails span.Controls div.Spacer { width: 5em; }
.PassHome div.BookTravel { border: 1px solid #0D91C6; border-radius: 3px; float: left; margin: 2px 0.5% 0 0; min-width: 24em; width: 30%; padding: 0; text-align: left;  }
.PassHome div.BookTravel > div { margin: 0 0.2em; }
.PassHome .BookTravel div.PaxComp { display: none; }

.PassHome .FlexiPassTravelSummary, 
.PassHome .PassOptions div.TripOptions { border: 1px solid #0D91C6; border-radius: 3px; float: right; margin: 2px 0 0; padding: 0; text-align: left; width: 43em; }
.PassHome .PassItinerary > div { padding: 0 0.2em; }
.PassHome .PassItinerary div.odd div.Head { background-color: #DDDDDD; }
.PassHome .PassItinerary div.even div.Head { background-color: #EEEEEE; }
.PassHome .Trip label { display: inline-block; zoom: 1; *display:inline; overflow: auto; white-space: normal; width: 50%; }
.PassHome .Trip span.TravelDate { vertical-align: top; }
.PassHome .Trip.open label { overflow: hidden; white-space: nowrap; }
.PassHome .TripDetails label { display: inline-block; zoom: 1; *display:inline; width: 80px; }
.PassHome .TripDetails div.Actions { float: right; margin: 0.5em 0 0.2em 0.2em; }
.PassHome .TopUps, 
.PassHome .TravelPassBookings { border: 1px solid #0D91C6; border-radius: 3px; float: left; margin: 2px 0; padding: 0; text-align: left; width: 99.5%; }

.PassHome .TopUps { overflow: hidden; }
.PassHome .TopUps p { margin: 0.5em; }
.PassHome .TopUps .TopUpColumn { float: left; width: 33%; margin: 0.1%; }
.PassHome .TopUps div.Option  span.Code { display: none; }
.PassHome .TopUps div.Option  span.Fare span.Amount { display: inline-block; zoom: 1; *display:inline; width: 3em; margin-right: 0.5em; text-align: right; }
.PassHome .TopUps div.Option  span.Description {  }
.PassHome .TopUps div.Actions { float: right; margin: 1em 0.2em 0.5em 0.5em; }

/* http://trac.webkit.org/wiki/Styling%20Form%20Controls - Removing Spin Controls from input[type=number] */
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
}
input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

@media print {
	#feedbackdiv, #Navigation, #ResCartSummary
		{ display: none; }
	.Actions { display: none; }
}

