@font-face {
    font-family:MymanFont;
    src: url(/assets/fonts/Inter/Inter-VariableFont_opsz\,wght.ttf);
}

:root{
   --dynamic-color:#00B296;
   --secondry-color:rgba(255, 187, 2, 1);
   --white-color:#fff;
}

*{
    padding:0;margin:0;box-sizing: border-box; font-family:MymanFont;
}
/* .container{max-width: 1420px;} */

.navbar{
box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.1);
position: relative;
z-index: 1000;
}

/* Keep top header popups above search strip/buttons */
header,
header .navbar,
header .container-fluid{
    position: relative;
    z-index: 30000 !important;
}

.notification_top,
.wallet_Top,
.user_top_dtls,
.menu_top_box{
    z-index: 30010;
}

.navbar-nav .nav-item{position: relative;}
.navbar-nav .nav-item .nav-link{
  background: #F3F3F3; border-radius: 5px; font-size: 13px; padding: 8px 12px; font-weight: 500;color:#000000AD;text-transform: uppercase;position: relative;
}
.navbar-nav .nav-item .nav-link .menu_icon_flx{
        margin-right: 5px;
}
.navbar-nav .nav-item .nav-link.active{
    background:var(--dynamic-color);
    color:var(--white-color);
}

.navbar-nav .nav-item .nav-link.active .menu_icon_flx svg path{
    fill:var(--white-color);
}

.navbar-nav .nav-item .nav-link.active svg rect{
    fill:var(--dynamic-color);
}

.home_dashicon svg rect{
  fill:#000000AD;
}
.wallet_Top{
    background:var(--dynamic-color);padding: 10px 10px; display: flex; border-radius: 5px;position: relative;cursor: pointer;
}
.notification_top{
    background: #F3F3F3; padding: 10px 10px; border-radius: 50%; display: flex;position: relative;cursor: pointer;
}
.left_user_img img{
  width: 40px; height: 40px; object-fit: cover; border-radius: 50%;
}
.right_user_content p{
    margin-bottom: 0px; font-size: 12px; font-weight: 400; color: #0D142DAD;
}
.right_user_content h4{
    margin: 0px; font-size: 16px; font-weight: 600; color: #09B598;
}
.new_label,
.new_labela{
    position: absolute;
    top: -8px;
    right: 8px;
    font-size: 8px;
    background: linear-gradient(45deg, #FF6161, #8D0000);
    color: #fff;
    padding: 1px 7px;
    border-radius: 30px;
    text-transform: uppercase;
    font-weight: 700;
    width: fit-content;
    overflow: hidden;
    isolation: isolate;
}

.new_label::after,
.new_labela::after{
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 50%;
    height: 100%;
    background: linear-gradient(120deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.6) 50%, rgba(255, 255, 255, 0) 100%);
    transform: skewX(-20deg);
    animation: newLabelFlash 1.8s linear infinite;
    pointer-events: none;
}

@keyframes newLabelFlash {
    0% {
        left: -100%;
    }
    100% {
        left: 150%;
    }
}

.sectionpadding{padding:30px 0px;}

.top_search_box{
    background: #fff;
    display: flex;
    align-items: center;
    box-shadow: 0px 4px 15px rgba(0,0,0,0.08);
    border-radius: 12px;
    position: relative;
    border: 1px solid #eee;
    transition: all .2s ease;
}

/* focus effect */
.top_search_box:focus-within{
    border-color: var(--secondry-color);
    box-shadow: 0px 4px 18px rgba(0,0,0,0.12);
}

.top_search_box input{
    width: 100%;
    height: 55px;
    border: none;
    padding: 0px 55px 0px 50px;
    color: #333;
    font-size: 14px;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
}

.top_search_box input::placeholder{
    color: rgba(0,0,0,0.45);
}

.top_search_box input:focus-visible{
    outline: none;
}

/* AI icon */
.ai_cions{
    position: absolute;
    left: 12px;
    height: 100%;
    display: flex;
    align-items: center;
}

/* mic icon */
.mic_icon_box{
    position: absolute;
    right: 65px;
    height: 100%;
    display: flex;
    align-items: center;
}

/* button */
.top_search_box button{
    background: var(--secondry-color);
    border: none;
    padding: 0px 18px;
    height: 55px;
    border-radius: 0px 12px 12px 0px;
}
.top_search_box button:hover{
      background: var(--secondry-color);    
}

.notificate_dropmenu{
position: absolute; background: #fff; top: 100%; right: 0px;padding: 15px 10px;    width: 320px;box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.1); border-radius: 10px;
z-index: 10000 !important;
}

.notificate_dropmenu ul{padding-left:0;margin-bottom:0px;}
.notificate_dropmenu ul li{list-style:none;position: relative;border-radius: 5px; padding: 8px;background:rgba(9, 181, 152, 0.05);margin-bottom:15px;} 
.notificate_dropmenu ul li:last-child{margin-bottom:0px;}
.notificate_dropmenu h4{font-size: 11px; font-weight: 700; color: rgba(42, 42, 42, 1);    margin-bottom: 3px;}
.notificate_dropmenu p{font-size: 10px;margin-bottom:0px;}



.wallet_inner_dtls{
    position: absolute; top: 100%; background: #ffff; box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.1); right: 0;border-radius: 10px; padding: 15px 10px;width:230px;
    z-index: 10000 !important;
}
.wallet_inner_dtls ul{    padding-left: 0px;margin-bottom: 0px;}
.wall_price_box ul li{list-style:none;background: rgba(9, 181, 152, 0.05); display: flex; align-items: center; justify-content: space-between; padding: 10px; border-radius: 5px;}
.wall_price_box ul li h4{font-size: 14px; margin-bottom: 0px; font-weight: 700; color: rgba(42, 42, 42, 1);}

.wall_price_box ul li.active{
    background: rgba(0, 178, 150, 1);
}
.wall_price_box ul li.active h4{
    color:#fff;
}
.wallet_inner_dtls ul li span{
        font-size: 14px;
}
.top_up_box ul {padding-left:0;margin-bottom:0;}
.top_up_box ul li{list-style:none;}

.top_up_box ul li a{display: flex; align-items: center; gap: 12px; padding: 10px; border-bottom: 1px solid #ddd; color: rgba(42, 42, 42, 1); text-decoration: none; font-size: 14px;}
.top_up_box ul li:last-child a{border-bottom:0px;padding-bottom:0px;}
.user_top_dtls{position: relative;padding: 5px 8px; cursor: pointer; border-radius: 5px;transition: 0.3s;}
.user_top_dtls:hover{background:#F3F3F3;}
.user_drop_menu{
position: absolute; top: 80%; background: #ffff; box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.1); right: 0; border-radius: 10px; padding: 15px 10px; width: 250px; left: 50%; transform: translateX(-50%) translateY(10%);
z-index: 10000 !important;
}
.user_drop_menu::before{  content: '';
  border-bottom: 15px solid #ffffff;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  top: -3%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  position: absolute;
  
    filter: drop-shadow(-1px -3px 1px rgba(0, 0, 0, 0.2));}

    
.user_drop_menu h4{
    font-size: 11px; text-align: center; color: rgba(0, 0, 0, 0.68); font-weight: 700;
}
.person_id_box{
    font-size: 14px; text-align: center; background: var(--dynamic-color); border-radius: 5px; padding: 4px 5px; color: #ffff;
}
.sales_person_name { background: rgba(0, 178, 150, 0.05); margin-top: 8px; border-radius: 5px; padding: 4px 5px; text-align: center; }

.user_drop_menu ul{padding-left:0px;margin-bottom:0px;}
.user_drop_menu ul li{list-style: none; font-size: 12px; display: flex; justify-content: space-between; margin-bottom: 5px; padding: 5px 0px; border-bottom: 1px solid rgba(245, 245, 245, 1);}
.user_drop_menu ul li:last-child{border-bottom:0px;padding-bottom:0px;}


.menu_top_box{position: relative;cursor: pointer;}
.my_menu_box{position: absolute; top: 100%; background: #ffff; box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.1); right: 0; border-radius: 10px; padding: 15px 10px; width: 180px;
z-index: 10000 !important;
}
.my_menu_box ul{padding-left:0;margin-bottom:0px;}
.my_menu_box ul li{list-style:none;}
.my_menu_box ul li a{text-decoration: none; color: rgba(42, 42, 42, 1); border-bottom: 1px solid rgba(245, 245, 245, 1); display: block; padding: 7px 10px; font-size: 13px; border-radius: 5px;display: flex; gap: 5px; align-items: center;}
.my_menu_box ul li:last-child a{border-bottom:0px;}
.my_menu_box ul li a svg path{fill:var(--dynamic-color);}
.my_menu_box ul li a svg rect{fill:var(--dynamic-color);}
.my_menu_box ul li a:hover{background:var(--dynamic-color);color:#fff;}
.my_menu_box ul li a:hover svg path{fill:var(--white-color);}
.my_menu_box ul li a:hover svg rect{stroke:var(--white-color);}



.arrow_move_header span svg {
    animation: arrowPulse 1s linear infinite;
}

.arrow_move_header span svg:first-child {
    animation-delay: 0s;
    opacity: 0.3;
}

.arrow_move_header span svg:last-child {
    animation-delay: 0.3s;
}

@keyframes arrowPulse {
    0% {
        transform: translateX(0);
        opacity: 0.3;
    }
    50% {
        transform: translateX(6px);
        opacity: 1;
    }
    100% {
        transform: translateX(12px);
        opacity: 0.3;
    }
}



.dash_banner_box { width: 100%; height: 250px; border-radius: 10px; overflow: hidden; }
.dash_banner_box img{width:100%;height:100%;object-fit: cover;}

.inner_slide_box .slick-slide{
    padding-right:15px;
}

.inner_slide_box .slick-list{
    margin-right:-15px;
}

.inner_update{
    display:flex;
    align-items:center;
    background:#fff;
    border-radius:50px;
    box-shadow:0 6px 25px rgba(0,0,0,0.08);
    border:1px solid #f2f2f2;
}

.marquee_title{
    display:flex;
    align-items:center;
    gap:8px;
    padding:12px 22px;
    font-size:14px;
    font-weight:700;
    letter-spacing:.5px;
    color:#222;
    background:linear-gradient(45deg,#ffc107,#ffe36e);
    border-radius:50px;
    white-space:nowrap;
}

.bell_icon{
    display:flex;
    align-items:center;
    position: relative;
}

.notification_top svg{
    transform-origin: 50% 10%;
    animation: bellRing 1.6s ease-in-out infinite, bellGlow 2.4s ease-in-out infinite;
}

.marquee_inner_box{
    flex:1;
    font-size:15px;
    font-weight:600;
    margin: 0px 20px 0px 0px;
    color:#444;
    overflow: hidden;
    white-space: nowrap;
}

.marquee_track{
    display: inline-flex;
    align-items: center;
    gap: 32px;
    min-width: max-content;
    padding-left: 100%;
    animation: flyshopMarqueeMove 18s linear infinite;
}

.marquee_track span{
    display: inline-block;
}

@keyframes flyshopMarqueeMove{
    from { transform: translateX(0); }
    to { transform: translateX(-100%); }
}

/* bell animation */
@keyframes bellRing{
    0%{transform:rotate(0deg)}
    15%{transform:rotate(15deg)}
    30%{transform:rotate(-12deg)}
    45%{transform:rotate(9deg)}
    60%{transform:rotate(-6deg)}
    75%{transform:rotate(3deg)}
    100%{transform:rotate(0deg)}
}

@keyframes bellGlow{
    0%,100%{filter: drop-shadow(0 0 0 rgba(46,190,167,0))}
    50%{filter: drop-shadow(0 0 8px rgba(46,190,167,0.55))}
}

.notification_top::after{
    content:"";
    position:absolute;
    top: 8px;
    right: 9px;
    width: 9px;
    height:10px;
    background:#ff3b30;
    border-radius:50%;
    box-shadow: 0 0 0 0 rgba(255,59,48,0.55);
    animation: pingPulse 2s infinite;
}

@keyframes pingPulse{
    0%{box-shadow: 0 0 0 0 rgba(255,59,48,0.55)}
    70%{box-shadow: 0 0 0 10px rgba(255,59,48,0)}
    100%{box-shadow: 0 0 0 0 rgba(255,59,48,0)}
}

.slick-prev:before, .slick-next:before{display:none;}

 .slick-prev{
    background: #fff; width: 40px; height: 40px; border-radius: 30px; display: flex; align-items: center; justify-content: center; text-align: center;box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;left:-15px !important;
}
 .slick-next{
    background: #fff; width: 40px; height: 40px; border-radius: 30px; display: flex; align-items: center; justify-content: center; text-align: center;box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;right:-11px !important;
}
.slick-prev:hover , .slick-next:hover{
    background:#fff;
}
.inner_slide_box .dash_banner_box:last-child{
    margin-right:0px;
}

.common_style{z-index:10000 !important;}


.sales_title_box select#meun-items{
    width: auto;
    min-width: 110px;
}
.sales_title_box select{
 width: 85px;
    outline: none;
    border: 1px solid #fff;
    padding: 5px 5px;
    font-size: 14px;
    border-radius: 0.5rem;
    border: 0px;
    cursor: pointer;
    background: #fff;
    color: rgba(0, 0, 0, 0.68);
    border: 1px solid #ddd;
}

.sales_title_box select:focus,
.sales_title_box select:hover{
    outline: none;
}

.sales_report{
    padding: 15px 15px;
    border-radius: 10px;
    background:#fff;
}
.sales_title_box h4{
    font-size: 18px; font-weight: 600; text-transform: uppercase;
}
.inner_report_box table tr td{padding-right:15px;}
.inner_report_box table tr td:last-child{padding-right:0px;}

.report_icon{
        width: 100%;
    display: flex;
    align-items: center;
    gap:10px;
}
.report_icon img{
     padding: 10px 10px; border-radius: 10px;
}
.report_icon h4{
font-size: 13px; color: rgba(0, 0, 0, 0.68); font-weight: 400; margin-bottom: 0px;
}
.report_icon strong{
    font-size: 24px; width: 50px;
}
.inner_report_box{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:15px;
}

.report_box {
    border-radius: 12px;
    padding: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: 0.3s;
    border: 1px solid #ddd;
    color: #fff;

    background-size: 300% 300% !important;
    animation: gradientMove 12s ease infinite; /* slower */
}

.report_box:hover{
transform:translateY(-4px);
box-shadow:0 12px 30px rgba(0,0,0,0.15);
}

.report_left{
display:flex;
align-items:center;
gap:10px;
}

.report_icon{
width:45px;
height:45px;
display:flex;
align-items:center;
justify-content:center;
border-radius:10px;
}


.report_left h4{
font-size:14px;
margin:0;
color:#fff;
}

.report_number{
font-size:22px;
font-weight:700;
color:#fff;
}


.addtional_serve_box{
  display:flex;
  gap:10px;
}
.serve_card_box{
    padding: 15px;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.1);

}

.serve_card_box h4{font-size: 18px; font-weight: 600; text-transform: uppercase;margin-bottom:15px;}
.inner_serve_box ul { padding-left: 0; margin-bottom: 0px; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }

.inner_serve_box ul{
    padding-left:0;
    margin-bottom:0;
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:12px;
}

.inner_serve_box_2 ul{padding-left: 0; margin-bottom: 0px; display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 10px;}

.inner_serve_box ul li{
    list-style:none;
    background:#f8f8f8;
    padding:10px 10px;
    border-radius:5px;
    display:flex;
    flex-direction:column;
    align-items:center;
    font-size:10px;
    gap:10px;
    color:#777;
    font-weight:500;
    text-align:center;
    cursor:pointer;
    position:relative;
    overflow:hidden;
    transition:all .35s ease;
    width:100px;
}

/* icon size */
.inner_serve_box ul li img{
    transition:transform .35s ease;
        height: 20px;
}

/* hover effect */
.inner_serve_box ul li:hover{
    transform:translateY(-6px);
    box-shadow:0 10px 25px rgba(0,0,0,0.15);
    background:#fff;
}

/* icon animation */
.inner_serve_box ul li:hover img{
    transform:scale(1.2) rotate(8deg);
}

/* shine animation */
/* .inner_serve_box ul li::before{
    content:"";
    position:absolute;
    top:0;
    left:-100%;
    width:100%;
    height:100%;
    background:linear-gradient(120deg,transparent,rgba(255,255,255,0.4),transparent);
    transition:0.6s;
} */

.inner_serve_box ul li:hover::before{
    left:100%;
}




.partner_certificate_inner {
    background: #fff;
    border-radius: 12px;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 20px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

.download_btn {
    background: rgba(255, 97, 97, 1);
    color: #fff;
    border: none;
    padding: 10px 30px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    cursor: pointer;
    transition: all 0.3s ease;
    white-space: nowrap;
}

.download_btn:hover {
    background: #FF1744;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(255, 82, 82, 0.3);
}

.partner_certificate_text {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}

.partner_certificate_text span {
    font-size: 18px;
    font-weight: 700;
    color: #00B296;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}
.partner_certificate_box{
    display: flex; flex-direction: column; justify-content: space-between;gap:15px;
}

/* Account Balance Card */
.account_balance_card {
    background: linear-gradient(135deg,#20C997,#1aa57f);
    border-radius: 16px;
    padding: 18px;
    margin-bottom: 20px;
    position: relative;
    overflow: hidden;
    box-shadow: 0 10px 25px rgba(32, 201, 151, 0.35);
    transition: transform .35s ease, box-shadow .35s ease;
    z-index:1;
}

/* animated light effect */
.account_balance_card::before{
    content:"";
    position:absolute;
    top:-50%;
    left:-50%;
    width:200%;
    height:200%;
    background:linear-gradient(
        120deg,
        transparent,
        rgba(255,255,255,0.25),
        transparent
    );
    transform:rotate(25deg);
    animation:cardShine 6s linear infinite;
    z-index:-1;
}

@keyframes cardShine{
    0%{transform:translateX(-100%) rotate(25deg)}
    100%{transform:translateX(100%) rotate(25deg)}
}

/* header */
.balance_header {
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.balance_title{
    font-size:13px;
    font-weight:600;
    color:#ffffffcc;
    text-transform:uppercase;
    letter-spacing:1px;
}

/* amount */
.balance_amount{
    margin:15px 0 22px;
    display:flex;
    align-items:center;
    gap:12px;
}

.balance_amount span{
    font-size:22px;
    font-weight:700;
    color:#fff;
    letter-spacing:1px;
    animation:fadeAmount .5s ease;
}

@keyframes fadeAmount{
    from{
        opacity:0;
        transform:translateY(6px);
    }
    to{
        opacity:1;
        transform:translateY(0);
    }
}

/* eye button */
.visibility_toggle{
    background:rgba(255,255,255,0.2);
    border:none;
    cursor:pointer;
    padding:6px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:.3s;
}

.visibility_toggle:hover{
    background:#fff;
    transform:scale(1.1);
}

.visibility_toggle:hover svg path{
    fill:#20C997;
}
.visibility_toggle svg{width:15px;height:15px;}

/* buttons container */
.balance_actions{
    display:flex;
    gap:12px;
}



/* buttons */
.view_statement_btn,
.add_money_btn{
    flex:1;
    padding:10px 10px;
    border-radius:8px;
    font-size:10px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.5px;
    cursor:pointer;
    transition:.3s;
    border:2px solid #fff;
}

/* statement button */
.view_statement_btn{
    background:transparent;
    color:#fff;
}

.view_statement_btn:hover{
    background:#fff;
    color:#20C997;
    transform:translateY(-2px);
}

/* add money button */
.add_money_btn{
    background:#fff;
    color:#20C997;
}

.add_money_btn:hover{
    transform:translateY(-3px) scale(1.03);
    box-shadow:0 6px 15px rgba(0,0,0,0.25);
}

/* hidden state */
.balance_amount.hidden span{
    font-size:18px;
    letter-spacing:4px;
    font-family:monospace;
}

/* Customer Support Banner */
.customer_support_banner {
    border-radius: 10px;
}

.support_banner_inner {
    background: #fff;
    border-radius: 10px;
    padding: 10px 15px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
}

.support_text h3 {
    font-size: 15px;
    font-weight: 700;
    color: #000;
    text-transform: uppercase;
    margin: 0;
    letter-spacing: 0.5px;
    line-height: 1.4;
}

.support_contacts {
    display: flex;
    align-items: center;
    gap: 25px;
    flex-shrink: 0;
}

.contact_item {
    display: flex;
    align-items: center;
    gap: 10px;
}

.contact_icon {
    width: 32px;
    height: 32px;
    background: #FF5252;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.contact_icon svg {
    width: 16px;
    height: 16px;
}

.contact_item span {
    font-size: 14px;
    font-weight: 500;
    color: #000;
    white-space: nowrap;
}

@media (max-width: 992px) {
    .support_banner_inner {
        flex-direction: column;
        align-items: flex-start;
        gap: 20px;
    }
    
    .support_contacts {
        flex-direction: column;
        align-items: flex-start;
        gap: 15px;
        width: 100%;
    }
    
    .support_text h3 {
        font-size: 14px;
    }
}



@keyframes gradientMove {
    0%   { background-position: 0% 0%; }
    50%  { background-position: 100% 100%; }
    100% { background-position: 0% 0%; }
}
/* 🔵 BLUE */
.report_box.blue {
    background: linear-gradient(135deg, rgba(23, 62, 149, 1), rgb(40 88 194), rgba(89, 179, 247, 1));
    animation-delay: 0s;
}

/* 🔴 RED */
.report_box.red {
    background: linear-gradient(135deg, rgba(245, 60, 86, 1), rgb(249 140 155), rgba(255, 97, 97, 1));
    animation-delay: 2s;
}

/* 🟠 ORANGE */
.report_box.orange {
    background: linear-gradient(135deg, rgba(255, 97, 97, 1), rgb(250 93 93), rgba(245, 159, 60, 1));
    animation-delay: 4s;
}

/* 🟢 GREEN */
.report_box.green {
    background: linear-gradient(135deg, rgba(9, 181, 152, 0.5922), rgb(24 139 120 / 59%), rgba(22, 100, 171, 1));
    animation-delay: 6s;
}


.company_logo_dtls{background: url(/assets/images/logo_bg.jpg); background-size: cover; padding: 20px 10px; text-align: center; background-position: center; border-radius: 5px;position: relative;overflow: hidden;z-index:1;}

.inner_flow_flx{width:100%;height:700px;border-radius:10px;overflow: hidden;}
.inner_flow_flx img{width:100%;height:100%;object-fit: cover;}

.book_flight_page{
    background:url(/assets/images/dash_bg.jpg);background-position: center;background-repeat: no-repeat;background-size: cover;
}


.flight_search_box{
background:#fff;
padding:20px;
border-radius:20px;
box-shadow:0 5px 25px rgba(0,0,0,0.1);
position: relative;
}

.trip_type button{
border: none;
    padding: 8px 20px;
    border-radius: 20px;
    margin-right: 10px;
    background: #fff;
    cursor: pointer;
    color: rgba(115, 115, 115, 1);
    font-size: 14px;
    font-weight: 600;
    box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
}

.trip_type button.active{
background:#16a085;
color:#fff;
}

.top_filters{
margin:25px 0;
display:flex;
gap:15px;
flex-wrap:wrap;
justify-content: space-between;
}

.switch{
display:flex;
align-items:center;
gap:5px;
font-size:13px;
}

.search_row{
display:flex;
align-items:center;
gap:10px;
margin-bottom:20px;
}

.search_row.compact{
    gap:8px;
    margin-bottom:12px;
}

.search_row .field{
display: flex;
    padding: 8px 12px;
    border-radius: 10px;
    border: 1px solid rgba(229, 229, 229, 1);
    position: relative;
    gap: 5px;
    align-items: center;
  height:65px;
}

.search_row.compact .field{
    padding: 6px 10px;
    height: 54px;
}
.search_row .field .flight_title{
    font-size: 11px; color: rgba(215, 1, 52, 1); background: #fff; position: absolute; top: -8px;
}

.search_field_box input{
border:none;
background:transparent;
outline:none;
font-size: 15px; color: rgba(0, 0, 0, 0.68);
width:100%;
font-weight:500;}
.airline_clear_btn{text-decoration:none;}
.top_modify_seach_box .search_row{
    flex-wrap: wrap;
}

.swap_btn{
background: rgba(255, 187, 2, 1); padding: 5px 8px; border-radius: 10px; cursor: pointer; position: absolute; right: -17px; font-size: 14px; z-index: 9; top: 20%;
}


.multi_city_header {
    margin-bottom: 15px;
}


.multi_city_header h5 {
    color: #00B296;
    font-weight: 600;
    font-size: 18px;
}

.multi_city_actions .btn {
    border-radius: 5px;
    font-size: 13px;
    padding: 5px 8px;
    font-weight: 500;
}

.multi_city_route_col--actions .multi_city_actions{
    margin-top: 0;
}

.multi_city_route {
    background: #fff;
    margin-bottom: 15px;
    transition: all 0.3s ease;
}

.multi_city_route{
    border: 1px dashed #e2e8f0;
    border-radius: 10px;
    padding: 10px;
    margin-bottom: 10px;
    background: #fcfcff;
}

.multi_city_route .field{
    height: 58px;
}

.multi_city_route_flex{
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.multi_city_route_col{
    width: 30%;
}

.multi_city_route_col--actions{
    width: 5%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 8px;
}



.multi_city_route_header h6 {
    color: #00B296;
    font-weight: 600;
    font-size: 16px;
}

.multi_city_route_content .field {
    display: flex;
    padding: 8px 12px;
    border-radius: 10px;
    border: 1px solid rgba(229, 229, 229, 1);
    position: relative;
    gap: 5px;
    align-items: center;
    height: 65px;
}

.multi_city_route_content .field .flight_title {
    font-size: 11px;
    color: rgba(215, 1, 52, 1);
    background: #fff;
    position: absolute;
    top: -8px;
    left: 10px;
    padding: 0 5px;
}

.multi_city_route_content .field input {
    border: none;
    background: transparent;
    outline: none;
    width: 100%;
    font-size: 15px;
    color: rgba(0, 0, 0, 0.68);
    font-weight: 500;
}

.add_multi_city_btn {
    background: #00B296 !important;
    color: #fff !important;
    border: none !important;
}

.add_multi_city_btn:hover {
    background: #16a085 !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 178, 150, 0.3);
}

.remove_multi_city_btn {
    background: #ffdfe2 !important;
    color: #dc3545 !important;
    border-color: #dc3545;
    padding: 2px 6px !important;
}

.remove_multi_city_btn:hover {
    background: #c82333 !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(220, 53, 69, 0.3);
    color: #fff !important;
}

.search_btn{
display:flex;
gap:10px;
}

.search_btn {
    display: flex;
    align-items: center;
    gap: 14px;
}

/* COMMON BUTTON STYLE */
.search_btn button {
    border: none;
    border-radius: 30px;
    font-size: 14px;
    font-weight: 500;
    padding: 11px 22px;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: all 0.3s ease;
}
.search_btn a{text-decoration:none;}

/* SEARCH BUTTON */
.search_btn .search {
    background: linear-gradient(135deg, #16a085, #1abc9c);
    color: #fff;
    box-shadow: 0 4px 12px rgba(22, 160, 133, 0.3);
    position: relative;
    overflow: hidden;
}

/* Shine effect */
.search_btn .search::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(120deg, transparent, rgba(255,255,255,0.4), transparent);
    transition: 0.5s;
}

.search_btn .search:hover::before {
    left: 100%;
}

/* Hover lift */
.search_btn .search:hover {
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 6px 18px rgba(22, 160, 133, 0.4);
}

/* Click effect */
.search_btn .search:active {
    transform: scale(0.96);
}

/* AI BUTTON */
.search_btn .ai {
    background: rgb(255 187 2);
    border: 1px solid #e0e0e0;
    color: #333;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
    position: relative;
}

/* Mic pulse animation */
.search_btn .ai img {
    height: 15px;
    animation: micPulse 1.5s infinite;
}

/* AI hover */
.search_btn .ai:hover {
    background: #f1fdfb;
    border-color: #1abc9c;
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(0,0,0,0.12);
}

.search_btn .ai:hover svg path{
    fill:var(--secondry-color);
}

/* Click */
.search_btn .ai:active {
    transform: scale(0.96);
}

/* KEYFRAMES */
@keyframes micPulse {
    0% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.15); opacity: 0.7; }
    100% { transform: scale(1); opacity: 1; }
}

.traveller_box{
position:relative;
cursor:pointer;
}

.traveller_dropdown{
display:none;
position:absolute;
top:60px;
background:#fff;
width:220px;
box-shadow:0 5px 20px rgba(0,0,0,0.1);
border-radius:10px;
padding:15px;
z-index:10;
}

.trav_row{
display:flex;
justify-content:space-between;
align-items:center;
margin-bottom:10px;
}

.trav_row button{
width:25px;
height:25px;
border:none;
background:#16a085;
color:#fff;
border-radius:5px;
}

.apply{
width:100%;
background:#16a085;
color:#fff;
border:none;
padding:8px;
border-radius:5px;
margin-top:10px;
}

.book_flight_page{padding:50px 0px;padding-bottom:100px;}
.inner_search_box h2{text-align: center; margin-bottom: 40px; color: rgba(79, 79, 79, 1); font-weight: 500; font-size: 27px;}
.trip_type{position: relative; margin-top: -40px;}

.form-switch .form-check-input:focus{
    box-shadow:none;
}
.left_fares_box ul, .right_fares_box ul{padding-left: 0; margin-bottom: 0; display: flex; align-items: center; gap: 15px;}
.top_filters li, .right_fares_box ul li{list-style: none; display: flex; align-items: center; gap: 10px; border: 1px solid #ddd; padding: 2px 12px; border-radius: 30px; font-size: 12px; align-items: center; text-transform: uppercase;}

.top_filters li img, .right_fares_box ul li img{
    width:15px;
}

.top_filters li .form-check{
    padding-top: 1px; padding-left: 35px;top: -2px; position: relative;
}
.top_filters li .form-check-input{
    font-size:15px;
}
.top_filters li .form-check-input:checked{
    background-color: #00b296; border-color: #ffffff;
}
.inner_seach_flx{
    display: flex; gap: 5px; font-size: 20px; font-weight: 500;color:rgba(0, 0, 0, 0.68);
}
.inner_seach_flx img{width:20px;}

.brief_desti {
    font-size: 12px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    width: 7rem;
    color: rgba(115, 115, 115, 1);
    font-weight: 500;
}
.from_to_box{width: 45%;}

.search_field_box{width:70%;padding-left: 5px; border-left: 1px dashed rgba(229, 229, 229, 1);}

.traveller_select{display: flex; width: 100%; gap: 5px;align-items:center;}
.left_view_dest{width:40px;}
.counter_trav_main_box{padding-left: 5px; border-left: 1px dashed rgba(229, 229, 229, 1);font-size: 15px; color: rgba(0, 0, 0, 0.68); font-weight: 500;}

.airport_dropdown{
position:absolute;
top:110%;
left:0;
width:350px;
background:#fff;
border-radius:20px;
box-shadow:0 10px 40px rgba(0,0,0,0.15);
display:none;
padding:10px 0;
z-index:99;
}

.airport_item{
display:flex;
justify-content:space-between;
align-items:center;
padding:12px 18px;
border-bottom:1px solid #eee;
cursor:pointer;
border-radius:10px;
}
.edit_search_multi{color: rgba(115, 115, 115, 1); font-size: 14px; width: 10%; text-align: right; height: 100%; display: flex; flex-direction: column-reverse; align-items: end;}
.edit_search_multi i{cursor: pointer;}
/* Editable multi-city: Close top-right, Save inline on last row */
.editable_multi_city_search .search_row > .field{
    flex: 1 1 0;
    min-width: 0;
}
.editable_mcx_header{
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-bottom: 4px;
    width: 100%;
}
.editable_mcx_header_actions{
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: flex-end;
}
.editable_mcx_btn_close{
    border-radius: 8px;
    padding: 5px 11px;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.2;
    border: 1px solid #e5e7eb !important;
    background: #fff !important;
    color: #374151 !important;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    transition: background 0.2s, border-color 0.2s;
}
.editable_mcx_btn_close:hover{
    background: #f9fafb !important;
    border-color: #d1d5db !important;
    color: #111827 !important;
}
.editable_mcx_btn_save{
    border-radius: 8px;
    padding: 6px 14px;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.2;
    border: none !important;
    background: linear-gradient(135deg, #09b598, #07a386) !important;
    color: #fff !important;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    box-shadow: 0 2px 8px rgba(9, 181, 152, 0.25);
    transition: filter 0.2s;
    white-space: nowrap;
}
.editable_mcx_btn_save:hover{
    filter: brightness(1.05);
    color: #fff !important;
}

.airport_item:hover{
background:#f7f7f7;
}

.airport_left h4{
margin:0;
font-size:16px;
}

.airport_left p{
margin:0;
font-size:12px;
color:#888;
}

.airport_code{
background:#17b890;
color:#fff;
padding:6px 12px;
border-radius:6px;
font-weight:600;
}
.airport_dropdown .airport_item:last-child{border-bottom:0px;}

.picker__header{    color: rgba(9, 181, 152, 1);}
.picker__year{color: rgba(9, 181, 152, 1) !important;}

.picker__nav--prev:before { content: url(/assets/images/flight_page/left_arrow.svg) !important; border: none !important; position: absolute; top: 0%; left: 40%; transform: translate(-50%, -50%);}

.picker__nav--prev{padding: 7px 7px !important; left: 0px !important; background: var(--dynamic-color); width: 20px !important; height: 20px !important; border-radius: 100px; display: flex; align-items: center; justify-content: center;}

.picker__nav--next{padding: 7px 7px !important; right: 0px !important; background: var(--dynamic-color); width: 20px !important; height: 20px !important; border-radius: 100px; display: flex; align-items: center; justify-content: center;}

.picker__nav--next:before {content: url(/assets/images/flight_page/rigth_arrow.svg) !important; border: none !important; position: absolute; top: 0%; left: 45%; transform: translate(-50%, -50%);}
.picker__box{border-radius:30px !important;}

.picker__weekday{    color: rgba(215, 1, 52, 1) !important;} 
.picker__frame{    max-width: 530px !important;}
.picker__day{
    border-radius:5px;
    width: 46px;
    min-height: 40px;
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    margin:auto;
    margin-bottom: 10px;
    line-height: 1.1;
    padding: 4px 2px 6px;
    box-sizing: border-box;
}
.picker__day-price{
    display: block;
    font-size: 10px;
    font-weight: 700;
    color: rgba(215, 1, 52, 1);
    margin-top: 2px;
    white-space: nowrap;
}
.picker--focused .picker__day--selected .picker__day-price{
    color:#fff;
}

 .picker__button--close{
    width: 100% !important; background: #00b296 !important; color: #fff; margin-bottom: 10px !important; border-radius: 20px;
 }
 .picker__button--close:before{color:#fff !important;}
 .picker--focused .picker__day--selected{background:var(--dynamic-color) !important;}
 .picker__day--today:before{border-top-color:var(--dynamic-color) !important;}




 .search_btn{position: absolute; right: 0; width: 100%; justify-content: right; padding-right: 33px; bottom: -15px;}

 .traveller_dropdown select{
    width: 100%; border: 1px solid #16a085; padding: 5px 5px; border-radius: 7px; color: #555;
 }

.middle_card_show{
    background:#fff;
    box-shadow:0 12px 30px rgba(0,0,0,0.12);
    padding:22px;
    border-radius:18px;
    margin-top:-45px;
    position:relative;
    overflow:hidden;
}

/* header */
.middle_card_show h4{
    font-size:16px;
    margin-bottom:18px;
    text-transform:uppercase;
    font-weight:700;
    letter-spacing:1px;
    color:#333;
    position:relative;
}

.middle_card_show h4:after{
    content:"";
    position:absolute;
    bottom:-6px;
    left:0;
    width:40px;
    height:3px;
    background:#09B598;
    border-radius:5px;
}

/* Airline multiselect dropdown (flight search + listing toolbars) */
.flyshop-airline-multiselect .airline_dropdown{
    position: absolute;
    width: 300px;
    right: 0;
    top: calc(100% + 8px);
    background: #fff;
    border: 1px solid #e8eceb;
    border-radius: 14px;
    box-shadow: 0 12px 40px rgba(0,90,74,.12), 0 4px 12px rgba(0,0,0,.06);
    padding: 0;
    z-index: 1050;
    overflow: hidden;
}

.flyshop-airline-multiselect .airline_dropdown .airline_dropdown_header{
    padding: 14px 14px 10px;
    margin: 0;
}
.flyshop-airline-multiselect .airline_dropdown .airline_dropdown_title{
    display: block;
    font-size: 15px;
    color: #1a2b3c;
    letter-spacing: -0.02em;
}
.flyshop-airline-multiselect .airline_dropdown .airline_dropdown_hint{
    display: block;
    font-size: 11px;
    color: #6b7280;
    margin-top: 4px;
    font-weight: 400;
}
.flyshop-airline-multiselect .airline_dropdown .airline_clear_btn{
    flex-shrink: 0;
    font-size: 12px;
    font-weight: 600;
    color: #09b598 !important;
    text-decoration: none !important;
    padding: 4px 8px !important;
    border-radius: 8px;
    border: none;
    background: rgba(9,181,152,.1);
}
.flyshop-airline-multiselect .airline_dropdown .airline_clear_btn:hover{
    background: rgba(9,181,152,.18);
    color: #057a66 !important;
}
.flyshop-airline-multiselect .airline_dropdown .airline_search_wrap{
    position: relative;
    margin: 0 14px 10px;
}
.flyshop-airline-multiselect .airline_dropdown .airline_search_icon{
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: #9ca3af;
    font-size: 13px;
    pointer-events: none;
}
.flyshop-airline-multiselect .airline_dropdown .airline_search_input{
    width: 100%;
    padding: 10px 12px 10px 36px;
    border: 1px solid #e5e7eb;
    border-radius: 10px;
    font-size: 13px;
    color: #1f2937;
    background: #f8faf9;
    transition: border-color .2s, box-shadow .2s, background .2s;
}
.flyshop-airline-multiselect .airline_dropdown .airline_search_input::placeholder{
    color: #9ca3af;
}
.flyshop-airline-multiselect .airline_dropdown .airline_search_input:focus{
    outline: none;
    border-color: #09b598;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(9,181,152,.18);
}
.flyshop-airline-multiselect .airline_dropdown .airline_list{
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 0 10px 12px;
    margin: 0;
    max-height: 220px;
    overflow-y: auto;
}
.flyshop-airline-multiselect .airline_dropdown .airline_list::-webkit-scrollbar{
    width: 6px;
}
.flyshop-airline-multiselect .airline_dropdown .airline_list::-webkit-scrollbar-thumb{
    background: #d1d5db;
    border-radius: 6px;
}
.flyshop-airline-multiselect .airline_dropdown .airline_option{
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    padding: 10px 10px;
    font-size: 13px;
    color: #25314c;
    border-radius: 10px;
    cursor: pointer;
    transition: background .15s ease;
    border: 1px solid transparent;
}
.flyshop-airline-multiselect .airline_dropdown .airline_option:hover{
    background: #f0fdf9;
    border-color: #d1fae5;
}
.flyshop-airline-multiselect .airline_dropdown .airline_option input[type="checkbox"]{
    width: 16px;
    height: 16px;
    accent-color: #ffbb02;
    flex-shrink: 0;
}
.flyshop-airline-multiselect .airline_dropdown .airline_option span{
    font-weight: 500;
}
.flyshop-airline-multiselect .airline_dropdown .airline_actions{
    padding: 12px 14px 14px;
    border-top: 1px solid #f0f2f5;
    background: linear-gradient(180deg, #fafbfb 0%, #fff 100%);
}
.flyshop-airline-multiselect .airline_dropdown .airline_btn_cancel{
    padding: 8px 14px !important;
    border-radius: 10px;
    font-size: 12px;
    font-weight: 600;
    border: 1px solid #e5e7eb !important;
    background: #fff !important;
    color: #4b5563 !important;
}
.flyshop-airline-multiselect .airline_dropdown .airline_btn_cancel:hover{
    background: #f9fafb !important;
    border-color: #d1d5db !important;
}
.flyshop-airline-multiselect .airline_dropdown .airline_btn_apply{
    padding: 8px 16px !important;
    border-radius: 10px;
    font-size: 12px;
    font-weight: 700;
    border: none !important;
    background: linear-gradient(135deg, #09b598, #07a386) !important;
    color: #fff !important;
}
.flyshop-airline-multiselect .airline_dropdown .airline_btn_apply:hover{
    filter: brightness(1.05);
    color: #fff !important;
}

/* grid */
.innser_show_dtls{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:12px;
}

/* each search card */
.iflx_card_dlts{
    display:flex;
    flex-direction:column;
    gap:6px;
    padding:12px;
    border-radius:12px;
    background:#fff;
    transition:all .35s ease;
    cursor:pointer;
    position:relative;
    overflow:hidden;
    border:1px solid #ddd;
}

/* hover card animation */
.iflx_card_dlts:hover{
    background:#ffffff;
    transform:translateY(-6px);
    box-shadow:0 10px 20px rgba(0,0,0,0.12);
}

/* shine animation */
.iflx_card_dlts::before{
    content:"";
    position:absolute;
    top:-120%;
    left:-40%;
    width:180%;
    height:200%;
    background:linear-gradient(
        120deg,
        transparent,
        rgba(255,255,255,0.5),
        transparent
    );
    transform:rotate(25deg);
    transition:.6s;
}

.iflx_card_dlts:hover::before{
    top:120%;
}

/* date */
.iflx_card_dlts p{
    margin:0;
    color:#09B598;
    font-size:13px;
    font-weight:600;
}

/* route */
.all_view_des{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:13px;
    font-weight:500;
    color:#444;
    justify-content:space-between;
}

/* flight icon animation */
.all_view_des img{
    width:18px;
    transition:transform .4s ease;
}

.iflx_card_dlts:hover img{
    transform:translateX(6px);
}


.slider_banner_box{width:100%;height:450px;    overflow: hidden;}
.slider_banner_box img{width:100%;height:100%;object-fit: cover;border-radius:10px;}

.search_new_title{font-size: 11px; margin-bottom: 0px; color: #919191; font-weight: 300;}



 /* Dots container */
  .bg_flow_right  .slick-dots {
        bottom: -35px;
        display: flex !important;
        justify-content: center;
        align-items: center;
        gap: 12px;
        z-index: 9999;
    }

    /* Normal dot */
  .bg_flow_right  .slick-dots li {
        width: auto;
        height: auto;
        margin: 0;

    }

    /* Hide default button */
   .bg_flow_right .slick-dots li button {
        font-size: 0;
        width: 15px;
        height: 6px;
        padding: 0;
        border-radius: 30%;
        background: rgba(159, 159, 159, 1);
        border: none;
        transition: all 0.3s ease;
    }

    /* Active dot (pill shape) */
    .bg_flow_right  .slick-dots li.slick-active button {
        width: 22px;
        height: 6px;
        border-radius: 10px;
        background: rgba(79, 79, 79, 1);
    }

     .bg_flow_right .slick-dots li button:before {
        display: none;
    }




.company_logo_dtls::before {
    content: "";
    position: absolute;
    z-index: 2;
    left: 0;
    top: 0;
    width: 100%;
    height: 5076px;
    background-size: 100%;
    animation: 120s infiniteScroll linear infinite;
    background-repeat-x: repeat;
    background-image: url(https://cdn2.hubspot.net/hubfs/53/Pricing%202017%20Assets/marketing/Header_Circles-1.svg);
    z-index:-1;
}

@keyframes infiniteScroll {
    0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
100% {
    -webkit-transform: translate3d(0, -1692px, 0);
    transform: translate3d(0, -1692px, 0);
}
}
.main_com_box{position: relative;}




.right_booking_flx_box{
    background:#fff;
    box-shadow:0 12px 30px rgba(0,0,0,0.12);
    padding:18px;
    border-radius:14px;
    transition:all .35s ease;
    position:relative;
    overflow:hidden;
}


/* title */
.inner_booking_box h4{
    font-size:16px;
    text-transform:uppercase;
    color:#333;
    font-weight:700;
    letter-spacing:.8px;
    position:relative;
    margin-bottom:5px;
}

.inner_booking_box h4::after{
    content:"";
    position:absolute;
    bottom:-6px;
    left:0;
    width:40px;
    height:3px;
    background:#09B598;
    border-radius:4px;
}

/* layout */
.inner_icon_book{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-top:20px;
}

/* icon list */
.inner_icon_book ul{
    display:flex;
    gap:10px;
    padding:0;
    margin:0;
}

.inner_icon_book ul li{
    list-style:none;
}

/* icon box */
.inner_icon_book ul li a{
    background:rgba(209,209,209,0.25);
    border-radius:8px;
    width:38px;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:all .35s ease;
    position:relative;
}

/* icon hover animation */
.inner_icon_book ul li a:hover{
    transform:translateY(-4px) scale(1.08);
    background:#fff;
    box-shadow:0 6px 15px rgba(0,0,0,0.15);
}

/* active icon */
.inner_icon_book ul li a.active{
    background:#09B598;
    box-shadow: 0 6px 15px rgb(9 181 152 / 41%);
}

.inner_icon_book ul li a.active svg path{
    fill:#fff !important;
}

/* icon animation */
.inner_icon_book ul li a:hover svg{
    animation:iconBounce .5s;
}

@keyframes iconBounce{
    0%{transform:scale(1)}
    40%{transform:scale(1.2)}
    60%{transform:scale(.9)}
    100%{transform:scale(1)}
}

/* button */
.check_status_btn{
    background:#09b598;
    font-size:12px;
    color:#fff;
    padding:8px 10px;
    border-radius:6px;
    border:none;
    font-weight:600;
    letter-spacing:.5px;
    transition:all .35s ease;
}

/* button hover */
.check_status_btn:hover{
    transform:translateY(-3px);
    box-shadow:0 6px 15px rgba(255,97,97,0.45);
    background:#199d87;
    color:#fff;

}

/* subtle pulse animation */
.check_status_btn{
    animation:pulseBtn 2.5s infinite;
}

@keyframes pulseBtn{
    0%{box-shadow: 0 0 0 0 rgb(9 181 152 / 52%);}
    70%{box-shadow:0 0 0 10px rgba(255,97,97,0)}
    100%{box-shadow:0 0 0 0 rgba(255,97,97,0)}
}

.info_right_dtls{
    background:#fff;
    box-shadow:0 12px 30px rgba(0,0,0,0.12);
    padding:22px;
    border-radius:16px;
    height:315px;
    position:relative;
    overflow:hidden;
    z-index:1;
    transition:all .35s ease;
}


/* header */
.info_right_dtls h4{
    font-size:16px;
    text-transform:uppercase;
    color:#333;
    font-weight:700;
    position:relative;
}

.info_right_dtls h4::after{
    content:"";
    position:absolute;
    bottom:-6px;
    left:0;
    width:45px;
    height:3px;
    background:#09B598;
    border-radius:4px;
}

/* list */
.info_right_dtls ul{
    padding:0;
    margin:18px 0 0 0;
}

.info_right_dtls ul li{
    list-style:none;
    margin-bottom:14px;
    display:flex;
    align-items:center;
    gap:12px;
    font-size:14px;
    color:#444;
    transition:.3s;
}

/* icon style */
.info_right_dtls ul li img{
    width:34px;
    background:#09b598;
    padding:7px;
    border-radius:8px;
    transition:.35s;
}

/* hover animation */
.info_right_dtls ul li:hover img{
    transform:scale(1.15) rotate(6deg);
    box-shadow:0 5px 12px rgba(9,181,152,0.4);
}

/* hover text */
.info_right_dtls ul li:hover{
    transform:translateX(5px);
    color:#09B598;
}

/* background image */
.inner_support_bg{
    position:absolute;
    bottom:-25px;
    right:-70px;
    width:300px;
    opacity:.85;
    z-index:-1;
}


/* subtle glow circle */
.info_right_dtls::before{
    content:"";
    position:absolute;
    top:-80px;
    right:-80px;
    width:200px;
    height:200px;
    background:radial-gradient(circle,#09b59830,transparent);
    border-radius:50%;
    z-index:-1;
}




/* 
Flight list */
.top_modify_seach_box{
    background:#fff5d9;
    padding:10px 18px;
    border-radius:10px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.1);
    transition:.3s;
    border:1px solid #f1f1f1;
        position: sticky;
    top: 0;
    z-index: 9;
}

/* left */
.left_search_dtls{
    display:flex;
    align-items:center;
    gap:12px;
}

/* route box */
.desti_car_dtls{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:13px;
    color:#444;
    background:#f7f7f7;
    padding:8px 14px;
    border-radius:30px;
    font-weight:500;
}

/* route divider line */
.route_line{
    width:20px;
    height:1px;
    background:#ccc;
}

/* flight icon */
.desti_car_dtls img{
    width:18px;
    transition:.4s;
}

.from_to_box:hover .desti_car_dtls img{
    transform:translateX(5px);
}

/* class */
.desti_class_dtls{
    font-size:12px;
    color:#09B598;
    background:#e9f9f6;
    padding:7px 14px;
    border-radius:20px;
    font-weight:700;
}
.editable_multi_city_routes{width:60%;}

/* right */
.right_serch_dlts{
    display:flex;
    align-items:center;
    gap:10px;
}

/* date */
.search_date_dtls{
    background:#09B598;
    padding:7px 14px;
    border-radius:20px;
    font-size:12px;
    color:#fff;
    font-weight:600;
    display:flex;
    align-items:center;
    gap:6px;
}

.search_date_dtls img{
    width:14px;
}

/* traveller */
.view_search_travller{
    font-size:12px;
    color:#444;
    background:#f3f3f3;
    padding:7px 14px;
    border-radius:20px;
    display:flex;
    align-items:center;
    gap:6px;
}

.view_search_travller img{
    width:15px;
}

/* modify button */
.modify_search_btn{
    font-size:12px;
    background:#ff6161;
    color:#fff;
    border-radius:10px;
    height:58px;
    padding:8px 12px;
    font-weight:600;
    transition:.3s;
    border:none;
    width:fit-content;
}

/* button hover */
.modify_search_btn:hover{
    transform:translateY(-2px);
    box-shadow:0 6px 15px rgba(255,97,97,0.45);
    background:#f53737;
    color:#fff;
}

.commession_box_flx{
    background:#fff;
    padding:10px 10px;
    border-radius:40px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, .1);
    transition:all .35s ease;
    border:1px solid #f1f1f1;
}


/* LEFT BUTTON AREA */

.left_commession{
    display:flex;
    gap:10px;
}

.left_commession .btn{
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-size:13px;
    border-radius:30px;
    padding:7px 18px;
    border:none;
    position:relative;
    overflow:hidden;
    transition:.35s;
}

.left_commession .btn .fare-btn-label-text{
    position:relative;
    z-index:1;
}

.left_commession .btn .fare_btn_eye{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:25px;
    height:25px;
    border-radius:50%;
    background:rgba(255,255,255,.4);
    box-shadow:0 1px 4px rgba(0,0,0,.12);
    cursor:pointer;
    line-height:1;
    flex-shrink:0;
    color:#fff;
    transition:background .2s ease, box-shadow .2s ease, transform .15s ease;
}

.left_commession .btn .fare_btn_eye i{
    font-size:11px;
    color:#fff;
    line-height:1;
}

.left_commession .btn .fare_btn_eye:hover{
    background:rgba(255,255,255,.52);
    box-shadow:0 2px 6px rgba(0,0,0,.15);
}

.left_commession .commission_btn:focus-visible,
.left_commession .netfare_btn:focus-visible{
    outline:2px solid #fff;
    outline-offset:2px;
}

.commission_btn.is-active{
    box-shadow:0 0 0 2px #fff,0 0 0 4px #07a386;
}

.netfare_btn.is-active{
    box-shadow:0 0 0 2px #fff,0 0 0 4px #ff3e3e;
}

.left_commession .commission_btn:not(.is-active),
.left_commession .netfare_btn:not(.is-active){
    opacity:.88;
}

body[data-fare-mode="all"] .left_commession .commission_btn,
body[data-fare-mode="all"] .left_commession .netfare_btn{
    opacity:1;
}

body[data-fare-mode="all"] .fare_row .form-check-label{
    color:#333 !important;
}

body[data-fare-mode="all"] .duration_inner_box h4,
body[data-fare-mode="all"] .duration_inner_box strong,
body[data-fare-mode="all"] .internat_price_box h4{
    color:#333 !important;
}


body[data-fare-mode="net"] .duration_inner_box h4,
body[data-fare-mode="net"] .duration_inner_box strong,
body[data-fare-mode="net"] .internat_price_box h4{
    color:#e63946 !important;
}

body[data-fare-mode="commission"] .duration_inner_box h4,
body[data-fare-mode="commission"] .duration_inner_box strong,
body[data-fare-mode="commission"] .internat_price_box h4{
    color:#0bbf89 !important;
}

/* Booking summary: published fare in h4 (not mode-coloured); commission/net in .internat_price_box__extra */
body[data-fare-mode] .new_seleted_card .internat_price_box h4{
    color: #1a2b3c !important;
}

/* gradient animation */

.commission_btn{
    background:linear-gradient(135deg,#09b598,#07a386);
    color:#fff;
}

.netfare_btn{
    background:linear-gradient(135deg,#ff6161,#ff3e3e);
    color:#fff;
}

.left_commession .btn:hover{
    transform:translateY(-2px);
    color:#fff;
}

/* RIGHT FILTERS */

.right_fare_box ul{
    display:flex;
    align-items:center;
    gap:10px;
    padding-left:0;
    margin-bottom:0;
}

.right_fare_box ul li{
    list-style:none;
    border:1px solid #e2e2e2;
    padding:6px 14px;
    border-radius:30px;
    display:flex;
    align-items:center;
    gap:6px;
    background:#fafafa;
    transition:.3s;
}

/* hover effect */
.right_fare_box ul li:hover{
    background:#fff;
    border-color:#09b598;
    box-shadow:0 4px 12px rgba(0,0,0,0.08);
    transform:translateY(-2px);
}

/* icon animation */
.right_fare_box ul li img{
    width:14px;
    transition:.3s;
}

.right_fare_box ul li:hover img{
    transform:rotate(-10deg) scale(1.1);
}

.right_fare_box ul li select{
    border: none;
    font-size: 12px;
    height: 20px;
    background: transparent;
    cursor: pointer;
    width: 5rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.right_fare_box ul li select:focus-visible{
    outline:none;
}











.fare_calendar{
    display:flex;
    align-items:center;
    width:100%;
    background:#fff;
    border-radius:10px;
}

.fare_wrapper{
    display:flex;
    overflow:hidden;
    scroll-behavior:smooth;
    box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, .1);
}

.fare_wrapper .fare_item{
        min-width: 133px;
    background: #fff;
    padding: 10px;
    text-align: center;
    cursor: pointer;
    border-bottom: 3px solid transparent;
    transition: 0.3s;
    border-right: 1px solid #c9c9c9;
}
.fare_wrapper .fare_item:last-child{border-right:0px;}

.fare_item span{
    display:block;
    font-size:13px;
    color:#666;
}

.fare_item strong{
    font-size:16px;
    color:#000;
}

.fare_item.active{
    border-bottom:4px solid #2f80ed;
}
.fare_item.active strong{
    color: #2f80ed;
}

.fare_calendar .arrow{
     border: none;
    cursor: pointer;
    font-size: 18px;
    background: #09b598; 
    height: 100%;
    width: 100%;
    padding: 20px 15px;
}
.fare_calendar .arrow:hover{background:#0b9c83;}
.arrow_btn{height: -webkit-fill-available; text-align: center; align-items: center; display: flex;}






.flight_top_bar{
    background:#fff;
    border-radius:30px;
    padding:10px 10px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    box-shadow:0 5px 18px rgba(0,0,0,0.08);
    transition:.3s;
    padding-right: 20px;
}


/* FILTER BUTTON */

.filter_btn{
    background:#e9e9e9;
    padding:6px 20px;
    border-radius:25px;
    font-size:13px;
    font-weight:600;
    display:flex;
    align-items:center;
    gap:6px;
    cursor:pointer;
    transition:.3s;
    color:rgba(159, 159, 159, 1);
    font-size:15px;
}

.filter_btn svg{
    width:14px;
}

/* FLIGHT TEXT */

.flight_route{
    font-size:15px;
    color:#333;
}

.flight_route span{
    color:#09b598;
    font-weight:600;
}

.flight_route b{
    color:#09b598;
}

/* SHARE SECTION */

.share_flights{
    display:flex;
    align-items:center;
    gap:12px;
}

.share_flights span{
    font-size:11px;
    letter-spacing:.5px;
    color:rgba(0, 0, 0, 0.68);
    font-weight:400;
}

/* ICONS */

.share_icons{
    display:flex;
    gap:10px;
}

.share_icons img{
    width:16px;
    cursor:pointer;
    transition:.3s;
}

/* icon animation */

.share_icons img:hover{
    transform:translateY(-3px) scale(1.15);
}



.inner_flight_content{
    background:#fff;
    padding:15px 15px;
    transition:.35s;
    position: relative;
    border-top-left-radius:15px;
    border-top-right-radius:15px;
    
}
.inner_flight_content .flight_card{border-radius:16px;box-shadow:0 6px 25px rgba(0,0,0,0.08);overflow: hidden;}

/* airline */

.inner_flight_content .airline{
    display:flex;
    align-items:flex-start;
    gap:10px;
}

.inner_flight_content .airline img{
    width:35px;
}

.inner_flight_content .airline h4{
    margin:0;
    font-size:16px;
}

.inner_flight_content .airline span{
    font-size: 11px;
    color: #777;
    background: transparent;
}

/* time */

.flight_time{width:30%;}
.flight_time h3{
    margin:0;
    font-size:20px;
    font-weight:700;
}

.flight_time span{
    font-size:12px;
    color:#777;
}

.flight_time p{
    margin:2px 0 0;
    font-size:12px;
    font-weight: 600;
    color:var(--dynamic-color);
}

/* duration */

.flight_duration{
    text-align: center;
    padding: 10px 10px;
    position: relative;
    width: 60%;
    display: flex;
    align-items: center;
    gap: 10px;
}

.flight_duration .line{
    width: 77%;
    height: 1px;
    background: #ccc;
    margin: auto;
    position: relative;
}
.flight_duration .line::after { content: ''; width: 10px; height: 10px; background: #ccc; position: absolute; right: 0; border-radius: 100%; top: -4px;z-index:-1; }

.flight_duration .line::before { content: ''; width: 10px; height: 10px; background: #ccc; position: absolute; left: 0; border-radius: 100%; top: -4px;z-index:-1; }

.flight_duration_center{
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 5px;
    width: 100%;
    pointer-events: none;
    line-height: 1.15;
}
.flight_duration_time{
    font-size: 13px;
    font-weight: 600;
    color: #333;
}
.flight_stop_type{
    font-size: 10px;
    color: #e74c3c;
    font-weight: 500;
}

/* fares */

.fare_box{
    display:flex;
    flex-direction:column;
    gap:10px;
    
}

/* row design */

.fare_row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:5px;
    padding: 5px 6px;
    border-radius:5px;
    border:1px solid #eee;
    background:#fff;
    font-size:11px;
    transition:all .25s ease;
    cursor: pointer;
}

/* hover effect */

.fare_row:hover{
    box-shadow:0 4px 10px rgba(0,0,0,0.08);
    transform:translateY(-2px);
}

/* active row */

.fare_row.active{
    border:1px solid #0bbf89;
    background:#f4fffb;
}

/* price */

.form-check-label{
    font-weight:600;
    color:#333;
}

/* commission */

.commission{
    color:#0bbf89;
    font-weight:500;
}

/* final price */

.final{
    color:#e63946;
    font-weight:600;
}

/* tags */

.tag{
    padding: 2px 6px;
    border-radius: 20px;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: .5px;
    color: #fff;
    font-size: 8px;
    width: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* tag colors */

.main{background:#1f5fa6;}
.sme{background:#8e44ad;}
.flexi{background:#d35400;}
.super{background:#4b2bd4;}

/* checkbox spacing */

.form-check{
    display:flex;
    align-items:center;
    gap:6px;
    margin:0;
}

/* more fare button */

.more_fare_box{
    display:flex;
    justify-content:center;
}

.more_fare{
    display:flex;
    align-items:center;
    gap:8px;
    border:1px dashed #0bbf89;
    background:#f4fffb;
    color:#0bbf89;
    padding:8px 14px;
    border-radius:20px;
    font-size:13px;
    font-weight:600;
    transition:all .25s ease;
}

.more_fare:hover{
    background:#0bbf89;
    color:#fff;
    transform:translateY(-1px);
}

.more_fare img{
    height:14px;
}

/* book */

.book_area{
    text-align:right;
}

/* button */

.book_btn{
    position:relative;
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:10px 20px;
    border:none;
    border-radius:30px;
    font-weight:700;
    font-size:14px;
    color:#fff;
    cursor:pointer;
    background:linear-gradient(120deg,#00c6a7,#00a88e,#00c6a7);
    background-size:200% auto;
    transition:.4s;
    overflow:hidden;
}

/* shimmer effect */

.book_btn::before{
    content:"";
    position:absolute;
    top:0;
    left:-100%;
    width:60%;
    height:100%;
    background:rgba(255,255,255,.3);
    transform:skewX(-25deg);
    transition:.6s;
}

/* hover */

.book_btn:hover{
    background-position:right center;
    transform:translateY(-3px) scale(1.05);
    
}

.book_btn:hover::before{
    left:130%;
}

/* click */

.book_btn:active{
    transform:scale(.95);
}

/* plane animation */

.book_btn .plane{
    transition:.4s;
}

.book_btn:hover .plane{
    transform:translateX(6px) rotate(10deg);
}

/* hold text */

.hold{
    display:block;
    margin-top:6px;
    font-size:12px;
    color:#666;
}

/* bottom warning */

.flight_bottom{
    background:#fff1cc;
    padding:3px 8px;
    border-radius:0 0 16px 16px;
    font-size:13px;
    color:#8a5b00;
}
.flight_dtls_Content{display:flex;width:100%;justify-content:space-between;}


.flight_duration img{border: 1px solid #ddd; width: 30px; background: #f1f1f1; padding: 5px; border-radius: 30px;   }

.fare_box .form-check-input:focus{
    box-shadow:none;
}
/* .fare_box .form-check-input:checked{
    background:var(--dynamic-color);
} */
.fare_box  .form-check-input:checked { background-color: #09b598; border-color: #09b598; }
.fare_box .form-check-input{
    width: 15px; height: 15px; border-radius: 100%;
}
.flight_accomo ul{padding-left:0;margin-bottom:0px;}
.flight_accomo ul li{list-style: none; font-size: 12px; border-right: 1px solid #ddd; padding-right: 8px;font-weight: 400;align-items: center; display: flex; gap: 4px;}
.flight_accomo ul li img{width:15px;}
.flight_accomo ul li:last-child{border-right:0px;}
.flight_accomo ul{display:flex;align-items:center;gap:5px;}
.flight_accomo{display:flex;align-items:center;justify-content: space-between;margin-top:20px;}

.flight_accomo .flight_accomo_actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
}

.flight_accomo .flight_accomo_actions .more_fare_box {
    justify-content: flex-start;
}

.flight_fare{font-size: 13px; color: rgba(115, 115, 115, 1);}


.more_fare_box{text-align:center;}
.more_fare_box button{border: 1px solid #ddd; border-radius: 30px; font-size: 10px; color: #7e7e7e;background:#fff;}
.more_fare_box button:hover{border-color:#ddd;background:#fff;color:#000;}
.more_fare_box button.active{border-color:#ddd;outline:none;background:#fff;}
.fare_row.hidden_fare{
    display:none;
}


.main_box_content .flight_card {
    border-left: 4px solid #ddd;
    box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, .1);
    border-radius: 20px;
    margin-bottom: 20px;
    transition: all 0.3s ease;
}


.arrow_icon{
    display:flex;
    transition:0.3s;
}

.more_fare.opened .arrow_icon{
    transform:rotate(180deg);
}
.more_fare_box button {
    display:flex;align-items:center;gap:6px;padding: 5px 8px; border-radius: 10px;
}
.more_fare_box button img{
    width: 12px;
}
.inner_flight_content table tr td{padding:0px 5px;}

.left_main_filter{position: relative;background: #fff; border-radius: 10px;height:auto;margin-top:20px;overflow: hidden;}
.filter_title{background: rgba(255, 97, 97, 1); color: #fff; position: absolute; padding: 8px 15px; border-radius: 30px; top: -20px; right: 22px; font-size: 13px; font-weight: 600;}
.filter_header{padding: 15px; border-bottom: 1px solid #ddd;}
.filter_header h4{font-size: 20px; color: #363636; margin-bottom: 0px;}
.ai_filter_box{padding:15px;}
.inner_ai_box{padding: 10px; border: 1px solid #ddd; border-radius: 10px; background: #f7f7f7;}

.inner_ai_box .form-floating>.form-control:focus{box-shadow:none;    border-color: #00ba9d;}

.ai_title{text-transform: uppercase; background: linear-gradient(to right, #30CFD0 0%, #330867 100%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; font-size: 14px; font-weight: 600; display: flex; align-items: center; gap: 12px;}

.inner_ai_box .ai_flight_btn{width: 100%; margin-top: 10px; color: #ffffff; font-weight: 500; border-radius: 10px; padding: 8px 10px; border: none; background: #00B296;}

.inner_ai_box .ai_flight_btn:disabled{background:#ddd;color:#00B296;cursor: not-allowed;}

.form-control:focus { box-shadow: none; border-color: #00b89b;}

.filter_flight_dtls{
    padding: 15px;
}

.resturn_flight{font-size: 14px; cursor: pointer; color: #878787;}


/* stops */

.stops_filter{
    display:flex;
    gap:10px;
    margin-bottom:20px;
    flex-wrap: wrap;
}

.stop_btn{
    padding: 10px 18px;
    border-radius: 10px;
    border: 1px solid #ccc;
    background: #f3f3f3;
    cursor: pointer;
    font-size: 12px;
}

.stop_btn.active{
    border-color:#1aa77c;
    background:#fff;
    box-shadow:0 0 0 2px rgba(26,167,124,.2);
}


.flight_price_range_box .main_common_box{
    background: #fff;
    padding: 10px 15px;
    border-radius: 12px;
    border: 1px solid #e6e6e6;
    margin-bottom: 12px;
    transition: .3s;
}

.flight_price_range_box .main_common_box:last-child{margin-bottom:0px;}

/* heading */

.flight_price_range_box h4{
    font-size:14px;
    font-weight:600;
    margin-bottom:12px;
}

/* range slider */

.range_slider{
    width:100%;
    height:6px;
    border-radius:6px;
    appearance:none;
    outline:none;
    background:linear-gradient(to right,#1aa77c 0%,#ddd 0%);
    transition:background .3s;
}

/* thumb */

.range_slider::-webkit-slider-thumb{
    appearance:none;
    width:20px;
    height:20px;
    border-radius:50%;
    background:#fff;
    border:3px solid #1aa77c;
    cursor:pointer;
    transition:.2s;
}

.range_slider::-webkit-slider-thumb:hover{
    transform:scale(1.2);
    box-shadow:0 0 0 6px rgba(26,167,124,.15);
}

/* firefox */

.range_slider::-moz-range-thumb{
    width:20px;
    height:20px;
    border-radius:50%;
    background:#fff;
    border:3px solid #1aa77c;
}

/* values */

.range_values{
    display:flex;
    justify-content:space-between;
    font-size:12px;
    margin-top:8px;
    color:#666;
}


.filter_box h4{font-size: 16px; margin-bottom: 0px;}

.filter_airline_box{padding:15px;}
.filter_airline_box .ailine_top_title{display:flex;align-items:center;justify-content: space-between;}




.airline_left{
display:flex;
align-items:center;
gap:8px;
font-size:14px;
    color: #706c6c;
}
.ailine_top_title h4{font-size:16px;margin-bottom:0px;}
.inner_airlines_box{margin-top:10px;}
 .airline_check{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:6px 0;
    gap:10px;
    margin-bottom:10px;
    font-size:15px;
}
.airline_check .form-check-input{
    margin:0;
}
.inner_airlines_box .airline_check:last-child{
    margin-bottom:0px;
}
.inner_airlines_box .d-flex{margin-bottom:10px;}
.inner_airlines_box .d-flex:last-child{margin-bottom:0px;}
.airline_left img{width:25px;height:25px;}

.form-check-input:focus{box-shadow:none;}
.form-check-input:checked{background-color: #09b598; border-color: #09b598;}


.departure_box{padding:15px;}
.departure_box .departure_check{display: flex; justify-content: space-between; align-items: center; padding: 3px 0; gap: 10px; margin-bottom: 5px;font-size: 13px; gap: 50px; font-weight: 500;    color: #706c6c;}
.departure_check .form-check-input{font-size:18px;}
.departure_box .departure_check .form-check-label{width: 13rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}

.departure_box .departure_check:last-child{margin-bottom:0px;}
.departure_box h4{font-size: 16px;}
.departure_box .common_inner_departure{margin-bottom:10px;}
.departure_box .common_inner_departure:last-child{margin-bottom:0px;}

.time_filter{
padding:15px;
}

.time_filter h4{
font-size:16px;
margin:0px 0 10px;
}

.time_grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:12px;
}

.time_card{
border:1px solid #dcdcdc;
border-radius:12px;
padding:10px;
text-align:center;
cursor:pointer;
transition:all .3s ease;
background:#fff;
}

.time_icon{
font-size:20px;
}
.time_icon img{margin-bottom:5px;}
.time_card p{margin-bottom:0px;font-size:14px;}

/* hover animation */

.time_card:hover{
border-color:#14b38b;
}

/* active state */

.time_card.active{
border:1px solid #14b38b;
background:#e9fbf6;
}

.time_filter .common_departurebox{margin-bottom:15px;}
.time_filter .common_departurebox:last-child{margin-bottom:0px;}







.fare_filter{
    padding:15px;
    background:#fff;
}

/* heading */

.fare_filter h4{
    font-size:15px;
    font-weight:600;
    margin-bottom:12px;
    color:#222;
    position:relative;
}

.mt{
    margin-top:22px;
}

/* toggle row */

.fare_toggle{
    display:flex;
    align-items:center;
    justify-content:space-between;
    margin-bottom: 8px;
    padding: 5px 10px;
    border-radius:8px;
    transition:all .2s;
}

.fare_toggle:hover{
    background:#ecfffc;
}

.fare_toggle--refundable > span:last-of-type{
    color:#0bbf89;
    font-weight:600;
}

.fare_toggle--nonrefundable > span:last-of-type{
    color:#e63946;
    font-weight:600;
}

.fare_toggle--refundable:hover{
    background:rgba(11,191,137,0.1);
}

.fare_toggle--nonrefundable:hover{
    background:rgba(230,57,70,0.08);
}

/* switch */

.switch{
    position:relative;
    display:inline-block;
    width:38px;
    height:20px;
}

.switch input{
    opacity:0;
    width:0;
    height:0;
}

.slider{
    position:absolute;
    cursor:pointer;
    inset:0;
    background:#ddd;
    border-radius:30px;
    transition:.3s;
}

.slider:before{
    position:absolute;
    content:"";
    height:16px;
    width:16px;
    left:2px;
    bottom:2px;
    background:white;
    border-radius:50%;
    transition:.3s;
    box-shadow:0 2px 4px rgba(0,0,0,0.2);
}

input:checked + .slider{
    background:#14b38b;
}

.fare_toggle--refundable input:checked + .slider{
    background:#0bbf89;
}

.fare_toggle--nonrefundable input:checked + .slider{
    background:#e63946;
}

input:checked + .slider:before{
    transform:translateX(18px);
}

/* class list */

.class_list{
    margin-top:10px;
}

.class_item{
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 13px;
    padding: 5px 10px;
    border-radius: 8px;
    transition: all .2s;
    cursor: pointer;
    margin-bottom: 5px;
}
.class_item:last-child{
    margin-bottom:0px;
}

.class_item:hover{
    background:#ecfffc;
}

.class_item.is-selected{
    background:rgba(9, 181, 152, 0.14);
    outline:1px solid rgba(9, 181, 152, 0.45);
    font-weight:400;
}

/* color boxes */

.color{
    width:16px;
    height:16px;
    border-radius:4px;
    display:inline-block;
}

/* colors */

.main{background:rgba(22, 100, 171, 1);}
.publish{background:#000;}
.sme{background:#333;}
.flexi{background:#e65100;}
.super{background:#5a1fd1;}
.ins{background:#1c4c73;}




.about_payment{display: flex; align-items: center; gap:120px;}
.change_flight{background: rgba(255, 97, 97, 1); border: none; padding: 10px 20px; border-radius: 30px; font-size: 14px; color: #fff; display: flex; align-items: center; gap: 8px; text-transform: uppercase; font-weight: 600;}

.change_flight:disabled{background:#ddd;cursor: no-drop;}

.right_button_box{display: flex;align-items:center;}
.preview_box.active{background: rgba(9, 181, 152, 1); padding: 8px 15px; border-radius: 30px; color: #fff; display: flex; gap: 5px; text-transform: uppercase; font-weight: 600; font-size: 13px; align-items: center;}

.preview_box svg path{fill:var(--dynamic-color);}

.preview_box.active svg path{fill:var(--white-color);}

.preview_box{background: #fff; padding: 8px 15px; border-radius: 30px; color: #000; display: flex; gap: 5px; text-transform: uppercase; font-weight: 600; font-size: 13px; align-items: center; border: 1px solid #ddd;}
.right_button_box img{height:20px;margin-right:5px;}

.booking-stepper{
    position: relative;
    display: flex;
    align-items: center;
    gap: 30px;
}

.booking-stepper__track{
    position: absolute;
    left: 52px;
    right: 52px;
    top: 50%;
    transform: translateY(-50%);
    height: 2px;
    background: linear-gradient(90deg, rgba(9, 181, 152, 0.35), rgba(160, 170, 190, 0.35));
    z-index: 0;
}

.booking-step{
    position: relative;
    z-index: 1;
    min-width: 180px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 12px;
    background: #f7f9fc;
    border: 1px solid #e4e8f0;
}

.booking-step__index{
    width: 34px;
    height: 34px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 11px;
    color: #4a5672;
    background: #eef1f7;
    border: 1px solid #d7deeb;
    flex-shrink: 0;
}

.booking-step__text{
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}

.booking-step__text strong{
    font-size: 12px;
    text-transform: uppercase;
    color: #1f2a44;
    letter-spacing: 0.2px;
}

.booking-step__text small{
    font-size: 11px;
    color: #6f7d96;
}

.booking-step.is-current{
    border-color: rgba(9, 181, 152, 0.35);
    background: linear-gradient(135deg, #ecfffb 0%, #f6fbff 100%);
    box-shadow: 0 6px 18px rgba(9, 181, 152, 0.18);
}

.booking-step.is-complete{
    border-color: rgba(9, 181, 152, 0.25);
    background: #f7fffc;
}

.booking-step.is-complete .booking-step__index{
    background: #d9f6ef;
    border-color: #8fe0cd;
    color: #0a8c72;
}

.booking-step.is-complete .booking-step__icon{
    color: #0a8c72;
    background: #def7f1;
    border-color: #bfece0;
}

.booking-step.is-current .booking-step__index{
    background: #09b598;
    border-color: #09b598;
    color: #ffffff;
}

@media (max-width: 991px){
    .booking-stepper{
        width: 100%;
        overflow-x: auto;
        padding: 10px;
        gap: 10px;
    }
    .booking-stepper__track{
        display: none;
    }
    .booking-step{
        min-width: 165px;
    }
}



.payment_header { background: rgba(209, 209, 209, 1); padding: 10px 20px; font-size: 16px; font-weight: 600; }
.flight_payment_left{background: #fff; border-radius: 20px; overflow: hidden;box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.1);}
.flight_dtls_inner_box{padding:15px;}
.inner_desti_dtls{border: 1px solid #ddd; border-radius: 10px;}
.flight-header h3 { font-size: 15px; font-weight: 600; margin-bottom: 0px; color:#000;}


.desti_box{padding:10px;}

.flight-header{
padding:10px 0px;
}
.inner_top_glx{display:flex;
justify-content:space-between;
align-items:center;    padding: 0px 10px;position: relative;}

.inner_top_glx::before { content: ''; border: 2px solid #000; height: 100%; position: absolute; left: 0px; }




.flight-meta{
font-size:14px;
color:#777;
margin-top:4px;
}
.flight-meta .data{
    padding: 5px 5px; background: #ffedd1; font-size: 11px; border-radius: 5px; color: #000; font-weight: 500;
}
.flight-meta span{font-size: 12px; color: #000;}

.flight-tags{
display:flex;
gap:3px;
align-items:end;
flex-direction: column;
}

.flight-tags .refund{
color:rgba(9, 181, 152, 1);
font-weight:600;
font-size:15px;
}

.class{
background:#f4e7d4;
padding:4px 10px;
border-radius:6px;
font-size:10px;
}

.main_tags_box .main{
background:#2c7be5;
color:#fff;
padding:4px 10px;
border-radius:6px;
font-size:10px;
border:none;
}

.main_tags_box .rules{
border:1px solid #ddd;
background:#fff;
padding:4px 10px;
border-radius:20px;
cursor:pointer;
font-size: 11px;
}

/* Fare rules modal (passenger / payment flow) */
.fare-rules-modal .modal-header{
    background: #f4faf8;
    border-bottom-color: #dee8e5 !important;
}
.fare-rules-modal .modal-title{
    color: #0d5c4e;
}
.fare-rules-modal .fare-rules-trip{
    border-radius: 10px;
    border: 1px solid #e8eeec !important;
}
.fare-rules-modal .fare-rules-table th,
.fare-rules-modal .fare-rules-table td{
    font-size: 13px;
    vertical-align: middle;
    padding: 0.5rem 0.65rem;
}
.fare-rules-modal .modal-body h6{
    color: #1a3d36;
    font-size: 0.95rem;
}
.fare-rules-modal .modal-footer .btn-secondary{
    background: #6c757d;
    border: none;
}
.fare-rules-modal .fare-rules-tabs{
    flex-wrap: nowrap;
    overflow-x: auto;
    background: #dce7ee;
    border: 1px solid #c7d6df;
    border-radius: 8px;
    padding: 6px;
    gap: 4px;
}
.fare-rules-modal .fare-rules-tabs .nav-link{
    border-radius: 6px;
    color: #5f6771;
    font-size: 12px;
    font-weight: 500;
    white-space: nowrap;
    padding: 8px 14px;
}
.fare-rules-modal .fare-rules-tabs .nav-link.active{
    background: #fff;
    color: #0d5c4e;
    box-shadow: 0 1px 4px rgba(0,0,0,0.08);
}
.fare-rules-modal .fare-rules-tab-content{
    border: 1px solid #d5dce2;
    border-radius: 8px;
    background: #f8fafb;
    padding: 12px;
}
.fare-rules-modal .fare-rules-tab-content .tab-pane{
    transform: translateX(10px);
    opacity: 0;
    transition: all .22s ease;
}
.fare-rules-modal .fare-rules-tab-content .tab-pane.show.active{
    transform: translateX(0);
    opacity: 1;
}
.fare-rules-pane-inner{
    border: 1px solid #d5dde4;
    border-radius: 8px;
    overflow: hidden;
    background: #fff;
}
.fare-rules-pane-route{
    padding: 10px 14px;
    background: #dce7ee;
    font-size: 16px;
    font-weight: 400;
}
.fare-rules-pane-table th,
.fare-rules-pane-table td{
    padding: 10px 12px;
    font-size: 13px;
    border-color: #e3e8ec;
}
.fare-rules-pane-table thead th{
    background: #e7f0f5;
    font-weight: 400;
}
.fare-rules-notes{
    padding: 6px 4px 0;
}
.fare-rules-notes ul{
    list-style: none;
    padding-left: 0;
}
.fare-rules-notes li{
    position: relative;
    padding-left: 18px;
    margin-bottom: 8px;
    font-size: 13px;
    color: #49545e;
    line-height: 1.45;
}
.fare-rules-notes li::before{
    content: '';
    position: absolute;
    left: 0;
    top: 8px;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #8b98a5;
}

.flight_dep_dtls{
background:#f7f7f7;
border-radius:8px;
padding:10px;
margin-bottom:10px;
}
.flight_dep_dtls .timeline ul{padding-left:0;margin-bottom: 0px;width:100%;}
.flight_dep_dtls .timeline ul li{display:flex;gap:10px;position: relative;}
.flight_dep_dtls .timeline ul li::after{content: ''; background: #ddd; width: 10px; height: 10px; border-radius: 30px; position: absolute; left: 76px; top: 5px;}
.flight_dep_dtls .timeline ul li::before { content: ''; position: absolute; border: 1px dashed #ddd; height: 95%; left: 9%; top: 9px; }

.flight_dep_dtls .timeline ul li:last-child::before{
    height:0;
}

.ai-search-modal .modal-content {
    border: none;
    border-radius: 18px;
    overflow: hidden;
}

.ai-search-modal .modal-header {
    border-bottom: 1px solid #eceff4;
    padding: 16px 20px;
}

.ai-search-modal .modal-title {
    color: #1f2a44;
    font-size: 20px;
    font-weight: 700;
}

.ai-search-tabs {
    border-bottom: 0px;
    gap: 10px;
    padding: 0 20px;
    margin-top: 12px;
}

.ai-search-tabs .nav-link {
    border: none;
    border-radius: 10px 10px 10px 10px;
    color: #5f6b82;
    font-weight: 600;
    padding: 5px 10px;
    border: 1px solid #ddd;
    height: 43px;
    font-size:13px;
}

.ai-search-tabs .nav-link.active {
    background: #e3fffb;
    border-color: #00b296;
}

.ai-search-tab-content {
    padding: 20px;
}

.ai-search-textarea {
    min-height: 160px;
    resize: none;
    border-radius: 12px;
    border: 1px solid #d8dee8;
    padding: 14px;
    width: 100%;
    outline: none;
}

.ai-search-textarea:focus {
    border-color: #00b296;
    box-shadow: 0 0 0 3px rgba(0, 178, 150, 0.12);
}

.ai-search-actions{
    margin-top: 12px;
    display: flex;
    gap: 10px;
}

.ai-assistant-panel{
    margin-top: 14px;
    border: 1px solid #e4ebf5;
    border-radius: 12px;
    padding: 12px;
    background: #fbfdff;
}

.ai-assistant-bubble{
    border-radius: 12px;
    border: 1px solid #e6edf6;
    background: #f4f7fb;
    padding: 9px 11px;
    font-size: 13px;
    color: #22324f;
}

.ai-assistant-bubble + .ai-assistant-bubble{
    margin-top: 8px;
}

.ai-assistant-bubble--user{
    background: #e9fffa;
    border-color: #bcefe3;
}

.voice-record-box {
    border: 1px solid #d8dee8;
    border-radius: 14px;
    padding: 18px;
    text-align: center;
    background: #f9fbff;
}

.voice-record-status {
    font-size: 14px;
    color: #4f5d75;
    margin-bottom: 10px;
}

.voice-record-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #dc3545;
    display: inline-block;
    margin-right: 8px;
    opacity: 0.4;
}

.voice-record-dot.recording {
    animation: blinkDot 1s infinite;
    opacity: 1;
}

.voice-wave {
    display: flex;
    justify-content: center;
    align-items: end;
    gap: 4px;
    height: 36px;
    margin: 10px 0 14px;
}

.voice-wave span {
    display: inline-block;
    width: 5px;
    height: 8px;
    background: #00b296;
    border-radius: 4px;
    transition: height 0.2s ease;
}

.voice-wave.recording span {
    animation: wavePulse 0.9s infinite ease-in-out;
}

.voice-wave.recording span:nth-child(2) {
    animation-delay: 0.1s;
}

.voice-wave.recording span:nth-child(3) {
    animation-delay: 0.2s;
}

.voice-wave.recording span:nth-child(4) {
    animation-delay: 0.3s;
}

.voice-wave.recording span:nth-child(5) {
    animation-delay: 0.4s;
}

.voice-timer {
    color: #1f2a44;
    font-weight: 700;
    margin-bottom: 14px;
}

.voice-playback {
    padding-top: 8px;
    border-top: 1px solid rgba(31, 42, 68, 0.1);
}

.voice-playback__audio {
    display: block;
    width: 100%;
    max-height: 48px;
}

@keyframes wavePulse {
    0%,
    100% {
        height: 8px;
    }
    50% {
        height: 30px;
    }
}

@keyframes blinkDot {
    0%,
    100% {
        opacity: 1;
    }
    50% {
        opacity: 0.2;
    }
}

.flight_dep_dtls .airline{
font-weight:600;
margin-bottom:10px;
display:flex;
align-items:center;
gap:8px;
}

.desti_box .plane{
background:#eee;
padding:2px 8px;
border-radius:20px;
font-size:12px;
margin-left:5px;
}

.timeline{
display:flex;
gap:15px;
margin-bottom:15px;
border-bottom:1px solid #ddd;
padding-bottom:5px;
}

.timeline .time{
width:10%;
text-align:center;
position:relative;
}

.timeline .details{width:90%;}

.details h4{
margin:0;
font-size:15px;
}

.details p{
margin:3px 0;
font-size:13px;
color:#666;
}

.duration{
font-size:12px;
color:#999;
}

.baggage{
display: flex;
    gap: 30px;
    font-size: 13px;
    color: #444;
    margin-top: 10px;
    background: #fff;
    padding: 5px;
    border-radius: 5px;
    border: 1px solid #ddd;
}

.desti_box .layover{
border-left: 2px dashed #ccc;
    padding: 10px 20px;
    margin: 15px 10px 15px 20px;
    color: #666;
    font-size: 14px;
}

.main_tags_box { display: flex; align-items: center; gap: 10px; }






.passen_con_info{background: #fff; border-radius: 20px; overflow: hidden; box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.1);}
.header_top{background: rgba(209, 209, 209, 1); padding: 10px 20px; font-size: 16px; font-weight: 600;}
.pass_info_box{padding:15px;position: relative;}
.contact_box{
    display:flex;
    gap:25px;
    align-items:flex-end;
    margin-bottom:10px;
    padding-right: 138px;
    box-sizing: border-box;
}

@media (max-width: 720px){
    .contact_box{
        flex-wrap: wrap;
        padding-right: 12px;
        padding-top: 36px;
    }
}

.note_box2{font-size:14px;}
.note_box2 strong{width: fit-content;}


.input_group{
    flex:1;
    position: relative;
}

.input_group label{
    display:block;
    font-size:14px;
    margin-bottom:6px;
    color:#333;
}

.mobile_input{
    display:flex;
    gap:10px;
    width:100%;
}

.code_box{
    padding:10px 14px;
    border-radius:6px;
    font-size:13px;
    color:#444;
    background:rgba(209, 209, 209, 0.25);
}

.number_input{
   position: relative;
   width:100%;
}

.number_input input{
    height: 40px;
    border-radius: 8px;
    border: 1px solid #ddd;
    padding: 8px 10px 10px 30px;
    background: #f7f7f7;
    font-size: 12px;
    width: 100%;
}

.email_input{
position: relative;
}

.email_input input{
    height: 40px;
    border-radius: 8px;
    border: 1px solid #ddd;
    padding: 8px 10px 10px 30px;
    background: #f7f7f7;
    font-size: 12px;
    width: 100%;
}

.input_group .icon{
      position: absolute;
    left: 10px;
    top: 17%;
    width: 15px;
}
.note_box {  background: rgba(255, 227, 110, 0.25); padding: 5px 12px; border-radius: 6px; font-size: 12px; width: fit-content; margin-top: 13px;display:flex; margin-top:0px;}

.note_box strong{width:140px;}
.note_box span{font-size:12px;}
/* Passenger contact — compact top-right pill (matches GST toggle) */
.auto_fetch_dtls{
    position: absolute;
    right: 14px;
    top: -14px;
    z-index: 2;
    margin: 0;
    padding: 5px 12px 5px 8px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #fff;
    border: 1px solid rgba(0, 178, 150, 0.4);
    border-radius: 999px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
}

.auto_fetch_dtls-input{
    flex-shrink: 0;
    width: 14px;
    height: 14px;
    margin: 0;
    border: 1px solid #9cc9bf;
    border-radius: 4px;
    cursor: pointer;
    accent-color: #008cfb;
}


.auto_fetch_dtls-label{
    margin: 0;
    cursor: pointer;
    display: flex;
    align-items: center;
    line-height: 1.2;
}

.auto_fetch_dtls-title{
    font-size: 11px;
    font-weight: 700;
    color: #1bb295;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    white-space: nowrap;
}






/* main card */

.traveller_card,
.service_card{
    background:#fff;
    border-radius:14px;
    box-shadow:0 8px 20px rgba(0,0,0,0.08);
    margin-bottom:25px;
    border-radius:20px;
    overflow: hidden;
}
.gst_booking_dtls{
       background:#fff;
    border-radius:14px;
    box-shadow:0 8px 20px rgba(0,0,0,0.08);
    margin-bottom:25px;
    border-radius:20px;
    overflow: hidden;
}

.left_payemt_content_box .card_header{
      background: rgba(209, 209, 209, 1);
    padding: 10px 20px;
    font-size: 16px;
    font-weight: 600;
}

/* body */

.traveller_card  .card_body{
    padding:15px;
}

/* note */

.note_box{
    background:rgba(255, 248, 218, 1);
    padding:6px 16px;
    border-radius:8px;
    font-size:14px;
}

/* adult row */

.adult_row{margin-bottom:20px;padding: 10px; background: #fff;}
.adult_row:last-child{margin-bottom:0px;}

.all_passengers{
    margin-bottom:20px;
    position: relative;
    z-index:1;
    margin-top:0px;
}
.all_passengers::before{content:''; background:#ddd;height:2px;width:100%;position: absolute;left:0;z-index:-1;}

.adult_tag{
    background:#ff6b6b;
    color:#fff;
    padding:6px 14px;
    border-radius:20px;
    font-weight:700;
    font-size:13px;
}

.action_btns{
    display:flex;
    gap:10px;
}

.action_btns .btn{
    border:none;
    padding:8px 16px;
    border-radius:20px;
    font-size:13px;
    font-weight:600;
    cursor:pointer;
}

.upload_btn{
       background: rgba(89, 179, 247, 1)    ;
    color: #fff;
    border: none;
    padding: 6px 15px;
    border-radius: 30px;
    font-size: 13px;
}

.missing_btn{
    background: linear-gradient(-45deg, rgba(255, 193, 7, 1), rgba(255, 122, 0, 1));
    color: #fff;
    border: none;
    padding: 6px 15px;
    border-radius: 30px;
    font-size: 11px;
}

/* form */

.form_grid{
       gap: 15px;
    margin-bottom: 20px;
    display: flex;
    width: 100%;
}

.traveller_card .form_group{
    display:flex;
    flex-direction:column;
    width:100%;
}
.traveller_card .form_group.small{width:310px;}

.traveller_card .form_group.small{
    grid-column:span 1;
}

.traveller_card  .form_group label{
    font-size:13px;
    margin-bottom:6px;
}


.main_input_box img{position: absolute; left: 10px; top: 26%; width: 15px;}

.traveller_card .form_group input{
height: 40px; border-radius: 8px; border: 1px solid #ddd; padding: 8px 10px 10px 30px; background: #f7f7f7; font-size: 12px;width:100%;
}
 input:focus-visible, .form_group select:focus-visible{outline-color: #09b598;}

.traveller_card .form_group select{
    height: 40px; border-radius: 8px; border: 1px solid #ddd; padding: 8px 10px 10px 10px; background: #f7f7f7; font-size: 12px;width:100%;
}


.passport_title{
    font-weight:700;
    margin:20px 0 10px;
    padding-bottom:5px;
    position: relative;
}
.passport_title::after { content: ''; height: 2px; width: 80%; position: absolute; left: 17%; background: #ddd; top: 44%; }

/* services */

.service_box{
    display:flex;
    gap:20px;
    padding:20px;
    flex-wrap: wrap;
}

.service_item { background: #fff; border-radius: 10px; padding: 20px; text-align: center; width: 120px;transition: 0.3s; font-size: 14px; display: flex; flex-direction: column;border:1px solid #ddd;position: relative; }

.service_item .icon{
    font-size:28px;
    margin-bottom:8px;
}

.service_item .icon { font-size: 28px; background: #f3f3f3; margin: auto; border-radius: 40px; width:40px; height: 35px; display: flex; align-items: center; justify-content: center;}

.add_seat_box {background: linear-gradient(82deg, black, #00000057); position: absolute; top: 10px; right: 10px; overflow: hidden; border-radius: 15px; width: 18px; height: 18px; display: flex; align-items: center; justify-content: center;cursor: pointer; }


/* Traveller adults accordion (dropdown header + panel) */
.traveller-adults-accordion{
    border: 1px solid #cfd3d8;
    border-radius: 12px;
    overflow: hidden;
    margin-top: 14px;
    background: #fff;
}

.traveller-adults-header{
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 11px 14px;
    background: #e9ecef;
    border: none;
    border-bottom: 1px solid #d5d9de;
    cursor: pointer;
    text-align: left;
    transition: background .15s ease;
}

.traveller-adults-header:hover{
    background: #e2e6ea;
}

.traveller-adults-title-text{
    flex: 1;
    font-size: 15px;
    font-weight: 600;
    color: #242424;
}

.traveller-adults-chevron-side{
    display: flex;
    align-items: center;
    color: #4a4a4a;
}

.traveller-adults-chevron-side svg{
    transition: transform .22s ease;
}

.traveller-adults-accordion:not(.is-open) .traveller-adults-chevron-side svg{
    transform: rotate(180deg);
}

.traveller-adults-toggle-fab{
    width: 34px;
    height: 34px;
    border-radius: 50%;
    border: 2px solid #1bb295;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    flex-shrink: 0;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
}

.traveller-adults-toggle-icon{
    transition: transform .22s ease;
}

.traveller-adults-accordion.is-open .traveller-adults-toggle-icon{
    transform: rotate(180deg);
}

.traveller-adults-panel{
    display: none;
    padding: 16px 12px 15px;
    background: #fff;
}

.traveller-panel-top{
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    background: #f5f5f5; padding: 8px 8px; border-radius: 50px; border: 1px dashed #DDD;
}

.traveller-panel-note{
    font-size: 12px;
    color: #3f607b;
    background: #eef6ff;
    border: 1px solid #b7d0ea;
    border-radius: 999px;
    padding: 5px 12px;
    line-height: 1.2;
}

.traveller-adults-accordion.is-open .traveller-adults-panel{
    display: block;
}


.gst_inn_box{
    padding: 14px 16px 16px;
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 0;
}

.gst_inn_box .note_box{
    width: 100%;
    max-width: none;
    margin-top: 0;
    margin-bottom: 0;
    padding-right: 132px;
    box-sizing: border-box;
}

@media (max-width: 520px){
    .gst_inn_box .note_box{
        padding-right: 12px;
        padding-top: 40px;
    }
}

/* Small top-right GST toggle (same zone as old auto_fetch_dtls) */
.gst_add_toggle--compact{
    position: absolute;
    right: 25px;
    top: -20px;
    z-index: 2;
    margin: 0;
    padding: 7px 15px 7px 15px;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: #fff;
    border: 1px solid rgba(0, 178, 150, 0.4);
    border-radius: 999px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06);
}

.gst_add_toggle--compact .gst_add_toggle-input{
    flex-shrink: 0;
    width: 14px;
    height: 14px;
    margin: 0;
    border: 1px solid #9cc9bf;
    border-radius: 4px;
    cursor: pointer;
    accent-color: #008cfb;
}



.gst_add_toggle--compact .gst_add_toggle-label{
    margin: 0;
    cursor: pointer;
    display: flex;
    flex-direction: row;
    align-items: center;
    line-height: 1.2;
}

.gst_add_toggle--compact .gst_add_toggle-title{
    font-size: 11px;
    font-weight: 700;
    color: #0d5c4e;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    white-space: nowrap;
}

.gst-details-row{
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 18px;
    padding: 12px 14px;
    background: #eef5fa;
    border-radius: 10px;
    align-items: stretch;
}

.gst-detail-col{
    flex: 1 1 0;
    min-width: 118px;
    display: flex;
    flex-direction: column;
    align-items: stretch;
}

.gst-detail-col--wide{
    flex: 1.35 1 160px;
    min-width: 140px;
}

.gst-detail-col--pin{
    flex: 0 1 104px;
    min-width: 96px;
}

.gst-detail-input{
    width: 100%;
    border: 1px solid #cfd8e3;
    border-radius: 8px;
    padding: 8px 10px;
    font-size: 13px;
    color: #2e415b;
    background: #fff;
    outline: none;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.gst-detail-input::placeholder{
    color: #8a9aad;
}

.gst-detail-input:focus{
    border-color: #00b296;
    box-shadow: 0 0 0 2px rgba(0, 178, 150, 0.12);
}











.trip_secure_box{
    position: relative;
    padding: 22px;
    border-radius: 14px;
    background: linear-gradient(135deg,#ffffff 0%, #f4fffc 100%);
    border: 1px solid rgba(9,181,152,0.18);
    box-shadow: 
        0 6px 18px rgba(0,0,0,0.06),
        inset 0 1px 0 rgba(255,255,255,0.6);
}


.trip_header{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:10px;
}

.trip_title{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:18px;
}

.shield{
    background:#ffe8e8;
    color:red;
    padding:6px;
    border-radius:50%;
    font-size:12px;
}

.trip_logo{
    font-weight:700;
    color:#1ca27c;
}

.trip_price{
    font-size:20px;
    font-weight:600;
    margin:10px 0 20px;
}

.trip_price span{
    font-size:13px;
    color:#666;
}

.trip_features{
    display:flex;
    gap:15px;
    margin-bottom:20px;
}

.feature_item{
    display:flex;
    gap:10px;
    align-items:center;
    background:#fff;
    padding:12px;
    border-radius:8px;
    font-size:13px;
    width:222px;
    border:1px solid #ddd;
}

.feature_item img{
    width:28px;
}

.view_btn{
    justify-content:center;
    text-align:left;
    font-weight:600;
    color:#2c7be5;
    width: 120px;
}

.feature_item.view_btn .trip-benefits-trigger{
    background:none;
    border:none;
    padding:0;
    margin:0;
    font:inherit;
    font-weight:600;
    color:#2c7be5;
    text-align:left;
    cursor:pointer;
    line-height:1.35;
}
.feature_item.view_btn .trip-benefits-trigger:hover{
    color:#1a5cb8;
    text-decoration:underline;
}
.feature_item.view_btn .trip-benefits-trigger:focus-visible{
    outline:2px solid rgba(44,123,229,0.45);
    outline-offset:2px;
    border-radius:4px;
}

/* Trip Secure — compact benefits modal */
.trip-insurance-benefits-modal .modal-dialog{
    max-width: 500px;
}
.trip-insurance-benefits-modal .modal-content{
    border-radius:12px;
}
.trip-benefits-modal-head{
    padding:0.85rem 0.95rem 0.35rem;
}
.trip-benefits-kicker{
    letter-spacing:0.04em;
    text-transform:uppercase;
    font-size:0.68rem;
}
.trip-benefit-mini-list{
    display:grid;
    gap:10px;
}
.trip-benefit-mini-item{
    display:flex;
    align-items:center;
    gap:10px;
    padding:10px;
    border:1px solid rgba(28,162,124,0.15);
    border-radius:10px;
    background:#f8fcfb;
}
.trip-benefit-mini-icon{
    width: 35px;
    height: 40px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
    color: #1ca27c;
    background: rgb(255 255 255);
    flex-shrink: 0;
    border: 1px dashed #0fb89a;
}
.trip-benefit-mini-icon img{
    width:25px !important;
}
.trip-benefit-mini-content h6{
    margin:0;
    font-size:0.82rem;
    font-weight:700;
    line-height:1.2;
}
.trip-benefit-mini-content p{
    margin:2px 0 0;
    font-size: 11px;
    color:#000;
    font-weight:400;
}
.trip-benefit-mini-content strong{
    margin:2px 0 0;
    font-size:0.77rem;
    color:#d92b2b;
    font-weight:600;
}

.trip-benefits-modal-foot{
    justify-content:flex-start;
    padding:0 0.95rem 0.85rem;
}
.trip-benefits-tc-link{
    color:#2c7be5;
    font-weight:600;
    text-decoration:none;
}
.trip-benefits-tc-link:hover{
    text-decoration:underline;
    color:#1a5cb8;
}

.recommend_box{
    background: linear-gradient(45deg, #f7e9c8, transparent);
    padding:10px;
    border-radius:6px;
    font-size:13px;
    margin-bottom:15px;
}

.trip_option label{
    display:block;
    margin-bottom:8px;
    font-size:14px;
    cursor: pointer;
}

.trip-secure-confirm{
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 14px 0 0;
    padding: 8px 8px;
    border-radius: 12px;
    background:linear-gradient(135deg, #d9fff3 0%, #ffffff00 100%);
}

.trip-secure-confirm__icon{
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: #fff;
    background: linear-gradient(145deg, #1ca27c 0%, #0d8f6c 100%);
    box-shadow: 0 3px 10px rgba(28, 162, 124, 0.35);
}

.trip-secure-confirm__icon svg{
    display: block;
}

.trip-secure-confirm__body{
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.trip-secure-confirm__title{
    font-size: 15px;
    font-weight: 700;
    color: #0a5c48;
    line-height: 1.25;
}

.trip-secure-confirm__sub{
    font-size: 13px;
    font-weight: 500;
    color: #3d6b5f;
    line-height: 1.4;
}

.continue_btn{padding: 8px 20px; border: none; background: rgba(255, 97, 97, 1); color: #fff; border-radius: 30px; font-size: 17px;font-weight: 600;}











/* Fare summary */

.fare_summary_card{
    background:#fff;
    border-radius:12px;
    overflow:hidden;
    box-shadow:0 8px 18px rgba(0,0,0,0.08);
    margin-bottom:20px;
}

.fare_header{
    background:#eadcb8;
    padding:12px 16px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    font-weight:600;
}

.show_btn{
    background:#1bb295;
    border:none;
    color:#fff;
    font-size:12px;
    padding:4px 10px;
    border-radius:20px;
    cursor:pointer;
}

.fare_summary_card .fare_row{
    padding:12px 16px;
    display:flex;
    justify-content:space-between;
    border-bottom:1px solid #eee;
    font-size:15px;
}

.fare_summary_card .fare_row.total{
    font-weight:700;
    border-bottom:none;
}



/* Offer Card */
 .offer_card{
    margin-top:20px;
    background:#fff;
    border-radius:12px;
    padding:16px;
    box-shadow:0 8px 18px rgba(0,0,0,0.08);
}

.offer_card .offer_title{
    font-weight:600;
    display:flex;
    align-items:center;
    gap:8px;
    margin-bottom:14px;
}

.offer_card .offer_title .icon{
  background: #7b8cff; border-radius: 30px; width: 30px; height: 30px; display: flex; align-items: center; justify-content: center;
}



/* Coupon input */

.offer_card .coupon_box{
    display:flex;
    border:1px solid #ccc;
    border-radius:6px;
    overflow:hidden;
    margin-bottom:14px;
}

.offer_card .coupon_box input{
    border:none;
    flex:1;
    padding:10px;
    font-size:14px;
}

.offer_card .coupon_box button{
    border:none;
    background:#f0f0f0;
    padding:0 14px;
    font-size:12px;
    color:#7b8cff;
    font-weight:600;
    cursor:pointer;
}

.offer_card .coupon_status{
    margin: -3px 0 12px;
    padding: 8px 10px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
}

.offer_card .coupon_status.is-valid{
    color: #0b6d52;
    background: rgba(28, 162, 124, 0.12);
    border: 1px solid rgba(28, 162, 124, 0.3);
}

.offer_card .coupon_status.is-invalid{
    color: #a12626;
    background: rgba(255, 97, 97, 0.12);
    border: 1px solid rgba(255, 97, 97, 0.35);
}



/* Coupon item */

.offer_card .coupon_item{
    display:flex;
    align-items:flex-start;
    gap:10px;
    padding:12px;
    border-radius:8px;
    border:1px solid #eee;
    margin-bottom:10px;
    cursor:pointer;
    transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

.offer_card .coupon_item.is-selected{
    border-color: rgba(123, 140, 255, 0.65);
    background: rgba(123, 140, 255, 0.06);
    box-shadow: 0 4px 10px rgba(123, 140, 255, 0.15);
}

.offer_card .coupon_item input{
    margin-top:5px;
}

.offer_card .coupon_content strong{
    font-size:14px;
}

.offer_card .coupon_content p{
    margin:3px 0;
    font-size:12px;
    color:#555;
}

.offer_card .coupon_content span{
    font-size:11px;
    color:#5a8cff;
}

.offer_card .coupon_icon{
    margin-left:auto;
    color:#999;
}

.addon_modal .modal-content{
border-radius:10px;
overflow:hidden;
}

/* header */

.addon_header{
    background: rgba(209, 209, 209, 1);
    padding: 14px 15px;
}

.addon_header h5{
font-weight:600;
margin:0;
}


/* tabs */

.addon_tabs{
display:flex;
gap:10px;
padding:10px 15px;
border-bottom:1px solid #ddd;

}

.addon_tab{
background:#f5f5f5;
border:1px solid #ddd;
padding:8px 16px;
border-radius:8px;
display:flex;
align-items:center;
gap:6px;
font-size:14px;
cursor:pointer;
width: 100%; max-width: 220px;
}

.addon_tab img{
width:20px;
}


.addon_tab.active{
border:1px solid #ff6a6a !important;
background:#fff4f4 !important;
}



/* route */

.route_bar{
display:flex;
justify-content:space-between;
align-items:center;
padding:10px 15px;
border-bottom:1px solid #eee;
}

.route_bar small{
display:block;
color:#888;
}

.price_box{
text-align:right;
font-weight:600;
}

.price_box small{
display:block;
font-size:12px;
color:#888;
}


/* seat map area */

.seat_map_area{
background: linear-gradient(#f0f9ff, #6fa0be);
padding:10px;
position:relative;
height:500px;
overflow-y: auto;
border-radius:6px;
margin:15px;
}
.main_tabs_inner{
padding: 22px 10px;
position: relative;
}
.conti_btn{position: absolute; bottom: 15px; right: 60px;}


/* legend */

.seat_legend{
position: sticky; left: 20px; bottom: 20px; background: #fff; padding: 10px; border-radius: 6px; font-size: 12px; width: fit-content; top: 50px;
}

.seat_legend div{
display:flex;
align-items:center;
gap:6px;
margin-bottom:4px;
}

.box{
width: 18px;
    height: 18px;
    border-radius: 3px;
    display: inline-block;
    border: 1px solid #ddd;
    position: relative;
    overflow: hidden;
}

.seat_legend .free{background:#6bd2c6;}
.seat_legend .price1{background:#7ea6ff;}
.seat_legend .price2{background:#a786ff;}
.seat_legend .exit{background:#fff;}
.seat_legend .exit::after{content: ''; width: 12px; height: 12px; background: red; position: absolute; border-radius: 30px; right: -4px; top: -4px;}
.seat_legend .non{background:#999;}
.seat_legend .xl{background:#ddd;}


/* aircraft */
.inner_plane_dlts_box .plane {
	margin: 30px auto;
	max-width: 330px;
}

.cockpit{
height: 250px; width: 330px; background: url(/assets/images/payment_icons/aircraft-head.png); display: flex; justify-content: center; align-items: flex-end; position: relative; overflow: hidden;background-position: center; background-size: cover;
}

.plane_svg{
width:420px;
height:auto;
}

.plane_outer{
fill:#ececec;
}

.plane_inner{
fill:#cfd8e1;
}

.front_text{
    position: absolute;
    bottom: 40px;
    letter-spacing: 8px;
    font-size: 19px;
    color: #8f8f8f;
    font-weight: 700;
}

/* front text */

.plane_front_text{
	position:absolute;
	bottom:35px;
	left:50%;
	transform:translateX(-50%);
	letter-spacing:8px;
	font-size:14px;
	color:#8c8c8c;
	font-weight:600;
}

.plane .exit {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0px;
}
.left_exit_Box{
    padding: 5px 0px 5px 5px; border-left: 3px solid #c12032;
}
.left_exit_Box::before{
       content: "◄";
       color:#c12032;
}
.right_exit_Box{
      padding: 5px 3px 5px 0px; border-right: 3px solid #c12032;
}
.right_exit_Box::after{
       content: "►";
       color:#c12032;
}



.main_alfabates li{display: flex;
    flex: 0 0 14%;
    padding: 5px;
    position: relative;}

.main_alfabates li{display: flex;
    flex: 0 0 14%;
    padding: 5px;
    position: relative;}

.main_alfabates li span{
    display: block; position: relative; width: 100%; text-align: center; font-size: 14px; font-weight: bold; line-height: 1.5rem; padding: 4px 0; border-radius: 5px; animation-duration: 300ms; animation-fill-mode: both;
}

.inner_cabin_box{padding:25px;background:#fff;position: relative;top:-2px;padding-top:20px;}

.cabin{
	border-right: 5px solid #fff;
	border-left: 5px solid #fff;
}


.fuselage{
	list-style: none;
	margin: 0;
    padding:10px;
}

.seats{
    display:flex;
    list-style:none;
    padding:0;
    margin:0;
}

.cabin .seats {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: flex-start;
    position: relative;
}
.cabin .seats span{display: block; position: relative; width: 100%; text-align: center; font-size: 14px; font-weight: bold; line-height: 1.5rem; padding: 4px 0; /* background: #F42536; */ border-radius: 5px; animation-duration: 300ms; animation-fill-mode: both; cursor: pointer;}

.cabin  .seat {
	display: flex;
	flex: 0 0 14%;
	padding: 5px;
	position: relative;
}
.cabin .main_alfabates li:nth-child(3){
	margin-right: 14.28571428571429% !important;
}
.cabin .main_alfabates li:nth-child(4){
	margin-right: 0 !important;
}
.cabin .seats li:nth-child(4){
	margin-right: 14.28571428571429%;
}

.cabin  .seat input[type=checkbox] {
	position: absolute;
	opacity: 0;
}

.cabin  .seat input[type=checkbox]:checked + label {
	background: #28a745;
	-webkit-animation-name: rubberBand;
	animation-name: rubberBand;
	animation-duration: 300ms;
	animation-fill-mode: both;
    color:#fff;
}

/* default seat */
.cabin .seat.blue-seat label {
	background:#87bbff;
}

.cabin .seat input[type=checkbox]:disabled + label {
	background: #dddddd;
	text-indent: -9999px;
	overflow: hidden;
}

.cabin .seat input[type=checkbox]:disabled + label:after {
	content: "X";
    color:#fff;
	text-indent: 0;
	position: absolute;
	top: 4px;
	left: 50%;
	transform: translate(-50%, 0%);
}

.cabin  .seat input[type=checkbox]:disabled + label:hover {
	box-shadow: none;
	cursor: not-allowed;
}

.cabin  .seat label {
    display: block;
    position: relative;
    width: 100%;
    text-align: center;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.5rem;
    padding: 4px 0;
    background: #b5a4ff;
    border-radius: 5px;
    animation-duration: 300ms;
    animation-fill-mode: both;
}

.cabin .seat label:hover {
    cursor: pointer;
    box-shadow: 0 0 0px 1px #484848ba;
}

@-webkit-keyframes rubberBand {
	0% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}

	30% {
		-webkit-transform: scale3d(1.25, 0.75, 1);
		transform: scale3d(1.25, 0.75, 1);
	}

	40% {
		-webkit-transform: scale3d(0.75, 1.25, 1);
		transform: scale3d(0.75, 1.25, 1);
	}

	50% {
		-webkit-transform: scale3d(1.15, 0.85, 1);
		transform: scale3d(1.15, 0.85, 1);
	}

	65% {
		-webkit-transform: scale3d(0.95, 1.05, 1);
		transform: scale3d(0.95, 1.05, 1);
	}

	75% {
		-webkit-transform: scale3d(1.05, 0.95, 1);
		transform: scale3d(1.05, 0.95, 1);
	}

	100% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
}

@keyframes rubberBand {
	0% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}

	30% {
		-webkit-transform: scale3d(1.25, 0.75, 1);
		transform: scale3d(1.25, 0.75, 1);
	}

	40% {
		-webkit-transform: scale3d(0.75, 1.25, 1);
		transform: scale3d(0.75, 1.25, 1);
	}

	50% {
		-webkit-transform: scale3d(1.15, 0.85, 1);
		transform: scale3d(1.15, 0.85, 1);
	}

	65% {
		-webkit-transform: scale3d(0.95, 1.05, 1);
		transform: scale3d(0.95, 1.05, 1);
	}

	75% {
		-webkit-transform: scale3d(1.05, 0.95, 1);
		transform: scale3d(1.05, 0.95, 1);
	}

	100% {
		-webkit-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
}

.rubberBand {
	-webkit-animation-name: rubberBand;
	animation-name: rubberBand;
}
.fligh_bottom_craft{max-width: 350px;position: relative; top: -3px;}
.fligh_bottom_craft img{width:100%;height:100%;}

.Myflight_modal{max-width:850px;}

.seat_number{position: absolute; left: -15px; top: 22%;font-size: 15px; font-weight: 500; color: #555;}
.seat_number-2{position: absolute; right: -15px; top: 22%;font-size: 15px; font-weight: 500; color: #555;}











.baggage_wrapper{
    display:flex;
    gap:20px;
    padding:30px 20px;
    justify-content: space-between;
}

.baggage_card{
    width:100%;
    background:#fff;
    border:2px solid #ddd;
    border-radius:14px;
    padding:15px;
    position:relative;
    cursor:pointer;
    transition:.3s;
}

.baggage_card:hover{
    border-color:#ff6b6b;
    transform:translateY(-3px);
}

.bag_img{
    background:#eff9ff;
    border-radius:12px;
    text-align:center;
}

.bag_img img{
    width:200px;
}

.bag_info{
    margin-top:12px;
}

.bag_info h3{
    margin:0;
    font-size: 16px;
    font-weight: 700;
}

.bag_info p{
    margin:2px 0;
    color:#777;
    font-size:12px;
}

.bag_info strong{
    font-size:14px;
    font-weight:600;
}

.radio_circle{
    position:absolute;
    right:20px;
    top:20px;
}

.radio_circle input{
    display:none;
}

.radio_circle span{
    width:18px;
    height:18px;
    border:2px solid #999;
    border-radius:50%;
    display:inline-block;
}

.radio_circle input:checked + span{
    background:#ff6b6b;
    border-color:#ff6b6b;
}

.continue_btn{
    margin-top:0px;
    float:right;
    background:#ff6b6b;
    border:none;
    color:#fff;
    padding:10px 20px;
    border-radius:25px;
    font-weight:bold;
    cursor:pointer;
    font-size: 13px;
}
.bagge_conti{position: absolute; right: 32px; bottom: 12px;}







/* MEAL */

.main_inner_meal_box{
padding:20px;
}

.meal_wrapper{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:14px;

}

.meal_card{
background:#fff;
border:1px solid #ddd;
border-radius:10px;
padding:5px;
display:flex;
align-items:center;
gap:12px;
position:relative;
transition:.25s;
}

.meal_card:hover{
box-shadow:0 5px 15px rgba(0,0,0,0.08);
}

.meal_icon{
width: 70px;
height: 100%;
background:#f4e6c8;
border-radius:10px;
display:flex;
align-items:center;
justify-content:center;
font-size:28px;
color:#ff6a4d;
}
.meal_icon img{width:33px;}
.meal_details{
flex:1;
}

.meal_details h4{
font-size: 11px;
    margin: 0;
    color: rgb(111 111 111);
    font-weight: 400;
}

.price{
display:block;
margin-top:6px;
font-weight:600;
}

.add_btn{
border:1px solid #cfd3d7;
background:#fff;
padding:6px 16px;
border-radius:6px;
font-weight:600;
font-size:12px;
cursor:pointer;
}

.add_btn:hover{
background:#0d6efd;
color:#fff;
border-color:#0d6efd;
}

.meal_card.is-added{
    border-color: #0d6efd;
    box-shadow: 0 4px 12px rgba(13, 110, 253, 0.16);
}

.add_btn.is-active{
    background:#0d6efd;
    color:#fff;
    border-color:#0d6efd;
}
.meal_btn_box{width: 100%; display: flex; align-items: center; justify-content: right; margin-top: 15px;}

.inner_right_dtls{display:flex;flex-direction: column;gap:10px;}






.section_title{
    background: rgba(209, 209, 209, 1);
    padding: 10px 20px;
    font-size: 16px;
    font-weight: 600;
    text-transform: uppercase;
    color:rgba(13, 20, 45, 1);
}

.main_wrapper .flight_section{
    background: #fff;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.1);

}
.inner_card_privew_flight{
    display:flex;align-items:center;
}
.inner_card_privew_flight .airline{
display: flex;  width: 216px; gap: 10px;
}

.main_wrapper .flight_card{
display:flex;
gap:30px;
padding:15px;
background:rgba(243, 243, 243, 1);
margin:15px;
border-radius:12px;
flex-direction: column;
}

.flight-card .airline{
display:flex;
align-items:center;
gap:10px;
margin-bottom:10px;
}
.flight_inner_banner{width:100%;height:150px;margin:20px 0px;border-radius:10px;overflow: hidden;}
.flight_inner_banner img{width:100%;height:100%;object-fit: cover;}

.logo{
background:#123b8f;
color:#fff;
width:45px;
height:45px;
display:flex;
align-items:center;
justify-content:center;
border-radius:8px;
}

.time_block h2{
margin:0;
color:#1a4f7a;
}

.time_block span{
color:#0077cc;
font-size:13px;
}

.main_wrapper .route{
text-align:center;
flex:1;
position:relative;
}

.main_wrapper .route .line{
height:2px;
background:#ccc;
margin:6px 0;
}

.main_wrapper .circle{
width:8px;
height:8px;
background:#aaa;
border-radius:50%;
display:inline-block;
}

.main_wrapper .route p{
color:#e74c3c;
font-size:13px;
}

.main_wrapper .class_box{
margin-left:auto;
display:flex;
gap:8px;
}

.main_wrapper .class{
background:#f1dfc2;
padding:6px 10px;
border-radius:6px;
font-size:12px;
}

.main_wrapper .main{
background:#1f5b89;
color:#fff;
padding:6px 12px;
border-radius:6px;
font-size:12px;
}

.main_wrapper .baggage{
padding-left:35px;
display:flex;
gap:20px;
font-size:13px;
}

.main_wrapper .refund{
color:#18a67a;
}

.main_wrapper .layover{
background:rgba(255, 237, 209, 1);
margin:10px 15px;
padding:6px 10px;
border-radius:10px;
text-align:center;
font-weight:600;
font-size:14px;
}

.traveller_section{
background:#fff;
border-radius:15px;
overflow:hidden;
box-shadow: 0px 4px 25px 0px rgba(0, 0, 0, 0.12);
border: 1px solid #e8e8e8;
}

.traveller_section table{
width:100%;
border-collapse:separate;
border-spacing: 0;
}

.traveller_section th{

    padding: 16px 12px;
    border-bottom: 2px solid #0a8f7c;
    font-size: 13px;
    font-weight: 600;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-right: 1px solid rgba(255, 255, 255, 0.2);
    position: relative;
}
.traveller_section th:last-child{
    border-right: none;
}


.traveller_section td{
    padding: 14px 12px;
    text-align: center;
    border-bottom: 1px solid #f0f0f0;
    border-right: 1px solid #f0f0f0;
    font-size: 13px;
    font-weight: 400;
    color: #444;
    transition: all 0.3s ease;
}
.traveller_section td:last-child{
    border-right: none;
}

.traveller_section tbody tr{
    transition: all 0.3s ease;
    position: relative;
}
.traveller_section tbody tr:nth-child(even){
    background: #fafafa;
}
.traveller_section tbody tr:nth-child(odd){
    background: #fff;
}
.traveller_section tbody tr:hover{
    background: linear-gradient(135deg, #f0fdfa 0%, #e6faf5 100%);
    transform: translateX(3px);
    box-shadow: 0 2px 12px rgba(9, 181, 152, 0.15);
}
.traveller_section tbody tr:hover td{
    color: #09b598;
    font-weight: 500;
}
.traveller_section tbody tr:last-child td:first-child{
    border-bottom-left-radius: 15px;
}
.traveller_section tbody tr:last-child td:last-child{
    border-bottom-right-radius: 15px;
}

.main_wrapper .buttons{
display:flex;
justify-content:flex-end;
gap:20px;
margin-top:20px;
margin-top: 30px;
}

.hold_flight_btn{
background:#ff6b6b;
border:none;
padding:10px 30px;
border-radius:30px;
color:#fff;
font-weight:700;
    font-size: 12px;
}

.book_book_preview_btn{
background:#16a085;
border:none;
padding:10px 30px;
border-radius:30px;
color:#fff;
font-weight:700;
  font-size: 12px;
}





.fareSummary {
    background: #fff;
    box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.1);
    border-radius: 15px;
    overflow: hidden;
}

/* HEADER */

.fareSummary__header{
display:flex;
justify-content:space-between;
align-items:center;
padding:12px 16px;
 background: rgba(255, 187, 2, 0.2);
}

.fareSummary__title{
margin:0;
font-size:16px;
font-weight:700;
}

.fareSummary__toggleBtn{
background:#ff6b6b;
border:none;
color:#fff;
font-size:11px;
padding:5px 12px;
border-radius:14px;
cursor:pointer;
}

.fareSummary__toggleBtn.active{
    background-color:#dc3545;
    color:#fff;
}

/* Rows below Total Fare (commission / TDS / net) — toggled via JS */
.fareSummary__extra{
    display:none;
}

.fareSummary__extra.show{
    display:block;
}

/* BODY */

.fareSummary__body{
width:100%;
}

.fareSummary__row{
display:flex;
justify-content:space-between;
padding:10px 16px;
border-bottom:1px solid #eee;
font-size:15px;
}

.fareSummary__row--total{
background:#f2f2f2;
font-weight:700;
}

.fareSummary__row--net{
background:#f8f8f8;
color:#0a8f7c;
font-weight:700;
font-size:16px;
}

/* LABEL */

.fareSummary__label{
color:#333;
}

.fareSummary__label--minus{
color:#0a8f7c;
}

.fareSummary__label--plus{
color:#e74c3c;
}

/* VALUE */

.fareSummary__value{
font-weight:500;
}

.fareSummary__value--positive{
color:#0a8f7c;
}

.fareSummary__value--negative{
color:#e74c3c;
}



/* FLight Payment  */
.payment_main_box{
    background: #fff; border-radius: 20px; overflow: hidden; box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.1);
}
.inner_payment_method{padding:20px;}
.payment-layout-wrapper{
display:flex;
gap:20px;
}

.payment-methods-panel{
    width:40%;
    background:#fff;
}

/* payment option card */
.method-option {
    display:flex;
    align-items:center;
    justify-content:space-between;
    border:1px solid #e6e6e6;
    border-radius:5px;
    padding:8px 14px;
    margin-bottom:12px;
    cursor:pointer;
    background:#ffffff;
    transition:all .3s ease;
    position:relative;
}

/* hover animation */
.method-option:hover{
    border-color:#09b598;
    transform:translateX(4px);
    box-shadow:0 4px 12px rgba(0,0,0,0.08);
}

/* icons */
.method-option img{
    height:20px;
    transition:transform .3s ease;
}

.method-option:hover img{
    transform:scale(1.1);
}

/* radio */
.method-option input{
    margin-right:10px;
}

/* selected option */
.method-option:has(input:checked){
       border-color: #09b598;
    background: linear-gradient(90deg, #dcfff9, #dcfff9);
}


/* text style */
.method-option span{
    font-weight:500;
    color:#333;
    font-size:13px;
}

.payment-summary-panel{
width:60%;
background:#fff;
padding: 0px 15px;
}

.payment-amount-header{
display:flex;
justify-content:space-between;
font-size:16px;
margin-bottom:10px;
border-bottom: 1.5px solid rgba(0, 0, 0, 0.2);
align-items:center;
}
.payment-amount-header span{font-size: 14px; color: rgba(0, 0, 0, 1);}

.payment-amount-header strong{
color:#12a875;
font-size:20px;
    font-weight: 700;
}

.fee-description h4 {
    margin-bottom: 10px;
    font-size: 15px;
    color: rgba(0, 0, 0, 1);
}

.fee-description p{
    font-size: 12px;
    line-height: 1.5;
    color: #4f4d4d;
}
.fee-description mark{background: transparent; color: #19a87b;}

.service-fee{
color:#1fa463;
font-weight:600;
}

.proceed-payment-btn {
    margin-top: 20px;
    width: 100%;
    padding: 7px 10px;
    border: none;
    background: #19a87b;
    color: #fff;
    font-size: 20px;
    border-radius: 6px;
    cursor: pointer;
    font-weight: 700;
}

.trust-features-wrapper{
    margin:25px auto;
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:16px;
}

/* Card */
.trust-card{
    background:#fff;
    display:flex;
    align-items:flex-start;
    gap:12px;
    padding:14px 16px;
    border-radius:10px;
    border:1px solid #ddd;
    transition:all .25s ease;
}


/* Icon box */
.left_trust_box{
    min-width:36px;
    height:36px;
    border-radius:8px;
    background:#f0f0f0;
    display:flex;
    align-items:center;
    justify-content:center;
}

/* Text */
.right_trust_dtls h4{
    font-size:14px;
    color:#222;
    margin:0;
    font-weight:600;
}

.right_trust_dtls p{
      font-size: 12px;
    color:#777;
    margin:4px 0 0;
    line-height:1.4;
}

/* Mobile */
@media (max-width:600px){
.trust-features-wrapper{
    grid-template-columns:1fr;
}
}



.payment-brands-strip{
margin:auto;
display:flex;
justify-content:space-between;
align-items:center;
gap:5px;
}
.payment-brands-strip .brands_logo_box{
    padding:4px 10px;
    background: #fff;
    border-radius: 5px;
    width:100%;
    text-align:center;
}

.payment-brands-strip img{
  height: 14px;
}



/* Processing Bar */
.processing-box{
    background:#fff;
    padding:25px;
    border-radius:8px;
    text-align:center;
    margin-bottom:30px;
    position: relative;
    z-index: 0 !important;
}

.processing-title{
    font-weight:bold;
    font-size:20px;
    margin-bottom:15px;
}

.progress-container{
    width:100%;
    height:10px;
    background:#ddd;
    border-radius:20px;
    overflow:hidden;
    position: relative;
    z-index: 0 !important;
}

.progress-bar{
    height:100%;
    width:40%;
    background: repeating-linear-gradient(
        45deg,
        #f4b400,
        #f4b400 10px,
        #ffd35a 10px,
        #ffd35a 20px
    );
    animation: moveStripes 1s linear infinite;
    position: relative;
    z-index: 0 !important;
}

.proccess_booking_box{
    position: relative;
    z-index: 0 !important;
}

@keyframes moveStripes{
    from{
        background-position:0 0;
    }
    to{
        background-position:40px 0;
    }
}





/* Booking Confirm Css  */
.ticket-confirm-wrapper{
width:100%;
background:rgba(255, 255, 255, 1);
border-radius:10px;
display:flex;
gap:20px;
align-items:center;
animation:cardFade 1s ease;
margin-bottom:30px;
margin-top:40px;
}

.confirm-person-holder{
 width: 20%; height: 220px; position: relative;
}
/* Image section */
.confirm-person-holder img{
position: absolute; width: 245px; bottom: 0px;
}

/* Text section */
.confirmation-content-area{
flex:1;
padding:20px;
position: relative;
}

/* Title */
.booking-success-head{
color:#12a37a;
font-weight:700;
font-size:18px;
margin-bottom:8px;
}

/* Description */
.booking-success-subtext{
font-size:13px;
color:#555;
margin-bottom:5px;
}

/* Reference */
.reference-id-text{
font-size:13px;
margin-bottom:4px;
}

.reference-id-text span{
font-weight:700;
}

/* PNR */
.airline-pnr-line{
font-size:13px;
margin-bottom:12px;
}

.airline-pnr-line span{
color:#12a37a;
font-weight:700;
}

/* Notice Box */
.booking-info-alert{
background:rgba(255, 248, 218, 1);
padding:8px 10px;
font-size:12px;
border-radius:4px;
margin-bottom:14px;
}

/* Buttons */
.booking-action-group{
display:flex;
gap:10px;
position: absolute;
bottom:-15px;
}

.btn-confirm-action{
border:none;
padding:8px 16px;
border-radius:20px;
font-size:12px;
cursor:pointer;
transition:0.3s;
color:#fff;
}

/* Button colors */
.btn-viewprint{
background:#1abc9c;
}

.btn-download{
background:#ff4d4d;
}

.btn-another{
background:#8c8c8c;
}

/* Hover effect */
.btn-confirm-action:hover{
transform:translateY(-3px);
box-shadow:0 5px 10px rgba(0,0,0,0.2);
}




.Myflight_dtls_popup {width:900px !important;}
.main_flight_dlts{
 width:100%;position: relative;   
}
.main_flight_dlts .btn-close{position:absolute !important;right:0;top: 30%;font-size:13px;}
.main_flight_dlts .btn-close:focus{box-shadow:none;}
.main_flight_dlts .nav-tabs .nav-link{position: relative;border: none;color:#000;}
.main_flight_dlts .nav-tabs .nav-link:focus-visible{box-shadow:none;outline:none;}
.main_flight_dlts .nav-tabs .nav-link:hover{    background:#f0f6ff;}
.main_flight_dlts .nav-tabs .nav-link.active{ color: #0d6efd;}
.main_flight_dlts .nav-tabs .nav-link.active::after{content:'';position:absolute;width:100%;bottom:0;height:3px;background:#0d6efd;left:0;border-top-left-radius:20px;border-top-right-radius:20px;transition-timing-function: cubic-bezier(.4, 0, .2, 1);}


.my_main_flight_dtls_view{overflow-y:auto;height:100vh;}
.Myflight_dtls_popup .offcanvas-body::-webkit-scrollbar {
 display: none; 
}

.my_main_flight_dtls_view .flt_result_container{margin:30px;border-top: 1px solid #e5e7eb;margin-top:15px;padding: 20px 0px;}
.my_main_flight_dtls_view .flt_result_container:first-child{border-top:none;margin-top:0px;padding-top: 10px;}

.flt_route_heading h2{
    margin:0;
    font-size:20px;
}

.flt_route_heading span{
    color:#777;
    font-size:13px;
}

.flt_airport_notice{
      background: linear-gradient(135deg, #f2fffd, #e4fbf7);
    border: 1px solid #09b598;
    padding: 10px 10px;
    border-radius: 10px;
    margin: 18px 0;
    font-size: 13px;
    color: #444;
    position: relative;
    overflow: hidden;
    animation: noticeFade 0.6s ease;
}


/* soft glow animation */
.flt_airport_notice::after{
    content:"";
    position:absolute;
    top:0;
    left:-100%;
    width:100%;
    height:100%;
    background:linear-gradient(120deg,transparent,rgba(255,255,255,0.6),transparent);
    animation: shineMove 4s infinite;
}

/* plane icon box */
.left_plane_icon{
    width:45px;
    height:35px;
    background:#09b5981a;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#09b598;
}

/* text */
.flt_airport_notice p{
    line-height:1.5;
}

.book_flight_card{box-shadow: rgb(0 0 0 / 45%) 0px 3px 8px;display:flex;justify-content: space-between;align-items:center; padding:10px 20px;position: absolute; width: 100%; bottom: 0; left: 0;background:#fff;}
.book_flight_new{background: #09b598; border: none; padding: 8px 20px; border-radius: 5px; color: #fff; width: 170px;}
.left_flght_price_box span{color: #ce2c2c; font-size: 13px; font-weight: 700;}
.left_flght_price_box h4{margin-bottom: 0px; font-size: 25px; font-weight: 600;}


.flt_airline_info{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:20px;
}

.flt_air_logo{
    width:35px;
}

.flt_air_name{
    font-weight:500;
}

.flt_on_time{
    background:#e7f6ec;
    color:#1b8f3d;
    padding:4px 10px;
    border-radius:20px;
    font-size: 11px;
    font-weight: 700;
}

.flt_schedule_wrapper{
    display: flex;
    justify-content: space-between;
    gap: 10px;
    width: 70%;
}
.flt_arrive_box, .flt_depart_box{width:35%;}

.flt_depart_box h3,
.flt_arrive_box h3{
    margin:4px 0;
       font-size: 22px;
    font-weight: 500;
}

.flt_depart_box p,
.flt_arrive_box p{
    margin:2px 0;
    font-size:12px;
    color:#666;
}
.flight_terminal{margin: 2px 0; font-size: 12px; color: #2d2d2d;}

.flt_duration_box{
     text-align: center;
    width: 30%;
    padding: 0px 25px;
    font-size: 13px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.flt_depart_box .flt_date, .flt_arrive_box .flt_date{font-size: 14px; color: rgb(94 97 110);}
.flight_descrip{font-size: 13px; font-weight: 600;}

.flt_line{
    height:2px;
    background:#ddd;
    margin-top:6px;
    position:relative;
}

.flt_line::before,
.flt_line::after{
    content:"";
    width:8px;
    height:8px;
    background:#ddd;
    border-radius:50%;
    position:absolute;
    top:-3px;
}

.flt_line::before{ left:0; }
.flt_line::after{ right:0; }

.flt_baggage_box{
   width:30%;
}
.flt_baggage_box h4{font-size: 15px; color: rgb(94 97 110);}

.flt_bag_item{
    display:flex;
    align-items:center;
    gap:8px;
    margin-top: 8px;
    font-size: 12px;
    font-weight: 500;
}

.flt_bag_item img{
    width:18px;
}



.refund_table_wrapper {
    margin: 20px;
    margin-top: 0px;
}
.rs_small_text{font-size:14px;}

/* TABLE */
.refund_table {
    border-radius: 12px;
    overflow: hidden;
    border:1px solid #ddd;
    background: #fff;
}

/* ROW */
.table_row {
    display: grid;
    grid-template-columns: 1fr 1fr 1.5fr;
    padding: 14px 16px;
    border-bottom: 1px solid #eee;
    align-items: center;
    transition: 0.3s;
}

.table_row:last-child {
    border-bottom: none;
}

.table_row:hover {
    background: #f9fbff;
}

/* HEADER */
.table_row.header {
    background: #f1f5ff;
    font-weight: 600;
    font-size: 13px;
    color: #333;
}

/* TEXT */
.table_row div {
    font-size: 14px;
}

.table_row span {
    font-size: 12px;
    color: #777;
}


/* ROUTE BUTTONS (reuse) */
.refund_route_tabs {
    margin-bottom: 12px;
}

.route_btn {
    border: 1px solid #ddd;
    padding: 7px 14px;
    border-radius: 20px;
    background: #f5f5f5;
    margin-right: 8px;
    cursor: pointer;
    font-size: 13px;
}

.route_btn.active {
    border-color: #0a58ff;
    color: #0a58ff;
    background: #eef4ff;
}

/* NOTE */
.refund_note {
    margin-top: 15px;
    font-size: 13px;
    color: #555;
}

.refund_terms {
    color: #0a58ff;
    font-size: 13px;
    text-decoration: underline;
}



.Myflight_dtls_popup .tab-content{
    overflow-y: auto;
    height: 100vh;
    padding-bottom: 75px;
}




.terms_wrapper {
    margin-top: 10px;
}

/* Toggle Link */
.terms_toggle,
.terms_hide {
    color: #0a58ff;
    font-size: 14px;
    cursor: pointer;
    text-decoration: underline;
    display: inline-block;
    margin-top: 8px;
}

/* Terms Box */
.terms_box {
    display: none;
    background: #f8f9fb;
    border-radius: 10px;
    padding: 15px;
    margin-top: 10px;
    border: 1px solid #e3e6f0;
    animation: fadeIn 0.3s ease;
}

/* Heading */
.terms_box h4 {
    margin-bottom: 10px;
    font-size: 16px;
}

/* List */
.terms_box ol {
    padding-left: 18px;
}

.terms_box li {
    font-size: 13px;
    color: #444;
    margin-bottom: 6px;
    line-height: 1.5;
}

/* Animation */
@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(-5px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.duration_inner_box h4{font-size:18px;font-weight:500;}


.new_seleted_card{background: #fff; padding: 25px 25px; border-top-left-radius: 20px; border-top-right-radius: 20px;position: sticky; bottom: 0px; background: #fff; box-shadow: 0 -5px 6px 0 rgba(38, 38, 38, .1);}
.main_inter_flight_box{overflow-y: auto; min-height: 1760px;padding-top:20px;padding-left:10px;padding-right:10px;}
.new_seleted_card{position: sticky;bottom:0px;}
.main_inter_flight_box::-webkit-scrollbar{display: none; }

.left_onwards_box {display: flex; align-items: center; gap: 10px;}
.view_depart_desti h4 span{font-size: 13px; width: 8rem; overflow: hidden; white-space: nowrap;text-overflow: ellipsis; font-weight: 300; color: #5b5b5b;display:block;}
.left_onwards_box h5{margin-bottom: 0px; font-size: 18px; font-weight: 600;}
.left_onwards_box p{margin-bottom: 0px; font-size: 10px; font-weight: 400;}
.view_depart_desti{width:50%;position: relative;}
.flight_depart_view{display: flex; align-items: center; justify-content: space-between;}
.flight_depart_view .view_depart_desti:last-child{padding-left:20px;border-left:1px solid #ddd;}
.book_right_flight_btn{display: flex; justify-content: right; align-items: center;gap:10px;}
.internat_price_box{text-align:right;}
.internat_price_box h4{margin-bottom:0px;font-size: 20px; font-weight: 600;}
.internat_price_box__extra{
    font-size: 12px;
    font-weight: 600;
    margin-top: 4px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 2px;
    min-height: 0;
}
.internat_price_box__extra:empty{
    display: none;
    margin: 0;
}
.internat_price_line{
    display: block;
    line-height: 1.35;
}
.internat_price_line--commission{
    color: #059669;
}
.internat_price_line--net{
    color: #dc2626;
}

.onwards_title{background: #fff; border: 1px solid rgba(40, 119, 234, .5); width: fit-content; padding: 5px 10px; border-radius: 30px; font-size: 14px; display: flex; align-items: center; justify-content: space-between; position: absolute; top: -45px; left: 20%; width: fit-content; gap: 8px;}

.flight_card.active_flight{
    border-left: 4px solid rgb(7 112 228);
}
.flight_card.active_flight .inner_flight_content{background: rgb(241 248 255);}

.flight_card.active_flight .fare_box{ 
  background:#fff;
}


.view_onwards h4{font-size: 13px; font-weight: 400; width: 12rem; text-overflow: ellipsis; white-space: nowrap; overflow: hidden;}



.inter_round_trip .mian_internation_flight{
padding: 10px 10px;
}

/* ============================================
   ENHANCED DESIGN IMPROVEMENTS
   ============================================ */

/* Enhanced Navbar with better shadows */
.navbar {
    box-shadow: 0px 4px 25px 0px rgba(0, 0, 0, 0.08) !important;
    backdrop-filter: blur(10px);
    transition: all 0.3s ease;
    position: relative;
    z-index: 9 !important;
}

.navbar:hover {
    box-shadow: 0px 6px 30px 0px rgba(0, 0, 0, 0.12) !important;
}

/* Enhanced Nav Links with better hover effects */
.navbar-nav .nav-item .nav-link {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
}

.navbar-nav .nav-item .nav-link::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
    transition: left 0.5s;
}

.navbar-nav .nav-item .nav-link:hover::before {
    left: 100%;
}

.navbar-nav .nav-item .nav-link:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 178, 150, 0.2);
}




/* Enhanced Form Inputs */
.search_row .field input,
.traveller_card .form_group input,
.number_input input,
.email_input input,
.form-control,
.form-select {
    transition: all 0.3s ease;
}


/* Enhanced Report Boxes with better gradients */
.report_box {
    position: relative;
    overflow: hidden;
}

.report_box::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 70%);
    animation: rotate 20s linear infinite;
}

@keyframes rotate {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.report_box:hover {
    transform: translateY(-6px) scale(1.02);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2) !important;
}

/* Enhanced Service Cards */
.inner_serve_box ul li {
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    border: 1px solid transparent;
}

.inner_serve_box ul li:hover {
    transform: translateY(-8px) scale(1.05);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.15) !important;
    border-color: var(--dynamic-color);
    background: linear-gradient(135deg, #ffffff 0%, #f0fdfa 100%);
}


.main_box_content .flight_card:hover::before,
.flight_card:hover::before {
    left: 100%;
}



/* Enhanced Account Balance Card */
.account_balance_card {
    position: relative;
    overflow: hidden;
    z-index:1;
}


.account_balance_card:hover {
    transform: translateY(-5px) scale(1.02);
    box-shadow: 0 15px 40px rgba(32, 201, 151, 0.4) !important;
}

/* Enhanced Search Box */
.top_search_box {
    transition: all 0.3s ease;
}

.top_search_box:focus-within {
    transform: translateY(-2px);
    box-shadow: 0px 8px 25px rgba(0, 0, 0, 0.15) !important;
}

/* Enhanced Trip Type Buttons */
.trip_type button {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
}

.trip_type button::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.3);
    transform: translate(-50%, -50%);
    transition: width 0.4s, height 0.4s;
}

.trip_type button:hover::before {
    width: 300px;
    height: 300px;
}

.trip_type button:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
}

.trip_type button.active {
    box-shadow: 0 4px 15px rgba(22, 160, 133, 0.4);
}

/* Enhanced Filter Buttons */
.top_filters li,
.right_fares_box ul li {
    transition: all 0.3s ease;
    position: relative;
}




/* Enhanced Recent Search Cards */
.iflx_card_dlts {
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.iflx_card_dlts:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15) !important;
    border-color: var(--dynamic-color);
}

/* Enhanced Payment Summary */
.fareSummary {
    transition: all 0.3s ease;
    border: 1px solid rgba(0, 0, 0, 0.05);
}

.fareSummary:hover {
    box-shadow: 0px 10px 30px 0px rgba(0, 0, 0, 0.12) !important;
}

.fareSummary__row {
    transition: all 0.2s ease;
}

.fareSummary__row:hover {
    background: rgba(0, 178, 150, 0.05);
    transform: translateX(5px);
}


.progress-container {
    position: relative;
    overflow: hidden;
    border-radius: 10px;
    z-index: 0 !important;
}

.progress-bar {
    position: relative;
    overflow: hidden;
    z-index: 0 !important;
}

.proccess_booking_box {
    position: relative;
    z-index: 0 !important;
}

.processing-box {
    position: relative;
    z-index: 0 !important;
}

/* Enhanced Confirmation Cards */
.ticket-confirm-wrapper {
    animation: slideIn 0.6s ease;
    transition: all 0.3s ease;
}

@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateX(-30px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.ticket-confirm-wrapper:hover {
    transform: translateY(-5px);
    box-shadow: 0px 15px 40px rgba(0, 0, 0, 0.15) !important;
}

.btn-confirm-action {
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.btn-confirm-action::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
    transition: left 0.5s;
}

.btn-confirm-action:hover::before {
    left: 100%;
}

.btn-confirm-action:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
}

/* Enhanced Table */
.traveller_section table {
    transition: all 0.3s ease;
}

.traveller_section table tbody tr {
    transition: all 0.2s ease;
}

.traveller_section table tbody tr:hover {
    background: rgba(0, 178, 150, 0.05);
    transform: scale(1.01);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* Enhanced Modal */
.addon_modal .modal-content {
    animation: modalSlideIn 0.3s ease;
    border: none;
    box-shadow: 0px 20px 60px rgba(0, 0, 0, 0.3) !important;
}

@keyframes modalSlideIn {
    from {
        opacity: 0;
        transform: translateY(-50px) scale(0.9);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* Enhanced Service Items */
.service_item {
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.service_item:hover {
    transform: translateY(-8px) rotate(2deg);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.15) !important;
    border-color: var(--dynamic-color);
}

.service_item .icon {
    transition: all 0.3s ease;
}

.service_item:hover .icon {
    transform: scale(1.2) rotate(10deg);
}

/* Enhanced Scrollbar */
::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

::-webkit-scrollbar-thumb {
    background: linear-gradient(135deg, var(--dynamic-color), #1abc9c);
    border-radius: 10px;
    transition: background 0.3s;
}

::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(135deg, #1abc9c, var(--dynamic-color));
}

/* Enhanced Loading States */
.loading {
    position: relative;
    overflow: hidden;
}

.loading::after {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent);
    animation: loading 1.5s infinite;
}

@keyframes loading {
    0% { left: -100%; }
    100% { left: 100%; }
}

/* Enhanced Focus States */
*:focus-visible {
    outline: 2px solid var(--dynamic-color);
    outline-offset: 2px;
    border-radius: 4px;
}

/* Enhanced Transitions for All Interactive Elements */
a, button, input, select, textarea, .nav-link, .card, .btn {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Enhanced Responsive Design */
@media (max-width: 768px) {
    .navbar {
        box-shadow: 0px 2px 15px 0px rgba(0, 0, 0, 0.1) !important;
    }
    
    .serve_card_box,
    .traveller_card,
    .service_card {
        box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.1) !important;
    }
    
    .main_box_content .flight_card:hover,
    .flight_card:hover {
        transform: translateY(-3px);
    }
}

/* Enhanced Glassmorphism Effect for Modern Look */
.glass-effect {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.3);
}

/* Enhanced Gradient Text */
.gradient-text {
    background: linear-gradient(135deg, var(--dynamic-color), #1abc9c);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Enhanced Badge/Label */
.new_label {
    animation: pulseBadge 2s infinite
}

@keyframes pulseBadge {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.05); }
}

/* Enhanced Slick Slider Dots */
.slick-dots li button {
    transition: all 0.3s ease;
}

.slick-dots li.slick-active button {
    transform: scale(1.3);
    box-shadow: 0 0 10px rgba(0, 178, 150, 0.5);
}

/* Enhanced Notification Bell */
.notification_top {
    transition: all 0.3s ease;
}


/* Enhanced Wallet Icon */
.wallet_Top {
    transition: all 0.3s ease;
}


/* Enhanced User Profile */
.user_top_dtls {
    transition: all 0.3s ease;
}

/* Enhanced Menu Box */
.menu_top_box {
    transition: all 0.3s ease;
}

/* Enhanced Partner Certificate */
.partner_certificate_inner {
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.partner_certificate_inner::before {
    content: '';
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, transparent 70%);
    animation: rotate 15s linear infinite;
}

.partner_certificate_inner:hover {
    transform: translateY(-5px);
    box-shadow: 0px 15px 40px rgba(0, 0, 0, 0.15) !important;
}

/* Enhanced Customer Support Banner */
.customer_support_banner {
    transition: all 0.3s ease;
}

.customer_support_banner:hover {
    transform: translateY(-3px);
    box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.12) !important;
}

.contact_icon {
    transition: all 0.3s ease;
}

.contact_icon:hover {
    transform: scale(1.1) rotate(5deg);
    box-shadow: 0 4px 15px rgba(255, 82, 82, 0.3);
}

/* Enhanced Section Titles */
.section_title {
    position: relative;
    padding-bottom: 10px;
}

.section_title::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, var(--dynamic-color), #1abc9c);
    border-radius: 2px;
    animation: expandLine 0.5s ease;
}

@keyframes expandLine {
    from { width: 0; }
    to { width: 60px; }
}

/* Enhanced Loading Animation */
@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.spinner {
    border: 3px solid rgba(0, 178, 150, 0.1);
    border-top: 3px solid var(--dynamic-color);
    border-radius: 50%;
    width: 40px;
    height: 40px;
    animation: spin 1s linear infinite;
}

/* Enhanced Tooltip Effect */
[data-tooltip]:hover::after {
    content: attr(data-tooltip);
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    padding: 8px 12px;
    background: rgba(0, 0, 0, 0.9);
    color: white;
    border-radius: 6px;
    font-size: 12px;
    white-space: nowrap;
    z-index: 1000;
    animation: fadeIn 0.3s ease;
}

/* Enhanced Smooth Scrolling */
html {
    scroll-behavior: smooth;
}

/* Enhanced Selection */
::selection {
    background: var(--dynamic-color);
    color: white;
}

::-moz-selection {
    background: var(--dynamic-color);
    color: white;
}

/* Flight Detail Page - Compact Layout Styles */
.fare_box.compact {
    min-width: 140px;
    max-width: 160px;
    position: relative;
}

.fare_row.active.compact {
    padding: 4px 8px;
    margin-bottom: 4px;
    border: 1px solid #09b598;
    border-radius: 4px;
    background: #f0fdfa;
}

.fare_row.active.compact .form-check {
    margin: 0;
    padding-left:0px;
}

.fare_row.active.compact .form-check-input {
    margin: 0;
    width: 14px;
    height: 14px;
}

.fare_row.active.compact .form-check-label {
    font-size: 11px;
    margin-left: 4px;
    font-weight: 600;
}

.fare_row.compact .commission,
.fare_row.compact .final {
    font-size: 9px;
    margin-top: 2px;
    display: inline-block;
    margin-right: 4px;
}

.fare_row.active.compact .tag.main {
    font-size: 8px;
    padding: 2px 6px;
    margin-top: 3px;
    background:rgba(22, 100, 171, 1);
    color: #fff;
    border-radius: 3px;
}

.more_fare_box.compact {
    position: relative;
    z-index:1;
}

.more_fare.compact {
    padding: 4px 8px;
    font-size: 10px;
    border: 1px solid #ddd;
    background: #f8f9fa;
    border-radius: 4px;
}

.more_fare.compact .plane_icon img {
    width: 12px;
}

.more_fare.compact .arrow_icon img {
    width: 10px;
}

.fare_popup {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    z-index: 1000;
    margin-top: 5px;
    display: none;
    min-width: 180px;
    max-height: 300px;
    overflow-y: auto;
    z-index:-1;
}

.fare_popup_item {
    padding: 8px 10px;
    border-bottom: 1px solid #eee;
    cursor: pointer;
    transition: background 0.2s;
}

.fare_popup_item:last-child {
    border-bottom: none;
}

.fare_popup_item:hover {
    background: #f8f9fa;
}

.fare_popup_item .form-check {
    margin: 0;
}

.fare_popup_item .form-check-input {
    margin: 0;
    width: 14px;
    height: 14px;
}

.fare_popup_item .form-check-label {
    font-size: 11px;
    margin-left: 4px;
    font-weight: 500;
}

.fare_popup_item .fare_meta {
    font-size: 9px;
    color: #666;
    margin-top: 3px;
    margin-left: 18px;
}

.fare_popup_item .tag {
    font-size: 8px;
    padding: 2px 6px;
    margin-top: 3px;
    display: inline-block;
    border-radius: 3px;
    margin-left: 18px;
}

.fare_popup_item .tag.sme {
    background: #6c757d;
    color: #fff;
}

.fare_popup_item .tag.flexi {
    background: #ffc107;
    color: #000;
}

.fare_popup_item .tag.super {
    background: #0d6efd;
    color: #fff;
}

.book_area.compact {
    min-width: 100px;
    text-align: center;
}

.book_btn.compact {
    padding: 8px 16px;
    font-size: 12px;
    width: 100%;
}

.hold.compact {
    font-size: 9px;
    display: block;
    margin-top: 5px;
    color: #666;
}

.hold.compact img {
    width: 12px;
}

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

.flight_accomo.compact .flight_accomo_actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
}

.flight_accomo.compact .flight_accomo_actions .more_fare_box.compact {
    justify-content: flex-start;
}

.flight_accomo.compact ul {
    display: flex;
    gap: 5px;
    margin: 0;
    padding: 0;
    list-style: none;
    align-items: center;
}

.flight_accomo.compact ul li {
    font-size: 11px;
}

.flight_accomo.compact ul li img {
    width: 14px;
    margin-left: 3px;
}

.flight_accomo.compact ul li:first-child img {
    width: 16px;
    margin-left: 0;
}

.flight_accomo.compact .flight_fare {
    font-size: 12px;
    color: #09b598;
    text-decoration: none;
}

.flight_bottom.compact {
    padding: 8px 15px;
    background: #fff3cd;
    border-top: 1px solid #ffc107;
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
}

.flight_bottom.compact img {
    width: 20px;
}

.inner_flight_content.compact {
    padding: 15px;
}

.airline.compact {
    min-width: 80px;
}

.airline.compact img {
    width: 40px;
}

.airline.compact h4 {
    font-size: 13px;
    margin: 0;
    font-weight: 600;
}

.airline.compact span {
    font-size: 11px;
    color: #666;
}

.airline.compact > div {
    margin-top: 5px;
}

.flight_dtls_Content.compact {
    flex: 1;
    display: flex;
    justify-content: space-between;
    height:min-content;
    gap: 20px;
}

.flight_time.compact {
    min-width: 100px;
}

.flight_time.compact h3 {
    font-size: 20px;
    margin: 0;
    font-weight: 600;
}

.flight_time.compact span {
    font-size: 11px;
    color: #666;
}

.flight_time.compact p {
    font-size: 12px;
    margin: 2px 0 0 0;
    color: #333;
}

.flight_duration.compact {
    flex: 1;
    max-width: 200px;
    position: relative;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 6px 0;
    width: auto;
    gap: 0px;
}

.flight_duration.compact .left_icon {
    position: absolute;
    left: 0;
    top: 48%;
    transform: translateY(-50%);
    width: 30px;
    z-index:1;
}

.flight_duration.compact .line {
    margin: 4px 10px 0px 10px;
    width: calc(100% - 40px);
    max-width: 160px;
    align-self: stretch;
    left: 9px;
    top: -4px;
}

.flight_duration.compact .right_icon {
    position: absolute;
    right: 0;
    top: 48%;
    transform: translateY(-50%) rotate(45deg);
    width: 30px;
}

.flight_duration.compact .flight_duration_center {
    position: static;
    transform: none;
    pointer-events: auto;
    margin-top: 0px;
    top: auto;
    left: auto;
    right: auto;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    line-height: 1.15;
}

.flight_duration.compact .flight_stop_type {
    font-size: 10px;
    font-weight: 500;
    color: #e74c3c;
}

.flight_duration.compact .flight_duration_time {
    font-size: 11px;
    font-weight: 600;
    color: #333;
}


.inner_flight_content.compact .d-flex.compact {
    padding: 15px;
}

.inter_round_trip{display:flex;align-items:center;gap:10px}

/* Heart icon styling */
.heart-icon-wrapper {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.heart-icon {
    width: 15px;
    height: 15px;
    transition: all 0.3s ease;
}

.heart-icon-wrapper:hover .heart-icon {
    transform: scale(1.1);
}

/* Passenger details page scoped helpers */
.flight_time span {
    font-size: 11px;
}


.fare_summary_card .fare_row.show {
    display: flex !important;
}

.show_btn.active {
    background-color: #dc3545 !important;
    color: #fff !important;
}

.field-error {
    font-size: 12px;
    color: #dc3545;
    margin-top: 6px;
}

.input-invalid {
    border: 1px solid #dc3545 !important;
    border-radius: 6px;
}

.name-guide-popup {
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 1201;
    width: 460px;
    max-width: calc(100vw - 30px);
    background: #f5fffd;
    border: 1px solid #bdece3;
    border-radius: 12px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.15);
    padding: 14px 16px 12px;
}
.name-guide-backdrop{
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.45);
    z-index: 1200;
}
.name-guide-inner{
    display:flex;
    align-items:stretch;
    gap:12px;
}
.name-guide-media{
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    position:relative;
}
.name-guide-media img{
    width: 77px;
    opacity: 0.65;
    object-fit: cover;
}
.name-guide-content{
    flex:1;
}

.name-guide-popup h6 {
    margin-bottom: 6px;
    color: #0a6658;
    font-size: 16px;
}

.name-guide-popup p {
    margin-bottom: 8px;
    font-size: 13px;
    color: #3f4b4f;
}

.name-guide-example {
    background: #fff;
    border-radius: 8px;
    border: 1px dashed #7fdac7;
    padding: 8px 10px;
    margin-bottom: 8px;
    font-size: 13px;
}

.name-guide-popup small {
    display: block;
    color: #1f6f62;
    line-height: 1.4;
    font-size:12px;
}

.name-guide-close {
    position: absolute;
    top: -1px;
    right: 3px;
    background: transparent;
    border: none;
    font-size: 28px;
    line-height: 1;
    color: #567;
    cursor: pointer;
}

.passport-upload-modal{
    position: fixed;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 1202;
    width: 500px;
    max-width: calc(100vw - 30px);
    background: #fff;
    border-radius: 14px;
    padding: 16px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.18);
}

.passport-upload-modal h5{
    margin-bottom: 6px;
    font-weight: 700;
    color: #1f2f45;
}

.passport-upload-subtitle{
    font-size: 13px;
    color: #56617a;
    margin-bottom: 10px;
}

.passport-dropzone{
    position: relative;
    border: 2px dashed #95c7be;
    border-radius: 10px;
    background: #f8fffd;
    padding: 12px;
    text-align: center;
    cursor: pointer;
}

.passport-file-input-hidden{
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
}

.passport-dropzone-inner{
    display: block;
    cursor: pointer;
}

.file_upload_btn{
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid #d3dde8;
    background: #fff;
}

.passport_front_title{
    background: #00b296;
    border-radius: 8px 8px 0 0;
    padding: 10px;
    text-align: center;
    color: #fff;
    font-weight: 600;
    letter-spacing: 0.2px;
}

.upload_image_ref{
    padding: 10px 8px 8px;
}

.upload_image_ref img{
    width: 280px;
    max-width: 100%;
    margin: 0 auto;
    display: block;
    border-radius: 4px;
}

.passport-placeholder{
    width: 280px;
    max-width: 100%;
    margin: 0 auto;
    min-height: 180px;
    border: 1px dashed #91d8cc;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: #2e2e2e;
    background: #f3f8f7;
}

.passport-placeholder img{
    width: 22px;
    opacity: 0.7;
}

.passport-placeholder span{
    font-size: 13px;
}

.upload_image_ref h6{
    padding-top: 8px;
    text-align: center;
    font-size: 13px;
    margin-bottom: 0;
    color: #4f5d75;
}

.passport-dropzone.dragover{
    border-color: #00b296;
    background: #edfffb;
}

.passport-dropzone-inner img{
    width: 34px;
    opacity: 0.75;
    margin-bottom: 8px;
}

.passport-dropzone-inner strong{
    display: block;
    color: #194356;
}

.passport-dropzone-inner span{
    font-size: 12px;
    color: #607286;
}

.passport-upload-file{
    font-size: 12px;
    color: #2e415b;
    margin-top: 8px;
}

.passport-upload-preview{
    margin-top: 10px;
    padding: 8px;
    border-radius: 10px;
    border: 1px solid #d3dde8;
    background: #f4f8fb;
    text-align: center;
    max-height: 240px;
    overflow: hidden;
}

.passport-upload-preview img{
    display: block;
    margin: 0 auto;
    max-width: 100%;
    max-height: 210px;
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: 6px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    transform: scale(1.04);
    user-select: none;
    pointer-events: none;
}

.passport-upload-actions{
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 12px;
}

.passport-upload-note{
    margin-top: 10px;
    font-size: 12px;
    color: #596b82;
}

.air-datepicker {
    border-radius: 12px;
    box-shadow: 0px 5px 20px rgba(0,0,0,0.15);
}

.air-datepicker-cell.-selected- {
    background: #1b7f86;
}

.air-datepicker-nav--title {
    color: red;
}


.all_adutlst_title h4{font-size:20px;margin-bottom:10px;}