@import url("./fonts.css");

*, html, body, h1, h2, h3. h4, h5, input, p, div, span {
    font-family: 'Roboto-Regular', sans-serif;
}

body {
    background-color: #F8F8F8;
}

:root {
    --bs-primary: #2489C2;
    --bs-primary-rgb: 36, 137, 194;
    --bs-success: #00b360;
    --bs-success-rgb: 0, 179, 96;
}

.iti {
    position: relative;
    display: inline-block;
    width: 100%;
}

@media (max-width: 991px) {
    .iti {
        width: 85%;
    }
}

/*** Dark Mode ***/
[data-bs-theme="dark"] .bg-white:not(.bg-success-subtle),
[data-bs-theme="dark"] .circle-btn,
[data-bs-theme="dark"] .search-bar,
[data-bs-theme="dark"] .passenger-image,
[data-bs-theme="dark"] .crew-image,
[data-bs-theme="dark"] .card-header.bg-white,
[data-bs-theme="dark"] .btn:not(.btn-primary):not(.btn-outline-primary):not(.btn-darkmode) {
    /*Add white to lighten the above classes*/
    background-color: color-mix(in srgb, var(--bs-body-bg) 85%, white 15%) !important;
    color: var(--bs-body-color) !important;
    border-color: color-mix(in srgb, var(--bs-body-bg) 65%, white 35%) !important;
}

/*Do not allow dark mode to override bg-success-subtle (passenger card)*/
[data-bs-theme="dark"] .circle.bg-success-subtle {
    background-color: #d1e7dd !important;
}

/*Do not allow dark mode to override card-footer (duty and itinerary cards)*/
[data-bs-theme="dark"] .flight-card.card .card-footer p,
[data-bs-theme="dark"] .flight-card.card .card-footer span {
    color: #212529 !important;
}
[data-bs-theme="dark"] .flight-card .card-footer p,
[data-bs-theme="dark"] .flight-card .card-footer span {
    color: #212529 !important;
}

/*Do not allow dark mode to override account headings (account pages)*/
@media (max-width: 991px) {
    [data-bs-theme="dark"] .account-page .header h1,
    [data-bs-theme="dark"] .account-page .header .btn-darkmode 
    {
        color: #212529 !important;
    }
}

/*Override bg-secondary-subtle only in dark mode (passenger and catering cards)*/
[data-bs-theme="dark"] .circle.bg-secondary-subtle {
    background-color: #343a40 !important;
}

/*Override background only in dark mode (footer)*/
[data-bs-theme="dark"] footer {
    background-color: #2f353b !important;
}

/*Override social icons only in dark mode (footer)*/
[data-bs-theme="dark"] footer a.social-media-icons {
    color: #adb5bd  !important;
}

/*Override tab set only in dark mode (dashboard tabs)*/
[data-bs-theme="dark"] a.nav-link.tab-underline {
    color: #adb5bd  !important;
}


/*Blazor Errors*/
#blazor-error-ui {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 25%;
    left: 50%;
    transform: translate(-50%, 0);
    z-index: 1000;
}

#blazor-error-ui .dismiss {
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.5rem;
}

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

.blazor-error-boundary::after {
    content: "An error has occurred."
}

/* Main layout */
.content {
    min-height: calc(100vh - 65px);
}

img {
    max-width: 100%;
}

h1:focus {
    outline: none;
}

.z-index-1 {
    z-index: 1;
}

.vh-75 {
    height: 75vh !important;
}

.vh-50 {
    height: 50vh !important;
}
.max-vh-50 {
    max-height: 50vh !important;
}

.vh-40 {
    height: 40vh !important;
}

.max-vh-40 {
    max-height: 40vh !important;
}

.max-vh-20 {
    max-height: 20vh !important;
}

.max-vh-50 {
    max-height: 50vh !important;
}

.vh-25 {
    height: 25vh;
}

.vh-80 {
    height: 80vh;
}

.vh-70 {
    height: 70vh;
}

.max-vh-50 {
    max-height: 50vh !important;
}

.vh-25 {
    height: 25vh;
}

.vh-80 {
    height: 80vh;
}

.vh-70 {
    height: 70vh;
}

.vh-25 {
    height: 25vh !important;
}

.mvh-100 {
    min-height: 100vh !important;
}

.mvh-75 {
    min-height: 75vh !important;
}

.mvh-50 {
    min-height: 50vh !important;
}

.mvh-25 {
    min-height: 25vh !important;
}

.max-w-50 {
    max-width: 50%;
}

.w-33 {
    width: 33%;
}

.w-15 {
    width: 15%;
}

.w-3 {
    width: 3%;
}

.btn-close {
    color: #fff;
}

.nav-icon-width {
    width: 60px;
}

.mr-4 {
    margin-right: 4px;
}

.mr-8 {
    margin-right: 8px;
}

.bold {
    font-weight: bold;
}

/*Each line of text has equal width*/
.text-justify {
    text-align: justify;
}

.text-small {
    font-size: 0.9rem;
}

.text-extra-small {
    font-size: 0.75rem;
}

/*Navbar*/
.navbar-light .navbar-toggler {
    border-color: transparent;
}

.navbar-toggler:focus {
    border-color: transparent;
    box-shadow: none;
}

.navbar-light .navbar-nav .nav-link {
    /*color: #202124;*/
    color: #fff;
}

.navbar-nav .nav-link.active, .navbar-nav .nav-link.show {
    color: #007bc1;
}

.close-icon {
    content: url(/_content/ONEflight.Client.Shared.Components/images/close-icon.svg);
    width: 1rem;
    cursor: pointer;
}

.search-icon {
    content: url(/_content/ONEflight.Client.Shared.Components/images/search-icon.svg);
    width: 1rem;
    cursor: pointer;
}

.me-12 {
    margin-right: 12px;
}

.mt-24 {
    margin-top: 64px;
}

.legend-square {
    padding: 0 8px;
    border-radius: 12px;
}

.z-index-999 {
    z-index: 999;
}

.cursor-pointer {
    cursor: pointer;
}

.btn-outline-light {
    --bs-btn-hover-color: #007bc1;
}

/*.btn-outline-secondary {*/
/*    color: #2489C2;*/
/*    padding: 4px;*/
/*    border: thin solid #2489C2;*/
/*}*/

.bg-medium-dark-blue {
    background-color: #25324E;
}

.bg-home-btn {
    background: #0F2027; /* fallback for old browsers */
    background: -webkit-linear-gradient(to right, #1A243A, #1A243A, #0F2027); /* Chrome 10-25, Safari 5.1-6 */
    background: linear-gradient(to bottom, #1A243A, #1A243A, #0F2027); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}

.bg-medium-cyan {
    background-color: #B5CFDE;
}

.text-muted-primary {
    color: #94C0D9;
}

.text-sky-blue {
    color: #E5F6FF;
}

.text-light-blue {
    color: #2489C2;
}

.text-dark-blue {
    color: #1A243A;
}

.text-medium-dark-blue {
    color: #25324E;
}

.text-decoration-line-through-red {
    text-decoration: red line-through !important;
}

.bg-sky-blue {
    background-color: #E5F6FF;
}

.bg-light-blue {
    background-color: #2489C2;
}

.bg-dark-blue {
    background-color: #1A243A;
}

.bg-dark-gray {
    background-color: #585858;
}

.text-dark-gray {
    color: #585858;
}

.bg-purple {
    color: #fff;
    background-color: #6610f2;
}

.bg-light-gray {
    background-color: #e3e3e3 !important;
}

.bg-yellow {
    background-color: #FFA903;
}

.bg-light-yellow {
    background-color: #ffd086;
}

.bg-lightest-yellow {
    background-color: #fffbda;
}

.bg-lighter-yellow {
    background-color: #fbe2bc;
}

.bg-profit {
    color: white !important;
    background-color: #51cf63 !important;
    font-weight: 500;
}

.bg-loss {
    color: white !important;
    background-color: #ff401e !important;
    font-weight: 500;
}

.bg-complete {
    background: rgba(34, 174, 124, 0.5);
}

.bg-attention-required {
    background: rgb(255, 193, 7, 0.5)
}

.bg-incomplete-required {
    background: rgba(202, 82, 140, 0.5);
}

.bg-incomplete {
    background: #DEDEDE;
}

.fs-65 {
    font-size: .9rem !important;
}

.fs-62 {
    font-size: .8rem !important;
}

.fs-7 {
    font-size: .7rem !important;
}

.fs-8 {
    font-size: .6rem !important;
}

.ms-itin {
    margin-left: 75px;
}

.ms-7 {
    margin-left: 45px;
}

.bg-primary {
    background-color: #2489C2 !important;
}

.bg-primary-one-flight {
    background-color: #2489C2;
}

.border-primary-one-flight {
    border-top: #2489C2 solid 1px;
    opacity: 0.5;
}

.border-primary {
    border-color: #2489C2 !important;
}

.border-light-blue-top {
    border-top: thin solid #2489C2;
}

.bg-green {
    background-color: #2EA05C;
}

.bg-pistachio {
    background-color: #cfe8b5;
}

.bg-red {
    background-color: #d40000;
}

.bg-dark-red {
    background-color: #970909;
}

.bg-disabled {
    background-color: #b1b1b1;
}

.text-green {
    color: #2EA05C;
}

.text-pistachio {
    color: #11BF8E;
}
.text-pink{
    color: hotpink;
}
.text-red {
    color: orangered;
}

.text-light-blue-mobile-phone-number {
    color: #1EACF1;
}

.text-disabled {
    color: #b1b1b1;
}

.bg-light-cyan {
    background-color: #B5CFDE;
}

.bg-medium-blue {
    background-color: #24448B;
}

.text-medium-blue {
    color: #24448B;
}

.mt-gap {
    margin-top: 88px;
}

.border-bottom-thick-light-blue {
    border-bottom: #2489C2 solid 2px;
    opacity: 1;
}

.border-top-thick-light-blue {
    border-top: #2489C2 solid 2px;
    opacity: 1;
}

.border-bottom-thin-light-blue {
    border-bottom: #2489C2 solid 1px;
    opacity: 1;
}

.border-concierge {
    border: 2px solid #2489C2;
}

.border-container {
    border: lightgray solid 1px;
}

.border-fsearch-container {
    border: #dee2e6 solid 1px;
}

.arrive-img {
    border-right: 1px solid #dee2e6
}

.depart-img {
    border-right: 1px solid #dee2e6
}

.border-right {
    border-right: 1px solid #2489C2;
}

.connector2 {
    position: absolute;
    border-left: 2px solid #24ABD5;
    border-top: 1px solid #24ABD5;
    border-bottom: 1px solid #24ABD5;
    border-radius: 2px;
    width: 5px;
    height: 32px;
    margin-top: 10px;
    margin-left: -8px;
}

.travel-image {
    max-height: 93px;
    object-fit: cover;
}

.btn-green {
    background-color: #2EA05C;
    border: solid 1px #2EA05C;
    color: #fff;
    text-transform: none;
}

.btn-green:hover {
    background-color: #49b474;
    box-shadow: none;
    border: solid 1px #49b474;
    text-transform: none;
    transition: background-color .2s ease;
}

.btn-border-primary {
    background-color: #2489C2;
    color: white;
}

.btn-border-primary:hover {
    background-color: #007bc1;
    color: white;
}

.border-top-bottom {
    border-top: lightgray solid 1px;
    border-bottom: lightgray solid 1px;
}

.border-bottom {
    border-bottom: lightgray solid 1px;
}

.border-top-bottom-right {
    border-top: lightgray solid 1px;
    border-bottom: lightgray solid 1px;
    border-right: lightgray solid 1px;
}

.border-bottom-right-left {
    border-left: lightgray solid 1px;
    border-bottom: lightgray solid 1px;
    border-right: lightgray solid 1px;
}

.shadow-sm {
    box-shadow: 0 .125rem .4rem rgba(0, 0, 0, .175) !important;
}

/*Accordion Dropdown*/
.accordion-button:not(.collapsed) {
    background-color: transparent;
    box-shadow: none;
}

.accordion-button:focus {
    border-color: transparent;
    box-shadow: none;
}

/*Buttons and links*/
a, .btn-link {
    color: #2489C2;
    text-decoration: none;
}

.nav-tabs {
    border: none;
}

a:hover, .btn-link:hover {
    color: #1d49ad;
}

.navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link.active, .navbar-light .navbar-nav .show > .nav-link {
    color: #fff;
}

.btn {
    border-radius: 0.3125rem;
    /*font-size: .8rem;*/
}

.btn-primary {
    background-color: #2489C2;
    border: solid 1px #2489C2;
    color: #fff;
    text-transform: none;
}

.btn-primary:hover {
    background-color: #1d49ad;
    box-shadow: none;
    border: solid 1px #1d49ad;
    text-transform: none;
    transition: background-color .2s ease;
}

.btn-outline-primary {
    border: solid 1px #2489C2;
    color: #2489C2;
}

.btn-outline-primary:hover {
    background-color: #e9ecef;
    border: solid 1px #2489C2;
    color: #2489C2;
    transition: background-color .2s ease;
}

.btn-check:focus + .btn-primary, .btn-primary:focus {
    color: #fff;
    background-color: #007bc1;
    border-color: #007bc1;
    box-shadow: none;
}

.btn-check:active + .btn-primary:focus, .btn-check:checked + .btn-primary:focus, .btn-primary.active:focus, .btn-primary:active:focus, .show > .btn-primary.dropdown-toggle:focus {
    box-shadow: none;
}

.iti__arrow {
    display: none;
}

.btn-group-lg > .btn, .btn-lg {
    padding: .25rem 1rem;
}

.btn-primary.disabled, .btn-primary:disabled, fieldset:disabled .btn-primary {
    background-color: #1d76b2;
    border: #1d76b2 solid 1px;
}

.btn-outline-primary.disabled, .btn-outline-primary:disabled, fieldset:disabled .btn-outline-primary {
    border-color: #6aa4cb;
    color: #2489C2;
}

/*Dropdowns*/
.dropdown-menu {
    box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15) !important;
}

/* Rotate the caret if expanded */
.dropdown-toggle::after {
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

.show.dropdown-toggle::after,
[data-bs-toggle="collapse"]:not(.collapsed).dropdown-toggle::after,
[data-bs-toggle="collapse"]:not(.collapsed) .dropdown-toggle::after {
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    -o-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}

/* Multi-level dropdowns*/
.dropdown-submenu {
    position: relative;
}

.dropdown-submenu > .dropdown-menu {
    top: -3px;
    left: 100%;
    margin-top: -6px;
    margin-left: -1px;
    -webkit-border-radius: 0 6px 6px 6px;
    -moz-border-radius: 0 6px 6px;
    border-radius: 0 6px 6px 6px;
}

.dropdown-submenu:hover > .dropdown-menu {
    display: block;
}

/* Scollbar */
.scrollbar::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(202, 56, 43, 1);
    border-radius: 0.625rem;
}

.scrollbar::-webkit-scrollbar {
    width: 0.75rem;
    background: transparent;
    border-radius: 0.625rem;
    height: 16px;
}

.scrollbar::-webkit-scrollbar-track-piece:end {
    background: transparent;
    margin-bottom: 1rem;
}

.scrollbar::-webkit-scrollbar-track-piece:start {
    background: transparent;
    margin-top: 1rem;
}

.scrollbar::-webkit-scrollbar-track,
.scrollbar::-webkit-scrollbar-track-piece {
    background: transparent;
    -webkit-box-shadow: none;
}

.scrollbar::-webkit-scrollbar-thumb {
    border-radius: 0.625rem;
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1);
    background-color: #396782;
}

.scrollbar-thin::-webkit-scrollbar {
    width: 0.375rem;
}

/*Forms*/
.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid red;
}

.validation-message {
    color: red;
}

/*Prevent floating labels*/
@supports (selector(:has(div))) {
    form div:has(.form-control-placeholder),
    form div:has(.form-control-show-placeholder) {
        position: relative;
    }
}

/*Edit Forms*/
.form-control, .form-select {
    border-radius: 0.3125rem;
}

.form-control:focus, .form-select:focus, .form-checkbox:focus {
    border-width: 2px;
    box-shadow: unset;
}

.form-control:focus + div .search-btn,
.form-select:focus, .form-select:focus + div .search-btn {
    border-width: 2px;
}

/*.btn-check:focus + .btn, .btn:focus {
    outline: 0;
    box-shadow: unset;
    border-width: 2px;
    border-color: #0566AD!important;
}*/

.border-bottom-white {
    border-bottom: #fff solid 2px;
}

.card-gradient {
    background: linear-gradient(to right, #1A243A, #4E6CAD);
}

/* Rounded Borders */
.rounded-bottom-start {
    border-bottom-left-radius: var(--bs-border-radius);
}

.rounded-bottom-end {
    border-bottom-right-radius: var(--bs-border-radius);
}

.rounded-top-end {
    border-top-right-radius: var(--bs-border-radius);
}

.rounded-top-start {
    border-top-left-radius: var(--bs-border-radius);
}

.dashed-border {
    border: thin dashed #000;
    width: 100%;
}

.form-control-placeholder,
.form-control-show-placeholder,
.form-control-always-show-placeholder {
    position: absolute;
    transition-property: transform, font-size, padding;
    transition-duration: 200ms;
    transform: translateY(-160%);
    margin: 0.3rem 0.625rem;
    padding-bottom: 0;
    pointer-events: none;
}

.form-control:disabled ~ .form-control-placeholder,
.form-select:disabled ~ .form-control-placeholder,
.form-control:valid ~ .form-control-placeholder,
.form-control:invalid ~ .form-control-placeholder,
.form-control:-webkit-autofill ~ .form-control-placeholder,
.form-select:valid ~ .form-control-placeholder,
.form-select:invalid ~ .form-control-placeholder,
.form-control:focus ~ .form-control-placeholder,
.form-select:focus ~ .form-control-placeholder,
.form-control-always-show-placeholder,
.form-control:not(.placeholder-hide):valid ~ .form-control-show-placeholder,
.form-select:valid ~ .form-control-show-placeholder,
.form-select:invalid ~ .form-control-show-placeholder,
.form-control:focus ~ .form-control-show-placeholder,
.form-select:focus ~ .form-control-show-placeholder,
.form-control:not(.placeholder-hide):placeholder-shown ~ .form-control-show-placeholder,
.form-select:placeholder-shown ~ .form-control-show-placeholder {
    font-size: 0.75rem;
    margin: 0 0.625rem;
    transform: translateY(-240%);
    background-image: linear-gradient(to bottom, transparent 42%, #fff 42%);
}

.form-control:disabled ~ .form-control-show-placeholder,
.form-select:disabled ~ .form-control-show-placeholder,
.form-control[readonly] ~ .form-control-show-placeholder,
.form-select[readonly] ~ .form-control-show-placeholder {
    background-image: linear-gradient(to bottom, transparent 61%, #fff 61%);
}

.form-control:disabled:not(:placeholder-shown) ~ .form-control-show-placeholder,
.form-select:disabled:not(:placeholder-shown) ~ .form-control-show-placeholder {
    font-size: 0.75rem;
    margin: 0 0.625rem;
    transform: translateY(-240%);
}

.form-control:focus ~ .form-control-placeholder,
.form-select:focus ~ .form-control-placeholder,
.form-control:focus ~ .form-control-show-placeholder,
.form-select:focus ~ .form-control-show-placeholder,
.form-control-always-show-placeholder {
    transform: translateY(-240%);
}

.placeholder-hide::-webkit-input-placeholder,
.placeholder-hide::placeholder {
    font-size: 0;
}

label {
    font-size: 0.875rem;
    padding: .375rem;
    padding-top: .2rem;
}

.checkbox-menu-label {
    font-size: 0.75rem;
    margin: 0 0.625rem;
    background-image: linear-gradient(to bottom, transparent 42%, #fff 42%);
    position: absolute;
    transition-property: transform, font-size, padding;
    transition-duration: 200ms;
    transform: translateY(-50%);
    padding-bottom: 0;
    pointer-events: none;
    z-index: 1;
}

/***** Modal Multiselect Dropdown with Checkboxes *****/
.checkbox-menu-btn {
    position: relative;
}

.checkbox-menu-btn button {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right .75rem center;
    background-size: 16px 12px;
    text-align: left;
    background-color: #fff;
    border: 1px solid #ced4da;
}

.checkbox-menu-btn button:hover {
    background-color: #fff;
    border: 1px solid #ced4da;
}

.checkbox-menu-btn button:focus {
    border-color: #86b7fe;
    outline: 0;
    /*box-shadow: 0 0 0 0.25rem rgb(13 110 253 / 25%);*/
    background-color: #fff;
}

.checkbox-menu-btn button:active {
    background-color: #fff;
    border-color: #ced4da;
}

.checkbox-menu input:hover,
.checkbox-menu input:focus {
    cursor: pointer;
}

.checkbox-hover {
    display: block;
    width: 100%;
    padding: .375rem 2.25rem .375rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
}

.checkbox-hover:hover,
.checkbox-hover:focus,
.checkbox-hover label:hover,
.checkbox-hover label:focus {
    background-color: #007bc1;
    color: #fff;
    cursor: pointer;
}

.checkbox-hover.active,
.checkbox-hover.active label {
    background-color: #007bc1;
    color: #fff;
    font-weight: bold;
}

.form-check-input:checked {
    background-color: #007bc1;
    border-color: #fff;
}

.form-check-input:checked[type=checkbox] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
}

/*.btn-check:checked + .btn, .btn-check + .btn:hover, .btn.active, :not(.btn-link) + .btn.show, .btn:first-child:active, :not(.btn-check):not(.btn-link) + .btn:active, :not(.btn-link) + .btn:active {*/
/*    color: var(--bs-btn-active-color);*/
/*    background-color: #007BC1;*/
/*    border-color: #007BC1;*/
/*}*/

.rounded-top-left {
    border-top-left-radius: 8px;
}

/*Background color*/
.bg-blue {
    background-color: #1A243A !important;
}

.bg-pending {
    background-color: #11BF8E !important;
}

.bg-lightblue {
    background-color: #007BC1;
}

.bg-light-red {
    background-color: #FFDADE;
}

.bg-none {
    background: none;
}

.bg-disabled {
    background: #ccc;
    cursor: not-allowed;
}

.bg-transparent {
    background-color: transparent !important;
}

/*Loader*/
#wrapper {
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    opacity: 1;
    position: fixed;
    transition: opacity .7s;
    z-index: 3;
}

#loader-jet {
    content: url(/_content/ONEflight.Client.Shared.Components/images/jet_loader.svg);
    width: 30vw;
    position: relative;
    margin: 40vh auto;
}

#loader {
    height: 10rem;
    width: 10rem;
    animation: loader-spinner 1.5s infinite linear;
    border-radius: 50% !important;
    border-bottom: 1.1em solid #808080;
    border-bottom: 1.1em solid rgba(238, 243, 220, 0.2);
    border-left: 1.1em solid #B1DDB8;
    border-right: 1.1em solid #808080;
    border-right: 1.1em solid rgba(238, 243, 220, 0.2);
    border-top: 1.1em solid #808080;
    border-top: 1.1em solid rgba(238, 243, 220, 0.2);
    margin: 40vh auto;
    position: relative;
    text-indent: -9999em;
    transform: translateZ(0);
}

@keyframes loader-spinner {
    0% {
        transform: rotate(0);
    }

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

@-webkit-keyframes shake {
    from, to {
        transform: translate3d(0, 0, 0);
    }

    10%, 30%, 50%, 70%, 90% {
        transform: translate3d(-10px, 0, 0);
    }

    20%, 40%, 60%, 80% {
        transform: translate3d(10px, 0, 0);
    }
}

@keyframes shake {
    from, to {
        transform: translate3d(0, 0, 0);
    }

    10%, 30%, 50%, 70%, 90% {
        transform: translate3d(-10px, 0, 0);
    }

    20%, 40%, 60%, 80% {
        transform: translate3d(10px, 0, 0);
    }
}

.shake {
    animation-name: shake;
}

/* Alerts */
.fa-shake {
    --fa-animation-iteration-count: 5;
    --fa-animation-duration: 2s;
}

.new-alerts {
    background: Tomato;
    --fa-counter-scale: .38;
}

.jet-modal-height {
    height: 200px;
}

/* Slider */
.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #999999;
    -webkit-transition: .4s;
    transition: .4s;
    border-radius: 34px !important;
}

.slider:before {
    position: absolute;
    content: "";
    height: 13px;
    width: 13px;
    left: 2px;
    bottom: 2px;
    background-color: white;
    -webkit-transition: .4s;
    transition: .4s;
    border-radius: 50%;
}

.fake-google-label {
    font-size: 0.75rem;
    margin-top: 18px;
    padding-left: 4px;
}

.slider-sm {
    width: 27px;
    height: 14px;
}

.slider-sm:before {
    height: 10px;
    width: 10px;
}

.slider-lg:before {
    height: 20px;
    width: 20px;
}

input:checked + .slider {
    background-color: #007bc1;
}

input:focus + .slider {
    box-shadow: 0 0 1px #007bc1;
}

input:checked + .slider:before {
    -webkit-transform: translateX(13px);
    -ms-transform: translateX(13px);
    transform: translateX(13px);
}

input:checked + .slider-lg:before {
    -webkit-transform: translateX(26px);
    -ms-transform: translateX(26px);
    transform: translateX(26px);
}

.switch {
    position: relative;
    display: inline-block;
    width: 30px;
    height: 17px;
    margin-bottom: 0;
    line-height: 1.125rem;
    vertical-align: text-top;
}

/* Hide default HTML checkbox */
.switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.switch input:disabled ~ .slider {
    cursor: not-allowed;
}

.switch-lg {
    width: 50px;
    height: 24px;
}

/*Carousels*/
.carousel-indicators [data-bs-target] {
    border-radius: 50%;
    height: 10px;
    width: 10px;
}

.pt-10 {
    padding-top: 10px;
}

/* itinerary */

.width-to, .width-fr {
    max-width: 140px;
}

.letter-spacing {
    letter-spacing: .1rem;
}

.mt-itin {
    margin: 12px 0 0 82px;
}


.flight-itinerary {
    z-index: 2;
}

.point-to-point-container {
    height: 1px;
}

.point-to-point-container:before {
    position: absolute;
    top: -12px; /* Adjust the vertical position of the bullets */
    font-size: 16px; /* Adjust the size of the bullets */
    color: #2489C2; /* Set the color of the bullets */
    background-color: white;
    padding-right: 4px;
    margin-left: 4px;
}

.point-to-point-container:after {
    position: absolute;
    top: -12px; /* Adjust the vertical position of the bullets */
    font-size: 16px; /* Adjust the size of the bullets */
    color: #2489C2; /* Set the color of the bullets */
    background-color: white;
    padding-left: 4px;
    margin-right: 4px;
}

.point-to-point-container:before {
    left: -4px;
}

.point-to-point-container:after {
    right: -4px;
}

.point-to-point-container .plane-icon {
    transform: translate(-50%, -50%);
}

.point-to-point-container .plane-icon i {
    position: absolute;
    transform: translate(-50%, -90%);
    left: 50%;
    color: #2489C2;
}

.next-day-tooltip .next-day-text {
    visibility: hidden;
    width: 140px;
    background-color: #000;
    color: #fff;
    text-align: center;
    border-radius: 6px;
    padding: 5px;
    position: absolute;
    z-index: 1;
    top: 125%;
    left: 50%;
    transform: translateX(-50%);
    opacity: 0;
    transition: opacity 0.3s;
}

.next-day-tooltip .next-day-text-itinerary {
    visibility: hidden;
    width: 140px;
    background-color: #000;
    color: #fff;
    text-align: center;
    border-radius: 6px;
    padding: 5px;
    position: absolute;
    z-index: 1;
    bottom: 125%;
    left: 50%;
    transform: translateX(-50%);
    opacity: 0;
    transition: opacity 0.3s;
}

.next-day-tooltip:hover .next-day-text {
    visibility: visible;
    opacity: 1;
}

.next-day-tooltip:hover .next-day-text-itinerary {
    visibility: visible;
    opacity: 1;
}

.badges-tooltip .badges-text {
    visibility: hidden;
    width: 100%;
    background-color: #fff;
    color: #fff;
    text-align: center;
    border-radius: 6px;
    padding: 5px;
    position: absolute;
    z-index: 1;
    top: 125%;
    left: 0;
    transform: translateX(-50%);
    opacity: 0;
    transition: opacity 0.3s;
    border: 1px solid #ccc;
}

.badges-tooltip .safety {
    visibility: hidden;
    width: 100%;
    background-color: #fff;
    color: #fff;
    text-align: center;
    border-radius: 6px;
    padding: 5px;
    position: absolute;
    z-index: 1;
    bottom: 125%;
    left: 0;
    transform: translateX(-50%);
    opacity: 0;
    transition: opacity 0.3s;
    border: 1px solid #ccc;
}

.badges-tooltip:hover .badges-text {
    visibility: visible;
    opacity: 1;
}


.account-image {
    height: 90px;
    width: 90px;
    padding-top: 20px;
    border-radius: 50%;
}

.star-placement {
    padding: 4px;
    border-bottom-right-radius: 4px;
    border-top-left-radius: 4px;
}

/* Product Membership Cards */
.product-card {
    width: 288px;
}

.bg-card-overlay-1 {
    background-image: url(/_content/ONEflight.Client.Shared.Components/images/cards/card-overlay-1.svg);
    background-size: cover;
}

.bg-card-overlay-2 {
    background-image: url(/_content/ONEflight.Client.Shared.Components/images/cards/card-overlay-2.svg);
    background-size: cover;
}

.bg-card-overlay-3 {
    background-image: url(/_content/ONEflight.Client.Shared.Components/images/cards/card-overlay-3.svg);
    background-size: cover;
}

.bg-card-overlay-4 {
    background-image: url(/_content/ONEflight.Client.Shared.Components/images/cards/card-overlay-4.svg);
    background-size: cover;
}

.bg-card-overlay-5 {
    background-image: url(/_content/ONEflight.Client.Shared.Components/images/cards/card-overlay-5.svg);
    background-size: cover;
}

.bg-card-overlay-6 {
    background-image: url(/_content/ONEflight.Client.Shared.Components/images/cards/card-overlay-6.svg);
    background-size: cover;
}

.bg-card-overlay-7 {
    background-image: url(/_content/ONEflight.Client.Shared.Components/images/cards/card-overlay-7.svg);
    background-size: cover;
}

/* Animations */
.pop-out {
    -webkit-animation: pop-out 0.4s;
    -moz-animation: pop-out 0.4s;
    -ms-animation: pop-out 0.4s;
    transition: visibility 0.4s;
    visibility: hidden;
}

.pop-in {
    -webkit-animation: pop-in 0.4s;
    -moz-animation: pop-in 0.4s;
    -ms-animation: pop-in 0.4s;
    transition: visibility 0.4s;
    visibility: visible;
}

@keyframes pop-in {
    0% {
        opacity: 0;
        transform: scale(0.25);
    }

    100% {
        opacity: 1;
        transform: scale(1);
        visibility: visible;
    }
}

@keyframes pop-out {
    0% {
        opacity: 1;
        transform: scale(1);
    }

    100% {
        opacity: 0;
        transform: scale(0.25);
        visibility: hidden;
    }
}

@keyframes fadein {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes fadeout {
    0% {
        opacity: 1;
    }

    50% {
        opacity: 0.5;
    }

    100% {
        opacity: 0;
    }
}

@media (max-width: 400px) {
    .text-size-control {
        font-size: .8rem;
    }
}

@media (min-width: 1025px) {
    .border-lg-start {
        border-left: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
    }
}

@keyframes attention {
    0% {
        background-color: initial
    }
    50% {
        background-color: #E5F6FF
    }
    100% {
        background-color: initial
    }
}

.fit-content {
    height: fit-content !important;
}

.sub-page-offset {
    margin-top: 80px;
}

.bg-light-sky {
    background-color: #E4F2F9;
}

.attention {
    animation-name: attention;
    animation-duration: 2s;
    animation-iteration-count: 5;
}

.green-light-table tbody tr td {
    border-collapse: collapse;
    border: 1px solid #dee2e6;
    padding: 5px;
    width: 50%;
}

.green-light-table {
    border-radius: 5px;
    width: 100%;
    font-size: smaller;
}

.robo-font {
    font-family: 'Roboto', sans-serif;
}

.border-color-dark-blue {
    border: 1px dashed #1A243A;
    opacity: 1;
}

.ada-text-gray {
    color: #4a494a;
}

.little-plane {
    margin-left: 80px;
}

.little-plane-placement {
    margin-top: 5px;
}

.bg-medium-gray {
    background-color: #B0CCDA;
}

@media print {
    * {
        -webkit-print-color-adjust: exact !important;
    }
}

@media screen and (min-width: 1280px) {
    table.table-with-border-colors tr {
        display: table;
        width: 100%;
        table-layout: fixed;
    }
}

@media screen and (max-width: 1280px) {
    table.table-with-border-colors {
        border-collapse: collapse !important;
    }

    table.table-with-border-colors tr {
        display: table-row;
        width: unset;
        table-layout: auto;
    }
}

.cluster-marker {
    border-radius: 50%; /* Make it circular */
    display: flex;
    justify-content: center;
    align-items: center;
    color: #FFFFFF;
    font-size: 14px;
    font-weight: bold;
    cursor: pointer; /* Indicates clickable points */
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3); /* Subtle shadow */
}

/* Default blue background for low counts */
.cluster-density-lo {
    background: radial-gradient(
            circle,
            rgb(44, 53, 242) 50%, /* Dark Blue (Start) */ rgb(137, 134, 239) 65%, /* Slightly lighter Blue (Middle) */ rgb(195, 192, 233) 100% /* Light Blue (End) */
    );
}

/* Red background for high counts (> 10) */
.cluster-density-hi {
    background: radial-gradient(
            circle, /* Gradient direction */ rgb(240, 53, 46) 50%, /* Dark Red (Start) */ rgb(249, 135, 128) 65%, /* Slightly lighter Red (Middle) */ rgb(247, 192, 183) 100% /* Lighter Red (End) */
    );
}

/* background for aircraft clusters, counts (< 10) */
.cluster-aircraft-density-lo {
    background: radial-gradient(circle, rgb(164, 210, 121) 50%, rgb(36, 136, 35) 100%);
}

/* background for aircraft clusters, counts (>= 10) */
.cluster-aircraft-density-hi {
    background: radial-gradient(circle, rgb(36, 136, 35) 50%, rgb(1, 68, 34) 100%);
}

/* Small size for low counts (e.g., count <= 5) */
.cluster-size-small {
    width: 40px; /* Width of marker */
    height: 40px; /* Height of marker */
    font-size: 12px; /* Smaller font size */
    line-height: 40px; /* Center text */
}

/* Medium size for moderate counts (e.g., 5 < count <= 10) */
.cluster-size-medium {
    width: 60px;
    height: 60px;
    font-size: 14px;
    line-height: 60px;
}

/* Large size for high counts (e.g., count > 10) */
.cluster-size-large {
    width: 80px;
    height: 80px;
    font-size: 16px;
    line-height: 80px;
}

.link:hover {
    font-weight: 600;
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 6px;
    color: #2489C2;
}

.amber-input-highlight {
    border-radius: 5px;
    border: 1px solid #A16002;
    box-shadow: 0 0 0 2px rgba(161, 96, 2, 0.25);
}

/* Alert tooltip styles - These must be global because Bootstrap renders tooltips outside component scope */
.alert-tooltip-info.tooltip .tooltip-inner {
    background-color: #FFF3E0 !important;
    color: #A16002 !important;
    border: 1px solid #A16002 !important;
    font-family: "Segoe UI", sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 400 !important;
    padding: 6px !important;
    border-radius: 5px !important;
    text-align: left !important;
    max-width: 300px !important;
}

.alert-tooltip-warning.tooltip .tooltip-inner {
    background-color: #fef3c7 !important;
    color: #d97706 !important;
    border: 1px solid #d97706 !important;
    font-family: "Segoe UI", sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 400 !important;
    padding: 6px !important;
    border-radius: 5px !important;
    text-align: left !important;
    max-width: 300px !important;
}

.alert-tooltip-danger.tooltip .tooltip-inner {
    background-color: #fee2e2 !important;
    color: #dc2626 !important;
    border: 1px solid #dc2626 !important;
    font-family: "Segoe UI", sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 400 !important;
    padding: 6px !important;
    border-radius: 5px !important;
    text-align: left !important;
    max-width: 300px !important;
}

.alert-tooltip-success.tooltip .tooltip-inner {
    background-color: #d1fae5 !important;
    color: #059669 !important;
    border: 1px solid #059669 !important;
    font-family: "Segoe UI", sans-serif !important;
    font-size: 11.5px !important;
    font-weight: 400 !important;
    padding: 6px !important;
    border-radius: 5px !important;
    text-align: left !important;
    max-width: 300px !important;
}