
.flex-b {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.flex-s {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.flex-e {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.flex-c {
    display: flex;
    justify-content: center;
    align-items: center;
}

.flex-col {
    flex-direction: column;
}
.flex-1 {
    flex: 1;
}

.gap16 {
    gap: 16px;
}

.gap8 {
    gap: 8px;
}

.gap32 {
    gap: 32px;
}

.Nowarp {
    white-space: nowrap;
}

.input.formItem {
    width: 100%;
}

.bcBlue {
    background-color: #0e7eb9;
}
.formItem .itemTitle {
    font-size: 16px;
    margin-right: 10px;
    color: #333;
    line-height: 40px;
}

.inputValue {
    width: 100%;
    border: solid 1px #ccc;
    height: 36px;
    border-radius: 6px;
    background-color: #fff;
    padding-left: 10px;
    box-sizing: border-box;
}

.required {
    padding-left: 12px;
    position: relative;
}

.required:before {
    content: '*';
    position: absolute;
    top: 0;
    left: 0;
    color: #f00;
}

.mL16 {
    margin-left: 16px;
}

.mainPublicTable {
    width: 100%;
    overflow-x: auto;
}

.publicTable {
    border: 1px solid #dddddd;
    border-radius: 8px;
}

.publicTable th {
    background: #F1F1F1;
    color: #000;
    font-size: 16px;
    min-height: 28px;
    padding: 4px 8px;
}

.publicTable td {
    font-size: 14px;
    color: #000;
    height: 28px;
    border-bottom: 1px solid #f1f1f1;
    padding: 4px 8px;
    word-break: break-word;
}

.mT18 {
    margin-top: 18px;
}

.mB12 {
    margin-bottom: 12px;
}

.padL36 {
    padding-left: 36px;
}

.mRL16 {
    margin: 0px 16px;
}

.mR12 {
    margin-right: 12px;
}

.mT22 {
    margin-top: 22px;
}

.mR120 {
    margin-right: 120px;
}

.mT12 {
    margin-top: 12px;
}

.mT22 {
    margin-top: 22px;
}

.mT30 {
    margin-top: 30px;
}

.mT40 {
    margin-top: 40px;
}

.mT60 {
    margin-top: 60px;
}

.mT70 {
    margin-top: 70px;
}

.mT75 {
    margin-top: 75px;
}

.mT106 {
    margin-top: 106px;
}

.mA {
    margin: 0 auto;
}

.mB10 {
    margin-bottom: 10px;
}

.mB16 {
    margin-bottom: 16px;
}

.mB20 {
    margin-bottom: 20px;
}

.col000 {
    color: #000;
}

.col666 {
    color: #666;
}

.colfff {
    color: #fff;
}

.sub {
    z-index: 6;
}

.radioUL {
    width: 100%;
    display: flex;
    height: 70px;
    align-items: flex-end;
    justify-content: center;
}

#searchAir .radioUL {
    height: auto;
    justify-content: flex-start;
}

.radioUL li {
    display: flex;
    margin-right: 24px;
    cursor: pointer;
    align-items: center;
}

.radioUL li:last-child {
    margin-right: 0px;
}

.radioUL.colorfff li {
    color: #fff;
}

.radioUL li i {
    position: relative;
    display: inline-block;
    margin-right: 8px;
    width: 16px;
    height: 16px;
    background: url(../images/radio.png) no-repeat center center;
}

.radioUL li.act i {
    background: url(../images/radio_act.png) no-repeat center center;
}

.radioUL.zffsUL li i {
    position: relative;
    display: inline-block;
    margin-right: 8px;
    width: 13px;
    height: 13px;
    background: url(../images/radio_small.png) no-repeat center center;
}

.radioUL.zffsUL li.act i {
    background: url(../images/radio_small_act.png) no-repeat center center;
}

.radioUL.zffsUL li span {
    position: absolute;
    top: -40px;
    left: 16px;
    display: inline-block;
    width: 66px;
    height: 30px;
}

.radioUL.zffsUL li span.bspzf {
    background: url(../images/pay_bspzf.png) no-repeat center center;
}

.radioUL.zffsUL li span.xykzf {
    background: url(../images/pay_xykzf.png) no-repeat center center;
}

.radioUL.zffsUL li span.mfypzf {
    background: url(../images/pay_mfypzf.png) no-repeat center center;
    background-size: 100% 100%;
}

.radioUL.zffsUL li span.zfbzf {
    background: url(../images/pay_zfbzf.png) no-repeat center center;
}

.radioUL.zffsUL li span.ybzf {
    background: url(../images/pay_ybzf.png) no-repeat center center;
    background-size: 100% 100%;
}

.radioUL.zffsUL li span.edzf1 {
    background: url(../images/pay_edzf1.png) no-repeat center center;
    background-size: 78% 100%;
}

.radioUL.zffsUL li span.mcpzf1 {
    background: url(../images/pay_mcpzf1.png) no-repeat center center;
    background-size: 78% 100%;
}

.radioUL.zffsUL li span.edzf {
    background: url(../images/pay_edzf.png) no-repeat center center;
    background-size: 78% 100%;
}

.radioUL.zffsUL li span.mcpzf {
    background: url(../images/pay_mcpzf.png) no-repeat center center;
    background-size: 78% 100%;
}

.radioUL.zffsUL li span.sltzf {
    background: url(../images/pay_sltzf.png) no-repeat center center;
}

.radioUL.zffsUL li span.antpayzf {
    background: url(../images/pay_antpayzf.svg) no-repeat center center;
    background-size: 100% 100%;
}

.radioUL.zffsUL li span.rdpzf {
    background: url(../images/pay_rdpzf.png) no-repeat center center;
    background-size: 100% 100%;
}

.radioUL.zffsUL li span.tnpzf {
    background: url(../images/TNP.png) no-repeat center center;
}

.radioUL.zffsUL li span.yeepzf {
    background: url(../images/YEEP.png) no-repeat center center;
    background-size: 100% 100%;
}

.radioUL.zffsUL li span.mvpzf {
    background: url(../images/pay_mvpzf.png) no-repeat center center;
    background-size: cover
}

.radioUL.zffsUL li span.mvpagpzf {
    background: url(../images/mvpagp.png) no-repeat center center;
    background-size: cover
}

.radioUL.zffsUL li span.epzf {
    background: url(../images/pay_ep.png) no-repeat center center;
    background-size: cover
}

.radioUL.zffsUL li span.ccotazf {
    background: url(../images/pay_ccota.png) no-repeat center center;
    background-size: cover;
    width: 70px;
    height: 70px;
    top: -74px;
}

/* Corporate Main Menu */
.nav li.corp,
.nav li.corp_en {
    text-align: center;
    color: rgba(255, 255, 255, 0.75);
    font-size: 12px;
    line-height: 41px;
    cursor: pointer;
    word-break: break-word;
}

.nav li.corp:hover,
.nav li.corp_en:hover {
    color: #3399cc;
}


ul.slctedListBox {
    position: absolute;
    top: 35px;
    z-index: 99999999;
    width: 400px;
    background-color: #fff;
    border: solid 1px #ccc;
    overflow: auto;
    max-height: 400px;
}

ul.slctedListBox li {
    height: 40px;
    line-height: 40px;
    text-align: left;
    padding-left: 40px;
    background: url(../images/plane.png) no-repeat left center;
    cursor: pointer;
    text-overflow: ellipsis;
    white-space: nowrap;
    overflow: hidden;
}

ul.slctedListBox li:hover {
    background-color: #f1f4f7;
}

ul.nameListBox {
    position: absolute;
    top: 43px;
    z-index: 99999999;
    max-height: 500px;
    overflow: auto;
    background-color: #fff;
    border: 1px solid #dcdcdc;
    border-radius: 2px;
    -moz-border-radius: 2px;
    -webkit-border-radius: 2px;
}

ul.nameListBox li {
    width: auto;
    max-width: 460px;
    height: 40px;
    line-height: 40px;
    text-align: left;
    padding-left: 10px;
    box-sizing: border-box;
    cursor: pointer;
    color: #89949b;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

ul.nameListBox li:hover {
    background-color: #f1f4f7;
}

.showContent {
    display: none;
    font-size: 14px;
    width: 366px;
    padding-top: 12px;
    padding-bottom: 12px;
    padding-left: 16px;
    background: rgba(95, 95, 95, 1);
    border-radius: 4px;
    position: absolute;
    top: 24px;
    left: 0;
    color: #FFF;
    z-index: 50;
}

.showHover:hover .showContent {
    display: block;
}

.dialog {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: 20vh auto auto;
    background: #fff;
    color: #002668;
    border-radius: 3px;
    z-index: 5200;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
    box-shadow: 0 6px 15px 0 #999;
}

.dialog:before {
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 5100;
    background: rgba(0, 0, 0, 0.3);
}

.dialog > div:only-child {
    box-shadow: 0 6px 15px 0 #999;
}

.dialog .dialogSon {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    min-height: 100%;
    background: #fff;
}

.dialogheader {
    width: 100%;
    font-size: 22px;
    font-weight: 700;
    font-family: 'sigvarbold';
    line-height: 50px;
    padding-left: 16px;
    padding-right: 16px;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.dialogmain {
    width: 100%;
    flex: 1;
    border-top: #d9dcdd 1px solid;
    border-bottom: #d9dcdd 1px solid;
    padding: 16px;
    box-sizing: border-box;
    overflow: auto;
}

.dialogfooter {
    width: 100%;
    height: 60px;
    padding: 0 16px;
    box-sizing: border-box;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.dialogfooter .btn_footer {
    padding: 0 16px;
    font-size: 14px;
    border-radius: 8px;
    border: none;
    cursor: pointer;
    background: transparent;
    color: #333;
    outline: none;
    line-height: 36px;
}

.dialogFooter button {
    padding: 8px 18px;
    background: #3399CC;
    border: 1px solid #3399CC;
    border-radius: 5px;
    color: #fff;
    cursor: pointer;
}

.dialogFooter button.can {
    background: #c4c8cc;
    border: 1px solid #c4c8cc;
    color: #999;
    cursor: pointer;
}

.dialog .close {
    cursor: pointer;
    background: url("../images/closefilght.png") no-repeat center;
    background-size: 100% 100%;
    width: 16px;
    height: 16px;
}

.fareRule1S button {
    background: rgba(255, 255, 255, 0.6);
    color: #fff;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0 16px;
    font-size: 14px;
    font-weight: 400;
    line-height: 32px;
    border-radius: 16px;
}

.copy {
    width: 20px;
    height: 20px;
    background: url(../images/copy.svg) no-repeat center center;
    background-size: 100% 100%;
    border: none;
    cursor: pointer;
}

.offerContainer {
    width: 100%;
    background: rgba(255, 255, 255, 1);
    padding-bottom: 10px
}

.nhOfferItem {
    width: 100%;
    height: 28px;
    background: rgba(255, 255, 255, 1);
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 10px;
    position: relative;
    padding: 0 16px;
    box-sizing: border-box;
    gap: 16px;
}

.nhOfferItem-cabin {
    width: 181px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

.nhOfferItem-class {
    min-width: 60px;
}

.nhOfferItem-describe {
    width: 340px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    line-height: 25px;
    display: flex;
    align-items: center;
    gap: 5px;
}

.nhOfferItem-priceDetail {
    display: flex;
    align-items: center;
    gap: 2px;
}

.nhOfferItem-owner {
    width: 42px;
    background: #3399CC;
    color: rgba(255, 255, 255, 1);
    text-align: center;
}

.nhOfferItem-owner-ndc {
    width: 42px;
    background: #873D88;
    color: rgba(255, 255, 255, 1);
    text-align: center;
}

.nhOfferItem-submit {
    color: rgba(0, 0, 0, 1);
    width: 114px;
    height: 28px;
    background: rgba(255, 193, 2, 1);
    border-radius: 4px;
    text-align: center;
    line-height: 28px;
}

.nhOfferItem-fareType {
    min-width: 100px;
    text-align: center;
    line-height: 22px;
    font-size: 14px;
    padding: 0 12px;
    box-sizing: border-box;
    color: #666;
    background-color: #D0D0D0;
}

.nhOfferItem-fareType-private {
    min-width: 100px;
    text-align: center;
    line-height: 22px;
    font-size: 14px;
    padding: 0 12px;
    box-sizing: border-box;
    color: #56AC38;
    background-color: #B4E5A1;
}

.embedded {
    width: 65vw;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    z-index: 9999;
    min-height: 500px;
}
.selectFlight {
    width: 100%;
    display: flex;
    height: 60px;
    justify-content: space-between;
    align-items: center;
    position: absolute;
    bottom: 0;
    left: 0;
    box-sizing: border-box;
    padding: 0 24px;
    line-height: 60px;
    background: transparent;
}

.selectFlight > .right, .selectFlight > .left {
    float: none;
}

.selectFlight > .right > ul, .selectFlight > .left {
    display: flex;
    height: 60px;
    justify-content: space-between;
    align-items: center;
}

.selectFlight > .right > ul > li {
    margin-left: 16px;
}

.selectFlight > .left > .selectPng {
    width: 15px;
    height: 15px;
    border-radius: 50%;
    border: 1px solid #ddd;
    margin-right: 8px;
}

.selectFlight > .left {
    cursor: pointer;
}

.selectActive {
    background: url(../images/circle-select.png) no-repeat;
    background-size: 100%;
}

.flightActive th {
    background: #DBECF9;
}

.flightActive tr {
    background: #F3FAFE;
    border-color: #C5DDE1;
}

.flightActive {
    border-color: #C5DDE1;
}

.SFA {
    background: #F3FAFE;
    border-left: 1px solid #C5DDE1;
    border-bottom: 1px solid #C5DDE1;
    border-right: 1px solid #C5DDE1;
}

.tip {
    position: relative;
    cursor: pointer;
    width: 15px;
    height: 15px;
    background: url("/images/frequent-tip.png");
    background-size: 100% 100%;
    margin-left: 6px;
}

.tip .tipDetails {
    position: absolute;
    color: #fff;
    font-size: 16px;
    line-height: 20px;
    border-radius: 5px;
    padding: 5px 12px;
    background: rgb(139, 139, 139);
    display: none;
    z-index: 100;
}

.tip:hover .tipDetails {
    display: block;
}


/* SQ 专属功能组件样式 */
.sq-exclusive {
    width: 100%;
}

.stopover-area {
    flex: 4.5;
    box-sizing: border-box;
}

.timefield-area {
    flex: 5.5;
    box-sizing: border-box;
}

.stopover-body,
.timefield-body {
    position: relative;
    padding-left: 16px;
    /*z-index: 1;*/
    /*overflow: hidden;*/
}

.stopover-border-left,
.timefield-border-left {
    width: 30px;
    height: 50px;
    background: transparent;
    border-left: 2px solid #ddd;
    border-bottom: 2px solid #ddd;
    border-radius: 0 0px 5px 5px;
    position: absolute;
    left: 8px;
    top: 0;
    z-index: -0;
}

.stopover-content,
.timefield-content {
    flex: 1;
    padding: 8px 16px;
    border-radius: 4px;
}

.sq-waitlist {
    display: flex;
    align-items: center;
    margin-top: 10px;
}

.sq-waitlist input[type="checkbox"] {
    margin-right: 5px;
}

.embedded .embedded-son {
    width: 100%;
    min-height: 500px;
    position: relative;
    background: #fff;
    top: 5vh;
}

.embedded .close {
    width: 20px;
    height: 20px;
    background: url("../images/closefilght.png") no-repeat center;
    background-size: 100% 100%;
    position: absolute;
    top: 16px;
    right: 16px;
    cursor: pointer;
}
/* Stopover 和 Time Field 复选框行样式 */
.sq-exclusive .flex-s input[type="checkbox"] {
    cursor: pointer;
}

.sq-exclusive label {
    cursor: pointer;
    font-size: 14px;
    white-space: nowrap;
}

.open_ticket {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    font-size: 13px;
    padding: 12px;
    box-sizing: border-box;
    color: #3399CC;
}

.open_ticket #openTicket {
    margin-top: 4px;
}

.inputerror {
    border: 1px solid #f00;
}

.errormsg {
    position: absolute;
    left: 0;
    bottom: -16px;
    color: #f00;
    font-size: 12px;
    line-height: 14px;
    white-space: nowrap;
}

.mcpFeeInput {
    min-width: 240px;
    height: 36px;
    border: 1px solid #ddd;
    border-radius: 4px;
    padding-left: 12px;
    box-sizing: border-box;
    cursor: pointer;
    color: #F00;
    background: url(../images/newDropDown.png) no-repeat center right #fff;
    background-size: contain;
}

.addEmail {
    width: 16px;
    height: 16px;
    background: url(../images/add-email.png) no-repeat center center;
    background-size: 100% 100%;
    cursor: pointer;
}

.reduceEmail {
    width: 16px;
    height: 16px;
    background: url(../images/reduce-email.png) no-repeat center center;
    background-size: 100% 100%;
    cursor: pointer;
}


















