.booking-new {
	
}

.booking-new-groupheader {
	margin-right: 32px;
}

#booking-page .booking-new-search {
	position: relative;
	padding-right: 0;
}

#booking-page .booking-new-search .attendance-inline-right {
	position: fixed;
	top: 50px;
	right: 15px;
	width: 165px;
	z-index: 30;
}

#booking-page .booking-new-search .attendance-inline-right .btn {
	width: 100%;
	height: 32px;
	padding: 5px 10px;
	white-space: nowrap;
	font-size: 13px;
}

#booking-page .booking-new-search .attendance-inline-right .attendance-btn-checkout {
	border: 2px solid #e53935;
	border-radius: 4px;
	background-color: #ffe9e9;
	color: #c62828;
}

#booking-page .booking-new-search .attendance-inline-right .attendance-btn-not-checked {
	border: 2px solid #c99700;
	border-radius: 4px;
	background-color: #fff7d6;
	color: #8a6d00;
}

.booking-new-search {
	background-color: #ccc;
	padding: 8px 0;
	border-bottom: 1px solid #bbb;
}

.booking-new-search .form-control {
	box-shadow: none;
	border-color: #aaa;
}

.trip-fast-search *:focus{
    outline: none;
}
.trip-fast-search-bar {
    display: flex;
    flex-direction: row;
    overflow-x: scroll;
    background: #f4f4f4;
    border-bottom: 2px solid #ccc;
}
.trip-fast-search-bar .filter-tag{
    min-width: 200px;
    width: max-content;
    border: 1px solid #ccc;
    background: white;
    color:#0099ff;
    border-radius: 5px;
    margin: 8px;
    padding: 6px;
    box-shadow: 1px 1px 1px #ccc;
    -moz-box-shadow: 1px 1px 1px #ccc;
    -webkit-box-shadow: 1px 1px 1px #ccc;
}
.trip-fast-search-bar .filter-tag.active {
    background: #ffc107;
    outline: none;
}
.trip-fast-search-bar .filter-tag:focus {
    outline: none;
}
.trip-fast-search.config-btn{
    padding: 0 6px;
    border: 1px solid #4cae4c;
    border-radius: 5px;
    float: right;
    margin-right: 15px;
}

.trip-fast-search.config-btn:focus{
    outline: none;
}
.trip-fast-search.modal-popup{
    width: 525px;
    position: absolute;
    right: 16px;
    top: 66px;
    background-color: white;
    border: 1px solid #777;
    border-radius: 5px;
    z-index: 1000;
    box-shadow: 5px 5px 5px #666;
    -moz-box-shadow: 5px 5px 5px #666;
    -webkit-box-shadow: 5px 5px 5px #666;
}

.trip-fast-search.modal-popup .btn-close{
    position: absolute;
    right: -7px;
    top: -7px;
    color: #0099ff;
    border: 1px solid #777;
    border-radius: 50%;
}
.trip-fast-search.modal-popup .btn-close:focus{
   outline: none;
}
.trip-fast-search.modal-popup .header-title{
    background-color: #3071a9;
    font-weight: bold;
    text-align: center;
    color: white;
    padding: 8px;
}

.trip-fast-search.modal-popup .body{
    background-color: white;
    padding: 12px;
    border-radius: 5px;
}
.trip-fast-search.modal-popup .body .title{
    color: #3071a9;
    text-align: center;
    margin-bottom: 12px;
}
.trip-fast-search.modal-popup .body .content{
    border:1px solid #777;
}
.trip-fast-search.modal-popup .body .content hr{
    margin:0 12px;
}
.trip-fast-search.modal-popup .body .content .header{
    background: #ccc;
    color:#3071a9;
    display: flex;
    min-width: 350px;
}
.trip-fast-search.modal-popup .body .content .header div{
    flex-basis: 25%;
    text-align: center;
    font-weight: bold;
}
.trip-fast-search.modal-popup .body .content .item-list{
    max-height: 195px;
    overflow-y: scroll;
}
.trip-fast-search.modal-popup .body .content .item-list .item{
    display: flex;
    align-items: center;
    padding: 8px 0;
}
.trip-fast-search.modal-popup .body .content .item-list .empty-list{
    text-align: center;
    padding: 8px 0;
}
.trip-fast-search.modal-popup .body .content .item-list .item div{
    flex-basis: 25%;
    text-align: center;
}
.trip-fast-search.modal-popup .body .content .edit-btn{
    color: blue;
    border: 1px solid blue;
}
.trip-fast-search.modal-popup .body .content .delete-btn{
    color: red;
    border: 1px solid red;
}
.trip-fast-search.modal-popup .body .form-edit{
    margin-top: 8px;
}
.trip-fast-search.modal-popup .body .form-edit .form-group{
    margin-bottom: 8px;
}
.trip-fast-search.modal-popup input{
    height: 25px!important;
    font-size: 13px!important;
    border-color: #aaa!important;
}

.trip-fast-search.modal-popup .required .show-view::after{
    color: red!important;
    content: '*';
    position: absolute;
    left: 95px;
    top: 3px;
}

/* .location-suggestion .show-view .content {
    font-size: 13px;
    height: 27px;
} */
.btn-reverse {
	text-align: center;
}

.booking-new-filter {
	background-color: #ccc;
	padding: 8px 0;
}

.booking-new-filter .form-group {
	margin-bottom: 0;
}

.booking-new-filter .form-control {
	box-shadow: none;
	border-color: #aaa;
}

.booking-new-filter .fix-left {
	padding-left: 0;
}

.booking-new-filter .sort {
	/*width: 25%; 
	float: right;
	padding: 6px 0;*/
	padding: 6px 0;
	text-align: right;
	font-weight: bold;
}

.booking-new-filter .sort .sort-item {
	width: 25%; 
	display: inline;
	position: relative;
	margin-right: 15px;
}

.booking-new-filter .advanced-filter{
    color :#428bca;
    font-weight: bold;
    padding: 6px 0;
}

.booking-new-filter .advanced-filter-popup{
    position: absolute;
    top: 26px;
    left: 0;
    background: white;
    /* width: 230px; */
    box-shadow: 0px 6px 12px #aaaaaa;
    border: 1px solid rgb(0 0 0 / 25%);
    border-radius: 4px;
    padding: 12px;
}

.booking-new-filter .advanced-filter-popup .star-line{
    display: flex;
    border-left: solid 4px #428bca;
    padding-left: 5px;
}

.booking-new-filter .advanced-filter-popup .star-line .ui-slider {
    height: 5px;  
}
.booking-new-filter .advanced-filter-popup .star-line .ui-slider-handle {
    height: 0.9em;
    width: 0.9em;
    border-radius: 50%;
    margin-left: -0.45em;
    margin-top: -0.1em;
}
.booking-new-filter .advanced-filter-popup .star-line .ui-widget-header{
    background: #428bca;
}

.booking-new-filter .advanced-filter-popup .ratings-count{
    padding: 4px 5px;
}

.booking-new-filter .sort .sort-item > span {
	color: #000;
	font-weight: bold;
}

.booking-container {
	margin-bottom: 500px;
	padding-top: 104px;
	position: relative;
	padding-bottom: 50px;
}

.booking-container-has-quick-search-bar{
    margin-bottom: 500px;
	padding-top: 187px;
	position: relative;
	padding-bottom: 50px;
}

.booking-new-groupheader {
	position: fixed;
	top: 43px; 
	z-index: 5;
	width: 97.8%;
}

.booking-new-results {
	
}

.booking-new-row {
	position: relative;
	border-bottom: 1px solid #ccc;
}

.booking-new-row .virtual-row {
	display: block;
	height: 140px;
	margin-top: -140px;
	visibility: hidden;
}

.booking-new-column {
	padding-top: 10px;
	padding-bottom: 10px;
}

.booking-new-results .route-row {
	background-color: #f4f4f4;
}

.booking-new-results .route-row .table-time {
	width: 100%;
}

.booking-new-results .route-row .table-time td {
	padding-bottom: 5px;
	word-break: break-all;
	border: none !important;
}

.booking-new-results .route-row .col1 {
	width: 30%;
	font-weight: bold;
	font-size: 1.2em;
}

.booking-new-results .route-row .col2 {
	width: 25%;
	position: relative;
}

/*.booking-new-results .col2 .distance {
	position: relative;
	width: 100%;
	height: 100%;
}*/

.booking-new-results .route-row .col2 .abs {
	position: absolute;
	top: -6px;
	left: -5px;
}

.booking-new-results .route-row .col3 {
	width: 45%;
	font-weight: bold;
	font-size: 1.2em;
}

.booking-new-results .route-row .col4 {
	width: 55%;
}

.booking-new-results .route-row .col5 {
	width: 45%;
}

.booking-new-results .route-row a {
	color: #0099ff;
	cursor: pointer;
}

.booking-new-results .route-row .point-list-cover {
	position: relative;
}

.booking-new-results .route-row .point-list {
	width: 360px;
	position: absolute;
	z-index: 1;
	top: 20px;
	left: 0;
	border: 1px solid #3388aa;
}

.booking-new-results .route-row .point-list .panel {
	background-color: #3071a9;
  	padding: 5px 10px;
  	color: #fff;
  	border-radius: 0;
  	margin-bottom: 0;
}

.booking-new-results .route-row .point-list table {
	width: 100%;
  	background-color: #fff;
}

.booking-new-results .route-row .point-list table tr {
	border-bottom: 1px solid #ddd;
}

.booking-new-results .route-row .point-list table tr:last-child {
	border-bottom: none;
}

.booking-new-results .route-row .point-list table td {

}

.booking-new-results .route-row .point-list table td.name {
	padding: 5px 10px;
	width: 80%;
	word-break: break-all;
}

.booking-new-results .route-row .point-list table td.time {
	padding: 5px 10px 5px 0;
	width: 20%;
	text-align: right;
}

.booking-new-results .route-row .comp-desc-cover {
	position: relative;
}

.booking-new-results .route-row .comp-desc {
	position: absolute;
	z-index: 1;
	top: 20px;
	left: -200px;
	width: 560px;
	border: 1px solid #3388aa;
}

.booking-new-results .route-row .comp-desc .panel {
	background-color: #d9edf7;
	color: #31708f;
	padding: 10px;
	text-align: center;
	border-radius: 0;
	margin-bottom: 0;
	border-bottom: 1px solid #d9edf7;
	font-size: 1.2em;
}

.booking-new-results .route-row .comp-desc .body {
	width: 100%;
	max-height: 320px;
	overflow-y: scroll;
	padding: 10px;
	background-color: #fff;
}

.booking-new-results .route-row .list-office-info-cover {
	position: relative;
}

.booking-new-results .route-row .list-office-info {
	position: absolute;
	opacity: 1;
	left: 0;
	top: 20px;
	width: 600px;
	background-color: #cccccc;
	border-radius: 0;
	padding: 0 5px;
	color: #000000;
	z-index: 1;
	margin: 0;
}

.booking-new-results .route-row .list-office-info table {
	font-size: 12px;
	margin-bottom: 5px;
}

.booking-new-results .route-row .list-office-info table td p:last-child {
	margin: 0;
}

.booking-new-results .route-row p.over-booking-time {
	color: red;
	font-weight: bold;
}

.booking-new-results .route-row .online-no-seat-map {
	background-color: #6622bb;
	border: 1px solid #660099 !important;
}

.booking-new-results .route-row .online-no-seat-map:hover {
	background-color: #6600aa !important;
	border: 1px solid #660099 !important;
}

/*.booking-new-results .route-row .online-no-seat-map:active {
	background-color: #6600aa !important;
	border: 1px solid #660099 !important;
}*/

.booking-new-results .route-row .online-no-seat-map:focus {
	background-color: #6600aa !important;
	border: 1px solid #660099 !important;
}


.booking-new-results .route-row .bus-operator-note {

}

.booking-new-results .route-row .bus-operator-note .mini-content {
	height: 2.8em;
	overflow: hidden;
	/*text-overflow: ellipsis;
	white-space: nowrap;*/
}

.tab_schedule{
	position: relative;
	background: #f4f4f4;
	margin-top: 10px;
	margin-bottom: 10px;
	padding-bottom: 10px;
}

.tab_schedule .bus-content .nav-tabs{
	text-transform: uppercase;
	border-bottom: 1px solid #ddd;
	margin-left: 0;
}
.tab_schedule .bus-content .nav-tabs li:hover{
	border-color: transparent;
    border: 0;
    border-top: 4px solid #1867bc;
}
.tab_schedule .bus-content .nav-tabs li{
	text-transform: uppercase;
	font-size: 15px;
	font-weight: 500;
	border-radius: 0;
	padding-left: 0;
	padding-right: 0;
	width: inherit;
	border-radius: 5px 5px 0 0;
	color: #8c8c8c;
	font-weight: bold;
	border-top: 4px solid transparent;
}
.tab_schedule .bus-content .nav-tabs li.active{
	color: #333;
    cursor: default;
    background-color: #fff;
    border-bottom-color: transparent;
    border-radius: 5px 5px 0 0;
    border-top: 4px solid #1867bc;
}
.tab_schedule .bus-content .nav-tabs li a{
	color: rgb(88, 87, 87);
	margin-right: 0;
}

.tab_schedule .bus-content .btn_close{
	position: absolute;
    right: 5px;
    top: 13px;
	padding: 0;
	padding-right: 20px;
	cursor: pointer;
    font-size: 2em;
}
.tab_schedule .bus-content .tab-content{
	background: #fff;
    border: 1px solid #ddd;
    padding: 20px 20px;
	margin-top: -2px;
	min-height: 120px;
	border-radius: 5px;
}

.booking-new-column .BusQualityRating{
	background: #e31c3d;
	color: #ffffff; 
	display: inline-block;
    padding: 1px 4px;
    border-radius: 3px;
    font-weight: bold;
    margin-right: 5px 7px;
    font-family: 'Lato';
}
/*rating detail*/
.rating-detail.point-tag{
    color:white;
    background-color: #1867BC;
    font-size: large;
    padding:5px 7px;
    vertical-align: sub;
    border-radius: 3px;
}
.rating-detail.count{
    vertical-align: sub;
}
.review-comment.point-tag{
    color:white;
    background-color: #1867BC;
    /* font-size: large; */
    padding:5px;
    /* vertical-align: sub; */
    border-radius: 3px;
}
/*rating*/
.empty-stars:before, .full-stars:before {
    content: "★ ★ ★ ★ ★ ";
}
.ratings {
    position: relative;
    vertical-align: middle;
    display: inline-block;
    color: #ccc;
	overflow: hidden;
}
.full-stars {
    position: absolute;
    left: 0;
    top: 0;
    white-space: nowrap;
    overflow: hidden;
    color: #f8af00;
}

.tab_schedule .bus-content .tab-content .table-customed thead tr th {
	padding-left: 50px;
    padding-right: 50px;
    padding-top: 8px;
    padding-bottom: 8px;
}
.tab_schedule .bus-content .tab-content .table-customed tbody tr td {
	padding-left: 50px;
    padding-right: 50px;
    padding-top: 8px;
	padding-bottom: 8px;
	border-top: none;
}
.tab_schedule .bus-content .tab-content .tab-pane .form-control-vxr{
	padding-right: 24px;
    font-size: 16px;
    padding-top: 0;
    padding-bottom: 0;
    height: 24px;
    margin-bottom: 5px;
    border-bottom: 1px #f0f0f0 solid !important;
    color: #000;
    background-color: transparent;
}
.tab_schedule .form-control-vxr{
	border: none !important;
    box-shadow: none !important;
    border-bottom: 1px #c1c1c1 solid !important;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    -moz-appearance: none;
    background-position: right 50%;
    background-repeat: no-repeat;
    font-weight: bold;
    padding-left: 0;
}
.tab_schedule .bus-content .tab-content .tab-pane .table-banggia tbody tr td{
	border-top: none;
	vertical-align: middle;
}
.tab_schedule .progress{
	overflow: hidden;
	height: 20px;
	border-radius: 4px;
	background-color: #f5f5f5;
	margin-bottom: 20px;
	padding: 0;
	box-shadow: inset 0 1px 2px rgba(0,0,0,.1);
}
.tab_schedule .progress-bar{
    /* background-color: #5cb85c; */
    background-color: #1867BC;
	float: left;
	height: 100%;
}
.tab_schedule .write-reviews{
	display: inline-block;
	width: 100%;
}
.tab_schedule  #danhgia .btn-write{
	border-radius: 5px !important;
	background: #f8af00;
    color: #6d4415;
	font-weight: 500;
	font-size: 14px;
}
.tab_schedule .operator-title{
	font-size: 16px !important;
}
.tab_schedule .comment-list{
	border-top: 1px #0099ff solid;
	border-bottom: 1px #0099ff solid;
	margin: 0;
	padding: 5px 0 0 0;
	list-style: none;
}
.tab_schedule .comment-item {
    display: block;
    padding: 25px 0;
    border-top: 1px dashed #61a0dd;
}
.tab_schedule .comment-list li:first-child{
    border-top: none !important;
}
.tab_schedule .comment-item h6{
	font-size: 16px;
    font-weight: bold;
    display: inline-block;
	width: 100%;
	margin-top: 0;
}
.tab_schedule .rating-rank-list-small{
	margin: 0;
    padding: 0;
    list-style: none;
	width: 138px;
	float: left;
}
.tab_schedule .rating-rank-list-small li{
	line-height: 28px;
	border: none;
	border-bottom: 1px solid #d5d5d5;
	font-size: 12px;
	font-style: italic;
}
.tab_schedule .fl-r{
	float: right;
}
.tab_schedule .comment-item-content .rating{
	margin-bottom: 10px;
}
.tab_schedule .departureDate{
	color: #c2c2c2;
}
.tab_schedule .comment-share{
	width: initial;
    overflow: hidden;
    line-height: 30px;
    float: right;
}
.tab_schedule .social-link{
	display: block;
	width: 25px;
	height: 25px;
	margin: 3px 4px;
	background: url() no-repeat;
}
.tab_schedule .pagination {
    display: inline-block;
    padding-left: 0;
    margin: 20px 0;
	border-radius: 4px;
}
.tab_schedule .btn-close{
	position: absolute !important;
	top: 16px !important;
	right: 20px !important;
}
.tab_schedule .wrapper-pop {
    background: #fff;
    z-index: 999;
    border-radius: 10px;
    height: 100%;
}
.tab_schedule .title-pop {
    line-height: 30px;
    color: #333;
    padding-left: 15px;
    margin-bottom: 35px;
    border-bottom: 1px solid #f0f0f0;
    padding-bottom: 10px;
    padding-top: 10px;
}
.tab_schedule .pop-content {
    padding-left: 15px;
    padding-right: 15px;
}
.tab_schedule .col-left {
    width: 360px;
    float: left;
}
.tab_schedule .col-left .form-control{
	border-radius: 5px;
	margin-bottom: 8px;
}
.tab_schedule .form-nhaxe{
	position: relative;
	width: 320px;
}
.tab_schedule .form-nhaxe p {
    margin-bottom: 0;
    padding-bottom: 0;
    margin-top: 5px;
    color: #848484;
}
.tab_schedule .form-nhaxe textarea {
    font-size: 12px;
    height: 100px !important;
    padding: 14px 10px;
    color: #909090;
    border: 1px solid #f0f0f0;
	border-radius: 5px;
	margin-top: 8px;
}
.tab_schedule .col-right {
    float: left;
    margin-top: 0;
    padding-left: 30px;
    width: 325px;
}
.tab_schedule .pop-option-rate {
    margin-top: 22px;
	position: relative;
	text-align: left;
	
}
.tab_schedule .pop-option-rate p span {
    width: 120px;
    display: inline-block;
	font-size: 13px;
}
.tab_schedule .pop-ckb-confirm{
	margin: 20px 18px;
	height: 60px;
}
.tab_schedule .pop-ckb-confirm p {
    font-size: 15px;
	display: inline-block;
	position: absolute;
	margin-left: 8px;
}
.tab_schedule .btn-danhgia {
    display: block;
    width: 200px;
    margin: 0 auto;
    background-color: #ECA307;
    text-align: center;
    line-height: 35px;
    color: #695F0C !important;
    border-radius: 5px;
}
.tab_schedule .pagination .active a{
    z-index: 2;
    color: #fff;
    background-color: #428bca;
    border-color: #428bca;
	cursor: default;
}


.booking-paging {
	/*width: 100%;*/
	position: absolute;
	bottom: 30px;
	background-color: transparent;
	padding: 5px;
	z-index: 1000;
	display: inline-block;
	left: 50%;
	transform: translate(-50%, 0);
}

.booking-paging .bp-container {
	text-align: center;
}



#booking-page .page-loading {
	position: absolute;
	z-index: 999;
	background-color: #000;
	opacity: 0.2;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
}



@media only screen and (max-width: 992px) {
	.booking-container {
		margin-bottom: 500px;
		padding-top: 126px;
		position: relative;
		padding-bottom: 50px;
	}

	.booking-new-row .virtual-row {
		display: block;
		height: 170px;
		margin-top: -170px;
		visibility: hidden;
	}

	.booking-new-groupheader {
		top: 90px; 
		margin-right: 15px;
	}
}


.has-coupon-label {
	background-color: #66bb6a;
	height: 30px;
	width: 80px;
	position: absolute;
	top: 0;
	right: 0;
}
.has-coupon-label-title {
	font-size: 14px;
	color: #fff;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 20px;
}
.has-coupon-label-arrow {
	width: 0;
	height: 0;
	border-left: 40px solid transparent;
	border-right: 40px solid transparent;
	border-bottom: 10px solid #f4f4f4;
}
