html, body { position: relative; margin: 0; padding: 0; }
html { height:100%; }
body { min-height: 100%; }

.tw {
	font: 13px/1.2 Arial, sans-serif;
	color: #444;
	background: white;
}
.tw * {
	margin: 0; padding: 0;
	border: none;
	font: inherit;
	text-align: left; vertical-align: baseline;
	color: inherit;
}
.tw a img { border: none; vertical-align: middle; }
.tw table { border-collapse: collapse; }
.tw table.layout { width: 100%; table-layout: fixed; }
.tw table.layout > tbody > tr > td { vertical-align: top; }
.tw ul { list-style: none; }
.tw label { display: inline; }
.tw input, .tw button, .tw select { display: inline-block; }
.tw input[type="text"], .tw input[type="password"] { outline: none; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
.tw input[type="submit"], .tw input[type="button"], .tw button { outline: none; background: none; text-align: center; cursor: pointer; }
.tw input::-moz-focus-inner, .tw button::-moz-focus-inner { padding: 0; border: 0; }

.tw a, .tw .link { color: #2b76ac; cursor: pointer; text-decoration: underline; }
.tw .dashed, .tw .dotted { display: inline-block; line-height: 0.9; text-decoration: none; border-bottom: 1px dashed currentColor; cursor: pointer; }
.tw .dotted { border-bottom-style: dotted; }

.tw .invisible { display: none !Important; }
.tw .inlineBlock { display: inline-block; }
.tw b, .tw .bold { font-weight: bold; }
.tw .nowrap { white-space: nowrap; }

#tw {
	width: 650px;
	z-index: 1;
	position: relative;
	padding: 31px 0;
	margin: 0 auto;
}

.tw-field { position: relative; display: inline-block; background: white; }
.tw-field input { padding: 6px 5px; border: 1px solid; }
.tw-field input.placeholder { z-index: 0; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: transparent; border-color: transparent; }
.tw-field input.text { z-index: 1; position: relative;
	background: transparent; border-color: #C0C0C0 #D9D9D9 #D9D9D9;
	/* IE */ background-image: url('data:image/gif;base64,R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw%3D%3D');
	-webkit-transition: .2s box-shadow;
	   -moz-transition: .2s box-shadow;
	    -ms-transition: .2s box-shadow;
	     -o-transition: .2s box-shadow;
	        transition: .2s box-shadow;
}
.tw-field:hover input.text { z-index: 2; border-color: #A0A0A0 #B9B9B9 #B9B9B9; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) inset; }
.tw-field input.text:focus, .tw-field input.text:active, .tw-field input.text.active { z-index: 3; border-color: #4D90FE; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3) inset; }
.tw-field.checkbox { margin-left: 30px !important; }
.tw-field div.checkbox { z-index: 1; position: absolute; top: 0; bottom: 0; left: -30px; width: 30px; border-top: 1px solid #C0C0C0; border-bottom: 1px solid #D9D9D9; background: #E9E9E9; }
.tw-field input[type="checkbox"] { position: absolute; margin: auto 0; top: 0; left: 0; bottom: 0; right: 0; }

.tw-popup { z-index: 777; visibility: hidden; position: relative; top: 0; right: 0; bottom: 0; left: 0; margin: auto; width: 630px; border-radius: 10px; box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3); background: white; overflow: hidden; }
.tw-popup div.close { position: absolute; top: 0; right: 0; width: 22px; height: 22px; font-size: 22px; line-height: 22px; text-align: center; cursor: pointer; }
.tw-popup div.close:hover { color: #498AF3; }
.tw-popup table td { padding: 5px 10px; vertical-align: top; }
.tw-popup button.simple {
	cursor: pointer;
	font-size: 14px;
	font-weight: bold;
	padding: 3px 5px;
	margin: 10px 0;
	display: inline-block; //display: inline;
	color: #615F5F;
	background-color: #F0E6E8;
	border: 1px solid #DED9DB;
	-moz-border-radius: 2px;
	border-radius: 2px;
	-khtml-border-radius: 2px;
	-webkit-border-radius: 2px;
	box-shadow: 2px 2px 2px #F0F0F0;
	-webkit-box-shadow: 2px 2px 2px #F0F0F0;
	-moz-box-shadow: 2px 2px 2px #F0F0F0;
}
.tw-popup .sadsmile { font-size: 72px; white-space: nowrap; }
.tw-popup .reason { font-size: 140%; font-weight: bold; }
.tw-popup .comment p:first-child { margin: 5px 0 12px; }
.tw-popup .comment ul { padding-left: 15px; }
.tw-popup.ErrorPopup { width: 650px !important; }

div.blockHeader { font-size: 130%; margin: 1em 0 0.5em; color: #222; }
#tw-fade { z-index: 76; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background-color: black; opacity: 0.4; filter: alpha(opacity=40); }
#tw-loader { margin: 1.5em 0; background: url(../img/loader.gif) no-repeat left center; padding-left: 25px; }


#layout_searchForm { margin-bottom: 1em; }
div.searchForm { background-color: #F9F300; border-radius: 5px; }
table.searchForm { width: 100%; }
table.searchForm col.label1 { width: 5em; }
table.searchForm col.label2 { width: 8em; }
table.searchForm tr { border-top: 1px solid white; }
table.searchForm tr:first-child { border-top: none; }
table.searchForm td { padding: 5px 0; }
table.searchForm td.field1, table.searchForm td.field2 { padding-right: 11px; }
table.searchForm td.label2 { padding-left: 10px; }
.searchForm label { display: block; padding: 7px 11px; }
.searchForm .return {
	position: relative;
	border: 1px solid #DADADA; border-radius: 2px;
	margin-right: 3px; padding: 6px 10px;
	-webkit-transition: all 0.218s ease 0s;
	   -moz-transition: all 0.218s ease 0s;
	    -ms-transition: all 0.218s ease 0s;
	     -o-transition: all 0.218s ease 0s;
	        transition: all 0.218s ease 0s;
}
.searchForm .return:after, .searchForm .return:before {
	content: ''; position: absolute; right: 10px; top: 0; bottom: 0; margin: auto 0; width: 0; height: 0; border: 4px solid; border-color: #686868 transparent;
}
.searchForm .return:after { border-top: none; top: -7px; -moz-transform:  translateX(1px); }
.searchForm .return:before { border-bottom: none; bottom: -7px; }
.searchForm .return:hover { border-color: #C6C6C6; box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); }
.searchForm .return:active { box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) inset; }
.searchForm .return:focus {
	outline: none; border-color: #CCC;
	background: #FEE60B;
	background: -webkit-linear-gradient(top, #FEE60B, #FCC500);
	background:    -moz-linear-gradient(top, #FEE60B, #FCC500);
	background:     -ms-linear-gradient(top, #FEE60B, #FCC500);
	background:      -o-linear-gradient(top, #FEE60B, #FCC500);
	background:         linear-gradient(top, #FEE60B, #FCC500);
}
.searchForm .tw-field { width: 100%; }
.searchForm input { width: 100%; }

.tw-field .down { z-index: 1; position: absolute; top: 0; bottom: 0; right: 5px; margin: auto 0; cursor: pointer; height: 17px; width: 20px; border-left: 1px solid #EAEAEA; }
.tw-field .down:after { content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; width: 0; height: 0;
	border: 4px solid; border-color: #797979 transparent; border-bottom: none;
}

.tw-field .leftRight { z-index: 2; position: absolute; top: 0; bottom: 0; right: 5px; margin: auto 0; height: 19px; width: 47px; }
.tw-field .leftRight div { z-index: 1; position: absolute; top: 0; bottom: 0; width: 22px; cursor: pointer;
	border: 1px solid rgba(0, 0, 0, 0.1);
	background: whiteSmoke;
	background: -webkit-linear-gradient(top, #F5F5F5, #F1F1F1);
	background:    -moz-linear-gradient(top, #F5F5F5, #F1F1F1);
	background:     -ms-linear-gradient(top, #F5F5F5, #F1F1F1);
	background:      -o-linear-gradient(top, #F5F5F5, #F1F1F1);
	background:         linear-gradient(top, #F5F5F5, #F1F1F1);
}
.tw-field .leftRight div:hover {
	border: 1px solid #C6C6C6;
	background: #F8F8F8;
	background: -webkit-linear-gradient(top, #F8F8F8, #F1F1F1);
	background:    -moz-linear-gradient(top, #F8F8F8, #F1F1F1);
	background:     -ms-linear-gradient(top, #F8F8F8, #F1F1F1);
	background:      -o-linear-gradient(top, #F8F8F8, #F1F1F1);
	background:         linear-gradient(top, #F8F8F8, #F1F1F1);
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1);
}
.tw-field .leftRight div:active, .tw-field .leftRight div:focus {
	background: #F6F6F6;
	background: -webkit-linear-gradient(top, #F6F6F6, #F1F1F1);
	background:    -moz-linear-gradient(top, #F6F6F6, #F1F1F1);
	background:     -ms-linear-gradient(top, #F6F6F6, #F1F1F1);
	background:      -o-linear-gradient(top, #F6F6F6, #F1F1F1);
	background:         linear-gradient(top, #F6F6F6, #F1F1F1);
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) inset;
}
.tw-field .leftRight div.disabled {
	background: white;
	border: 1px solid rgba(0, 0, 0, 0.05);
	box-shadow: none;
	cursor: default;
}
.tw-field .left { left: 0; border-radius: 2px 0 0 2px; }
.tw-field .right { right: 0; border-radius: 0 2px 2px 0; }
.tw-field .left:after, .tw-field .right:after {
	content: ""; z-index: 2; position: absolute; top: 1px; right: 0; bottom: 0; left: 0; margin: auto; width: 0; height: 0;
	border: 3px solid #686868; border-color: transparent #686868 transparent;
}
.tw-field .left.disabled:after, .tw-field .right.disabled:after { border-color: transparent #D2D2D2 transparent; }
.tw-field .left:after { border-left: none;  -moz-transform:  translateY(-1px); }
.tw-field .right:after { border-right: none; }

.suggest, div.calendar { z-index: 77; position: absolute; background: white; color: black; border: 1px solid #B4B4B4; box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.15); }
.suggest ul { display: block; list-style: none; margin: 0; padding: 0; }
.suggest li { display: block; margin: 0; padding: 0.4em 6px; }
.suggest li:hover, .suggest li.hover { cursor: pointer; background: #F9F300; }
.suggest span { color: #7f7f7f; }
.suggest table { width: 100%; }
.suggest table td.code { color: #7f7f7f; font: small "Lucida Console", Monaco, monospace; width: 3ex; padding-left: 1em; }

div.calendar { padding: 15px 0; }
div.calendar table { table-layout: fixed; margin: 0 auto; }
div.calendar table td { text-align: right; }
div.calendar table.calendar thead td { padding: 10px 6px 10px }
div.calendar table.calendar thead tr:first-child td { text-align: center; padding-top: 0; }
div.calendar table.calendar thead tr td.monthYear { text-align: left; font-weight: bold; }
div.calendar .rollLeft, div.calendar .rollRight { display: inline-block; padding: 1px 5px; text-align: center; cursor: pointer; border-radius: 3px; }
div.calendar .rollLeft:hover, div.calendar .rollRight:hover { background: #F0F0F0; }
div.calendar table.calendar thead tr.weekdays td { color: gray; font-size: 90%; }
div.calendar table.calendar thead tr.weekdays td.weekend { color: #800000; }
div.calendar table.calendar tbody td { padding: 2px 6px; }
div.calendar table.calendar tbody td.notMonth, div.calendar table.calendar tbody td.disabled { color: #CCC; }
div.calendar table.calendar tbody td.enabled { cursor: pointer; }
div.calendar table.calendar tbody td.enabled:hover { background: #F9F300; font-weight: bold; }

form#searchForm button[type='submit'] {
	margin-top: 5px; width: 100%; 
	border-color: #3079ED; color: white;
	background: #4D90FE;
	background: -webkit-linear-gradient(top, #4D90FE, #4787ED);
	background:    -moz-linear-gradient(top, #4D90FE, #4787ED);
	background:     -ms-linear-gradient(top, #4D90FE, #4787ED);
	background:      -o-linear-gradient(top, #4D90FE, #4787ED);
	background:         linear-gradient(top, #4D90FE, #4787ED); 
}
form#searchForm button[type='submit'] span span { text-transform: lowercase; }


#layout_result { position: relative;}
#layout_result .process { position: absolute; top:0; right: 0; bottom: 0; left: 0; background-color: white; opacity: 0.5; filter: alpha(opacity=50);}
.TitleStyle {
	position: absolute;
	overflow: hidden;
	z-index: 666;
	background-color: white;
	color: black;
	padding: 7px 10px;
	font-size: 100%;
	white-space: nowrap;
	-webkit-box-shadow: 0px 3px 15px black;
	   -moz-box-shadow: 0px 3px 15px black;
			box-shadow: 0px 3px 15px black;
}

/*blocks*/
table.Prefered { width: 100%; table-layout: fixed; }
table.Prefered td { padding-left: 5px; }
table.Prefered td:first-child { padding: 0 5px 0 0; }
.pf_Header { font-size: 110%; }
.pf_bottom {
	color: black;
	background-color: #FFFFCC;
	text-shadow: #e6e6e6 0px 1px 0px;
}
.mini .pf_bottom { font-size: 90%; border: 1px solid #F5D6B5;
	-webkit-border-bottom-left-radius: 5px; /*safari 4*/
	-webkit-border-top-right-radius: 5px;
	-webkit-border-radius: 0 5px 0 5px;
	   -moz-border-radius: 0 5px 0 5px;
			border-radius: 0 5px 0 5px;
}
.pf_bottom .content { 
	padding: 6px 12px 10px;
}
.pf_bottom .DirectionPoint { font-size: 80%; letter-spacing: 1.5px; color: #000000; margin-left: -1px; padding-bottom: 3px; }
.pf_bottom .StartTime { font-size: 16px; font-weight: bold;}
.mini .StartTime { font-size: 120%; }
.pf_bottom table { width: 100%; }
.pf_bottom table td { padding: 0px; vertical-align: top;}
.pf_bottom table td:first-child { padding-right: 3px;}
.pf_bottom table td.noPadding { padding: 0px;}
.pf_bottom table .seatsCount {margin-top: 3px;}
.pf_bottom .info_points {float: left; text-align: left;}
.pf_bottom .info_time {float: right; white-space: nowrap;}
.pf_puller { height: 2px;  background: url('../img/dashes-h.png') repeat-x;}
.pf_button { text-align: right; }
.pf_button .price_button { position: absolute; right: 7px; top: 7px;}
.pf_stops { color: #CC4C00; }
.infotitle { cursor: help; }

.SearchResult { table-layout: fixed; position: relative; }
.SearchResult .rowWrapper {clear: both; position: relative; border-top: 1px solid #EBEBEB;}
.SearchResult .rowItem { cursor: pointer; height: 25px; padding: 5px 0px; border: 1px solid transparent;}
.SearchResult .rowItem * {vertical-align: middle;}
.SearchResult .ib { position: relative; display: inline-block; //display: inline;}
.SearchResult .head { color: #1155CC; background-color: #F5F5F5; padding: 7px 0; }
.SearchResult .head .ib { position: relative;}
.SearchResult .head .ib span { cursor: pointer;}
.SearchResult .head .selected span { cursor: default; color: black; }
.SearchResult .departure { width: 65px; left:5px;}
.SearchResult .journey { width: 65px;}
.SearchResult .journey .arrow {
	height: 6px; width: 42px;
	overflow: hidden;
	margin: 4px 0 5px;
	background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAGCAYAAAC1rQwWAAAAK0lEQVR42mNgGAUUA2kg5h4KDmUG4kAg1oMJ6AKx8SDGxUDsN6RCdEikUQD8FAoERuWJEAAAAABJRU5ErkJggg==") no-repeat scroll 0 0 transparent;
}
.SearchResult .journey .jt {
	position: absolute;
	color: #797979;
	background-color: white;
	padding: 0 1px;
	left: 10px;
	top:0;
}
.SearchResult .arrival { width: 95px;}
.SearchResult .ak { width: 130px;}
.SearchResult .route { width: 170px; }
.SearchResult .dataFlights .route { white-space: nowrap; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}
/*.SearchResult .route .time { font-size: 11px;}*/
/*.SearchResult .route .code { font: small "Lucida Console",Monaco,monospace;}*/
.SearchResult .price { width: 120px; text-align: right; white-space: nowrap; }
.SearchResult .head .price span { margin-right: 5px;}
.SearchResult .price .tripDate { padding-right: 5px; font-size: 90%; }
.SearchResult .rowItem img {border: 1px solid transparent; margin-right: 5px; height: 23px;}
.SearchResult .avl:hover img, .SearchResult .SelectedTrip img { border: 1px solid #BFBFBF; }

.SearchResult .TripBlock { border-left: 1px solid #f0b900; border-bottom: 1px solid #cecece; border-right: 1px solid #cecece; }
.SearchResult .moreInfo {margin-left: -1px; }
.SearchResult .moreInfo .TripBlock {
	box-shadow: 2px 2px 2px #F0F0F0;
	-webkit-box-shadow: 2px 2px 2px #F0F0F0;
	-moz-box-shadow: 2px 2px 2px #F0F0F0;	
}
.SearchResult .SelectedTrip { background-color: #FFFFCC; /*1px solid #E9E9E8*/ height: auto; padding: 0px;}
.SearchResult .SelectedTrip.first { padding: 5px 0 0;}
.SearchResult .SelectedTrip.last { padding: 0 0 5px;}
.SearchResult .SelectedTrip .additional { clear: both; color: #797979; font-size: 85%; position: relative; height: 14px; }
.SearchResult .SelectedTrip .additional .subAK {position: absolute; left: 260px; display: inline-block; //display: inline; overflow: hidden; width: 90px;}
.SearchResult .SelectedTrip .additional .subRoute { position: absolute; left: 355px;}
.SearchResult .SelectedTrip .smallInfo { margin-left: 260px; }

.SearchResult .avl { cursor: pointer; }
.SearchResult .avl:hover { background-color: #F9F300;}
.SearchResult .p {
	position: absolute;
	right: 0px;
	top: -14px;
	padding: 5px;
	border: 1px solid transparent;
	display: inline-block; //display: inline;
}
.SearchResult .p .amt { font-size: 110%; font-weight: bold; }
.SearchResult .p .gray { color: #797979; font-size: 90%; }
.SearchResult .avl:hover .p .gray { color: white;}
.SearchResult .avl:hover .p {
	color: white;
	background-color: #4D90FE;
	-moz-border-radius: 2px;
	border-radius: 2px;
	-khtml-border-radius: 2px;
	-webkit-border-radius: 2px;
	border: 1px solid #3079ED;
	box-shadow: 2px 2px 2px #F0F0F0;
	-webkit-box-shadow: 2px 2px 2px #F0F0F0;
	-moz-box-shadow: 2px 2px 2px #F0F0F0;
	background: -webkit-linear-gradient(top, #4D90FE, #4787ED);
	background: -moz-linear-gradient(top, #4D90FE, #4787ED);
	background: -o-linear-gradient(top, #4D90FE, #4787ED);
	background: -ms-linear-gradient(top, rgba(77,144,254,1), rgba(71,135,237,1));
}
.SearchResult .avl:hover .p:hover {
	background-color: #357AE8;
	background: -webkit-linear-gradient(top, #4D90FE, #357AE8);
	background: -moz-linear-gradient(top, #4D90FE, #357AE8);
	background: -o-linear-gradient(top, #4D90FE, #357AE8);
	background: -ms-linear-gradient(top, rgba(77,144,254,1), rgba(53,122,232,1));
}
.SearchResult .avl:hover .journey .jt {
	background-color: #F9F300;
}

.SearchResult .SelectedTrip .journey .jt {
	background-color: #FFFFCC;
}
.SearchResult .ak .AKname { display: inline-block; //display: inline; width: 95px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}
.SearchResult .ak .AKname:after {
	background: -webkit-linear-gradient(left, rgba(255,255,255,0), rgba(255,255,255,1));
	background: -moz-linear-gradient(left, rgba(255,255,255,0), rgba(255,255,255,1));
	background: -o-linear-gradient(left, rgba(255,255,255,0), rgba(255,255,255,1));
	background: -ms-linear-gradient(left, rgba(255,255,255,0), rgba(255,255,255,1));
	position: absolute;
	content: "";
	height: 100%;
	top:0;
	right:5px;
	width: 20px;
}
.SearchResult .SelectedTrip div.AKname:after {
	background: none;
}
.SearchResult .avl:hover div.AKname:after {
	background: none;
}
.SearchResult .moreInfo .closeInfo { 
	position: absolute;
	background-color: #FFFFCC;
	width: 22px;
	height: 22px;
	right: -22px;
	top: -1px;
   	border-bottom: 1px solid #BFBFBF;
    border-right: 1px solid #D6D6D6;
    border-top: 1px solid #E9E9E8;
    box-shadow: 1px 1px 2px #F0F0F0;
	cursor: pointer;
}
.SearchResult .moreInfo .closeInfo .cross {
	position: absolute;
	height: 8px;
	width: 8px;
	overflow: hidden;
	left: 7px;
	top: 7px;
	background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAgAAAAICAYAAADED76LAAAALUlEQVR42mNYtWLmfxBmQANwcRgDWRGGGLIANg1YFTHgspMo3Tjtx+pIQt4EAAwMdJHQW/g9AAAAAElFTkSuQmCC") no-repeat scroll 0 0 transparent;
}

.SearchResult .secondSelected {border-top: 1px solid #F9F300; position: relative; }
.SearchResult .routeHeader { font-size: 140%; padding: 10px; }
.SearchResult .secondRoute {position: relative; }
.SearchResult .tripsCount { position: absolute; right: 10px; top: 15px; color: #797979; font-size: 90%; }
.SearchResult .PriceBlock { padding: 5px 10px; position: relative; text-align: right; }
.SearchResult .PriceBlock * {vertical-align: middle;}
.SearchResult .PriceBlock .buttonPrice, table.Prefered .buttonPrice {
	cursor: pointer;
	font-size: 110%;
	font-weight: bold;
	padding: 5px;
	margin-left: 10px;
	display: inline-block; //display: inline;
	color: white;
	background-color: #D14836;
	border: 1px solid #D14836;
	-webkit-border-radius: 2px;
	   -moz-border-radius: 2px;
			border-radius: 2px;
	-webkit-box-shadow: 2px 2px 2px #F0F0F0;
	   -moz-box-shadow: 2px 2px 2px #F0F0F0;
			box-shadow: 2px 2px 2px #F0F0F0;
}
.SearchResult .fadeSelection { position: absolute; top:40px; right: 0; bottom: 0; left: 0; background-color: white; opacity: 0.5; filter: alpha(opacity=50); z-index: 1;}
.ShowResult { display: inline-block; //display: inline; margin: 0px 10px 15px; color: #1155CC; border-bottom: 1px dashed #1155CC; cursor: pointer;}

#layout_result .p_link { color: blue; border-bottom: 1px dashed blue; cursor: pointer;}
.CurrencyBlock { padding-bottom: 15px; text-align: right;}
#Matrix { margin: 20px 0 10px 5px; font-size: 93%; }
#Matrix table td { text-align: center; padding: 5px; border: 1px solid #EBEBEB;}
#Matrix table td.name { border: 0px none; width: 75px; text-align: left;}
#Matrix table td div.p_link { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
#Matrix table td .ak_logo { width: 27px; height: 27px; margin: 3px auto;}
#Matrix table td.choose div {width: 45px; }
#Matrix table .airlines { font-size: 91%; }
#Matrix table .airlines td { padding: 5px 0px; vertical-align: top; }
#Matrix .hover, #Matrix .hover td { background-color: #F2F0D8 !important;}
#Matrix img {border: 1px solid transparent;}
#Matrix .hover img, #Matrix .selected img { border: 1px solid #BFBFBF; }
#Matrix .airline .p_link { width: 55px; border: 0px none; text-decoration: underline; text-align: center; }
#Matrix .selected { background-color: #FFFFCC;}
#Matrix .MatrixHeader { margin: 0 0 5px 85px; }
#Matrix .VariantsCount { display: inline-block; //display: inline;}
#Matrix .MatrixHeader .nav { float: right; padding-right: 5px;}


.warn { background: #FFE958; }
.ticket {
	position: relative;
	background-color: #fbfbfb;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	-khtml-border-radius: 10px;
	border-radius: 10px;
	-moz-box-shadow: 1px 2px 8px rgba(0, 0, 0, 0.3);
	-webkit-box-shadow: 1px 2px 8px rgba(0, 0, 0, 0.3);
	-khtml-box-shadow: 1px 2px 8px rgba(0, 0, 0, 0.3);
	box-shadow: 1px 2px 8px rgba(0, 0, 0, 0.3);
}
.ticket>*:first-child {
	-moz-border-radius: 10px 10px 0 0;
	-webkit-border-top-left-radius: 10px;
	-webkit-border-top-right-radius: 10px;
	-webkit-border-radius: 10px 10px 0 0;
	-khtml-border-radius: 10px 10px 0 0;
	border-radius: 10px 10px 0 0;
}
.ticket>*:last-child {
	-moz-border-radius: 0 0 10px 10px;
	-webkit-border-bottom-left-radius: 10px;
	-webkit-border-bottom-right-radius: 10px;
	-webkit-border-radius: 0 0 10px 10px;
	-khtml-border-radius: 0 0 10px 10px;
	border-radius: 0 0 10px 10px;
}
.ticket .akPlate { font-weight: bold; font-size: 140%; line-height: 2.1em; }
.ticket .akPlate .logo { width: 392px; background-position: 117px center !important; }
.ticket .akPlate * { vertical-align: middle; }
.ticket .akPlate .stars { display: inline-block; height: 23px; width: 23px; background: red; }
.ticket .akPlate, .ticket .direction { padding: 0 10px; }
.ticket .dashedBorder { position: relative; height: 2px; margin: -1px 0; background: url('../img/dashes-h.png') repeat-x center; }
.ticket .direction {
	padding-top: 10px; padding-bottom: 10px;
	/* @TODO Градиент картнкой для старых браузеров */
	background: -webkit-gradient(linear, left top, left bottom, from(#fbfbfb), to(#f4f4f4));
	background: -webkit-linear-gradient(top, #fbfbfb, #f4f4f4);
	background: -moz-linear-gradient(top, #fbfbfb, #f4f4f4);
	background: -o-linear-gradient(top, #fbfbfb, #f4f4f4);
	background: -ms-linear-gradient(top, #fbfbfb, #f4f4f4);
}
.ticket .trip { margin-top: 1em; }
.ticket .trip:first-child { margin-top: 0; }
.ticket .directionTitle { position: relative; }
.ticket .directionTitle span.date, .ticket .trip:first-child .directionTitle span.from, .ticket .trip.last .directionTitle span.to { font-weight: bold; font-size: 140%; }
.ticket .trip.last { margin-bottom: 1em; }
.ticket .directionBody { margin: 0.4em 0; }
.ticket .directionBody table { table-layout: fixed; width: 100%; border-collapse: collapse; }
.ticket .directionBody table th, .ticket .directionBody table td { padding: 0; text-align: left; vertical-align: baseline; }
.ticket .directionBody table th { font-size: 70%; font-weight: normal; }
.ticket .directionBody table col.place { width: 20.5%; }
.ticket .directionBody table col.departure { width: 7%; }
.ticket .directionBody table col.arrival { width: 7%; }
.ticket .directionBody table col.flightNumber { width: 11%; }
.ticket .directionBody table col.ak { width: 15%; }
.ticket .directionBody table col.cs { width: 8%; }
.ticket .directionBody table col.plane { width: 13%; }
.ticket .directionBody .time, .ticket .directionBody .flightNumber { font-weight: bold; font-size: 110%; }
.ticket .directionBody .airport, .ticket .directionBody .ak, .ticket .directionBody .cs, .ticket .directionBody .plane { font-size: 80%; }
.ticket .directionBody .plane { white-space: nowrap; }
.ticket .directionBody .plane div { position: relative; width: 80px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}
.ticket .directionBody .ak span.warn { display: inline-block; padding: 0.2em 0.5em; /*margin: 0 0 -0.2em -0.5em; */ }
.ticket .duration span { display: inline-block; padding-right: 1em; border-top: 1px solid #BFC7C9; padding-top: 0.2em; font-size: 80%; }
.ticket .change { color: #C94B00; margin: 1em 0; }
.ticket .stop { color: #C94B00; font-size: 80%; }
.ticket .baggage { font-size: 80%; }
.ticket .baggage span { font-weight: bold; }
.ticket .visaInfo { font-size: 80%; }
.ticket .visaInfo .select { position: relative; display: inline-block; }
.ticket .visaInfo select { z-index: 1; position: absolute; top: 0; bottom: 0; left: 0; width: 100%; font-size: 100%; line-height: 40px; opacity: 0; border: none; cursor: pointer; }
.ticket .passengers {
	position: relative;
	background-color: #CCCECE;
	-webkit-border-top-left-radius: 10px;
	-webkit-border-top-right-radius: 10px;
	-webkit-border-radius: 10px 10px 0 0;
	-khtml-border-radius: 10px 10px 0 0;
	-moz-border-radius: 10px 10px 0 0;
	border-radius: 10px 10px 0 0;
}
.ticket .passengers .passenger {
	position: relative; padding: 15px 40px;
	text-transform: capitalize;
	background-color: #CCCECE;
	-webkit-border-top-left-radius: 10px;
	-webkit-border-top-right-radius: 10px;
	-webkit-border-radius: 10px 10px 0 0;
	-khtml-border-radius: 10px 10px 0 0;
	-moz-border-radius: 10px 10px 0 0;
	border-radius: 10px 10px 0 0;
	-moz-box-shadow: 0 -5px 5px #818282;
	-webkit-box-shadow: 0 -5px 5px #818282;
	-khtml-box-shadow: 0 -5px 5px #818282;
	box-shadow: 0 -5px 5px #818282;
}
.ticket .passengers table { border-collapse: collapse; width: 100%; table-layout: fixed; }
.ticket .passengers table th, .ticket .passengers table td { padding: 0; text-align: left; font-weight: normal; vertical-align: top; }
.ticket .passengers table th { font-size: 70%; }
.ticket .passengers table .passanger {  }
.ticket .passengers table .ticketNumber { width: 17%; }
.ticket .passengers table .ticketPrint { width: 20%; }
.ticket .passengers table .ticketPrint iframe { position: absolute; left: -10000px; width:1px; height: 1px; visibility: hidden;}
.ticket .passengers table .ticketPrint div { display: inline-block; cursor: pointer; white-space: nowrap; }
.ticket .passengers table .ticketPrint img { margin-bottom: -4px;}
.ticket .passengers table .ticketPrint a {display: inline-block; font-size: 90%; padding-left: 5px; }
.ticket .passengers table .status { width: 14%; }
.ticket .passengers table .operation { width: 17%;  }
.ticket .passengers table .applicationStatus { width: 37%;  }
.ticket .passengers table .applicationStatus .payTo {font-size: 80%; color: gray; text-transform: none !important;}
.ticket .passengers .passenger .operation { text-transform: none; }
.ticket .passengers table td.passenger { text-transform: capitalize; }
.ticket .passengers .passenger:first-child {
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	-khtml-box-shadow: none;
	box-shadow: none;
}


#layout_passengersForm { margin-top: 1em; margin-bottom: 1em; margin-right: -22px; }
#passengersForm { }
#passengersTable { table-layout: fixed; width: 100%; }
#passengersTable col.gender { width: 33px; }
#passengersTable col.lastName {  }
#passengersTable col.firstName {  }
#passengersTable col.birthDate { width: 95px; }
#passengersTable col.passCountry { width: 120px; }
#passengersTable col.passNumber { width: 120px; }
#passengersTable col.passExpDate { width: 110px; }
#passengersTable col.bonusCard { width: 160px; }
#passengersTable col.delete { width: 25px; }
#passengersTable th { border-bottom: 1px solid #C0C0C0; font-size: 60%; padding-bottom: 0.2em; font-weight: normal; text-transform: uppercase; }
#passengersTable th:last-child, #passengersTable td:last-child { border: none; }
#passengersTable tbody td { border: 1px solid #C0C0C0; vertical-align: middle; }
#passengersTable td:first-child, #passengersTable td:last-child { text-align: center; vertical-align: middle; }
#passengersTable td:first-child { border-left: none; }
#passengersTable td .tw-field { display: block; margin: -1px; }
#passengersTable td .tw-field input { width: 100%; }
#passengersTable td.passCountry { vertical-align: middle; }
#passengersTable td .passCountry { white-space: nowrap; overflow: hidden; padding: 5px 5px; }
#passengersTable td .passCountry .dashed {  }
#passengersTable td .passCountry select { z-index: 5; position: absolute; top: 0; left: 0; width: 100%; height: 27px; line-height: 27px; border: none; opacity: 0; font-size: 100%; }
#passengersTable span.remove { position: relative; display: inline-block; width: 22px; height: 22px; font-size: 22px; line-height: 22px; color: #AAA899; cursor: pointer; text-align: center; }
#passengersTable span.remove:hover { color: #498AF3; }
#passengersTable td.plus { font-size: 22px; vertical-align: middle; text-align: center; }
#passengersTable td.addRow { }
div.addRow {
	border-top: 1px solid #D9D9D9;
	background: #E9E9E9; border-radius: 0 0 5px 5px;
	margin: -1px 0 0 -33px ; padding: 5px 5px 5px 33px;
}
div.addRow button {
	position: relative;
	padding: 4px 5px;
	border: 1px solid #DADADA; border-radius: 2px;
	background: #F8F8F8;
	background: -webkit-linear-gradient(top , #F8F8F8, #F1F1F1);
	background:    -moz-linear-gradient(top , #F8F8F8, #F1F1F1);
	background:     -ms-linear-gradient(top , #F8F8F8, #F1F1F1);
	background:      -o-linear-gradient(top , #F8F8F8, #F1F1F1);
	background:         linear-gradient(top , #F8F8F8, #F1F1F1);
	-webkit-transition: all 0.218s ease 0s;
	   -moz-transition: all 0.218s ease 0s;
	    -ms-transition: all 0.218s ease 0s;
	     -o-transition: all 0.218s ease 0s;
	        transition: all 0.218s ease 0s;
	margin-right: 7px;
}
div.addRow button:hover, div.addRow button:focus { outline: none !important; border-color: #C6C6C6; box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); }
div.addRow button:active { outline: none !important; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) inset; }
div.addRow span.child { margin: 0 7px; }
div.addRow button span { font-size: 90%; color: green; }
div.addRow button.load { padding-right: 26px; }
div.addRow button.load span { position: absolute; top: 0; bottom: 0; right: 5px; margin: auto 0; width: 16px; height: 16px; background: url(../img/smallLoader.gif) no-repeat center; -moz-transform: translateX(-5px); }

#layout_passengersForm button[type="submit"] { margin: 1em 0; }

button[type="submit"] {
	padding: 4px 5px;
	border: 1px solid #22B51D; border-radius: 2px;
	color: white;
	background: #0EE807;
	background: -webkit-linear-gradient(top , #5EEB47, #71CE5C);
	background:    -moz-linear-gradient(top , #5EEB47, #71CE5C);
	background:     -ms-linear-gradient(top , #5EEB47, #71CE5C);
	background:      -o-linear-gradient(top , #5EEB47, #71CE5C);
	background:         linear-gradient(top , #5EEB47, #71CE5C);
	-webkit-transition: all 0.218s ease 0s;
	   -moz-transition: all 0.218s ease 0s;
	    -ms-transition: all 0.218s ease 0s;
	     -o-transition: all 0.218s ease 0s;
	        transition: all 0.218s ease 0s;
	font-size: 120%;
}
button[type="submit"]:hover, button[type="submit"]:focus { outline: none !important; border-color: #3caa3c; box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1); }
button[type="submit"]:active { outline: none !important; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1) inset; }


.genderSelect { text-align: center; height: 27px; margin: 0 !important; }
.genderSelect label, span.gender { z-index: 77; position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; cursor: pointer; display: inline-block; width: 13px; height: 21px; background: url(../img/gender.png) no-repeat; overflow: hidden; }
.genderSelect label.focus { outline: 1px dotted black; }
.genderSelect label.M { left: -14px; }
.genderSelect label.F { right: -14px; }
.genderSelect label.ADT.M { background-position: left top; }
.genderSelect label.ADT.M.checked, span.gender.ADT.M { background-position: left -21px; }
.genderSelect label.ADT.F { background-position: -13px top; }
.genderSelect label.ADT.F.checked, span.gender.ADT.F { background-position: -13px -21px; }
.genderSelect label.CNN.M { background-position: -26px top; }
.genderSelect label.CNN.M.checked, span.gender.CNN.M { background-position: -26px -21px; }
.genderSelect label.CNN.F { background-position: -39px top; }
.genderSelect label.CNN.F.checked, span.gender.CNN.F { background-position: -39px -21px; }
.genderSelect label.INF.M { background-position: -52px top; }
.genderSelect label.INF.M.checked, span.gender.INF.M { background-position: -52px -21px; }
.genderSelect label.INF.F { background-position: -65px top; }
.genderSelect label.INF.F.checked, span.gender.INF.F { background-position: -65px -21px; }
.genderSelect input[type="radio"] { position: absolute; left: -40px; }

.bayer label { display: block; margin: 0.5em 0 0.2em; font-size: 80%; text-transform: uppercase; }
.bayer .email, #layout_payment .phone { display: inline-block; }
.bayer .phone>span { display: inline-block; width: 0.8em; margin: -1px 0.2em 0 -1em; text-align: right; font-size: 140%; vertical-align: middle; }
.bayer .phone .tw-field { width: 176px; }
.bayer .email { margin-left: 1.5em; margin-right: 1.5em; }
.bayer .email .tw-field { width: 15em; }
.bayer input { width: 100%; }

.pmtVrnts { margin: 0.5em 0 1.5em; }
.pmtVrnts ul { margin: 0.5em 0 1em; padding: 0; list-style: none; }
.pmtVrnts li { margin: 0.2em 0; padding: 0; }
.pmtVrnts li span.link { position: relative; }
.pmtVrnts li span.link:after { content: ''; position: absolute; top: -10px; bottom: -10px; margin: auto 0; right: -20px; width: 17px; height: 17px; background: url(/images/QuestionIcon.png) no-repeat center right; }
.pmtVrnts input { margin-right: 0.7em; }

table.paymentTable th { text-align: right; font-size: 60%; font-weight: normal; text-transform: uppercase; padding-bottom: 5px; }
table.paymentTable td { text-align: right; font-size: 120%; }
table.paymentTable td.sign { padding: 0 15px; }
table.paymentTable tbody tr:last-child td { padding-bottom: 5px; }
table.paymentTable td:first-child { text-align: left; font-size: 100%; text-transform: lowercase; width: 7em; }
table.paymentTable tbody tr:last-child td { border-bottom: 1px solid #CCC; }
table.paymentTable thead th.fareRules, table.paymentTable td.fareRules { text-align: left; padding-left: 40px; }
table.paymentTable tbody tr td.fareRules { border-bottom: none; font-size: 100%; }

.alphaNote { font-size: 70%; margin: 0.5em 0; }
.amount { font-size: 130%; font-weight: bold; margin: 0.5em 0 0; }
.transactions { margin: 0.5em 0 1em; }
.paymentNote { margin: 1em 0 0; }
.paymentNote .paymentAttention { font-size: 130%; }

#fareRules { height: 530px; }
#fareRules.directions1 div.rules div.full { height: 240px; }
#fareRules div.title { font-size: 140%; font-weight: bold; margin: 1em 0 0.5em; }
#fareRules div.content { padding: 20px; }
#fareRules div.content>*:first-child { margin-top: 0; }
#fareRules div.title span.weekday { font-weight: normal; }
#fareRules div.rules div.short { margin: 1em 0 0.3em; }
#fareRules div.rules .allow, #fareRules div.rules .forbid { font-weight: bold; }
#fareRules div.rules .allow { color: green; }
#fareRules div.rules .forbid { color: red; }
#fareRules div.rules div.note { font-size: 80%; }
#fareRules div.rules .warn { padding: 0.1em 0.4em; margin-left: -0.8em; }
#fareRules div.rules div.subTitle { margin: 0.5em 0; font-weight: bold; }
#fareRules div.rules div.full { white-space: pre; position: relative; font-size: 80%; border: 1px solid #CCC; background: #EAEAEA; height: 120px; overflow: auto; }
#fareRules div.rules div.full>div { padding: 10px; }

#layout_order { font-size: 120%; margin: 1em 0; }


.block_creditCard { margin: 1em 0; position: relative; max-width: 794px; }
.creditCard { z-index: 2; position: relative; display: inline-block; vertical-align: top; width: 388px; height: 236px; padding: 2px; background: white url("../img/creditCard.png") no-repeat left top; }
.creditCard.reverse { z-index: 1; position: absolute; right: 0; background-position: right top; }
.creditCard .visa { position: absolute; top: 18px; right: 24px; height: 26px; width: 79px; background: url(../img/visa.png) no-repeat center; }
.creditCard .masterCard { position: absolute; top: 10px; right: 113px; height: 36px; width: 60px; background: url(../img/masterCard.png) no-repeat center; }
.creditCard table { table-layout: fixed; width: 100%; margin: 0 auto; }
.creditCard td { padding: 0 5px; vertical-align: middle; }
.creditCard label { display: inline-block; text-transform: uppercase; font-size: 60%; line-height: normal; }
.creditCard input[type="text"], .creditCard input[type="password"] { height: 28px; padding: 3px 8px; text-align: center; width: 100%; }
.creditCard .cardNumber, .creditCard .expDate, .creditCard .holderName { position: absolute; line-height: 28px; left: 10px; right: 10px; }
.creditCard .holderName input { text-align: left;}
.creditCard .cardNumber { bottom: 134px; }
.creditCard .cardNumber table { width: auto; table-layout: auto; margin: 0 -5px; }
.creditCard .expDate { bottom: 72px; }
.creditCard .expDate td.expMonth { text-align: right; }
.creditCard .expDate td.expMonthLabel { text-align: right; }
.creditCard .expDate td.expMonthLabel label { width: 42px; text-align: left; }
.creditCard .expDate td.expMonth label { display: inline-block; line-height: 10px; vertical-align: middle; text-align: left; margin: 0 10px 0 0; }
.creditCard .expDate td.expMonth input, .creditCard .expDate td.expYear input { width: 43px; text-align: left; }
.creditCard .holderName { bottom: 10px; }
.creditCard .holderName .tw-field, .creditCard .holderName input { width: 100%; }
.creditCard .cvv { width: 64px; position: absolute; line-height: 28px; bottom: 126px; right: 22px; }
.creditCard .cvv label { margin-bottom: 5px; }
.creditCard .save { position: absolute; left: 21px; bottom: 15px; }
.creditCard .save label { margin-left: 1em; }
.filledCard .creditCard .holderName { left: 21px; right: 21px; }
.filledCard .creditCard .cardNumber table { margin: 0 auto; }
.filledCard .creditCard .save { display: none; }

#cardAuthorization { padding: 20px 35px; max-width: 635px; }
#cardAuthorization .title1 { font-size: 140%; margin-bottom: 0.2em; }
#cardAuthorization .title2 { font-weight: bold; margin-top: 0.8em; }
#cardAuthorization .title3 { font-size: 80%; font-weight: bold; }
#cardAuthorization .note { font-size: 80%; }
#cardAuthorization .note.warn { display: inline-block; padding: 0.2em 0.5em; margin-left: -0.5em; }
#cardAuthorization .code { display: inline-block; }
#cardAuthorization .pic { height: 148px; margin: -22px 30px 0 0; background: url(../img/cardAuthorization.png) no-repeat; }
#cardAuthorization .pic.phone { width: 190px; background-position: left top; }
#cardAuthorization .pic.ebank { width: 177px; background-position: -190px top; }
#cardAuthorization .pic.card  { width: 177px; background-position: -367px top; }
#cardAuthorization #form_cardAuthorization { display: inline-block; background-color: #ADD260; padding: 7px 35px 7px 7px; }
#cardAuthorization table td { vertical-align: top; }
#cardAuthorization table.form { margin: 2px 0; }
#cardAuthorization table td.error { vertical-align: middle; padding-left: 20px; }
#cardAuthorization table td.error div { display: inline-block; background: #b80000; padding: 3px 5px; color: white; font-size: 80%; white-space: nowrap; }
#cardAuthorization table.picture { margin: 1em 0; }
#cardAuthorization .tw-field input { height: 30px; padding: 5px 10px; width: 4em; }
#cardAuthorization .tw-field { margin-right: 1ex; }
#cardAuthorization button { margin-top: 0; }