/**
 *
 */

.inlineblock {
    display: inline-block;
}

body {
    color: #222;
    font-family: Montserrat,Helvetica Neue,Arial,sans-serif;
    font-size: 14px;
}

a {
    text-decoration: none;
    color: orangered;
}

a:hover {
    color: orange;
    text-decoration: none;
}

.content {
    margin: 20px;
}

.centercontent {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.fullwidth {
    width: 100%;
}

.halfwidth {
    width: 50%;
}

.textcenter {
    text-align: center;
}

.container, .container-thin {
    max-width: 90%;
    padding: 50px 50px;
    background: rgba(255,255,255,0.4) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-radius: 6px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    color: #222;
}

.col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    max-width: none;
}

.col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    max-width: none;
}

.container-thin {
    padding: 40px 50px;
}

.container-transparent {
    max-width: 90%;
    color: #222;
    margin-right: auto;
    margin-left: auto;
    width: 100%;
}

:root {
    --ukv-fixed-header-height: 56px;
}

.ukv-app-header {
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 1040;
}

.wrapper {
    background-image: url('../assets/img/contbg2.png');
    background-repeat: no-repeat;
    background-color: #fff;
    background-size: 100%;
    display: flex;
    flex-direction: column;
    min-height: calc(100vh - 56px - clamp(145px, 24.08vw, 578px) - 68px);
    padding: 50px 0 0;
}

.wrapper > .container {
    margin-bottom: auto;
}


.margin-bottom5 {
    margin-bottom: 5px;
}

.margin-bottom20 {
    margin-bottom: 20px;
}

.margin-bottom40 {
    margin-bottom: 40px;
}

.margin-top {
    margin-top: 20px;
}

.margin-top40 {
    margin-top: 40px;
}

.pad10 {
    padding: 10px;
}

.pad20 {
    padding: 20px;
}

.margin10 {
    margin: 10px;
}

.margin20 {
    margin: 20px;
}

button {
    border: none;
    border-radius: 8px;
    background: orangered;
    padding: 6px 10px;
}

button a {
    color: #fff;
}

button:hover {
    background: orange;
}

.btn-sm  {
    background-color: #0069d9;
    color: #fff;
}

.btn-sm[class*="btn-outline-"] {
    padding: 14px;
}

.btn-white {
    background-color: #fff;
    color: #000;
    padding: 15px;
}

.btn-outline-info {
    background-color: #af8503;
    color: #fff;
}

.btn-outline-info:hover, .btn-outline-info:active {
    background-color: #785b02;
    color: #fff;
}

.btn-outline-info:focus, .btn-outline-info:active {
    background-color: #7DA0B1;
    color: #fff;
}

.btn-white a:hover {
    color: #000 !important;
}

[class*="btn-outline-"] {
    border-radius: 8px;
    border: none;
}

.btn-outline-primary {
    background-color: #0069d9;
    color: #fff;
}

.btn-outline-primary:hover {
    background-color: #004085;
    color: #fff;
}

.spaced-row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 30px -15px;
}

.centered {
    margin-left: auto;
    margin-right: auto;
}

.vertmid {
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.middled {
    position: absolute;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.description {
    color: #222;
}

.graylabel {
    background-color: rgb(52, 58, 64, 0.8);
    border: #5a6268 solid 1px;
    color: #fff;
}

.graylabelspan {
    display: inline-block;
    background-color: rgb(52, 58, 64, 0.8);
    padding: 15px;
    color: #fff;
}

.bluelabelspan {
    display: inline-block;
    background-color: rgba(0, 103, 163, 0.8);
    padding: 15px;
    color: #fff;
}

.redlabelspan {
    display: inline-block;
    background-color: #c1272d;
    padding: 15px;
    color: #fff;
}

.orangelabelspan {
    display: inline-block;
    background-color: orangered;
    padding: 15px;
    color: #fff;
}

.blacklabelspan {
    display: inline-block;
    background-color: rgba(0, 0, 0, 0.8);
    padding: 15px;
    color: #fff;
}

.logobackground {
    padding: 20px;
    background: rgba(210,210,210,0.8);
    border-radius: 5px;
}

.headcard {
    border-radius: 12px;
    border-top: 3px solid #c1272d;
    padding: 5px 10px;
    background: rgba(255,255,255,0.2) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    color: #222;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
}

.headcard a:hover {
    color: yellow !important;
}

.cardbody {
    margin-bottom: 20px;
    padding: 20px;
    background: rgba(255,255,255,0.6);
    border-radius: 12px;
    -webkit-border-radius: 12px;
    border-bottom: 3px solid #c1272d;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
}

.card {
    padding: 20px;
    background: rgba(255,255,255,0.6);
    border-radius: 12px;
    -webkit-border-radius: 12px;
    border-bottom: 3px solid #c1272d;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
}

.card-orange {
    padding: 20px;
    background: rgba(6,126,193,0.6);
    border-radius: 12px;
    -webkit-border-radius: 12px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-bottom: 3px solid darkgoldenrod;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
}

.card h2 {
    margin: 0 !important;
}

.roundbadge {
    display: inline-block;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    text-align: center;
    padding-top: 5px;
    background: deepskyblue;
}

.pillrounded {
    border-radius: 12px;
}

.heading {
    margin-bottom: 30px;
    color: #fff;
    padding: 6px 10px;
    border-left: 5px solid #c1272d;
    border-radius: 12px;
    -webkit-border-radius: 12px;
    background: #00275c;
    text-align: left;
    text-transform: uppercase;
}

.headingo {
    margin-bottom: 30px;
    color: #fff;
    padding: 6px 10px;
    border-radius: 12px;
    -webkit-border-radius: 12px;
    background: #c1272d;
    text-align: left;
    text-transform: uppercase;
}

.headingorangesm {
    margin-bottom: 30px;
    color: #222;
    padding: 6px 10px;
    border-left: 5px solid orange;
    border-radius: 12px;
    -webkit-border-radius: 12px;
    background: #fff;
    text-align: left;
    text-transform: uppercase;
    font-size: 1.2em;
}

.ukvaheading {
    background: #2a4365;
    padding: 5px 20px;
    font-family: 'Big Shoulders Display', "Helvetica", "Arial", cursive;
    font-size: 28px;
    color: #fff;
    text-transform: uppercase;
    border-radius: 6px;
}

.navbar {
    margin-bottom: 0;
}


.navbar .navbar-brand {
    padding-top: 0;
    padding-bottom: 0;
}

.navbar .navbar-nav .nav-link:not(.btn) {
    padding: .3rem .7rem;
}

.navbar .navbar-nav .nav-item .nav-link:not(.btn):hover {
    border-radius: 6px;
}

.nav-link {
    font-size: 0.85em !important;
}

.navbutton {
    color: #fff;
    text-transform: uppercase;
    padding: 6px;
    border: 1px solid #fff;
    border-radius: 6px;
    transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    text-align: center;
}

.nav-link {
    border-radius: 6px;
    border-left: 3px solid darkgoldenrod;
}

@media (max-width: 991.98px) {
    #navigation .nav-link {
        border-left: 0;
        border-bottom: 3px solid darkgoldenrod;
    }
}

#navbarDropdownMenuLink img {
    border-radius: 50%;
}

.noborder {
    border: none !important;
}

.nohover {
    background: none !important;
}

.novertpadding {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.simbrief-heading-row {
    align-items: flex-start;
}

.simbrief-actions {
    align-items: stretch;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.simbrief-action-btn {
    align-items: center;
    display: inline-flex;
    flex: 1 1 180px;
    justify-content: center;
    line-height: 1.15;
    margin-bottom: 5px;
    max-width: 240px;
    min-height: 52px;
    text-align: center;
    white-space: normal;
}

.simbrief-page .form-container {
    width: 100%;
}

.simbrief-page .form-container-body {
    overflow-x: auto;
}

.simbrief-page .graylabel,
.simbrief-page .text-monospace {
    overflow-wrap: anywhere;
    white-space: normal;
}

.simbrief-download-btn,
.simbrief-mini-btn {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    line-height: 1.15;
    margin-top: 10px;
    min-height: 42px;
    text-align: center;
    white-space: normal;
    width: 100%;
}

.simbrief-map-img {
    display: block;
    height: auto;
    margin: 0 auto 6px;
    max-width: 100%;
}

.simbrief-ofp {
    background-color: #fff !important;
    height: 750px;
    padding: 10px;
}

.simbrief-ofp table {
    max-width: 100%;
}

@media (max-width: 768px) {
    .simbrief-heading-row h2 {
        font-size: 1.35rem;
        line-height: 1.25;
    }

    .simbrief-actions {
        justify-content: stretch;
        margin-top: 8px;
    }

    .simbrief-action-btn {
        flex-basis: 100%;
        max-width: none;
    }

    .simbrief-ofp {
        height: 60vh;
    }

    .simbrief-page .form-container {
        margin-bottom: 14px;
    }
}

#top_anchor {
    background-color: #fff;
}

#bottom_anchor.navbar {
    background-color: #00275c;
    padding: .85rem 1rem;
    min-height: auto;
}

#bottom_anchor .navbar-nav {
    position: static;
    transform: none;
    left: auto;
    top: auto;
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: .5rem;
    margin: 0;
    padding: 0;
}

#bottom_anchor .nav-link {
    display: block;
    padding-top: .55rem;
    padding-bottom: .55rem;
    white-space: nowrap;
    line-height: 1.2;
}

#bottom_anchor .elementgap {
    margin-right: 0;
}

.padded50 {
    padding: 0 50px;
}

.padded2050 {
    padding: 20px 50px !important;
}

.elementgap {
    margin-right: 10px;
}

.elementgap:last-child {
    margin-right: 0;
}

.minwidth300 {
    min-width: 100px;
}

.table_transparent, .table {
    box-sizing: border-box;
    padding: 24px;
    color: #222;
    width: 100%;
}

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

@media (max-width: 800px) {
    table, thead, tbody, th, td, tr {
        display: block; /* Stacks cells vertically */
    }

    tr {
        border-top: 1px solid rgb(222, 222, 222, 0.6);
    }

    .table td, .table-transparent td {
        display: block;
        margin-left: auto;
        margin-right: auto;
        border: none;
    }

    td img {
        display: block;
        margin-left: auto;
        margin-right: auto;
    }

    thead {
        display: none;
    }

    #bottom_anchor .navbar{
        line-height: .5rem;
        font-size: 10px;
    }
}

.table_transparent tr, .table tr {
    border-top: 1px solid rgb(222, 222, 222, 0.6);
}

.table_transparent tr:last-child, .table tr:last-child {
    border-bottom: 1px solid rgb(222, 222, 222, 0.6);
}
.table_transparent td, .table td {
    padding: 15px;
}

.table-striped tbody tr, .table tbody tr {
    background-color: rgba(255,255,255,0.6);
    color: #222;
}

.table-striped tbody tr:nth-of-type(2n+1) {
    background-color: rgba(210,210,210,0.8);
}

.table a {
    color: orangered;
}

.table th a {
    color: #fff;
}

.table a:hover {
    color: orange;
}

.table_transparent thead tr, .table thead tr {
    background-color: #004085 !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    color: #fff;
}

thead th {
    padding-left: 15px;
}

thead th a {
    color: #fff;
}

thead th a:hover {
    color: yellow;
}

.table-hover tbody tr:hover {
    color: #222;
    background-color: rgba(0,0,0,.075);
}

.table tbody tr {
    padding: 0 20px;
}

.page-item.active .page-link {
    background-color: orangered !important;
}

.pagination .page-item .page-link:hover {
    background-color: orange !important;
}

.pagination .page-item .page-link {
    color: orangered;
}


.card-signup {
    min-width: 200px;
}

.card-awards {
    min-width: 200px;
    max-width: 350px;
    margin: 20px 30px;
}

.card-body, .jumbotron {
    background: #114666 !important;
}

.list-group-item {
    background-color: #eee !important;
    border: 1px solid #e8e8e8 !important;
}

/* Homepage CSS */

#homehero {
    background-color: #00275c; /* pick a colour matching the image edges */
    margin-top: var(--ukv-fixed-header-height);
    text-align: center;
    overflow: hidden;
}

#homehero img {
    display: block;
    width: 100%;
    max-width: 2400px;
    height: auto;
    margin: 0 auto;
}

.blue-bg {
    margin: 1rem auto 0;
    padding: 8px;
    background: #00275c !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-radius: 6px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    text-align: center;
    box-sizing: unset;
    color: #fff;
}

.red-bg {
    margin: 1rem auto 0;
    padding: 24px;
    background: #c1272d !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-radius: 6px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    text-align: center;
    color: #fff;
}

.orange-bg {
    margin: 1rem auto 0;
    padding: 6px 10px;
    background: darkgoldenrod !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-radius: 6px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    text-align: center;
    color: #fff;
}

.blue-bg-transparent {
    padding: 24px;
    background: rgba(7,68,115,0.6) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-radius: 6px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    color: #fff;
}

.social-description {
    background: rgba(6,52,84,0.3) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-radius: 6px;
}
.social-description h2{
    margin-bottom: 0 !important;
}

.home-welcome-title {
    border-bottom: 2px solid;
    color: #00275c;
    font-family: 'Cal Sans', sans-serif;
    line-height: 1.12;
    margin-bottom: 8px;
    padding-bottom: 10px;
}

.home-welcome-accent {
    color: #00275c;
    display: inline-block;
    text-shadow: 0 1px 0 rgba(255, 255, 255, 0.35);
}

/* End Homepage CSS */

/* Dashboard CSS */

#dashcards .card {
    min-width: 200px;
}

.dashboard-pilot-hero {
    align-items: stretch;
    background: linear-gradient(135deg, #00275c, #067ec1);
    border-radius: 8px;
    color: #fff;
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(0, 1fr) auto;
    margin-bottom: 16px;
    min-height: 164px;
    overflow: hidden;
    padding: 22px;
}

.dashboard-pilot-hero-main {
    align-items: center;
    display: flex;
    gap: 16px;
    min-width: 0;
}

.dashboard-pilot-avatar {
    align-items: center;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 8px;
    display: flex;
    flex: 0 0 86px;
    height: 86px;
    justify-content: center;
    overflow: hidden;
    width: 86px;
}

.dashboard-pilot-avatar img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.dashboard-pilot-avatar i {
    color: rgba(255, 255, 255, 0.86);
    font-size: 36px;
}

.dashboard-pilot-hero h3 {
    color: #fff;
    font-size: 34px;
    line-height: 1.1;
    margin: 0 0 8px;
    overflow-wrap: anywhere;
}

.dashboard-pilot-hero p {
    color: rgba(255, 255, 255, 0.84);
    line-height: 1.5;
    margin: 0;
    max-width: 720px;
}

.dashboard-pilot-hero-side {
    align-content: center;
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(110px, 1fr));
    min-width: 300px;
}

.dashboard-pilot-hero-stat {
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    padding: 12px;
}

.dashboard-pilot-hero-stat span {
    color: rgba(255, 255, 255, 0.76);
    display: block;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.dashboard-pilot-hero-stat strong {
    color: #fff;
    display: block;
    font-size: 21px;
    line-height: 1.15;
    margin-top: 5px;
    overflow-wrap: anywhere;
}

html[data-theme="dark"] .dashboard-pilot-hero {
    background: #164e63 !important;
}

@media (max-width: 991px) {
    .dashboard-pilot-hero {
        grid-template-columns: 1fr;
    }

    .dashboard-pilot-hero-side {
        min-width: 0;
    }
}

@media (max-width: 575px) {
    .dashboard-pilot-hero {
        padding: 18px 14px;
    }

    .dashboard-pilot-hero-main {
        align-items: flex-start;
        flex-direction: column;
    }

    .dashboard-pilot-hero h3 {
        font-size: 28px;
    }

    .dashboard-pilot-hero-side {
        grid-template-columns: 1fr;
    }
}

.dashboard-layout > .dashboard-main-column {
    max-width: 66.666667%;
    min-width: 0;
}

.dashboard-layout > .dashboard-sidebar-column {
    max-width: 33.333333%;
    min-width: 0;
}

.dashboard-last-report {
    display: grid;
    gap: 12px;
    grid-template-columns: 1fr;
    padding: 8px 0 0;
}

.dashboard-last-report-logo {
    align-items: center;
    background: rgba(255, 255, 255, 0.75);
    border: 1px solid rgba(7, 68, 115, 0.12);
    border-radius: 8px;
    display: flex;
    justify-content: center;
    min-height: 104px;
    min-width: 0;
    padding: 12px;
}

.dashboard-last-report-logo img {
    height: auto;
    max-height: 76px;
    max-width: 100%;
    object-fit: contain;
}

.dashboard-last-report-logo i {
    color: #d91f35;
    font-size: 28px;
}

.dashboard-last-report-header {
    align-items: flex-start;
    background: #00275c;
    border-left: 5px solid #d91f35;
    border-radius: 8px;
    color: #fff;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: space-between;
    padding: 12px 14px;
}

.dashboard-last-report-header > div {
    flex: 1 1 240px;
    min-width: 0;
}

.dashboard-last-report-header h4 {
    color: #fff;
    font-size: 18px;
    line-height: 1.25;
    margin: 2px 0 0;
}

.dashboard-last-report-header a {
    color: #fff;
    font-weight: 700;
    text-decoration: underline;
}

.dashboard-last-report-header .badge {
    flex: 0 0 auto;
    margin-top: 2px;
    max-width: 100%;
    white-space: normal;
}

.dashboard-last-report-kicker {
    color: rgba(255, 255, 255, 0.76);
    font-size: 12px;
    text-transform: uppercase;
}

.dashboard-last-report-route {
    align-items: center;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(86px, 0.75fr) minmax(0, 1fr) auto minmax(0, 1fr);
}

.dashboard-last-report-airport,
.dashboard-last-report-details > div {
    background: rgba(255, 255, 255, 0.75);
    border: 1px solid rgba(7, 68, 115, 0.12);
    border-radius: 8px;
    min-width: 0;
    padding: 12px;
}

.dashboard-last-report-airport span,
.dashboard-last-report-details span {
    color: #555;
    display: block;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.dashboard-last-report-airport strong,
.dashboard-last-report-details strong {
    color: #00275c;
    display: block;
    line-height: 1.25;
    margin-top: 4px;
    overflow-wrap: break-word;
}

.dashboard-last-report-details > div:first-child strong {
    overflow-wrap: anywhere;
}

.dashboard-last-report-route-icon {
    color: #d91f35;
}

.dashboard-last-report-airport a {
    color: #d91f35;
    display: inline-block;
    font-weight: 700;
    margin-top: 4px;
}

.dashboard-last-report-details {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.dashboard-last-report-details > div:first-child {
    grid-column: 1 / -1;
}

.dashboard-archive-summary {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: space-between;
}

.dashboard-archive-summary > div {
    min-width: 0;
}

.dashboard-archive-summary .heading {
    margin-bottom: 8px;
}

.dashboard-archive-summary p {
    color: #555;
    margin: 0;
}

.dashboard-archive-stats {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(auto-fit, minmax(135px, 1fr));
    margin-top: 14px;
}

.dashboard-archive-stats > div {
    background: rgba(255, 255, 255, 0.75);
    border: 1px solid rgba(7, 68, 115, 0.12);
    border-radius: 8px;
    min-width: 0;
    padding: 12px;
}

.dashboard-archive-stats span {
    color: #555;
    display: block;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.dashboard-archive-stats strong {
    color: #00275c;
    display: block;
    line-height: 1.25;
    margin-top: 4px;
    overflow-wrap: anywhere;
}

.dashboard-archive-collapse {
    margin-top: 14px;
}

.dashboard-archive-table-wrap {
    -webkit-overflow-scrolling: touch;
    border-radius: 8px;
    display: block;
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-x: contain;
    width: 100%;
}

.dashboard-archive-table {
    margin-bottom: 0;
    min-width: 680px;
    table-layout: auto;
    width: max-content;
}

.dashboard-archive-table th,
.dashboard-archive-table td {
    max-width: 180px;
    min-width: 90px;
    overflow-wrap: anywhere;
    white-space: normal;
    word-break: break-word;
}

.dashboard-archive-table th {
    text-transform: capitalize;
}

.dashboard-archive-pagination {
    margin-top: 12px;
}

@media (max-width: 1200px) {
    .dashboard-last-report {
        grid-template-columns: 1fr;
    }

    .dashboard-last-report-logo {
        min-height: 95px;
    }

    .dashboard-last-report-logo img {
        max-height: 72px;
    }
}

@media (max-width: 575.98px) {
    .dashboard-layout > .dashboard-main-column,
    .dashboard-layout > .dashboard-sidebar-column {
        max-width: 100%;
    }
}

@media (max-width: 1050px) {
    .dashboard-last-report-route {
        grid-template-columns: 1fr;
    }

    .dashboard-last-report-route-icon {
        text-align: center;
        transform: rotate(90deg);
    }

    .dashboard-archive-table {
        min-width: 620px;
    }

    .dashboard-archive-table th,
    .dashboard-archive-table td {
        max-width: 145px;
        min-width: 78px;
    }
}

.dashboard-awards-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.dashboard-award-item {
    align-items: center;
    background: rgba(255, 255, 255, 0.75);
    border: 1px solid rgba(7,68,115, 0.12);
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-height: 150px;
    padding: 12px;
    position: relative;
    text-align: center;
}

.dashboard-award-item:focus {
    outline: 2px solid #d91f35;
    outline-offset: 2px;
}

.dashboard-award-image,
.dashboard-award-placeholder {
    flex: 0 0 72px;
    height: auto;
    width: auto;
}

.dashboard-award-image {
    object-fit: contain;
}

.dashboard-award-placeholder {
    align-items: center;
    background: #00275c;
    border-radius: 50%;
    color: #fff;
    display: flex;
    font-size: 24px;
    justify-content: center;
}

.dashboard-award-content {
    min-width: 0;
    width: 100%;
}

.dashboard-award-title {
    color: #d91f35;
    font-weight: 700;
    line-height: 1.2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-award-description {
    color: #555;
    font-size: 12px;
    line-height: 1.35;
    margin-top: 4px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-award-tooltip {
    background: #d91f35;
    border-radius: 6px;
    bottom: calc(100% + 10px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22);
    color: #fff;
    left: 50%;
    line-height: 1.3;
    max-width: 220px;
    opacity: 0;
    padding: 10px 12px;
    pointer-events: none;
    position: absolute;
    transform: translateX(-50%) translateY(6px);
    transition: opacity .15s ease, transform .15s ease;
    visibility: hidden;
    width: max-content;
    z-index: 20;
}

.dashboard-award-tooltip::after {
    border: 7px solid transparent;
    border-top-color: #d91f35;
    content: "";
    left: 50%;
    position: absolute;
    top: 100%;
    transform: translateX(-50%);
}

.dashboard-award-tooltip strong,
.dashboard-award-tooltip span {
    display: block;
}

.dashboard-award-tooltip strong {
    font-size: 13px;
}

.dashboard-award-tooltip span {
    font-size: 12px;
    margin-top: 4px;
}

.dashboard-award-item:hover .dashboard-award-tooltip,
.dashboard-award-item:focus .dashboard-award-tooltip {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
    visibility: visible;
}

@media (max-width: 800px) {
    .dashboard-awards-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .dashboard-last-report-header {
        align-items: stretch;
    }

    .dashboard-last-report-header .badge {
        align-self: flex-start;
    }

    #dashcards .cardbody {
        min-width: 350px !important;
    }
}

@media (max-width: 420px) {
    .dashboard-awards-grid {
        grid-template-columns: 1fr;
    }
}

/* End Dashboard CSS */

/* Tour Progress CSS */

.tour-progress-item {
    margin-top: 16px;
}

.tour-progress-item:first-of-type {
    margin-top: 8px;
}

.tour-progress-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 8px;
}

.tour-progress-title {
    color: #d91f35;
    font-weight: 700;
}

.tour-progress-meta {
    color: #555;
    font-size: 12px;
}

.tour-progress-status {
    background: #c82333;
    border-radius: 4px;
    color: #fff;
    font-size: 11px;
    font-weight: 700;
    padding: 4px 8px;
    text-transform: uppercase;
}

.tour-progress-status.is-complete {
    background: #28a745;
}

.tour-leg-progress {
    display: flex;
    gap: 3px;
    min-height: 24px;
    width: 100%;
}

.tour-leg-segment {
    align-items: center;
    background: #c82333;
    border-radius: 12px;
    color: #fff;
    display: flex;
    flex: 1 1 0;
    font-size: 11px;
    font-weight: 700;
    justify-content: center;
    line-height: 1.1;
    min-width: 42px;
    overflow: hidden;
    padding: 5px 6px;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.tour-leg-segment:hover {
    color: #fff;
    opacity: .85;
    text-decoration: none;
}

.tour-leg-segment.is-complete {
    background: #28a745;
}

.tour-leg-bid-button.btn.btn-icon.btn-icon-mini {
    height: 30px;
    min-width: 30px;
    padding: 0;
    width: 30px;
}

.tour-leg-bid-button.btn.btn-icon.btn-icon-mini i,
.tour-leg-bid-button.btn.btn-icon.btn-icon-mini svg {
    font-size: 15px;
    height: 15px;
    width: 15px;
}

/* End Tour Progress CSS */



/* Flight List CSS */

.flight-sort-bar {
    align-items: center;
    background: #00275c;
    border-left: 5px solid #d91f35;
    border-radius: 8px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 14px;
    padding: 10px 12px;
}

.flight-sort-bar span {
    color: rgba(255, 255, 255, 0.76);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.flight-sort-bar a {
    background: rgba(255, 255, 255, 0.12);
    border-radius: 6px;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    padding: 5px 8px;
}

.flight-sort-bar a:hover {
    background: #d91f35;
    color: #fff;
    text-decoration: none;
}

.flight-list-card {
    align-items: stretch;
    background: rgba(255, 255, 255, 0.6);
    border-bottom: 3px solid #c1272d;
    border-radius: 8px;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(105px, 140px) minmax(0, 1fr) minmax(150px, 190px);
    margin-bottom: 16px;
    padding: 16px;
}

.flight-list-logo {
    align-items: center;
    background: rgba(255, 255, 255, 0.75);
    border: 1px solid rgba(7, 68, 115, 0.12);
    border-radius: 8px;
    display: flex;
    justify-content: center;
    min-height: 120px;
    padding: 14px;
}

.flight-list-logo a {
    align-items: center;
    color: #d91f35;
    display: flex;
    font-size: 32px;
    justify-content: center;
    width: 100%;
}

.flight-list-logo img {
    height: auto;
    max-height: 80px;
    max-width: 100%;
    object-fit: contain;
}

.flight-list-body {
    min-width: 0;
}

.flight-list-header {
    align-items: flex-start;
    background: #00275c;
    border-left: 5px solid #d91f35;
    border-radius: 8px;
    color: #fff;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    padding: 12px 14px;
}

.flight-list-header h4 {
    color: #fff;
    font-size: 18px;
    line-height: 1.25;
    margin: 2px 0 0;
}

.flight-list-header a {
    color: #fff;
    font-weight: 700;
    text-decoration: underline;
}

.flight-list-header h4 span {
    color: rgba(255, 255, 255, 0.76);
    font-size: 13px;
    font-weight: 600;
}

.flight-list-kicker {
    color: rgba(255, 255, 255, 0.76);
    display: block;
    font-size: 12px;
    text-transform: uppercase;
}

.flight-list-route {
    align-items: center;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    margin-top: 14px;
}

.flight-list-route > div,
.flight-list-details > div,
.flight-list-route-text {
    background: rgba(255, 255, 255, 0.75);
    border: 1px solid rgba(7, 68, 115, 0.12);
    border-radius: 8px;
    min-width: 0;
    padding: 12px;
}

.flight-list-route span,
.flight-list-details span,
.flight-list-route-text span {
    color: #555;
    display: block;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.flight-list-route strong,
.flight-list-details strong,
.flight-list-route-text strong {
    color: #00275c;
    display: block;
    line-height: 1.25;
    margin-top: 4px;
    overflow-wrap: break-word;
}

.flight-list-route-text strong {
    overflow-wrap: anywhere;
}

.flight-list-route i {
    color: #d91f35;
}

.flight-list-route a {
    color: #d91f35;
    display: inline-block;
    font-weight: 700;
    margin-top: 4px;
}

.flight-list-route em {
    color: #555;
    display: inline-block;
    font-size: 12px;
    font-style: normal;
    margin-left: 6px;
}

.flight-list-details {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
    margin-top: 12px;
}

.flight-list-route-text {
    margin-top: 12px;
}

.flight-list-return-options {
    background: rgba(255, 255, 255, 0.75);
    border: 1px solid rgba(7, 68, 115, 0.12);
    border-radius: 8px;
    margin-top: 12px;
    padding: 12px;
}

.flight-list-return-toggle {
    align-items: center;
    background: transparent;
    border: 0;
    color: #555;
    cursor: pointer;
    display: flex;
    gap: 8px;
    padding: 3px 6px;
    text-align: left;
    width: 100%;
}

.flight-list-return-options button:hover {
    background: rgb(202, 218, 243);
    color: #555;
    text-decoration: none;
}

.flight-list-return-toggle > span {
    color: #555;
    display: block;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.flight-list-return-toggle > strong {
    align-items: center;
    background: #00275c;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 11px;
    height: 20px;
    justify-content: center;
    min-width: 20px;
    padding: 0 6px;
}

.flight-list-return-toggle > i {
    color: #d91f35;
    font-size: 11px;
    margin-left: auto;
    transition: transform 0.2s ease;
}

.flight-list-return-toggle[aria-expanded="true"] > i {
    transform: rotate(180deg);
}

.flight-list-return-options ul {
    list-style: none;
    margin: 8px 0 0;
    padding: 0;
}

.flight-list-return-options li {
    align-items: center;
    border-top: 1px solid rgba(7, 68, 115, 0.1);
    display: flex;
    flex-wrap: wrap;
    gap: 4px 10px;
    justify-content: space-between;
    padding: 8px 0;
}

.flight-list-return-options li:first-child {
    border-top: 0;
    padding-top: 0;
}

.flight-list-return-options li:last-child {
    padding-bottom: 0;
}

.flight-list-return-options a {
    color: #d91f35;
    font-weight: 700;
}

.flight-list-return-copy {
    min-width: 0;
}

.flight-list-return-options small {
    color: #555;
    display: block;
    font-size: 13px;
    line-height: 1.35;
}

.flight-list-return-bid.btn {
    flex: 0 0 auto;
    font-size: 12px;
    line-height: 1;
    padding: 6px 10px;
}

.flight-list-actions {
    align-items: stretch;
    display: flex;
    flex-direction: column;
    gap: 8px;
    justify-content: center;
}

.flight-list-actions .btn {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    line-height: 1.15;
    margin: 0;
    text-align: center;
    white-space: normal;
    width: 100%;
}

.flight-list-actions .btn-icon-mini {
    align-self: center;
    flex: 0 0 auto;
    height: 36px;
    width: 36px;
}

.bid-toggle-button.btn {
    border-color: rgba(75, 85, 99, 0.32);
}

.bid-toggle-button.btn:not(.btn-success) {
    background: #6c757d;
    color: #fff;
}

.bid-toggle-button.btn:not(.btn-success):hover {
    background: #5a6268;
    border-color: #545b62;
    color: #fff;
}

.bid-toggle-button.btn.btn-success {
    background: rgba(5, 147, 7, 0.75);
    border-color: rgba(141, 234, 137, 0.24);
    color: #fff;
}

.bid-toggle-button.btn.btn-success:hover {
    background: rgba(31, 113, 2, 0.75);
    color: #fff;
}

.bid-toggle-button.btn i {
    pointer-events: none;
}

.bid-toggle-button.btn-success i {
    color: inherit;
}

.flight-list-return-bid.bid-toggle-button {
    align-items: center;
    display: inline-flex;
    gap: 6px;
}

@media (max-width: 1200px) {
    .flight-list-card {
        grid-template-columns: minmax(95px, 120px) minmax(0, 1fr);
    }

    .flight-list-actions {
        flex-direction: row;
        flex-wrap: wrap;
        grid-column: 1 / -1;
    }

    .flight-list-actions .btn {
        flex: 1 1 180px;
    }

    .flight-list-actions .btn-icon-mini {
        flex: 0 0 36px;
    }
}

@media (max-width: 900px) {
    .flight-list-card {
        grid-template-columns: 1fr;
    }

    .flight-list-logo {
        min-height: 92px;
    }

    .flight-list-route {
        grid-template-columns: 1fr;
    }

    .flight-list-route i {
        text-align: center;
        transform: rotate(90deg);
    }
}

@media (max-width: 520px) {
    .flight-sort-bar a {
        flex: 1 1 130px;
        text-align: center;
    }

    .flight-list-header h4 {
        font-size: 16px;
    }

    .flight-list-actions {
        flex-direction: column;
    }
}

.flight-detail-page {
    margin-bottom: 18px;
}

.flight-detail-hero {
    align-items: center;
    background: #00275c;
    border-left: 5px solid #d91f35;
    border-radius: 8px;
    color: #fff;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    justify-content: space-between;
    margin-bottom: 16px;
    padding: 16px 18px;
}

.flight-detail-hero-main {
    min-width: 0;
}

.flight-detail-kicker,
.flight-detail-callsign {
    color: rgba(255, 255, 255, 0.76);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.flight-detail-hero h3 {
    color: #fff;
    font-size: 28px;
    line-height: 1.15;
    margin: 4px 0;
}

.flight-detail-hero-route {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    font-size: 15px;
    font-weight: 700;
}

.flight-detail-hero-route i {
    color: #f3b13f;
}

.flight-detail-hero-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.flight-detail-hero-actions .btn {
    align-items: center;
    display: inline-flex;
    gap: 6px;
    justify-content: center;
}

.flight-detail-inactive-tag {
    align-items: center;
    background: rgba(255, 255, 255, 0.16);
    border: 1px solid rgba(255, 255, 255, 0.32);
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1;
    min-height: 32px;
    padding: 9px 13px;
    text-transform: uppercase;
}

.flight-detail-layout {
    align-items: start;
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
}

.flight-detail-main,
.flight-detail-sidebar {
    min-width: 0;
}

.flight-detail-banner,
.flight-detail-airport,
.flight-detail-metrics > div,
.flight-detail-panel {
    background: rgba(255, 255, 255, 0.75);
    border: 1px solid rgba(7, 68, 115, 0.12);
    border-radius: 8px;
    box-shadow: 0 10px 24px rgba(0, 39, 92, 0.08);
    min-width: 0;
}

.flight-detail-banner {
    align-items: center;
    display: flex;
    justify-content: center;
    margin-bottom: 14px;
    min-height: 130px;
    padding: 16px;
}

.flight-detail-banner img {
    height: auto;
    max-height: 110px;
    max-width: 100%;
    object-fit: contain;
}

.flight-detail-route-card {
    align-items: stretch;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    margin-bottom: 14px;
}

.flight-detail-airport {
    padding: 14px;
}

.flight-detail-airport span,
.flight-detail-metrics span,
.flight-detail-list dt {
    color: #5c6675;
    display: block;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.flight-detail-airport strong,
.flight-detail-metrics strong,
.flight-detail-list dd {
    color: #00275c;
    display: block;
    line-height: 1.25;
    margin: 4px 0 0;
    overflow-wrap: break-word;
}

.flight-detail-airport a,
.flight-detail-list a {
    color: #d91f35;
    display: inline-block;
    font-weight: 800;
    margin-top: 6px;
}

.flight-detail-airport em {
    color: #5c6675;
    display: inline-block;
    font-size: 12px;
    font-style: normal;
    margin-left: 6px;
}

.flight-detail-route-icon {
    align-items: center;
    color: #d91f35;
    display: flex;
    justify-content: center;
}

.flight-detail-metrics {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 14px;
}

.flight-detail-metrics > div {
    padding: 12px;
}

.flight-detail-panel {
    margin-bottom: 14px;
    padding: 14px;
}

.flight-detail-panel h5 {
    color: #00275c;
    font-size: 16px;
    font-weight: 800;
    margin: 0 0 12px;
}

.flight-detail-panel p {
    color: #3f4856;
    margin-bottom: 0;
    overflow-wrap: anywhere;
}

.flight-detail-route-text {
    font-weight: 700;
}

.flight-detail-map-panel {
    border: 1px solid rgba(7, 68, 115, 0.18);
    overflow: hidden;
    padding: 8px;
}

.flight-detail-map-panel .box-body {
    padding: 0;
}

.flight-detail-map-panel #map {
    border: 1px solid rgba(0, 39, 92, 0.12);
    border-radius: 6px;
    height: 600px !important;
    overflow: hidden;
}

.flight-detail-actions-panel {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.flight-detail-actions-panel h5 {
    margin-bottom: 4px;
}

.flight-detail-actions-panel .btn {
    align-items: center;
    display: inline-flex;
    justify-content: center;
    white-space: normal;
    width: 100%;
}

.flight-detail-list {
    display: grid;
    gap: 10px 12px;
    grid-template-columns: minmax(92px, 0.75fr) minmax(0, 1.25fr);
    margin: 0;
}

.flight-detail-list dt,
.flight-detail-list dd {
    margin-bottom: 0;
}

.flight-detail-list dd span {
    color: #5c6675;
    display: block;
    font-size: 12px;
    margin-top: 2px;
}

.flight-detail-weather-panel {
    overflow: hidden;
}

@media (max-width: 991px) {
    .flight-detail-layout {
        grid-template-columns: 1fr;
    }

    .flight-detail-sidebar {
        display: grid;
        gap: 14px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .flight-detail-sidebar .flight-detail-panel {
        margin-bottom: 0;
    }
}

@media (max-width: 767px) {
    .flight-detail-hero {
        align-items: flex-start;
    }

    .flight-detail-hero h3 {
        font-size: 24px;
    }

    .flight-detail-hero-actions {
        justify-content: flex-start;
        width: 100%;
    }

    .flight-detail-route-card,
    .flight-detail-metrics,
    .flight-detail-sidebar {
        grid-template-columns: 1fr;
    }

    .flight-detail-route-icon {
        min-height: 18px;
        transform: rotate(90deg);
    }

    .flight-detail-map-panel #map {
        height: 420px !important;
    }
}

/* End Flight List CSS */

/* Airport Detail CSS */

.airport-detail-page {
    margin-bottom: 18px;
}

.airport-detail-hero {
    background: #00275c;
    border-left: 5px solid #d91f35;
    border-radius: 8px;
    color: #fff;
    margin-bottom: 16px;
    padding: 16px 18px;
}

.airport-detail-kicker {
    color: rgba(255, 255, 255, 0.76);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.airport-detail-hero h3 {
    color: #fff;
    font-size: 28px;
    line-height: 1.15;
    margin: 4px 0 8px;
}

.airport-detail-hero-meta {
    align-items: center;
    color: rgba(255, 255, 255, 0.82);
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    font-size: 13px;
    font-weight: 700;
}

.airport-detail-hero-meta span {
    background: rgba(255, 255, 255, 0.12);
    border-radius: 999px;
    padding: 5px 9px;
}

.airport-detail-layout {
    align-items: start;
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
}

.airport-detail-main,
.airport-detail-sidebar {
    min-width: 0;
}

.airport-detail-panel,
.airport-detail-flight-card {
    background: rgba(255, 255, 255, 0.75);
    border: 1px solid rgba(7, 68, 115, 0.12);
    border-radius: 8px;
    box-shadow: 0 10px 24px rgba(0, 39, 92, 0.08);
    min-width: 0;
}

.airport-detail-panel {
    margin-bottom: 14px;
    padding: 14px;
}

.airport-detail-panel h5 {
    color: #00275c;
    font-size: 16px;
    font-weight: 800;
    margin: 0 0 12px;
}

.airport-detail-map-panel {
    border: 1px solid rgba(7, 68, 115, 0.18);
}

.airport-detail-map-frame {
    border: 1px solid rgba(0, 39, 92, 0.12);
    border-radius: 6px;
    overflow: hidden;
}

.airport-detail-map-frame #map {
    display: block;
}

.airport-detail-weather-panel {
    overflow: hidden;
}

.airport-detail-list {
    display: grid;
    gap: 10px 12px;
    grid-template-columns: minmax(86px, 0.75fr) minmax(0, 1.25fr);
    margin: 0;
}

.airport-detail-list dt,
.airport-detail-flight-card span {
    color: #5c6675;
    display: block;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.airport-detail-list dd,
.airport-detail-flight-card strong {
    color: #00275c;
    display: block;
    line-height: 1.25;
    margin: 4px 0 0;
    overflow-wrap: break-word;
}

.airport-detail-list dt,
.airport-detail-list dd {
    margin-bottom: 0;
}

.airport-detail-notes {
    color: #3f4856;
    overflow-wrap: anywhere;
}

.airport-detail-downloads .list-group {
    margin-bottom: 0;
}

.airport-detail-downloads .list-group-item {
    background: #fff;
    border-color: rgba(0, 39, 92, 0.1);
    color: #172033;
}

.airport-detail-downloads a,
.airport-detail-flight-card a {
    color: #d91f35;
    font-weight: 800;
}

.airport-detail-flight-grid {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 4px;
}

.airport-detail-section-header {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    margin-bottom: 12px;
}

.airport-detail-section-header h5 {
    margin-bottom: 0;
}

.airport-detail-section-header span {
    align-items: center;
    background: #00275c;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    min-width: 26px;
    justify-content: center;
    padding: 4px 8px;
}

.airport-detail-flight-card {
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(95px, 0.8fr) minmax(0, 1.4fr) minmax(90px, 0.7fr);
    margin-bottom: 10px;
    padding: 12px;
}

.airport-detail-flight-card:last-child {
    margin-bottom: 0;
}

.airport-detail-flight-card > div {
    min-width: 0;
}

.airport-detail-flight-times {
    display: grid;
    gap: 2px 8px;
    grid-template-columns: auto 1fr;
}

.airport-detail-empty {
    background: rgba(255, 255, 255, 0.55);
    border: 1px dashed rgba(7, 68, 115, 0.2);
    border-radius: 8px;
    color: #5c6675;
    font-weight: 700;
    padding: 18px;
    text-align: center;
}

.airport-detail-pagination {
    margin-top: 12px;
}

.airport-detail-pagination .pagination {
    justify-content: center;
    margin-bottom: 0;
}

html[data-theme="dark"] .airport-detail-downloads .list-group-item {
    background: #0f172a !important;
    border-color: rgba(203, 213, 225, 0.18) !important;
    color: #e6edf7;
}

html[data-theme="dark"] .airport-detail-section-header span {
    background: #7dd3fc;
    color: #0f172a;
}

html[data-theme="dark"] .airport-detail-empty {
    background: rgba(15, 23, 42, 0.55);
    border-color: rgba(203, 213, 225, 0.18);
    color: #aeb9ca;
}

@media (max-width: 991px) {
    .airport-detail-layout,
    .airport-detail-flight-grid {
        grid-template-columns: 1fr;
    }

    .airport-detail-sidebar {
        display: grid;
        gap: 14px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .airport-detail-sidebar .airport-detail-panel {
        margin-bottom: 0;
    }
}

@media (max-width: 767px) {
    .airport-detail-hero h3 {
        font-size: 24px;
    }

    .airport-detail-sidebar,
    .airport-detail-flight-card {
        grid-template-columns: 1fr;
    }

    .airport-detail-flight-times {
        grid-template-columns: auto minmax(0, 1fr);
    }
}

/* End Airport Detail CSS */

/* Profile CSS */

.photo-container img {
    border-radius: 8px;
}


.profile-stream-overlay-card {
    display: grid;
    gap: 14px;
}

.profile-stream-overlay-url {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 10px;
    align-items: stretch;
}

.profile-stream-overlay-url input {
    min-width: 0;
    width: 100%;
    border: 1px solid rgba(6, 126, 193, 0.28);
    border-radius: 6px;
    padding: 12px 14px;
    background: rgba(6, 126, 193, 0.08);
    color: inherit;
    font-size: 14px;
    font-weight: 700;
}

.profile-stream-overlay-copy {
    white-space: nowrap;
}

.profile-stream-overlay-platforms {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.profile-stream-overlay-platform {
    align-items: center;
    border: 1px solid rgba(6, 126, 193, 0.16);
    border-radius: 8px;
    display: inline-flex;
    gap: 8px;
    min-height: 38px;
    padding: 8px 11px;
    background: rgba(255, 255, 255, 0.72);
    color: #00275c;
    font-size: 13px;
    font-weight: 800;
}

.profile-stream-overlay-platform i,
.profile-stream-overlay-kick {
    align-items: center;
    display: inline-flex;
    height: 18px;
    justify-content: center;
    width: 18px;
    font-size: 18px;
}

.profile-stream-overlay-platform-twitch i { color: #9146ff; }
.profile-stream-overlay-platform-youtube i { color: #ff0000; }
.profile-stream-overlay-platform-tiktok i { color: #111; }

.profile-stream-overlay-kick {
    border-radius: 4px;
    background: #53fc18;
    color: #07120a;
    font-size: 10px;
    font-weight: 900;
    line-height: 1;
}

.profile-stream-overlay-note {
    margin: 0;
    color: var(--ukv-muted, #6c757d);
    font-size: 13px;
}

@media (max-width: 640px) {
    .profile-stream-overlay-url {
        grid-template-columns: 1fr;
    }
}

/* End Profile CSS */

/* Footer CSS */

.footer.footer-default {
    position: relative;
    overflow: hidden;
    background: linear-gradient(to bottom, transparent 0, transparent 80px, #00275c 80px) !important;
    padding: 115px 50px 0;
    color: #fff;
}

.footer.footer-default::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    height: 115px;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 1000 115' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 84H300C660 84 840 50 1000 32V115H0Z' fill='%2300275c'/%3E%3Cpath d='M0 80H300C660 76 840 42 1000 24L1000 32C840 50 660 84 300 84Z' fill='%23d91f35'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: 100% 100%;
    z-index: 0;
}

.footer.footer-default::after {
    content: none;
}

.footer.footer-default .footercontainer {
    position: relative;
    z-index: 2;
}

.ukvcopyright, .copyright{
    color: #fff;
    font-size: 12px;
    float: left;
}

/* End Footer CSS */

/* Privacy Policy CSS */

#privpolicy {
    color: #222;
}

#privpolicy .boxed {
    background: rgba(255,255,255,0.72);
    border-radius: 12px;
    border-bottom: 3px solid #c1272d;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
}

.privacy {
    color: #fff;
    margin-top: 0;
    margin-left: 20px;
    position: relative;
    top: -4px;
    text-transform: uppercase;
    padding: 6px;
    border: 1px solid #fff;
    border-radius: 5px;
    float: right;
    font-size: 12px;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    text-align: right;
}

#privpolicy table thead th {
    background: #2a4365;
    padding: 5px 20px;
    font-family: 'Big Shoulders Display', "Helvetica", "Arial", cursive;
    font-size: 16px;
    color: #fff;
    border-radius: 6px;
    font-weight: lighter;
    border: 1px solid #fff;
}

#privpolicy table tbody td {
    padding: 20px;
}

/* End Privacy Policy CSS */

.redlight {
    color: red;
}

.yellowlight {
    color: #785b02;
}

.minh64 {
    min-height: 64px;
}

/* Flex and Grid CSS */

.flex, .flexi {
    display: flex;
}

.flexi>* {
    flex: 1 1 50px;
}

.fcolumn {
    flex-direction: column;
}

.frow {
    flex-direction: row;
}

.faicenter {
    align-items: center;
}

.faistart {
    align-items: flex-start;
}

.faiend {
    align-items: flex-end;
}

.faistretch {
    align-items: stretch;
}

.faibase {
    align-items: baseline;
}

.faccenter {
    align-content: center;
}

.facstart {
    align-content: flex-start;
}

.facend {
    align-content: flex-end;
}

.facstretch {
    align-content: stretch;
}

.fwrap {
    flex-wrap: wrap;
}

.fgrow0 {
    flex-grow: 0;
}

.fgrow1 {
    flex-grow: 1;
}

.fgrow2 {
    flex-grow: 2;
}

.fgrow3 {
    flex-grow: 3;
}

.fgrow4 {
    flex-grow: 4;
}

.fshrink1 {
    flex-shrink: 1;
}

.fshrink2 {
    flex-shrink: 2;
}

.fshrink3 {
    flex-shrink: 3;
}

.falignself {
    align-self: flex-start;
}

.fajcenter {
    justify-content: center;
}

.fajstart {
    justify-content: flex-start;
}

.fajend {
    justify-content: flex-end;
}

.fajspaceb {
    justify-content: space-between;
}

.fajspacea {
    justify-content: space-around;
}

.fajspacee {
    justify-content: space-evenly;
}

.flexb20 {
    flex-basis: 20%;
}

.flexb25 {
    flex-basis: 25%;
}

.flexb30 {
    flex-basis: 30%;
}

.flexb50 {
    flex-basis: 50%;
}

.flexb60 {
    flex-basis: 60%;
}

.flexb70 {
    flex-basis: 70%;
}

.flexb75 {
    flex-basis: 75%;
}

.flexb100 {
    flex-basis: 100%;
}

.fgap10 {
    gap: 10px;
}

.fgap20 {
    gap: 20px;
}

/* Grid Layout */

.grid-container {
    display: grid;
}

.grid-inline-container {
    display: inline-grid;
}

/* End Flex and Grid CSS */

.select2-container {
    margin-top: 2px;
}

.map-info-box {
    position: absolute;
    bottom: 0;
    padding: 20px;
    height: 100px;
    z-index: 9999;
    background-color: rgba(232, 232, 232, 0.9);
}

.map-info-label {
    display:block;
    padding: 5px;
    background-color: rgba(232, 232, 232, 0.9);
}

.dashboard-box {
    background: #00275c !important;
    color: #FFF;

}

.dashboard-box .header {
    left: 0;
    right: 0;
    height: 100px;
    line-height: 100px;
    white-space: nowrap;
}

.dashboard-box .icon-background {
    float: left;
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    right: 0;
    font-size: 125px;
}

.dashboard-box .icon {
    opacity: .1;
}

.dashboard-box .description {
    position: absolute;
    color: #222;
    bottom: 0;
    left: 0;
    right: 0;
    font-size: 1.3em;
}

.gamify-panel {
    color: #1f2937;
}

.gamify-header {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    justify-content: space-between;
    margin-bottom: 16px;
}

.gamify-header h3 {
    color: #b3b3b3;
    font-size: 1.45rem;
    margin: 2px 0 0;
}

.gamify-compare-form {
    display: flex;
    flex-direction: column;
    flex: 1 1 220px;
    gap: 6px;
    max-width: 320px;
    min-width: 220px;
    color: #fff;
}

.gamify-compare-form label,
.gamify-tile span,
.gamify-compare em {
    color: #fff;
    font-size: 0.72rem;
    font-style: normal;
    font-weight: 700;
    letter-spacing: 0;
    text-transform: uppercase;
}

.gamify-compare-form select {
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(15, 23, 42, 0.16);
    border-radius: 8px;
    color: #111827;
    min-height: 38px;
    padding: 6px 10px;
}

.gamify-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 180px), 1fr));
}

.gamify-tile {
    background: #1f6f8b;
    border: 0;
    border-radius: 8px;
    color: #fff;
    display: flex;
    flex-direction: column;
    min-height: 148px;
    min-width: 0;
    padding: 14px;
    position: relative;
}

.gamify-tile::before {
    display: none;
}

.gamify-tile-1 {
    --gamify-accent: #1f6f8b;
    background: #1f6f8b;
}

.gamify-tile-2 {
    --gamify-accent: #c1272d;
    background: #c1272d;
}

.gamify-tile-3 {
    --gamify-accent: #2f855a;
    background: #2f855a;
}

.gamify-tile-4 {
    --gamify-accent: #b7791f;
    background: #b7791f;
}

.gamify-tile-5 {
    --gamify-accent: #285e61;
    background: #285e61;
}

.gamify-tile-6 {
    --gamify-accent: #805ad5;
    background: #805ad5;
}

.gamify-tile-7 {
    --gamify-accent: #dd6b20;
    background: #dd6b20;
}

.gamify-tile-8 {
    --gamify-accent: #0f766e;
    background: #0f766e;
}

.gamify-tile strong {
    color: #fff;
    display: block;
    font-size: 1.45rem;
    line-height: 1.12;
    margin-top: 10px;
    overflow-wrap: anywhere;
}

.gamify-tile p {
    color: rgba(255, 255, 255, 0.86);
    font-size: 0.9rem;
    line-height: 1.35;
    margin: 8px 0 0;
    overflow-wrap: anywhere;
}

.gamify-compare {
    align-items: center;
    border-top: 1px solid rgba(255, 255, 255, 0.26);
    display: flex;
    gap: 8px;
    justify-content: space-between;
    margin-top: auto;
    padding-top: 10px;
}

.gamify-compare b {
    color: #fff;
    font-size: 0.95rem;
    text-align: right;
}

.gamify-challenge {
    --gamify-accent: #00275c;
    background: #00275c;
    color: #fff;
    grid-column: span 2;
    min-width: 0;
}

.gamify-butter {
    --gamify-accent: #7c3aed;
    background: #7c3aed;
    grid-column: span 2;
    min-width: 0;
}

.gamify-butter-gauge {
    margin-top: 14px;
    padding: 34px 0 0;
    position: relative;
}

.gamify-butter-indicator {
    top: 0;
    position: absolute;
    transform: translateX(-50%);
    white-space: nowrap;
}

.gamify-butter-indicator.is-left {
    transform: translateX(0);
}

.gamify-butter-indicator.is-right {
    transform: translateX(-100%);
}

.gamify-butter-indicator span {
    background: #fff;
    border-radius: 8px;
    color: #4c1d95;
    display: block;
    font-size: 0.78rem;
    font-weight: 800;
    line-height: 1;
    padding: 7px 9px;
}

.gamify-butter-indicator span::after {
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 6px solid #fff;
    content: "";
    left: 50%;
    position: absolute;
    top: 100%;
    transform: translateX(-50%);
}

.gamify-butter-track {
    background: rgba(255, 255, 255, 0.2);
    border-radius: 999px;
    height: 12px;
    margin-top: 8px;
    position: relative;
}

.gamify-butter-track i {
    background: rgba(255, 255, 255, 0.84);
    border-radius: 999px;
    display: block;
    height: 20px;
    left: 50%;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 3px;
}

.gamify-butter-track b {
    background: #facc15;
    border-radius: 999px 999px 2px 2px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.28);
    display: block;
    height: 26px;
    position: absolute;
    top: -7px;
    transform: translateX(-50%);
    width: 5px;
}

.gamify-butter-track b::after {
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 7px solid #facc15;
    content: "";
    left: 50%;
    position: absolute;
    top: 100%;
    transform: translateX(-50%);
}

.gamify-butter-offset {
    color: #fff;
    font-size: 0.72rem;
    font-weight: 800;
    position: absolute;
    top: 72px;
    text-align: center;
    transform: translateX(-50%);
    white-space: nowrap;
}

.gamify-butter-offset.is-left {
    transform: translateX(0);
}

.gamify-butter-offset.is-right {
    transform: translateX(-100%);
}

.gamify-butter-scale {
    align-items: center;
    color: rgba(255, 255, 255, 0.82);
    display: flex;
    font-size: 0.76rem;
    justify-content: space-between;
    margin-top: 50px;
}

.gamify-butter-scale em {
    color: #fff;
    font-style: normal;
    font-weight: 800;
}

.gamify-butter-meta {
    background: rgba(255, 255, 255, 0.14);
    border-radius: 8px;
    color: #fff;
    font-size: 0.85rem;
    font-weight: 700;
    margin-top: 12px;
    padding: 8px 10px;
}

.gamify-challenge span,
.gamify-challenge p,
.gamify-challenge strong {
    color: #fff;
}

.gamify-challenge-status {
    align-items: center;
    background: rgba(255, 255, 255, 0.14);
    border-radius: 8px;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    margin-top: 14px;
    padding: 9px 10px;
}

.gamify-challenge-status em,
.gamify-challenge-status b {
    color: #fff;
    font-style: normal;
}

.gamify-challenge-status em {
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
}

.gamify-challenge-status b {
    font-size: 0.95rem;
    text-align: right;
}

.gamify-challenge-complete {
    background: #166534;
}

.mini-splash {
    padding: 30px 0;
    text-align: center;
    color: #9A9A9A;
    font-weight: 300;
}

.font-large {
    font-size: 20px;
}

.font-medium {
    font-size: 18px;
}

body.card {
    border-radius: 12px;
}

.card-bg {
    float: left;
    position: absolute;
    display:block;
    bottom: 10px;
    width:100%;
    height:100%;
    font-size: 275px;
    text-align: center;
}

.blue-bg {
    background: #067ec1;
}

.border-blue-bottom {
    border-bottom: 3px solid #067ec1;
}

.full-height {
    height: 50vh;
}

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

.position-ref {
    position: relative;
}

.m-b-md {
    margin-bottom: 30px;
}

.my-bids {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50%;
    margin: 15px;
    padding: 10px;
    border-radius: .1875rem;
    background-color: #fa7a50;
}

.my-bids a {
    color: #fff;
    text-decoration: none;
    text-align: center;
}

.search-form .form-control {
    border-radius: 5px;
    width: 250px;
}

/*
*   fix the dropdown menu on mobile view
*/
.dropdown-menu:not(.show) {
    display: none;
}

/* Discord Widget CSS */

.middle {
    display: table-cell;
    vertical-align: middle;
}

#discord .container {
    width: 100%;
    padding: 20px 20px;
    background: rgba(7,68,115,0.6) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-radius: 6px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    color: #5865F2;
}

/* Theme switcher */

.theme-toggle-item {
    align-items: center;
    display: flex;
    padding: 0 .45rem;
}

.ukv-theme-switch {
    align-items: center;
    cursor: pointer;
    display: inline-flex;
    margin: 0;
}

.ukv-theme-switch input {
    height: 1px;
    opacity: 0;
    position: absolute;
    width: 1px;
}

.ukv-theme-switch-track {
    align-items: center;
    background: rgba(255, 255, 255, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.48);
    border-radius: 999px;
    display: inline-flex;
    height: 30px;
    justify-content: space-between;
    padding: 0 7px;
    position: relative;
    transition: background .18s ease, border-color .18s ease;
    width: 58px;
}

.ukv-theme-switch-track::before {
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
    content: "";
    height: 22px;
    left: 3px;
    position: absolute;
    top: 3px;
    transition: transform .18s ease;
    width: 22px;
    z-index: 1;
}

.ukv-theme-switch-icon {
    color: #fff;
    font-size: 11px;
    line-height: 1;
    position: relative;
    z-index: 2;
}

.ukv-theme-switch input:focus + .ukv-theme-switch-track {
    box-shadow: 0 0 0 3px rgba(250, 122, 80, 0.35);
}

.ukv-theme-switch input:checked + .ukv-theme-switch-track {
    background: #111827;
    border-color: rgba(255, 255, 255, 0.32);
}

.ukv-theme-switch input:checked + .ukv-theme-switch-track::before {
    transform: translateX(28px);
}

/* Dark theme */

html[data-theme="dark"] {
    color-scheme: dark;
}

html[data-theme="dark"] body {
    background: #111827;
    color: #e6edf7;
}

html[data-theme="dark"] .wrapper {
    background-color: #111827;
    background-image: linear-gradient(rgba(17, 24, 39, 0.82), rgba(17, 24, 39, 0.9)), url('../assets/img/contbg2.png');
}

html[data-theme="dark"] .container,
html[data-theme="dark"] .container-thin {
    background: rgba(30, 41, 59, 0.82) !important;
    border-color: rgba(148, 163, 184, 0.2);
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.34);
    color: #e6edf7;
}

html[data-theme="dark"] .container-transparent,
html[data-theme="dark"] .description,
html[data-theme="dark"] .content,
html[data-theme="dark"] .profile-page,
html[data-theme="dark"] .card-title,
html[data-theme="dark"] .card-text,
html[data-theme="dark"] label {
    color: #e6edf7 !important;
}

html[data-theme="dark"] .card,
html[data-theme="dark"] .cardbody,
html[data-theme="dark"] .headcard,
html[data-theme="dark"] .flight-list-card {
    background: rgba(51, 65, 85, 0.76) !important;
    border-color: #ef4444;
    box-shadow: 0 18px 45px rgba(0, 0, 0, 0.3);
    color: #e6edf7;
}

html[data-theme="dark"] .dashboard-last-report-logo,
html[data-theme="dark"] .dashboard-last-report-route > div,
html[data-theme="dark"] .dashboard-last-report-details > div,
html[data-theme="dark"] .dashboard-archive-stats > div,
html[data-theme="dark"] .dashboard-award-item,
html[data-theme="dark"] .pirep-detail-airport,
html[data-theme="dark"] .pirep-detail-metrics > div,
html[data-theme="dark"] .pirep-detail-panel,
html[data-theme="dark"] .pirep-detail-progress,
html[data-theme="dark"] .flight-detail-airport,
html[data-theme="dark"] .flight-detail-banner,
html[data-theme="dark"] .flight-detail-metrics > div,
html[data-theme="dark"] .flight-detail-panel,
html[data-theme="dark"] .airport-detail-panel,
html[data-theme="dark"] .airport-detail-flight-card,
html[data-theme="dark"] .flight-list-logo,
html[data-theme="dark"] .flight-list-route > div,
html[data-theme="dark"] .flight-list-details > div,
html[data-theme="dark"] .flight-list-route-text,
html[data-theme="dark"] .flight-list-return-options,
html[data-theme="dark"] .social-description,
html[data-theme="dark"] .list-group-item {
    background: rgba(71, 85, 105, 0.68) !important;
    border-color: rgba(203, 213, 225, 0.18) !important;
    color: #e6edf7;
}

html[data-theme="dark"] .dashboard-last-report-route span,
html[data-theme="dark"] .dashboard-last-report-details span,
html[data-theme="dark"] .dashboard-archive-stats span,
html[data-theme="dark"] .dashboard-archive-summary p,
html[data-theme="dark"] .dashboard-award-description,
html[data-theme="dark"] .pirep-detail-airport span,
html[data-theme="dark"] .pirep-detail-airport small,
html[data-theme="dark"] .pirep-detail-airport em,
html[data-theme="dark"] .pirep-detail-metrics span,
html[data-theme="dark"] .pirep-detail-progress span,
html[data-theme="dark"] .pirep-detail-list dt,
html[data-theme="dark"] .pirep-detail-list dd span,
html[data-theme="dark"] .pirep-detail-airline-panel span,
html[data-theme="dark"] .flight-detail-airport span,
html[data-theme="dark"] .flight-detail-airport em,
html[data-theme="dark"] .flight-detail-metrics span,
html[data-theme="dark"] .flight-detail-list dt,
html[data-theme="dark"] .flight-detail-list dd span,
html[data-theme="dark"] .airport-detail-hero-meta,
html[data-theme="dark"] .airport-detail-list dt,
html[data-theme="dark"] .airport-detail-flight-card span,
html[data-theme="dark"] .tour-progress-meta,
html[data-theme="dark"] .flight-list-route span,
html[data-theme="dark"] .flight-list-details span,
html[data-theme="dark"] .flight-list-route-text span,
html[data-theme="dark"] .flight-list-return-toggle,
html[data-theme="dark"] .flight-list-return-toggle > span,
html[data-theme="dark"] .flight-list-return-options small,
html[data-theme="dark"] .flight-list-route em,
html[data-theme="dark"] .mini-splash,
html[data-theme="dark"] p.description {
    color: #aeb9ca !important;
}

html[data-theme="dark"] .dashboard-last-report-route strong,
html[data-theme="dark"] .dashboard-last-report-details strong,
html[data-theme="dark"] .dashboard-archive-stats strong,
html[data-theme="dark"] .dashboard-award-title,
html[data-theme="dark"] .pirep-detail-airport strong,
html[data-theme="dark"] .pirep-detail-metrics strong,
html[data-theme="dark"] .pirep-detail-progress strong,
html[data-theme="dark"] .pirep-detail-list dd,
html[data-theme="dark"] .pirep-detail-panel h5,
html[data-theme="dark"] .pirep-detail-airline-panel strong,
html[data-theme="dark"] .flight-detail-airport strong,
html[data-theme="dark"] .flight-detail-metrics strong,
html[data-theme="dark"] .flight-detail-list dd,
html[data-theme="dark"] .flight-detail-panel h5,
html[data-theme="dark"] .flight-detail-panel p,
html[data-theme="dark"] .airport-detail-panel h5,
html[data-theme="dark"] .airport-detail-list dd,
html[data-theme="dark"] .airport-detail-flight-card strong,
html[data-theme="dark"] .airport-detail-notes,
html[data-theme="dark"] .flight-list-route strong,
html[data-theme="dark"] .flight-list-details strong,
html[data-theme="dark"] .flight-list-route-text strong {
    color: #f8fafc;
}

html[data-theme="dark"] .flight-list-return-options a {
    color: #7dd3fc;
}

html[data-theme="dark"] .flight-list-return-options a:hover {
    color: #bae6fd;
}

html[data-theme="dark"] .flight-list-return-toggle > strong {
    background: #7dd3fc;
    color: #0f172a;
}

html[data-theme="dark"] .heading,
html[data-theme="dark"] .dashboard-last-report-header,
html[data-theme="dark"] .pirep-detail-hero,
html[data-theme="dark"] .flight-detail-hero,
html[data-theme="dark"] .airport-detail-hero,
html[data-theme="dark"] .flight-sort-bar,
html[data-theme="dark"] .flight-list-header,
html[data-theme="dark"] .dashboard-box {
    background: #1f6f8b !important;
    color: #fff;
}

html[data-theme="dark"] .dashboard-last-report-header,
html[data-theme="dark"] .pirep-detail-hero,
html[data-theme="dark"] .flight-detail-hero,
html[data-theme="dark"] .airport-detail-hero,
html[data-theme="dark"] .flight-sort-bar,
html[data-theme="dark"] .flight-list-header,
html[data-theme="dark"] .dashboard-box {
    background: #164e63 !important;
}

html[data-theme="dark"] .gamify-header h3,
html[data-theme="dark"] .gamify-tile strong {
    color: #f8fafc;
}

html[data-theme="dark"] .gamify-tile {
    background: #1f6f8b;
    border: 0;
}

html[data-theme="dark"] .gamify-tile-1 {
    background: #1f6f8b;
}

html[data-theme="dark"] .gamify-tile-2 {
    background: #c1272d;
}

html[data-theme="dark"] .gamify-tile-3 {
    background: #2f855a;
}

html[data-theme="dark"] .gamify-tile-4 {
    background: #b7791f;
}

html[data-theme="dark"] .gamify-tile-5 {
    background: #285e61;
}

html[data-theme="dark"] .gamify-tile-6 {
    background: #805ad5;
}

html[data-theme="dark"] .gamify-tile-7 {
    background: #dd6b20;
}

html[data-theme="dark"] .gamify-tile-8 {
    background: #0f766e;
}

html[data-theme="dark"] .gamify-compare-form label,
html[data-theme="dark"] .gamify-tile span,
html[data-theme="dark"] .gamify-tile p,
html[data-theme="dark"] .gamify-compare em {
    color: rgba(255, 255, 255, 0.86);
}

html[data-theme="dark"] .gamify-butter-indicator span {
    color: #101010;
}

html[data-theme="dark"] .gamify-compare-form select {
    background: #0f172a;
    border-color: rgba(203, 213, 225, 0.22);
    color: #f8fafc;
}

html[data-theme="dark"] .gamify-challenge {
    background: #00275c;
}

html[data-theme="dark"] .gamify-butter {
    background: #7c3aed;
}

html[data-theme="dark"] .gamify-challenge-complete {
    background: #166534;
}

@media (max-width: 1199px) {
    .gamify-butter,
    .gamify-challenge {
        grid-column: auto;
    }
}

html[data-theme="dark"] .table_transparent,
html[data-theme="dark"] .table {
    color: #e6edf7;
}

html[data-theme="dark"] .table_transparent tr,
html[data-theme="dark"] .table tr,
html[data-theme="dark"] .table_transparent tr:last-child,
html[data-theme="dark"] .table tr:last-child {
    border-color: rgba(148, 163, 184, 0.24);
}

html[data-theme="dark"] .table-striped tbody tr,
html[data-theme="dark"] .table tbody tr {
    background-color: rgba(15, 23, 42, 0.72);
    color: #e6edf7;
}

html[data-theme="dark"] .table-striped tbody tr:nth-of-type(2n+1) {
    background-color: rgba(30, 41, 59, 0.78);
}

html[data-theme="dark"] .table-hover tbody tr:hover {
    background-color: rgba(59, 130, 246, 0.16);
    color: #fff;
}

html[data-theme="dark"] .table_transparent thead tr,
html[data-theme="dark"] .table thead tr {
    background-color: #111827 !important;
}

html[data-theme="dark"] .form-control,
html[data-theme="dark"] .custom-select,
html[data-theme="dark"] .select2-container--default .select2-selection--single,
html[data-theme="dark"] .select2-container--default .select2-selection--multiple {
    background-color: #1e293b !important;
    border-color: rgba(148, 163, 184, 0.32) !important;
    color: #e6edf7 !important;
}

html[data-theme="dark"] .form-control::placeholder {
    color: #94a3b8;
}

html[data-theme="dark"] .dropdown-menu,
html[data-theme="dark"] .select2-dropdown {
    background-color: #1e293b;
    border-color: rgba(148, 163, 184, 0.22);
    color: #e6edf7;
}

html[data-theme="dark"] .dropdown-item,
html[data-theme="dark"] .select2-results__option {
    color: #e6edf7;
}

html[data-theme="dark"] .dropdown-item:hover,
html[data-theme="dark"] .dropdown-item:focus,
html[data-theme="dark"] .select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: #1f3a5f;
    color: #fff;
}

html[data-theme="dark"] .modal-content,
html[data-theme="dark"] .modal-header,
html[data-theme="dark"] .modal-body,
html[data-theme="dark"] .modal-footer {
    background-color: #1e293b;
    border-color: rgba(148, 163, 184, 0.22);
    color: #e6edf7;
}

html[data-theme="dark"] .jumbotron,
html[data-theme="dark"] .card-body {
    background: #334155 !important;
    color: #e6edf7;
}

html[data-theme="dark"] .pagination .page-item .page-link {
    background-color: #1e293b;
    border-color: rgba(148, 163, 184, 0.22);
    color: #7dd3fc;
}

html[data-theme="dark"] #privpolicy {
    color: #fff;
}

html[data-theme="dark"] #privpolicy .boxed {
    background: transparent;
    border-bottom-color: transparent;
    box-shadow: none;
}

html[data-theme="dark"] .yellowlight {
    color: yellow;
}

html[data-theme="dark"] a {
    color: #7dd3fc;
}

html[data-theme="dark"] a:hover {
    color: #bae6fd;
}

html[data-theme="dark"] .navbar a,
html[data-theme="dark"] .footer.footer-default a,
html[data-theme="dark"] .heading a,
html[data-theme="dark"] .dashboard-last-report-header a,
html[data-theme="dark"] .flight-list-header a {
    color: #fff;
}

html[data-theme="dark"] .navbar a:hover,
html[data-theme="dark"] .footer.footer-default a:hover,
html[data-theme="dark"] .heading a:hover,
html[data-theme="dark"] .dashboard-last-report-header a:hover,
html[data-theme="dark"] .flight-list-header a:hover {
    color: #e0f2fe;
}

html[data-theme="dark"] .footer.footer-default {
    background: linear-gradient(to bottom, transparent 0, transparent 80px, #00275c 80px) !important;
    padding-top: 115px;
}

html[data-theme="dark"] .footer.footer-default::before {
    content: "";
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 1000 115' preserveAspectRatio='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 84H300C660 84 840 50 1000 32V115H0Z' fill='%2300275c'/%3E%3Cpath d='M0 80H300C660 76 840 42 1000 24L1000 32C840 50 660 84 300 84Z' fill='%23ef4444'/%3E%3C/svg%3E");
    opacity: 1;
}

.random-flight-current-label {
    color: #222;
    font-weight: bold;
}

.random-flight-current-summary,
.random-flight-current-empty {
    color: #222;
}

.random-flight-current-summary {
    margin-top: 15px;
}

.dashboard-widget {
    color: #172033;
}

.dashboard-widget-hero {
    align-items: center;
    background: linear-gradient(135deg, #00275c, #067ec1);
    border-radius: 8px;
    color: #fff;
    display: flex;
    gap: 14px;
    justify-content: space-between;
    margin-bottom: 14px;
    min-height: 104px;
    padding: 18px;
}

.dashboard-widget-hero strong,
.dashboard-flight-body strong {
    display: block;
    font-size: 28px;
    line-height: 1.1;
}

.dashboard-widget-hero i {
    color: rgba(255, 255, 255, 0.82);
    font-size: 44px;
}

.dashboard-widget-hero-thin {
    min-height: 64px;
}

.dashboard-widget-kicker {
    display: block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    margin-bottom: 6px;
    text-transform: uppercase;
}

.dashboard-widget-stat-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-bottom: 12px;
}

.dashboard-widget-stat-grid > div,
.dashboard-widget-note,
.dashboard-widget-details,
.dashboard-flight-route,
.dashboard-flight-meta,
.dashboard-widget-list-item {
    background: rgba(255, 255, 255, 0.62);
    border: 1px solid rgba(0, 39, 92, 0.09);
    border-radius: 8px;
}

.dashboard-widget-stat-grid span,
.dashboard-flight-route span,
.dashboard-flight-body span,
.dashboard-widget-list-body span {
    color: #5c6675;
    display: block;
    font-size: 12px;
}

.dashboard-widget-stat-grid strong {
    color: #00275c;
    display: block;
    font-size: 14px;
    line-height: 1.35;
    margin-top: 4px;
}

.dashboard-widget-stat-grid > div {
    padding: 12px;
}

.dashboard-widget-note {
    align-items: center;
    display: flex;
    gap: 10px;
    line-height: 1.45;
    margin-bottom: 10px;
    padding: 12px;
}

.dashboard-widget-note i {
    color: #067ec1;
}

.dashboard-widget-details {
    margin-top: 12px;
    padding: 12px;
}

.dashboard-widget-details summary {
    color: #00275c;
    cursor: pointer;
    font-weight: 700;
}

.dashboard-widget-details p {
    line-height: 1.5;
    margin: 10px 0 0;
    overflow-wrap: anywhere;
}

.dashboard-flight-card {
    align-items: center;
    display: grid;
    gap: 14px;
    grid-template-columns: 88px minmax(0, 1fr);
    margin-bottom: 14px;
}

.dashboard-flight-logo {
    align-items: center;
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(0, 39, 92, 0.1);
    border-radius: 8px;
    display: flex;
    justify-content: center;
    min-height: 78px;
    padding: 10px;
}

.dashboard-flight-logo img {
    max-height: 58px;
    max-width: 100%;
    object-fit: contain;
}

.dashboard-flight-logo i {
    color: #067ec1;
    font-size: 32px;
}

.dashboard-flight-body strong {
    color: #00275c;
}

.dashboard-flight-route {
    align-items: center;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    margin-bottom: 10px;
    padding: 14px;
    text-align: center;
}

.dashboard-flight-route strong {
    color: #00275c;
    display: block;
    font-size: 24px;
    line-height: 1.1;
}

.dashboard-flight-route i {
    color: #d91f35;
}

.dashboard-flight-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 14px;
    margin-bottom: 12px;
    padding: 11px 12px;
}

.dashboard-flight-meta span {
    color: #172033;
    font-weight: 700;
}

.dashboard-flight-meta i {
    color: #067ec1;
}

.dashboard-widget-actions {
    align-items: center;
    display: flex;
    gap: 10px;
}

.dashboard-widget-actions span {
    color: #5c6675;
    font-weight: 700;
}

.dashboard-sayintentions {
    display: grid;
    gap: 12px;
}

.dashboard-sayintentions-logo {
    align-items: center;
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(0, 39, 92, 0.1);
    border-radius: 8px;
    display: flex;
    justify-content: center;
    min-height: 94px;
    padding: 14px;
}

.dashboard-sayintentions-logo img {
    height: auto;
    max-height: 66px;
    max-width: 100%;
    object-fit: contain;
}

.dashboard-sayintentions-body {
    background: rgba(255, 255, 255, 0.62);
    border: 1px solid rgba(0, 39, 92, 0.09);
    border-radius: 8px;
    padding: 14px;
}

.dashboard-sayintentions-body strong {
    color: #00275c;
    display: block;
    font-size: 22px;
    line-height: 1.15;
}

.dashboard-sayintentions-body p {
    color: #5c6675;
    line-height: 1.45;
    margin: 8px 0 0;
}

.dashboard-sayintentions-body p span {
    color: #d91f35;
    font-weight: 800;
    overflow-wrap: anywhere;
}

.dashboard-sayintentions-action {
    align-items: center;
    background: #d91f35;
    border-radius: 8px;
    color: #fff;
    display: flex;
    font-weight: 800;
    justify-content: center;
    min-height: 44px;
    padding: 10px 12px;
    text-align: center;
}

.dashboard-sayintentions-action:hover {
    background: #b9162a;
    color: #fff;
}

.dashboard-widget-list {
    display: grid;
    gap: 10px;
}

.dashboard-widget-list-item {
    align-items: center;
    display: grid;
    gap: 10px;
    grid-template-columns: 38px minmax(0, 1fr) auto;
    min-height: 58px;
    padding: 10px;
}

.dashboard-pirep-list .dashboard-widget-list-item {
    grid-template-columns: 38px minmax(0, 1fr) minmax(118px, 160px);
}

.dashboard-widget-list-icon,
.dashboard-widget-list-avatar {
    align-items: center;
    background: #00275c;
    border-radius: 8px;
    color: #fff;
    display: flex;
    font-weight: 700;
    height: 38px;
    justify-content: center;
    width: 38px;
}

.dashboard-widget-list-icon {
    background: #067ec1;
}

.dashboard-widget-list-body {
    min-width: 0;
}

.dashboard-widget-list-body strong {
    color: #172033;
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-widget-list-body a {
    font-weight: 700;
}

.dashboard-widget-list-body i {
    color: #d91f35;
    font-size: 11px;
    margin: 0 4px;
}

.dashboard-widget-list-pill {
    background: rgba(201, 129, 9, 0.4);
    border-radius: 999px;
    color: #00275c;
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    max-width: 160px;
    overflow: hidden;
    padding: 6px 9px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-pirep-list .dashboard-widget-list-pill {
    justify-self: end;
    text-align: center;
    width: 100%;
}

a.dashboard-widget-list-pill:hover {
    background: #00275c;
    color: #fff;
}

.dashboard-widget-empty {
    align-items: center;
    background: rgba(255, 255, 255, 0.62);
    border: 1px dashed rgba(0, 39, 92, 0.22);
    border-radius: 8px;
    display: flex;
    gap: 12px;
    padding: 18px;
}

.dashboard-widget-empty i {
    color: #067ec1;
    font-size: 24px;
}

.dashboard-widget-empty p {
    margin: 0;
}

.pireps-page {
    color: #172033;
}

.pireps-page-hero {
    align-items: center;
    background: linear-gradient(135deg, #00275c, #067ec1);
    border-radius: 8px;
    color: #fff;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    margin-bottom: 14px;
    min-height: 138px;
    padding: 22px;
}

.pireps-page-hero h3 {
    color: #fff;
    font-size: 34px;
    line-height: 1.1;
    margin: 0 0 8px;
}

.pireps-page-hero p {
    color: rgba(255, 255, 255, 0.84);
    line-height: 1.5;
    margin: 0;
    max-width: 620px;
}

.pireps-page-hero-icon {
    align-items: center;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    display: flex;
    flex: 0 0 76px;
    height: 76px;
    justify-content: center;
}

.pireps-page-hero-icon i {
    color: rgba(255, 255, 255, 0.86);
    font-size: 34px;
}

.pireps-page-stats {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 14px;
}

.pireps-page-stats > div,
.pireps-table tbody tr {
    background: rgba(255, 255, 255, 0.62);
    border: 1px solid rgba(0, 39, 92, 0.09);
    border-radius: 8px;
}

.pireps-page-stats > div {
    padding: 14px;
}

.pireps-page-stats span,
.pireps-table-mobile-label,
.pireps-table-flight span,
.pireps-table-airport span,
.pireps-table-submitted {
    color: #5c6675;
    font-size: 12px;
}

.pireps-page-stats strong {
    color: #00275c;
    display: block;
    font-size: 22px;
    line-height: 1.2;
    margin-top: 3px;
}

.pireps-page-panel {
    border-radius: 8px;
    margin-bottom: 14px;
}

.pireps-page-panel-header {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 16px;
}

.pireps-page-panel-header .btn {
    align-items: center;
    display: inline-flex;
    gap: 7px;
    white-space: nowrap;
}

.pireps-page-panel-title {
    color: #00275c;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.2;
}

.pireps-table-wrap {
    overflow-x: auto;
    padding-bottom: 2px;
}

.pireps-table {
    border-collapse: separate;
    border-spacing: 0 10px;
    padding: 0;
}

.pireps-table thead tr {
    border-radius: 8px;
}

.pireps-table tbody tr {
    box-shadow: 0 10px 24px rgba(0, 39, 92, 0.08);
    transition: background 0.18s ease, transform 0.18s ease;
}

.pireps-table tbody tr:hover {
    background: rgba(255, 255, 255, 0.82);
    transform: translateY(-1px);
}

.pireps-table td {
    border: 0;
    padding: 14px 12px;
    vertical-align: middle;
}

.pireps-table-flight a {
    color: #00275c;
    display: block;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.1;
}

.pireps-table-flight span,
.pireps-table-airport span {
    display: block;
    line-height: 1.35;
    margin-top: 4px;
    max-width: 240px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pireps-table-airport strong {
    display: block;
    font-size: 18px;
    line-height: 1.1;
}

.pireps-table-airport a {
    color: #00275c;
}

.pireps-table-pill,
.pireps-table-status .badge {
    border-radius: 999px;
    display: inline-flex;
    font-size: 11px;
    font-weight: 700;
    justify-content: center;
    line-height: 1.2;
    padding: 7px 10px;
}

.pireps-table-pill {
    background: rgba(201, 129, 9, 0.4);
    color: #00275c;
    max-width: 138px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pireps-table-metric strong {
    color: #00275c;
    display: block;
    font-size: 14px;
    line-height: 1.25;
    white-space: nowrap;
}

.pireps-table-status .badge {
    align-items: center;
    gap: 6px;
    min-width: 96px;
}

.pireps-table-submitted {
    font-weight: 700;
    min-width: 110px;
}

.pireps-table-mobile-label {
    display: none;
    font-weight: 700;
    margin-bottom: 4px;
    text-transform: uppercase;
}

.pireps-table-empty {
    justify-content: center;
}

.pireps-page-pagination {
    margin-top: 10px;
}

.pirep-detail-page {
    margin-bottom: 18px;
}

.pirep-detail-hero {
    align-items: center;
    background: #00275c;
    border-left: 5px solid #d91f35;
    border-radius: 8px;
    color: #fff;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    justify-content: space-between;
    margin-bottom: 16px;
    padding: 16px 18px;
}

.pirep-detail-hero-main {
    min-width: 0;
}

.pirep-detail-kicker {
    color: rgba(255, 255, 255, 0.76);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.pirep-detail-hero h3 {
    color: #fff;
    font-size: 28px;
    line-height: 1.15;
    margin: 4px 0;
}

.pirep-detail-hero-route {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    font-size: 15px;
    font-weight: 700;
}

.pirep-detail-hero-route i {
    color: #f3b13f;
}

.pirep-detail-hero-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
}

.pirep-detail-hero-actions .badge {
    align-items: center;
    border-radius: 999px;
    display: inline-flex;
    gap: 6px;
    line-height: 1.2;
    padding: 8px 11px;
}

.pirep-detail-layout {
    align-items: start;
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 360px);
}

.pirep-detail-main,
.pirep-detail-sidebar {
    min-width: 0;
}

.pirep-detail-route-card {
    align-items: stretch;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    margin-bottom: 14px;
}

.pirep-detail-airport,
.pirep-detail-metrics > div,
.pirep-detail-panel,
.pirep-detail-progress {
    background: rgba(255, 255, 255, 0.75);
    border: 1px solid rgba(7, 68, 115, 0.12);
    border-radius: 8px;
    box-shadow: 0 10px 24px rgba(0, 39, 92, 0.08);
    min-width: 0;
}

.pirep-detail-airport {
    padding: 14px;
}

.pirep-detail-airport span,
.pirep-detail-metrics span,
.pirep-detail-progress span,
.pirep-detail-list dt {
    color: #5c6675;
    display: block;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.pirep-detail-airport strong,
.pirep-detail-metrics strong,
.pirep-detail-progress strong,
.pirep-detail-list dd {
    color: #00275c;
    display: block;
    line-height: 1.25;
    margin: 4px 0 0;
    overflow-wrap: break-word;
}

.pirep-detail-airport a {
    color: #d91f35;
    display: inline-block;
    font-weight: 800;
    margin-top: 6px;
}

.pirep-detail-airport small,
.pirep-detail-airport em {
    color: #5c6675;
    display: block;
    line-height: 1.35;
    margin-top: 5px;
}

.pirep-detail-route-icon {
    align-items: center;
    color: #d91f35;
    display: flex;
    justify-content: center;
}

.pirep-detail-metrics {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 14px;
}

.pirep-detail-metrics > div {
    padding: 12px;
}

.pirep-detail-progress {
    margin-bottom: 14px;
    padding: 12px;
}

.pirep-detail-progress > div:first-child {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-bottom: 8px;
}

.pirep-detail-progress .progress {
    background: rgba(0, 39, 92, 0.12);
    height: 10px;
    margin: 0;
}

.pirep-detail-panel {
    margin-bottom: 14px;
    padding: 14px;
}

.pirep-detail-panel h5 {
    color: #00275c;
    font-size: 16px;
    font-weight: 800;
    margin: 0 0 12px;
}

.pirep-detail-panel p {
    color: #3f4856;
    margin-bottom: 0;
    overflow-wrap: anywhere;
}

.pirep-detail-map-panel {
    border: 1px solid rgba(7, 68, 115, 0.18);
    padding: 8px;
    overflow: hidden;
}

.pirep-detail-map-panel .box-body {
    padding: 0;
}

.pirep-detail-map-panel #map {
    border: 1px solid rgba(0, 39, 92, 0.12);
    border-radius: 6px;
    height: 620px !important;
    overflow: hidden;
}

.pirep-detail-airline-panel {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 8px;
    text-align: center;
}

.pirep-detail-airline-panel img {
    max-height: 92px;
    max-width: 100%;
    object-fit: contain;
}

.pirep-detail-airline-panel strong {
    color: #00275c;
    line-height: 1.25;
}

.pirep-detail-airline-panel span {
    color: #5c6675;
    font-size: 12px;
}

.pirep-detail-list {
    display: grid;
    gap: 10px 12px;
    grid-template-columns: minmax(88px, 0.8fr) minmax(0, 1.2fr);
    margin: 0;
}

.pirep-detail-list dt,
.pirep-detail-list dd {
    margin-bottom: 0;
}

.pirep-detail-list dd span {
    color: #5c6675;
    display: block;
    font-size: 12px;
    margin-top: 2px;
}

.pirep-detail-list a {
    color: #d91f35;
    font-weight: 800;
}

.pirep-detail-route-text {
    font-weight: 700;
}

.pirep-detail-log-panel .pirep-log-table {
    border-collapse: collapse;
    color: #111827 !important;
    margin-bottom: 0;
    width: 100%;
}

.pirep-detail-log-panel .table-responsive {
    background: #ffffff;
    border: 1px solid rgba(0, 39, 92, 0.1);
    border-radius: 6px;
}

.pirep-detail-log-panel .pirep-log-table tr,
.pirep-detail-log-panel .pirep-log-table td {
    background: #ffffff !important;
    color: #111827 !important;
}

.pirep-detail-log-panel .pirep-log-table tr + tr td {
    border-top: 1px solid rgba(0, 39, 92, 0.1);
}

.pirep-detail-log-panel .pirep-log-table td {
    border-color: rgba(0, 39, 92, 0.1);
    padding: 10px 12px;
    vertical-align: top;
}

.pirep-detail-log-panel .pirep-log-table td:first-child {
    color: #4b5563 !important;
    font-weight: 700;
    white-space: nowrap;
}

.pirep-detail-log-header {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: space-between;
}

.pirep-detail-log-header h5 {
    margin-bottom: 0;
}

.pirep-detail-log-header .btn {
    align-items: center;
    display: inline-flex;
    gap: 6px;
}

.pirep-detail-log-panel .collapse {
    margin-top: 12px;
}

html[data-theme="dark"] .pirep-detail-log-panel .table-responsive {
    background: #0f172a;
    border-color: rgba(203, 213, 225, 0.18);
}

html[data-theme="dark"] .pirep-detail-log-panel .pirep-log-table {
    color: #f8fafc !important;
}

html[data-theme="dark"] .pirep-detail-log-panel .pirep-log-table tr,
html[data-theme="dark"] .pirep-detail-log-panel .pirep-log-table td {
    background: #0f172a !important;
    color: #f8fafc !important;
}

html[data-theme="dark"] .pirep-detail-log-panel .pirep-log-table tr + tr td {
    border-top-color: rgba(203, 213, 225, 0.18);
}

html[data-theme="dark"] .pirep-detail-log-panel .pirep-log-table td {
    border-color: rgba(203, 213, 225, 0.18);
}

html[data-theme="dark"] .pirep-detail-log-panel .pirep-log-table td:first-child {
    color: #cbd5e1 !important;
}

@media (max-width: 991px) {
    .pirep-detail-layout {
        grid-template-columns: 1fr;
    }

    .pirep-detail-sidebar {
        display: grid;
        gap: 14px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .pirep-detail-sidebar .pirep-detail-panel {
        margin-bottom: 0;
    }
}

@media (max-width: 767px) {
    .pirep-detail-hero {
        align-items: flex-start;
    }

    .pirep-detail-hero h3 {
        font-size: 24px;
    }

    .pirep-detail-hero-actions {
        justify-content: flex-start;
        width: 100%;
    }

    .pirep-detail-route-card,
    .pirep-detail-metrics,
    .pirep-detail-sidebar {
        grid-template-columns: 1fr;
    }

    .pirep-detail-route-icon {
        min-height: 18px;
        transform: rotate(90deg);
    }

    .pirep-detail-map-panel #map {
        height: 420px !important;
    }
}

.bids-page {
    color: #172033;
}

.bids-page-hero {
    align-items: center;
    background: linear-gradient(135deg, #00275c, #067ec1);
    border-radius: 8px;
    color: #fff;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    margin-bottom: 14px;
    min-height: 138px;
    padding: 22px;
}

.bids-page-hero h3 {
    color: #fff;
    font-size: 34px;
    line-height: 1.1;
    margin: 0 0 8px;
}

.bids-page-hero p {
    color: rgba(255, 255, 255, 0.84);
    line-height: 1.5;
    margin: 0;
    max-width: 620px;
}

.bids-page-hero-icon {
    align-items: center;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    display: flex;
    flex: 0 0 76px;
    height: 76px;
    justify-content: center;
}

.bids-page-hero-icon i {
    color: rgba(255, 255, 255, 0.86);
    font-size: 34px;
}

.bids-page-stats {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 14px;
}

.bids-page-stats > div {
    background: rgba(255, 255, 255, 0.62);
    border: 1px solid rgba(0, 39, 92, 0.09);
    border-radius: 8px;
    padding: 14px;
}

.bids-page-stats span {
    color: #5c6675;
    display: block;
    font-size: 12px;
}

.bids-page-stats strong {
    color: #00275c;
    display: block;
    font-size: 22px;
    line-height: 1.2;
    margin-top: 3px;
}

.bids-page-panel {
    border-radius: 8px;
}

.bids-page-panel-header {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 16px;
}

.bids-page-panel-title {
    color: #00275c;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.2;
}

.bids-page .flight-sort-bar {
    background: rgba(0, 39, 92, 0.96);
}

.bids-page .flight-list-card {
    background: rgba(255, 255, 255, 0.68);
    border: 1px solid rgba(0, 39, 92, 0.09);
    border-bottom: 3px solid #c1272d;
    box-shadow: 0 10px 24px rgba(0, 39, 92, 0.08);
    position: relative;
}

.bids-page .flight-list-card::before {
    align-items: center;
    background: rgba(5, 147, 7, 0.75);
    border-radius: 999px;
    color: #fff;
    content: "Booked";
    display: inline-flex;
    font-size: 11px;
    font-weight: 800;
    line-height: 1;
    padding: 7px 10px;
    position: absolute;
    right: 14px;
    text-transform: uppercase;
    top: 14px;
    z-index: 1;
}

.bids-page .flight-list-header {
    padding-right: 90px;
}

.bids-page .flight-list-actions .save_flight.btn {
    background: rgba(5, 147, 7, 0.75);
    border-color: rgba(141, 234, 137, 0.24);
    color: #fff;
}

.bids-page .flight-list-actions .save_flight.btn:hover {
    background: rgba(2, 119, 3, 0.75);
    color: #fff;
}

.flights-page {
    color: #172033;
}

.flights-page-hero {
    align-items: center;
    background: linear-gradient(135deg, #00275c, #067ec1);
    border-radius: 8px;
    color: #fff;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    margin-bottom: 14px;
    min-height: 138px;
    padding: 22px;
}

.flights-page-hero h3 {
    color: #fff;
    font-size: 34px;
    line-height: 1.1;
    margin: 0 0 8px;
}

.flights-page-hero p {
    color: rgba(255, 255, 255, 0.84);
    line-height: 1.5;
    margin: 0;
    max-width: 680px;
}

.flights-page-hero-icon {
    align-items: center;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    display: flex;
    flex: 0 0 76px;
    height: 76px;
    justify-content: center;
}

.flights-page-hero-icon i {
    color: rgba(255, 255, 255, 0.86);
    font-size: 34px;
}

.flights-page-stats {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 14px;
}

.flights-page-stats > div {
    background: rgba(248, 252, 255, 0.82);
    border: 1px solid rgba(0, 39, 92, 0.13);
    border-radius: 8px;
    box-shadow: 0 8px 18px rgba(0, 39, 92, 0.08);
    min-width: 0;
    padding: 14px;
}

.flights-page-stats span {
    color: #5c6675;
    display: block;
    font-size: 12px;
}

.flights-page-stats strong {
    color: #00275c;
    display: block;
    font-size: 22px;
    line-height: 1.2;
    margin-top: 3px;
    overflow-wrap: anywhere;
}

.flights-page-layout {
    align-items: start;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(260px, 320px) minmax(0, 1fr);
}

.flights-page-sidebar {
    display: grid;
    gap: 14px;
}

.flights-page-panel,
.flights-sidebar-panel {
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(0, 39, 92, 0.12);
    border-bottom: 3px solid rgba(217, 31, 53, 0.6);
    border-radius: 8px;
    box-shadow: 0 12px 28px rgba(0, 39, 92, 0.12);
}

.flights-page-panel {
    min-width: 0;
}

.flights-page-panel-header {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 16px;
}

.flights-page-panel-title,
.flights-search-heading strong {
    color: #00275c;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.2;
}

.flights-sidebar-actions {
    display: grid;
    gap: 12px;
}

.flights-sidebar-button {
    align-items: center;
    display: inline-flex;
    gap: 8px;
    justify-content: center;
    white-space: normal;
    width: 100%;
}

.flights-search-heading {
    margin-bottom: 14px;
}

.flights-search-heading strong {
    display: block;
}

.flights-search-panel form {
    margin: 0;
}

.flights-search-field {
    margin-top: 12px;
}

.flights-search-field:first-of-type {
    margin-top: 0;
}

.flights-search-field label {
    color: #00275c;
    display: block;
    font-size: 12px;
    font-weight: 800;
    margin-bottom: 6px;
}

.flights-search-panel .form-control,
.flights-search-panel .select2-container .select2-selection {
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(0, 39, 92, 0.18);
    border-radius: 8px;
    color: #172033;
    min-height: 42px;
}

.flights-search-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}

.flights-search-actions .btn {
    align-items: center;
    display: inline-flex;
    gap: 8px;
    justify-content: center;
}

.flights-search-actions a {
    color: #5c6675;
    font-weight: 800;
}

.flights-page .flight-sort-bar {
    background: rgba(0, 39, 92, 0.96);
}

.flights-page .flight-list-card {
    background: rgba(255, 255, 255, 0.68);
    border: 1px solid rgba(0, 39, 92, 0.09);
    border-bottom: 3px solid #c1272d;
    box-shadow: 0 10px 24px rgba(0, 39, 92, 0.08);
}

.flights-page-pagination {
    margin-top: 14px;
}

@media (max-width: 991px) {
    .flights-page-layout {
        grid-template-columns: 1fr;
    }
}

.newstart-page {
    color: #172033;
}

.newstart-hero {
    align-items: center;
    background: linear-gradient(135deg, #00275c, #067ec1);
    border-radius: 8px;
    color: #fff;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    margin-bottom: 14px;
    min-height: 148px;
    padding: 22px;
}

.newstart-hero h3 {
    color: #fff;
    font-size: 34px;
    line-height: 1.1;
    margin: 0 0 8px;
}

.newstart-hero p {
    color: rgba(255, 255, 255, 0.84);
    line-height: 1.5;
    margin: 0;
    max-width: 660px;
}

.newstart-hero-icon {
    align-items: center;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    display: flex;
    flex: 0 0 76px;
    height: 76px;
    justify-content: center;
}

.newstart-hero-icon i {
    color: rgba(255, 255, 255, 0.86);
    font-size: 34px;
}

.newstart-stats,
.newstart-download-grid,
.newstart-community-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 14px;
}

.newstart-stats > div,
.newstart-download-card,
.newstart-step-card,
.newstart-community-card,
.newstart-finale {
    background: rgba(255, 255, 255, 0.62);
    border: 1px solid rgba(0, 39, 92, 0.09);
    border-radius: 8px;
}

.newstart-stats > div {
    padding: 14px;
}

.newstart-stats span,
.newstart-download-card span,
.newstart-step-card p,
.newstart-step-card li,
.newstart-community-card p,
.newstart-community-card li,
.newstart-finale p {
    color: #5c6675;
}

.newstart-stats span,
.newstart-download-card span {
    display: block;
    font-size: 12px;
}

.newstart-stats strong,
.newstart-download-card strong,
.newstart-step-card h4,
.newstart-community-card h4,
.newstart-finale h3 {
    color: #00275c;
}

.newstart-stats strong {
    display: block;
    font-size: 20px;
    line-height: 1.2;
    margin-top: 3px;
    overflow-wrap: anywhere;
}

.newstart-panel {
    border-radius: 8px;
    margin-bottom: 14px;
}

.newstart-panel-header {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 10px;
}

.newstart-panel-title {
    color: #00275c;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.2;
}

.newstart-lead {
    color: #5c6675;
    margin: 0 0 14px;
}

.newstart-download-card {
    align-items: center;
    display: grid;
    gap: 12px;
    grid-template-columns: 58px minmax(0, 1fr);
    padding: 14px;
    text-decoration: none;
}

.newstart-download-card:hover {
    background: rgba(255, 255, 255, 0.82);
    text-decoration: none;
}

.newstart-download-card img {
    max-height: 58px;
    max-width: 58px;
    object-fit: contain;
}

.newstart-download-card strong {
    display: block;
    font-size: 15px;
    line-height: 1.25;
    margin-bottom: 4px;
}

.newstart-step-grid {
    display: grid;
    gap: 14px;
    margin-bottom: 14px;
}

.newstart-step-card {
    display: grid;
    gap: 14px;
    grid-template-columns: 52px minmax(0, 1fr);
    padding: 18px;
}

.newstart-step-number,
.newstart-community-icon {
    align-items: center;
    background: #067ec1;
    border-radius: 8px;
    color: #fff;
    display: flex;
    font-weight: 800;
    height: 46px;
    justify-content: center;
    width: 46px;
}

.newstart-step-card h4,
.newstart-community-card h4 {
    font-size: 20px;
    line-height: 1.2;
    margin: 0 0 10px;
}

.newstart-step-card p,
.newstart-community-card p,
.newstart-finale p {
    line-height: 1.55;
    margin: 0 0 10px;
}

.newstart-step-card p:last-child,
.newstart-community-card p:last-child,
.newstart-finale p:last-child {
    margin-bottom: 0;
}

.newstart-step-card ul,
.newstart-community-card ul {
    margin: 10px 0 0;
    padding-left: 18px;
}

.newstart-step-card li,
.newstart-community-card li {
    line-height: 1.5;
    margin-bottom: 6px;
}

.newstart-step-card code {
    color: #00275c;
    white-space: normal;
}

.newstart-note {
    align-items: flex-start;
    background: rgba(255, 255, 255, 0.62);
    border: 1px solid rgba(0, 39, 92, 0.09);
    border-radius: 8px;
    color: #5c6675;
    display: flex;
    gap: 10px;
    line-height: 1.45;
    margin-top: 12px;
    padding: 12px;
}

.newstart-note i {
    color: #d91f35;
    margin-top: 3px;
}

.newstart-community-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.newstart-community-card {
    padding: 18px;
}

.newstart-community-icon {
    margin-bottom: 12px;
}

.newstart-discord-link {
    align-items: center;
    background: #5865f2;
    border-radius: 8px;
    color: #fff;
    display: inline-flex;
    font-weight: 800;
    gap: 8px;
    margin-top: 4px;
    padding: 9px 12px;
}

.newstart-discord-link:hover {
    color: #fff;
    filter: brightness(0.95);
    text-decoration: none;
}

.newstart-finale {
    padding: 22px;
    text-align: center;
}

.newstart-finale h3 {
    font-size: 32px;
    line-height: 1.1;
    margin: 10px 0 0;
}

.users-page {
    color: #172033;
}

.users-page-hero {
    align-items: center;
    background: linear-gradient(135deg, #00275c, #067ec1);
    border-radius: 8px;
    color: #fff;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    margin-bottom: 14px;
    min-height: 138px;
    padding: 22px;
}

.users-page-hero h3 {
    color: #fff;
    font-size: 34px;
    line-height: 1.1;
    margin: 0 0 8px;
}

.users-page-hero p {
    color: rgba(255, 255, 255, 0.84);
    line-height: 1.5;
    margin: 0;
    max-width: 620px;
}

.users-page-hero-icon {
    align-items: center;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    display: flex;
    flex: 0 0 76px;
    height: 76px;
    justify-content: center;
}

.users-page-hero-icon i {
    color: rgba(255, 255, 255, 0.86);
    font-size: 34px;
}

.users-page-stats {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 14px;
}

.users-page-stats > div,
.users-card {
    background: rgba(255, 255, 255, 0.62);
    border: 1px solid rgba(0, 39, 92, 0.09);
    border-radius: 8px;
}

.users-page-stats > div {
    padding: 14px;
}

.users-page-stats span,
.users-card-meta span {
    color: #5c6675;
    display: block;
    font-size: 12px;
}

.users-page-stats strong {
    color: #00275c;
    display: block;
    font-size: 22px;
    line-height: 1.2;
    margin-top: 3px;
}

.users-page-panel {
    border-radius: 8px;
    margin-bottom: 14px;
}

.users-page-panel-header {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 16px;
}

.users-page-panel-title {
    color: #00275c;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.2;
}

.users-sort-bar {
    align-items: center;
    background: #00275c;
    border-left: 5px solid #d91f35;
    border-radius: 8px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 14px;
    padding: 10px 12px;
}

.users-sort-links {
    align-items: center;
    display: flex;
    flex: 1 1 auto;
    flex-wrap: wrap;
    gap: 8px;
    min-width: 0;
}

.users-sort-bar span,
.users-sort-links span {
    color: rgba(255, 255, 255, 0.76);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
}

.users-sort-bar a,
.users-sort-links a,
.users-membership-sort {
    background: rgba(255, 255, 255, 0.12);
    border: 0;
    border-radius: 6px;
    color: #fff;
    cursor: pointer;
    font-size: 12px;
    font-weight: 700;
    padding: 5px 8px;
}

.users-sort-bar a:hover,
.users-sort-links a:hover,
.users-membership-sort:hover,
.users-membership-sort.is-ascending {
    background: #d91f35;
    color: #fff;
    text-decoration: none;
}

.users-membership-sort {
    align-items: center;
    display: inline-flex;
    gap: 5px;
    line-height: 1.4;
}

.users-membership-sort i {
    font-size: 11px;
}

.users-search {
    align-items: center;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    color: rgba(255, 255, 255, 0.76);
    display: inline-flex;
    flex: 0 1 280px;
    gap: 8px;
    margin: 0 0 0 auto;
    min-width: min(100%, 230px);
    padding: 7px 10px;
}

.users-search i {
    flex: 0 0 auto;
    font-size: 13px;
}

.users-search input {
    background: transparent;
    border: 0;
    color: #fff;
    flex: 1 1 auto;
    font-size: 13px;
    font-weight: 700;
    min-width: 0;
    outline: 0;
}

.users-search input::placeholder {
    color: rgba(255, 255, 255, 0.68);
}

.users-card-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
}

.users-card {
    display: grid;
    gap: 14px;
    grid-template-columns: 86px minmax(0, 1fr);
    padding: 14px;
}

.users-card-avatar-wrap {
    align-self: start;
    display: grid;
    gap: 8px;
    justify-items: center;
    min-width: 0;
}

.users-card-avatar {
    align-items: center;
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(0, 39, 92, 0.1);
    border-radius: 8px;
    display: flex;
    height: 86px;
    justify-content: center;
    overflow: hidden;
    width: 86px;
}

.users-card-avatar a,
.users-card-avatar img {
    display: block;
    height: 100%;
    width: 100%;
}

.users-card-avatar img {
    object-fit: cover;
}

.users-card-membership {
    align-items: center;
    border-radius: 999px;
    box-shadow: 0 8px 16px rgba(0, 39, 92, 0.14);
    color: #fff;
    display: inline-flex;
    font-size: 11px;
    font-weight: 800;
    gap: 5px;
    justify-content: center;
    line-height: 1;
    max-width: 100%;
    min-height: 26px;
    padding: 6px 9px;
    text-transform: uppercase;
}

.users-card-membership i {
    font-size: 12px;
}

.users-card-membership-member {
    background: linear-gradient(135deg, #00275c, #067ec1);
}

.users-card-membership-bronze {
    background: linear-gradient(135deg, #704425, #cf8d4a);
}

.users-card-membership-silver {
    background: linear-gradient(135deg, #6f7a86, #e8eef5);
    color: #172033;
}

.users-card-membership-gold {
    background: linear-gradient(135deg, #9b6810, #ffd66b);
    color: #172033;
}

.users-card-body {
    min-width: 0;
}

.users-card-header {
    align-items: flex-start;
    display: flex;
    gap: 10px;
    justify-content: space-between;
}

.users-card-header h4 {
    font-size: 18px;
    line-height: 1.2;
    margin: 0;
    overflow-wrap: anywhere;
}

.users-card-header h4 a {
    color: #00275c;
    font-weight: 800;
}

.users-card-country {
    align-items: center;
    background: rgba(217, 31, 53, 0.1);
    border-radius: 999px;
    display: inline-flex;
    flex: 0 0 auto;
    justify-content: center;
    min-height: 28px;
    min-width: 38px;
}

.users-card-meta {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 12px;
}

.users-card-meta > div {
    background: linear-gradient(135deg, rgba(227, 242, 252, 0.96), rgba(248, 252, 255, 0.96));
    border: 1px solid rgba(0, 39, 92, 0.18);
    border-radius: 8px;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.5), 0 8px 16px rgba(0, 39, 92, 0.06);
    min-width: 0;
    padding: 10px;
}

.users-card-meta strong {
    color: #00275c;
    display: block;
    line-height: 1.25;
    margin-top: 3px;
    overflow-wrap: anywhere;
}

.users-card-empty {
    grid-column: 1 / -1;
    justify-content: center;
}

.users-page-pagination {
    margin-top: 10px;
}

.pireps-page-panel,
.bids-page-panel,
.newstart-panel,
.users-page-panel {
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(0, 39, 92, 0.12);
    border-bottom: 3px solid rgba(217, 31, 53, 0.6);
    box-shadow: 0 12px 28px rgba(0, 39, 92, 0.12);
}

.pireps-page-stats > div,
.bids-page-stats > div,
.newstart-stats > div,
.users-page-stats > div {
    background: rgba(248, 252, 255, 0.82);
    border-color: rgba(0, 39, 92, 0.13);
    box-shadow: 0 8px 18px rgba(0, 39, 92, 0.08);
}

.pireps-table tbody tr,
.bids-page .flight-list-card,
.newstart-download-card,
.newstart-step-card,
.newstart-community-card,
.newstart-finale,
.users-card {
    background: rgba(255, 255, 255, 0.76);
    border-color: rgba(0, 39, 92, 0.13);
}

.newstart-step-card,
.newstart-community-card,
.users-card {
    box-shadow: 0 10px 22px rgba(0, 39, 92, 0.09);
}

.newstart-note {
    background: rgba(248, 252, 255, 0.76);
    border-color: rgba(0, 39, 92, 0.12);
}

.status-page {
    color: #172033;
}

.status-page-hero {
    align-items: center;
    background: linear-gradient(135deg, #00275c, #067ec1);
    border-radius: 8px;
    color: #fff;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    margin-bottom: 14px;
    min-height: 138px;
    padding: 22px;
}

.status-page-hero.has-issues {
    background: linear-gradient(135deg, #5c0010, #d91f35);
}

.status-page-hero h3 {
    color: #fff;
    font-size: 34px;
    line-height: 1.1;
    margin: 0 0 8px;
}

.status-page-hero p {
    color: rgba(255, 255, 255, 0.84);
    line-height: 1.5;
    margin: 0;
    max-width: 620px;
}

.status-page-hero-icon {
    align-items: center;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    display: flex;
    flex: 0 0 76px;
    height: 76px;
    justify-content: center;
}

.status-page-hero-icon i {
    color: rgba(255, 255, 255, 0.86);
    font-size: 34px;
}

.status-page-stats {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 14px;
}

.status-page-stats > div,
.status-endpoint-card {
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(0, 39, 92, 0.13);
    border-radius: 8px;
}

.status-page-stats > div {
    background: rgba(248, 252, 255, 0.82);
    box-shadow: 0 8px 18px rgba(0, 39, 92, 0.08);
    padding: 14px;
}

.status-page-stats span,
.status-endpoint-meta span,
.status-endpoint-body p {
    color: #5c6675;
}

.status-page-stats span,
.status-endpoint-meta span {
    display: block;
    font-size: 12px;
}

.status-page-stats strong,
.status-page-panel-title,
.status-endpoint-header h4,
.status-endpoint-meta strong {
    color: #00275c;
}

.status-page-stats strong {
    display: block;
    font-size: 22px;
    line-height: 1.2;
    margin-top: 3px;
}

.status-page-panel {
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(0, 39, 92, 0.12);
    border-bottom: 3px solid rgba(217, 31, 53, 0.6);
    border-radius: 8px;
    box-shadow: 0 12px 28px rgba(0, 39, 92, 0.12);
}

.status-page-panel-header {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 16px;
}

.status-page-panel-title {
    font-size: 21px;
    font-weight: 700;
    line-height: 1.2;
}

.status-endpoint-grid {
    display: grid;
    gap: 14px;
}

.status-endpoint-card {
    border-left: 4px solid #28a745;
    box-shadow: 0 10px 22px rgba(0, 39, 92, 0.09);
    display: grid;
    gap: 14px;
    grid-template-columns: 58px minmax(0, 1fr);
    padding: 14px;
}

.status-endpoint-card.is-offline {
    border-left-color: #d91f35;
}

.status-endpoint-icon {
    align-items: center;
    background: rgba(248, 252, 255, 0.76);
    border: 1px solid rgba(0, 39, 92, 0.12);
    border-radius: 8px;
    color: #067ec1;
    display: flex;
    height: 46px;
    justify-content: center;
    overflow: hidden;
    width: 46px;
}

.status-endpoint-icon img {
    height: 24px;
    object-fit: contain;
    width: 24px;
}

.status-endpoint-icon i {
    font-size: 22px;
}

.status-endpoint-body {
    min-width: 0;
}

.status-endpoint-header {
    align-items: flex-start;
    display: flex;
    gap: 12px;
    justify-content: space-between;
}

.status-endpoint-header h4 {
    font-size: 20px;
    line-height: 1.2;
    margin: 0;
    overflow-wrap: anywhere;
}

.status-endpoint-body p {
    line-height: 1.5;
    margin: 10px 0 0;
}

.status-endpoint-state {
    align-items: center;
    background: rgba(40, 167, 69, 0.12);
    border-radius: 999px;
    color: #155724;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 12px;
    font-weight: 800;
    gap: 7px;
    line-height: 1;
    padding: 7px 10px;
}

.status-endpoint-card.is-offline .status-endpoint-state {
    background: rgba(217, 31, 53, 0.12);
    color: #8b0013;
}

.status-endpoint-dot {
    background: #28a745;
    border-radius: 50%;
    display: inline-block;
    height: 9px;
    width: 9px;
}

.status-endpoint-card.is-offline .status-endpoint-dot {
    background: #d91f35;
}

.status-endpoint-meta {
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(0, 1fr) minmax(110px, 150px);
    margin-top: 12px;
}

.status-endpoint-meta > div {
    background: rgba(248, 252, 255, 0.76);
    border: 1px solid rgba(0, 39, 92, 0.12);
    border-radius: 8px;
    min-width: 0;
    padding: 10px;
}

.status-endpoint-meta strong {
    display: block;
    line-height: 1.25;
    margin-top: 3px;
    overflow-wrap: anywhere;
}

.status-endpoint-empty {
    justify-content: center;
}

.tours-page {
    color: #172033;
}

.tours-page-hero {
    align-items: center;
    background: linear-gradient(135deg, #00275c, #067ec1);
    border-radius: 8px;
    color: #fff;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    margin-bottom: 14px;
    min-height: 138px;
    padding: 22px;
}

.tours-page-hero h3 {
    color: #fff;
    font-size: 34px;
    line-height: 1.1;
    margin: 0 0 8px;
}

.tours-page-hero p {
    color: rgba(255, 255, 255, 0.84);
    line-height: 1.5;
    margin: 0;
    max-width: 620px;
}

.tours-page-hero-icon {
    align-items: center;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    display: flex;
    flex: 0 0 76px;
    height: 76px;
    justify-content: center;
}

.tours-page-hero-icon i {
    color: rgba(255, 255, 255, 0.86);
    font-size: 34px;
}

.tours-page-stats {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 14px;
}

.tours-page-stats > div {
    background: rgba(248, 252, 255, 0.82);
    border: 1px solid rgba(0, 39, 92, 0.13);
    border-radius: 8px;
    box-shadow: 0 8px 18px rgba(0, 39, 92, 0.08);
    padding: 14px;
}

.tours-page-stats span,
.tours-card-meta span {
    color: #5c6675;
    display: block;
    font-size: 12px;
}

.tours-page-stats strong,
.tours-page-panel-title,
.tours-card-meta strong {
    color: #00275c;
}

.tours-page-stats strong {
    display: block;
    font-size: 22px;
    line-height: 1.2;
    margin-top: 3px;
}

.tours-page-panel {
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(0, 39, 92, 0.12);
    border-bottom: 3px solid rgba(217, 31, 53, 0.6);
    border-radius: 8px;
    box-shadow: 0 12px 28px rgba(0, 39, 92, 0.12);
}

.tours-page-panel-header {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 16px;
}

.tours-page-panel-title {
    font-size: 21px;
    font-weight: 700;
    line-height: 1.2;
}

.tours-card-grid {
    align-items: stretch;
}

.tours-card-column {
    display: flex;
}

.tours-card {
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(0, 39, 92, 0.13);
    border-bottom: 3px solid #c1272d;
    border-radius: 8px;
    box-shadow: 0 10px 22px rgba(0, 39, 92, 0.09);
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    width: 100%;
}

.tours-card-image {
    aspect-ratio: 16 / 9;
    border-radius: 6px;
    margin-bottom: 15px;
    object-fit: cover;
    width: 100%;
}

.tours-card-title {
    margin-bottom: 14px;
}

.tours-card-description {
    color: #5c6675;
    line-height: 1.5;
    margin-bottom: 14px;
    min-height: 72px;
}

.tours-card-meta {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: auto;
}

.tours-card-meta > div {
    background: rgba(248, 252, 255, 0.76);
    border: 1px solid rgba(0, 39, 92, 0.12);
    border-radius: 8px;
    padding: 10px;
}

.tours-card-meta strong {
    display: block;
    font-size: 18px;
    line-height: 1.2;
    margin-top: 3px;
}

.groupflights-card-meta {
    margin-bottom: 10px;
    margin-top: 0;
}

.tours-card-description + .groupflights-card-meta {
    margin-top: auto;
}

.groupflights-card-meta-route {
    grid-template-columns: minmax(0, 1fr);
}

.groupflights-card-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}

.groupflights-card-actions .btn {
    margin: 0;
}

.tours-card-status {
    margin: 12px 0 0;
}

.tours-card-action {
    margin-top: 14px;
}

.tours-card-empty {
    justify-content: center;
}

.tours-page-pagination {
    margin-top: 10px;
}

@media (max-width: 575px) {
    .wrapper {
        padding-top: 24px;
    }

    .wrapper > .container {
        max-width: calc(100% - 20px);
        padding: 24px 14px;
    }

    .dashboard-layout {
        margin-left: 0;
        margin-right: 0;
    }

    .dashboard-layout > .dashboard-main-column,
    .dashboard-layout > .dashboard-sidebar-column {
        flex: 0 0 100%;
        max-width: 100%;
        padding-left: 0;
        padding-right: 0;
        width: 100%;
    }

    #dashcards {
        margin-left: 0;
        margin-right: 0;
    }

    #dashcards > [class*="col-"] {
        flex: 0 0 100%;
        max-width: 100%;
        padding-left: 0;
        padding-right: 0;
    }

    #dashcards .card {
        min-width: 0;
    }

    .dashboard-box {
        min-height: auto;
        padding: 18px 12px;
        position: relative;
    }

    .dashboard-box .header {
        font-size: clamp(1.55rem, 9vw, 2.3rem);
        height: auto;
        line-height: 1.15;
        margin: 0 0 8px;
        overflow-wrap: anywhere;
        white-space: normal;
        word-break: break-word;
    }

    .dashboard-box .description {
        bottom: auto;
        color: rgba(255, 255, 255, 0.86);
        font-size: 1rem;
        position: static;
    }

    .dashboard-sidebar-column .cardbody {
        padding: 18px 14px;
    }

    .dashboard-sidebar-column .heading {
        font-size: clamp(1.05rem, 6vw, 1.45rem);
        line-height: 1.2;
        overflow-wrap: anywhere;
    }

    .gamify-header {
        display: block;
    }

    .gamify-compare-form {
        margin-top: 14px;
        min-width: 0;
        width: 100%;
    }

    .gamify-grid {
        grid-template-columns: 1fr;
    }

    .gamify-butter,
    .gamify-challenge {
        grid-column: auto;
    }

    .dashboard-widget-hero {
        align-items: flex-start;
        flex-direction: column;
        min-height: 0;
        padding: 15px;
    }

    .dashboard-widget-hero strong,
    .dashboard-flight-body strong {
        font-size: clamp(1.35rem, 8vw, 1.9rem);
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .dashboard-widget-stat-grid,
    .dashboard-flight-card,
    .dashboard-flight-route,
    .dashboard-widget-list-item {
        grid-template-columns: 1fr;
    }

    .dashboard-widget-list-item,
    .dashboard-flight-route {
        text-align: left;
    }

    .dashboard-widget-stat-grid strong,
    .dashboard-widget-note,
    .dashboard-sayintentions-body strong,
    .dashboard-sayintentions-body p,
    .dashboard-flight-meta span,
    .dashboard-widget-actions span,
    .dashboard-widget-list-body strong,
    .dashboard-widget-list-body span,
    .dashboard-widget-list-pill {
        overflow-wrap: anywhere;
        white-space: normal;
        word-break: break-word;
    }

    .dashboard-widget-list-body strong,
    .dashboard-widget-list-pill {
        overflow: visible;
        text-overflow: clip;
    }

    .dashboard-pirep-list .dashboard-widget-list-item {
        grid-template-columns: 1fr;
    }

    .dashboard-pirep-list .dashboard-widget-list-pill {
        justify-self: start;
        text-align: left;
        width: auto;
    }

    .dashboard-flight-route i {
        transform: rotate(90deg);
    }

    .dashboard-flight-meta,
    .dashboard-widget-actions {
        align-items: flex-start;
        flex-direction: column;
    }

    .pireps-page-hero {
        align-items: flex-start;
        flex-direction: column;
        min-height: 0;
        padding: 18px;
    }

    .pireps-page-hero h3 {
        font-size: clamp(1.8rem, 10vw, 2.25rem);
        overflow-wrap: anywhere;
    }

    .pireps-page-hero p {
        overflow-wrap: anywhere;
    }

    .pireps-page-hero-icon {
        flex-basis: auto;
        height: 58px;
        width: 58px;
    }

    .pireps-page-stats,
    .pireps-page-panel-header {
        grid-template-columns: 1fr;
    }

    .pireps-page-panel-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .pireps-page-panel-header .btn {
        justify-content: center;
        width: 100%;
    }

    .pireps-table {
        border-spacing: 0 10px;
    }

    .pireps-table tbody tr {
        display: grid;
        gap: 10px;
        grid-template-columns: 1fr;
        padding: 14px;
    }

    .pireps-table td {
        display: block;
        padding: 0;
        text-align: left !important;
    }

    .pireps-table-mobile-label {
        display: block;
    }

    .pireps-table-flight span,
    .pireps-table-airport span,
    .pireps-table-pill,
    .pireps-table-metric strong {
        max-width: 100%;
        overflow-wrap: anywhere;
        white-space: normal;
        word-break: break-word;
    }

    .bids-page-hero {
        align-items: flex-start;
        flex-direction: column;
        min-height: 0;
        padding: 18px;
    }

    .bids-page-hero h3 {
        font-size: clamp(1.8rem, 10vw, 2.25rem);
        overflow-wrap: anywhere;
    }

    .bids-page-hero p {
        overflow-wrap: anywhere;
    }

    .bids-page-hero-icon {
        flex-basis: auto;
        height: 58px;
        width: 58px;
    }

    .bids-page-stats {
        grid-template-columns: 1fr;
    }

    .bids-page-panel-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .bids-page .flight-list-card::before {
        position: static;
        justify-self: start;
        order: -1;
    }

    .bids-page .flight-list-header {
        padding-right: 14px;
    }

    .flights-page-hero {
        align-items: flex-start;
        flex-direction: column;
        min-height: 0;
        padding: 18px;
    }

    .flights-page-hero h3 {
        font-size: clamp(1.8rem, 10vw, 2.25rem);
        overflow-wrap: anywhere;
    }

    .flights-page-hero p,
    .flights-page-panel-title,
    .flights-page-stats strong,
    .flights-search-heading strong,
    .flights-search-field label {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .flights-page-hero-icon {
        flex-basis: auto;
        height: 58px;
        width: 58px;
    }

    .flights-page-stats,
    .flights-page-layout {
        grid-template-columns: 1fr;
    }

    .flights-page-panel,
    .flights-sidebar-panel {
        padding: 18px;
    }

    .flights-search-actions,
    .flights-search-actions .btn {
        width: 100%;
    }

    .flights-search-actions a {
        text-align: center;
        width: 100%;
    }

    .newstart-hero {
        align-items: flex-start;
        flex-direction: column;
        min-height: 0;
        padding: 18px;
    }

    .newstart-hero h3 {
        font-size: clamp(1.8rem, 10vw, 2.25rem);
        overflow-wrap: anywhere;
    }

    .newstart-hero p,
    .newstart-panel-title,
    .newstart-stats strong,
    .newstart-step-card h4,
    .newstart-step-card p,
    .newstart-step-card li,
    .newstart-community-card p,
    .newstart-community-card li,
    .newstart-finale p,
    .newstart-finale h3 {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .newstart-hero-icon {
        flex-basis: auto;
        height: 58px;
        width: 58px;
    }

    .newstart-stats,
    .newstart-download-grid,
    .newstart-community-grid {
        grid-template-columns: 1fr;
    }

    .newstart-step-card {
        grid-template-columns: 1fr;
    }

    .newstart-panel-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .users-page-hero {
        align-items: flex-start;
        flex-direction: column;
        min-height: 0;
        padding: 18px;
    }

    .users-page-hero h3 {
        font-size: clamp(1.8rem, 10vw, 2.25rem);
        overflow-wrap: anywhere;
    }

    .users-page-hero p,
    .users-page-panel-title,
    .users-page-stats strong,
    .users-card-header h4,
    .users-card-meta strong {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .users-page-hero-icon {
        flex-basis: auto;
        height: 58px;
        width: 58px;
    }

    .users-page-stats,
    .users-card-grid,
    .users-card,
    .users-card-meta {
        grid-template-columns: 1fr;
    }

    .users-card-avatar {
        height: 72px;
        width: 72px;
    }

    .users-card-avatar-wrap {
        justify-items: start;
    }

    .users-sort-bar a,
    .users-membership-sort {
        flex: 1 1 130px;
        text-align: center;
    }

    .users-search {
        flex: 1 1 100%;
        margin-left: 0;
        width: 100%;
    }

    .status-page-hero {
        align-items: flex-start;
        flex-direction: column;
        min-height: 0;
        padding: 18px;
    }

    .status-page-hero h3 {
        font-size: clamp(1.8rem, 10vw, 2.25rem);
        overflow-wrap: anywhere;
    }

    .status-page-hero p,
    .status-page-panel-title,
    .status-page-stats strong,
    .status-endpoint-header h4,
    .status-endpoint-body p,
    .status-endpoint-meta strong {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .status-page-hero-icon {
        flex-basis: auto;
        height: 58px;
        width: 58px;
    }

    .status-page-stats,
    .status-endpoint-card,
    .status-endpoint-meta {
        grid-template-columns: 1fr;
    }

    .status-endpoint-header {
        flex-direction: column;
    }

    .tours-page-hero {
        align-items: flex-start;
        flex-direction: column;
        min-height: 0;
        padding: 18px;
    }

    .tours-page-hero h3 {
        font-size: clamp(1.8rem, 10vw, 2.25rem);
        overflow-wrap: anywhere;
    }

    .tours-page-hero p,
    .tours-page-panel-title,
    .tours-page-stats strong,
    .tours-card-title,
    .tours-card-description,
    .tours-card-meta strong {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .tours-page-hero-icon {
        flex-basis: auto;
        height: 58px;
        width: 58px;
    }

    .tours-page-stats,
    .tours-card-meta {
        grid-template-columns: 1fr;
    }

    .tours-card-description {
        min-height: 0;
    }
}

@media (min-width: 576px) and (max-width: 1199px) {
    .dashboard-sidebar-column .cardbody {
        padding-left: 16px;
        padding-right: 16px;
    }

    .dashboard-widget-hero {
        align-items: flex-start;
        flex-direction: column;
    }

    .dashboard-widget-hero strong,
    .dashboard-widget-stat-grid strong,
    .dashboard-widget-note,
    .dashboard-widget-details,
    .dashboard-widget-details p {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .dashboard-widget-stat-grid {
        grid-template-columns: 1fr;
    }

    .dashboard-flight-card,
    .dashboard-flight-route {
        grid-template-columns: 1fr;
        text-align: left;
    }

    .dashboard-flight-route i {
        transform: rotate(90deg);
    }

    .dashboard-flight-body,
    .dashboard-flight-body strong,
    .dashboard-flight-body span {
        min-width: 0;
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .dashboard-pirep-list .dashboard-widget-list-item {
        grid-template-columns: 38px minmax(0, 1fr);
    }

    .dashboard-pirep-list .dashboard-widget-list-pill {
        grid-column: 2;
        justify-self: start;
        max-width: 100%;
        text-align: left;
        white-space: normal;
        width: auto;
    }

    .dashboard-widget-list-body span {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .pireps-page-hero h3,
    .pireps-page-hero p,
    .pireps-page-panel-title,
    .pireps-page-stats strong {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .pireps-page-stats {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .pireps-table-flight span,
    .pireps-table-airport span {
        max-width: 170px;
    }

    .bids-page-hero h3,
    .bids-page-hero p,
    .bids-page-panel-title,
    .bids-page-stats strong {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .flights-page-hero h3,
    .flights-page-hero p,
    .flights-page-panel-title,
    .flights-page-stats strong,
    .flights-search-heading strong {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .flights-page-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .newstart-hero h3,
    .newstart-hero p,
    .newstart-panel-title,
    .newstart-stats strong,
    .newstart-step-card h4,
    .newstart-step-card p,
    .newstart-step-card li,
    .newstart-community-card p,
    .newstart-community-card li {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .newstart-stats,
    .newstart-download-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .users-page-hero h3,
    .users-page-hero p,
    .users-page-panel-title,
    .users-page-stats strong,
    .users-card-header h4,
    .users-card-meta strong {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .status-page-hero h3,
    .status-page-hero p,
    .status-page-panel-title,
    .status-page-stats strong,
    .status-endpoint-header h4,
    .status-endpoint-body p,
    .status-endpoint-meta strong {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .status-page-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tours-page-hero h3,
    .tours-page-hero p,
    .tours-page-panel-title,
    .tours-page-stats strong,
    .tours-card-title,
    .tours-card-description,
    .tours-card-meta strong {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .tours-page-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 576px) and (max-width: 800px) {
    .pireps-table tbody tr {
        display: grid;
        gap: 12px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding: 14px;
    }

    .pireps-table td {
        display: block;
        padding: 0;
        text-align: left !important;
    }

    .pireps-table-mobile-label {
        display: block;
    }

    .pireps-table-flight span,
    .pireps-table-airport span,
    .pireps-table-pill,
    .pireps-table-metric strong {
        max-width: 100%;
        overflow-wrap: anywhere;
        white-space: normal;
        word-break: break-word;
    }
}

html[data-theme="dark"] .random-flight-current-label {
    color: #e0f2fe;
}

html[data-theme="dark"] .random-flight-current h5,
html[data-theme="dark"] .random-flight-current-summary,
html[data-theme="dark"] .random-flight-current-empty {
    color: #f8fafc;
}

html[data-theme="dark"] .dashboard-widget {
    color: #f8fafc;
}

html[data-theme="dark"] .dashboard-widget-stat-grid > div,
html[data-theme="dark"] .dashboard-widget-note,
html[data-theme="dark"] .dashboard-widget-details,
html[data-theme="dark"] .dashboard-flight-route,
html[data-theme="dark"] .dashboard-flight-meta,
html[data-theme="dark"] .dashboard-flight-logo,
html[data-theme="dark"] .dashboard-sayintentions-logo,
html[data-theme="dark"] .dashboard-sayintentions-body,
html[data-theme="dark"] .dashboard-widget-list-item,
html[data-theme="dark"] .dashboard-widget-empty {
    background: rgba(15, 23, 42, 0.72);
    border-color: rgba(148, 163, 184, 0.18);
}

html[data-theme="dark"] .dashboard-widget-stat-grid span,
html[data-theme="dark"] .dashboard-flight-route span,
html[data-theme="dark"] .dashboard-flight-body span,
html[data-theme="dark"] .dashboard-sayintentions-body p,
html[data-theme="dark"] .dashboard-widget-list-body span,
html[data-theme="dark"] .dashboard-widget-actions span {
    color: #cbd5e1;
}

html[data-theme="dark"] .dashboard-widget-stat-grid strong,
html[data-theme="dark"] .dashboard-widget-details summary,
html[data-theme="dark"] .dashboard-flight-body strong,
html[data-theme="dark"] .dashboard-flight-route strong,
html[data-theme="dark"] .dashboard-flight-meta span,
html[data-theme="dark"] .dashboard-sayintentions-body strong,
html[data-theme="dark"] .dashboard-widget-list-body strong,
html[data-theme="dark"] .dashboard-widget-list-pill {
    color: #f8fafc;
}

html[data-theme="dark"] .dashboard-widget-list-pill {
    background: rgba(6, 126, 193, 0.25);
}

html[data-theme="dark"] .pireps-page {
    color: #f8fafc;
}

html[data-theme="dark"] .pireps-page-stats > div,
html[data-theme="dark"] .pireps-table tbody tr {
    background: rgba(15, 23, 42, 0.72);
    border-color: rgba(148, 163, 184, 0.18);
}

html[data-theme="dark"] .pireps-table tbody tr:hover {
    background: rgba(30, 41, 59, 0.82);
}

html[data-theme="dark"] .pireps-page-panel-title,
html[data-theme="dark"] .pireps-page-stats strong,
html[data-theme="dark"] .pireps-table-flight a,
html[data-theme="dark"] .pireps-table-airport a,
html[data-theme="dark"] .pireps-table-metric strong,
html[data-theme="dark"] .pireps-table-pill {
    color: #f8fafc;
}

html[data-theme="dark"] .pireps-page-stats span,
html[data-theme="dark"] .pireps-table-mobile-label,
html[data-theme="dark"] .pireps-table-flight span,
html[data-theme="dark"] .pireps-table-airport span,
html[data-theme="dark"] .pireps-table-submitted {
    color: #cbd5e1;
}

html[data-theme="dark"] .pireps-table-pill {
    background: rgba(6, 126, 193, 0.25);
}

html[data-theme="dark"] .bids-page {
    color: #f8fafc;
}

html[data-theme="dark"] .bids-page-stats > div,
html[data-theme="dark"] .bids-page .flight-list-card {
    background: rgba(15, 23, 42, 0.72);
    border-color: rgba(148, 163, 184, 0.18);
}

html[data-theme="dark"] .bids-page-panel-title,
html[data-theme="dark"] .bids-page-stats strong {
    color: #f8fafc;
}

html[data-theme="dark"] .bids-page-stats span {
    color: #cbd5e1;
}

html[data-theme="dark"] .bids-page .flight-list-card::before {
    background: rgba(6, 126, 193, 0.25);
    color: #f8fafc;
}

html[data-theme="dark"] .bid-toggle-button.btn.btn-success,
html[data-theme="dark"] .bids-page .flight-list-actions .save_flight.btn {
    background: #15803d;
    border-color: #4ade80;
    color: #fff;
    box-shadow: 0 0 0 1px rgba(187, 247, 208, 0.16);
}

html[data-theme="dark"] .bid-toggle-button.btn.btn-success:hover,
html[data-theme="dark"] .bids-page .flight-list-actions .save_flight.btn:hover {
    background: #16a34a;
    border-color: #86efac;
    color: #fff;
}

html[data-theme="dark"] .bid-toggle-button.btn.btn-success i,
html[data-theme="dark"] .bids-page .flight-list-actions .save_flight.btn i {
    color: #fff;
}

html[data-theme="dark"] .flights-page {
    color: #f8fafc;
}

html[data-theme="dark"] .flights-page-panel,
html[data-theme="dark"] .flights-sidebar-panel,
html[data-theme="dark"] .flights-page-stats > div,
html[data-theme="dark"] .flights-page .flight-list-card {
    background: rgba(15, 23, 42, 0.72);
    border-color: rgba(148, 163, 184, 0.18);
}

html[data-theme="dark"] .flights-page-panel-title,
html[data-theme="dark"] .flights-page-stats strong,
html[data-theme="dark"] .flights-search-heading strong,
html[data-theme="dark"] .flights-search-field label {
    color: #f8fafc;
}

html[data-theme="dark"] .flights-page-stats span,
html[data-theme="dark"] .flights-search-actions a {
    color: #cbd5e1;
}

html[data-theme="dark"] .flights-search-panel .form-control,
html[data-theme="dark"] .flights-search-panel .select2-container .select2-selection {
    background: rgba(15, 23, 42, 0.86);
    border-color: rgba(148, 163, 184, 0.22);
    color: #f8fafc;
}

html[data-theme="dark"] .newstart-page {
    color: #f8fafc;
}

html[data-theme="dark"] .newstart-stats > div,
html[data-theme="dark"] .newstart-download-card,
html[data-theme="dark"] .newstart-step-card,
html[data-theme="dark"] .newstart-community-card,
html[data-theme="dark"] .newstart-finale,
html[data-theme="dark"] .newstart-note {
    background: rgba(15, 23, 42, 0.72);
    border-color: rgba(148, 163, 184, 0.18);
}

html[data-theme="dark"] .newstart-download-card:hover {
    background: rgba(30, 41, 59, 0.82);
}

html[data-theme="dark"] .newstart-stats strong,
html[data-theme="dark"] .newstart-download-card strong,
html[data-theme="dark"] .newstart-step-card h4,
html[data-theme="dark"] .newstart-step-card code,
html[data-theme="dark"] .newstart-community-card h4,
html[data-theme="dark"] .newstart-panel-title,
html[data-theme="dark"] .newstart-finale h3 {
    color: #f8fafc;
}

html[data-theme="dark"] .newstart-stats span,
html[data-theme="dark"] .newstart-download-card span,
html[data-theme="dark"] .newstart-step-card p,
html[data-theme="dark"] .newstart-step-card li,
html[data-theme="dark"] .newstart-community-card p,
html[data-theme="dark"] .newstart-community-card li,
html[data-theme="dark"] .newstart-finale p,
html[data-theme="dark"] .newstart-note,
html[data-theme="dark"] .newstart-lead {
    color: #cbd5e1;
}

html[data-theme="dark"] .users-page {
    color: #f8fafc;
}

html[data-theme="dark"] .users-page-stats > div,
html[data-theme="dark"] .users-card,
html[data-theme="dark"] .users-card-avatar,
html[data-theme="dark"] .users-card-meta > div {
    background: rgba(15, 23, 42, 0.72);
    border-color: rgba(148, 163, 184, 0.18);
}

html[data-theme="dark"] .users-card-meta > div {
    background: linear-gradient(135deg, rgba(30, 41, 59, 0.94), rgba(15, 23, 42, 0.9));
    border-color: rgba(125, 211, 252, 0.24);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.04), 0 8px 16px rgba(0, 0, 0, 0.18);
}

html[data-theme="dark"] .users-page-panel-title,
html[data-theme="dark"] .users-page-stats strong,
html[data-theme="dark"] .users-card-header h4 a,
html[data-theme="dark"] .users-card-meta strong {
    color: #f8fafc;
}

html[data-theme="dark"] .users-page-stats span,
html[data-theme="dark"] .users-card-meta span {
    color: #cbd5e1;
}

html[data-theme="dark"] .users-card-country {
    background: rgba(6, 126, 193, 0.25);
}

html[data-theme="dark"] .status-page {
    color: #f8fafc;
}

html[data-theme="dark"] .status-page-panel,
html[data-theme="dark"] .status-page-stats > div,
html[data-theme="dark"] .status-endpoint-card,
html[data-theme="dark"] .status-endpoint-icon,
html[data-theme="dark"] .status-endpoint-meta > div {
    background: rgba(15, 23, 42, 0.72);
    border-color: rgba(148, 163, 184, 0.18);
}

html[data-theme="dark"] .status-page-panel-title,
html[data-theme="dark"] .status-page-stats strong,
html[data-theme="dark"] .status-endpoint-header h4,
html[data-theme="dark"] .status-endpoint-meta strong {
    color: #f8fafc;
}

html[data-theme="dark"] .status-page-stats span,
html[data-theme="dark"] .status-endpoint-meta span,
html[data-theme="dark"] .status-endpoint-body p {
    color: #cbd5e1;
}

html[data-theme="dark"] .status-endpoint-state {
    background: rgba(40, 167, 69, 0.18);
    color: #bbf7d0;
}

html[data-theme="dark"] .status-endpoint-card.is-offline .status-endpoint-state {
    background: rgba(217, 31, 53, 0.2);
    color: #fecaca;
}

html[data-theme="dark"] .tours-page {
    color: #f8fafc;
}

html[data-theme="dark"] .tours-page-panel,
html[data-theme="dark"] .tours-page-stats > div,
html[data-theme="dark"] .tours-card,
html[data-theme="dark"] .tours-card-meta > div {
    background: rgba(15, 23, 42, 0.72);
    border-color: rgba(148, 163, 184, 0.18);
}

html[data-theme="dark"] .tours-page-panel-title,
html[data-theme="dark"] .tours-page-stats strong,
html[data-theme="dark"] .tours-card-meta strong {
    color: #f8fafc;
}

html[data-theme="dark"] .tours-page-stats span,
html[data-theme="dark"] .tours-card-meta span,
html[data-theme="dark"] .tours-card-description {
    color: #cbd5e1;
}

html[data-theme="dark"] .home-welcome-title {
    color: #f8fafc;
}

html[data-theme="dark"] .home-welcome-accent {
    background-clip: text;
    color: #e0f2fe;
    -webkit-background-clip: text;
    text-shadow: 0 1px 10px rgba(125, 211, 252, 0.14);
}

.regulations-probationary-period {
    border-bottom: 2px dashed #CCC;
    color: midnightblue;
    margin-bottom: 30px;
    padding-bottom: 20px;
    text-align: center;
}

html[data-theme="dark"] .regulations-probationary-period {
    background: rgba(224, 242, 254, 0.1);
    border: 1px solid rgba(125, 211, 252, 0.24);
    border-bottom: 2px dashed rgba(125, 211, 252, 0.45);
    border-radius: 8px;
    color: #e0f2fe;
    line-height: 1.65;
    padding: 18px 20px;
}

/* Contact page section */
.contact-page {
    color: #172033;
}

.contact-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(260px, 0.8fr);
    gap: 28px;
    align-items: stretch;
    margin-bottom: 28px;
}

.contact-panel {
    background: rgba(255, 255, 255, 0.62);
    border: 1px solid rgba(255, 255, 255, 0.45);
    border-bottom: 3px solid #c1272d;
    border-radius: 8px;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
    padding: 28px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.contact-title {
    font-family: "Special Gothic Expanded One", Montserrat, Arial, sans-serif;
    font-size: clamp(2rem, 5vw, 4.2rem);
    line-height: 1;
    margin: 0 0 16px;
    color: #00275c;
    letter-spacing: 0;
    text-transform: uppercase;
}

.contact-lede {
    font-size: 1rem;
    line-height: 1.7;
    margin: 0;
    max-width: 740px;
}

.contact-meta {
    display: grid;
    gap: 14px;
    margin-top: 24px;
}

.contact-meta-item {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    background: rgba(0, 39, 92, 0.08);
    border-radius: 8px;
    padding: 14px;
}

.contact-meta-item i {
    color: #c1272d;
    margin-top: 3px;
    min-width: 18px;
}

.contact-meta-item strong {
    display: block;
    color: #00275c;
    margin-bottom: 2px;
}

.contact-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 340px;
    gap: 28px;
    align-items: start;
}

.contact-form .form-group {
    margin-bottom: 18px;
}

.contact-form label {
    color: #00275c;
    font-weight: 700;
    margin-bottom: 8px;
}

.contact-form .form-control {
    background: rgba(255, 255, 255, 0.86);
    border: 1px solid rgba(0, 39, 92, 0.18);
    border-radius: 8px;
    color: #172033;
    min-height: 46px;
}

.contact-form textarea.form-control {
    min-height: 180px;
    resize: vertical;
}

.contact-form .form-control:focus {
    border-color: #067ec1;
    box-shadow: 0 0 0 0.2rem rgba(6, 126, 193, 0.18);
}

.contact-submit {
    background: #c1272d;
    color: #fff;
    border-radius: 8px;
    padding: 12px 22px;
    font-weight: 700;
    min-width: 160px;
}

.contact-submit:hover,
.contact-submit:focus {
    background: #00275c;
    color: #fff;
}

.contact-side {
    display: grid;
    gap: 18px;
}

.contact-side h3,
.contact-panel h2 {
    color: #00275c;
    font-family: "Cal Sans", Montserrat, Arial, sans-serif;
    font-size: 1.5rem;
    margin: 0 0 14px;
    letter-spacing: 0;
}

.contact-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 12px;
}

.contact-list li {
    display: flex;
    gap: 10px;
    line-height: 1.5;
}

.contact-list i {
    color: #067ec1;
    margin-top: 3px;
    min-width: 18px;
}

.contact-discord {
    background: linear-gradient(135deg, rgba(88, 101, 242, 0.92), rgba(0, 39, 92, 0.92));
    border-bottom-color: #5865f2;
    color: #fff;
}

.contact-discord h3 {
    color: #fff;
}

.contact-discord p {
    line-height: 1.6;
    margin-bottom: 18px;
}

.contact-discord-link {
    align-items: center;
    background: #fff;
    border-radius: 8px;
    color: #00275c;
    display: inline-flex;
    font-weight: 700;
    gap: 10px;
    padding: 12px 16px;
}

.contact-discord-link:hover,
.contact-discord-link:focus {
    background: #eef0ff;
    color: #00275c;
}

.contact-discord-link i {
    color: #5865f2;
    font-size: 1.35rem;
}

.contact-discord-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.contact-discord-link-secondary {
    background: rgba(255, 255, 255, 0.16);
    border: 1px solid rgba(255, 255, 255, 0.5);
    color: #fff;
}

.contact-discord-link-secondary:hover,
.contact-discord-link-secondary:focus {
    background: rgba(255, 255, 255, 0.28);
    color: #fff;
}

.contact-discord-link-secondary i {
    color: #fff;
}

.contact-discord-channel {
    color: #fff;
    font-weight: 700;
    text-decoration: underline;
}

.contact-discord-channel:hover,
.contact-discord-channel:focus {
    color: #eef0ff;
    text-decoration: underline;
}

.invalid-feedback {
    display: block;
    color: #c1272d;
    font-weight: 700;
    margin-top: 6px;
}

@media (max-width: 991px) {
    .contact-hero,
    .contact-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575px) {
    .contact-panel {
        padding: 20px;
    }
}

.regulations-page,
.contact-page {
    color: #172033;
}

.regulations-page-hero,
.contact-page-hero {
    align-items: center;
    background: linear-gradient(135deg, #00275c, #067ec1);
    border-radius: 8px;
    color: #fff;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    margin-bottom: 14px;
    min-height: 138px;
    padding: 22px;
}

.regulations-page-hero h3,
.contact-page-hero h3 {
    color: #fff;
    font-size: 34px;
    line-height: 1.1;
    margin: 0 0 8px;
}

.regulations-page-hero p,
.contact-page-hero p {
    color: rgba(255, 255, 255, 0.84);
    line-height: 1.5;
    margin: 0;
    max-width: 680px;
}

.regulations-page-hero-icon,
.contact-page-hero-icon {
    align-items: center;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    display: flex;
    flex: 0 0 76px;
    height: 76px;
    justify-content: center;
}

.regulations-page-hero-icon i,
.contact-page-hero-icon i {
    color: rgba(255, 255, 255, 0.86);
    font-size: 34px;
}

.regulations-page-stats,
.contact-page-stats {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 14px;
}

.regulations-page-stats > div,
.contact-page-stats > div {
    background: rgba(248, 252, 255, 0.82);
    border: 1px solid rgba(0, 39, 92, 0.13);
    border-radius: 8px;
    box-shadow: 0 8px 18px rgba(0, 39, 92, 0.08);
    min-width: 0;
    padding: 14px;
}

.regulations-page-stats span,
.contact-page-stats span,
.regulations-quality-card span,
.regulations-info-strip span {
    color: #5c6675;
    display: block;
    font-size: 12px;
}

.regulations-page-stats strong,
.contact-page-stats strong,
.regulations-page-panel-title,
.contact-page-panel-title,
.regulations-quality-card strong,
.regulations-section-card h4,
.regulations-section-card h5,
.regulations-longform h4,
.regulations-info-strip strong {
    color: #00275c;
}

.regulations-page-stats strong,
.contact-page-stats strong {
    display: block;
    font-size: 22px;
    line-height: 1.2;
    margin-top: 3px;
    overflow-wrap: anywhere;
}

.regulations-page-panel,
.contact-panel {
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(0, 39, 92, 0.12);
    border-bottom: 3px solid rgba(217, 31, 53, 0.6);
    border-radius: 8px;
    box-shadow: 0 12px 28px rgba(0, 39, 92, 0.12);
    padding: 22px;
}

.regulations-page-panel-header,
.contact-page-panel-header {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 16px;
}

.regulations-page-panel-title,
.contact-page-panel-title {
    font-size: 21px;
    font-weight: 700;
    line-height: 1.2;
}

.regulations-lead {
    color: #5c6675;
    line-height: 1.6;
    margin: 0 0 14px;
}

.regulations-quality-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.regulations-quality-card,
.regulations-section-card,
.regulations-info-strip {
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(0, 39, 92, 0.13);
    border-radius: 8px;
    box-shadow: 0 10px 22px rgba(0, 39, 92, 0.09);
    min-width: 0;
    padding: 14px;
}

.regulations-quality-card strong {
    display: block;
    font-size: 17px;
    line-height: 1.25;
    margin-top: 4px;
}

.regulations-quality-card p,
.regulations-section-card p,
.regulations-section-card li,
.regulations-longform p,
.regulations-longform li,
.regulations-probationary-period p {
    color: #5c6675;
    line-height: 1.6;
}

.regulations-quality-card p {
    margin: 8px 0 0;
}

.regulations-callout,
.regulations-warning {
    background: rgba(217, 31, 53, 0.08);
    border: 1px solid rgba(217, 31, 53, 0.18);
    border-radius: 8px;
    color: #7a1020;
}

.regulations-callout {
    align-items: flex-start;
    display: flex;
    gap: 12px;
    margin-top: 14px;
    padding: 14px;
}

.regulations-callout i {
    color: #c1272d;
    margin-top: 3px;
}

.regulations-callout p {
    margin: 0;
}

.regulations-probationary-period {
    background: rgba(6, 126, 193, 0.08);
    border: 1px solid rgba(6, 126, 193, 0.18);
    border-radius: 8px;
    color: #172033;
    margin: 14px 0 0;
    padding: 14px;
    text-align: left;
}

.regulations-probationary-period strong {
    color: #00275c;
    display: block;
    margin-bottom: 6px;
}

.regulations-probationary-period p {
    margin: 0;
}

.regulations-section-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 14px 0;
}

.regulations-section-card h4,
.regulations-section-card h5,
.regulations-longform h4 {
    font-weight: 800;
    line-height: 1.25;
    margin: 0 0 10px;
}

.regulations-section-card h5 {
    font-size: 15px;
    margin-top: 14px;
}

.regulations-section-heading {
    align-items: center;
    display: flex;
    gap: 10px;
    margin-bottom: 12px;
}

.regulations-section-heading i {
    align-items: center;
    background: rgba(6, 126, 193, 0.12);
    border-radius: 8px;
    color: #067ec1;
    display: flex;
    flex: 0 0 40px;
    height: 40px;
    justify-content: center;
    width: 40px;
}

.regulations-section-heading h4 {
    margin: 0;
}

.regulations-section-card ol,
.regulations-section-card ul,
.regulations-longform ol,
.regulations-longform ul {
    margin-bottom: 0;
    padding-left: 20px;
}

.regulations-section-card li + li,
.regulations-longform li + li {
    margin-top: 7px;
}

.regulations-info-strip {
    align-items: center;
    display: grid;
    gap: 10px;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.3fr) auto;
    margin-top: 14px;
}

.regulations-info-strip a {
    align-items: center;
    background: #c1272d;
    border-radius: 8px;
    color: #fff;
    display: inline-flex;
    font-weight: 800;
    justify-content: center;
    padding: 10px 14px;
    text-decoration: none;
}

.regulations-info-strip a:hover,
.regulations-info-strip a:focus {
    background: #00275c;
    color: #fff;
    text-decoration: none;
}

.regulations-longform {
    display: grid;
    gap: 14px;
}

.regulations-longform section {
    background: rgba(255, 255, 255, 0.58);
    border: 1px solid rgba(0, 39, 92, 0.1);
    border-radius: 8px;
    padding: 16px;
}

.regulations-warning {
    font-weight: 800;
    margin-bottom: 12px;
    padding: 12px;
}

.contact-grid {
    align-items: start;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 1fr) 360px;
}

.contact-main {
    display: grid;
    gap: 14px;
}

.contact-form .form-group {
    margin-bottom: 18px;
}

.contact-form label {
    color: #00275c;
    font-weight: 700;
    margin-bottom: 8px;
}

.contact-form .form-control {
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(0, 39, 92, 0.18);
    border-radius: 8px;
    color: #172033;
    min-height: 46px;
}

.contact-form textarea.form-control {
    min-height: 190px;
    resize: vertical;
}

.contact-form .form-control:focus {
    border-color: #067ec1;
    box-shadow: 0 0 0 0.2rem rgba(6, 126, 193, 0.18);
}

.contact-submit {
    align-items: center;
    background: #c1272d;
    border: 0;
    border-radius: 8px;
    color: #fff;
    display: inline-flex;
    font-weight: 800;
    gap: 8px;
    justify-content: center;
    min-height: 46px;
    min-width: 160px;
    padding: 12px 22px;
}

.contact-submit:hover,
.contact-submit:focus {
    background: #00275c;
    color: #fff;
}

.contact-side {
    display: grid;
    gap: 14px;
}

.contact-honorary {
    min-width: 0;
}

.contact-honorary-intro {
    color: #5c6675;
    line-height: 1.6;
    margin: -4px 0 18px;
}

.contact-honorary-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.contact-honorary-card {
    align-items: flex-start;
    background: rgba(248, 252, 255, 0.82);
    border: 1px solid rgba(0, 39, 92, 0.13);
    border-radius: 8px;
    box-shadow: 0 8px 18px rgba(0, 39, 92, 0.08);
    display: flex;
    gap: 14px;
    min-width: 0;
    padding: 16px;
}

.contact-honorary-avatar {
    background: #e8eef5;
    border: 3px solid #fff;
    border-radius: 50%;
    box-shadow: 0 4px 12px rgba(0, 39, 92, 0.18);
    flex: 0 0 72px;
    height: 72px;
    object-fit: cover;
    width: 72px;
}

.contact-honorary-card h3 {
    color: #00275c;
    font-family: "Cal Sans", Montserrat, Arial, sans-serif;
    font-size: 1.05rem;
    line-height: 1.25;
    margin: 0 0 4px;
    overflow-wrap: anywhere;
}

.contact-honorary-card span {
    color: #c1272d;
    display: block;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.contact-honorary-card p {
    color: #5c6675;
    font-size: 0.85rem;
    line-height: 1.45;
    margin: 9px 0 0;
}

.contact-side h3,
.contact-panel h2 {
    color: #00275c;
    font-family: "Cal Sans", Montserrat, Arial, sans-serif;
    font-size: 1.35rem;
    letter-spacing: 0;
    margin: 0 0 14px;
}

.contact-list {
    display: grid;
    gap: 12px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.contact-list li {
    display: flex;
    gap: 10px;
    line-height: 1.5;
    min-width: 0;
}

.contact-list i {
    color: #067ec1;
    flex: 0 0 18px;
    margin-top: 3px;
}

.contact-list span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.contact-discord {
    background: linear-gradient(135deg, rgba(88, 101, 242, 0.94), rgba(0, 39, 92, 0.94));
    border-color: rgba(255, 255, 255, 0.2);
    border-bottom-color: #5865f2;
    color: #fff;
}

.contact-discord h3 {
    color: #fff;
}

.contact-discord p {
    color: rgba(255, 255, 255, 0.86);
    line-height: 1.6;
    margin-bottom: 18px;
}

.contact-discord-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.contact-discord-link {
    align-items: center;
    background: #fff;
    border-radius: 8px;
    color: #00275c;
    display: inline-flex;
    font-weight: 800;
    gap: 10px;
    justify-content: center;
    min-height: 42px;
    padding: 10px 14px;
    text-decoration: none;
}

.contact-discord-link:hover,
.contact-discord-link:focus {
    background: #eef0ff;
    color: #00275c;
    text-decoration: none;
}

.contact-discord-link i {
    color: #5865f2;
    font-size: 1.2rem;
}

.contact-discord-link-secondary {
    background: rgba(255, 255, 255, 0.16);
    border: 1px solid rgba(255, 255, 255, 0.5);
    color: #fff;
}

.contact-discord-link-secondary:hover,
.contact-discord-link-secondary:focus {
    background: rgba(255, 255, 255, 0.28);
    color: #fff;
}

.contact-discord-link-secondary i {
    color: #fff;
}

.contact-discord-channel {
    color: #fff;
    font-weight: 800;
    text-decoration: underline;
}

.contact-discord-channel:hover,
.contact-discord-channel:focus {
    color: #eef0ff;
    text-decoration: underline;
}

@media (max-width: 991px) {
    .regulations-quality-grid,
    .regulations-section-grid,
    .contact-grid {
        grid-template-columns: 1fr;
    }

    .regulations-page-stats,
    .contact-page-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575px) {
    .regulations-page-hero,
    .contact-page-hero {
        align-items: flex-start;
        flex-direction: column;
        min-height: 0;
        padding: 18px;
    }

    .regulations-page-hero h3,
    .contact-page-hero h3 {
        font-size: clamp(1.8rem, 10vw, 2.25rem);
        overflow-wrap: anywhere;
    }

    .regulations-page-hero p,
    .contact-page-hero p,
    .regulations-page-panel-title,
    .contact-page-panel-title,
    .regulations-page-stats strong,
    .contact-page-stats strong,
    .regulations-quality-card strong,
    .regulations-section-card h4,
    .regulations-section-card h5,
    .regulations-section-card p,
    .regulations-section-card li,
    .regulations-longform h4,
    .regulations-longform p,
    .regulations-longform li,
    .contact-list span {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .regulations-page-hero-icon,
    .contact-page-hero-icon {
        flex-basis: auto;
        height: 58px;
        width: 58px;
    }

    .regulations-page-stats,
    .contact-page-stats,
    .regulations-info-strip {
        grid-template-columns: 1fr;
    }

    .regulations-page-panel,
    .contact-panel {
        padding: 18px;
    }

    .contact-discord-link {
        width: 100%;
    }

    .contact-honorary-grid {
        grid-template-columns: 1fr;
    }
}

html[data-theme="dark"] .regulations-page,
html[data-theme="dark"] .contact-page {
    color: #f8fafc;
}

html[data-theme="dark"] .regulations-page-panel,
html[data-theme="dark"] .contact-panel,
html[data-theme="dark"] .regulations-page-stats > div,
html[data-theme="dark"] .contact-page-stats > div,
html[data-theme="dark"] .regulations-quality-card,
html[data-theme="dark"] .regulations-section-card,
html[data-theme="dark"] .regulations-info-strip,
html[data-theme="dark"] .regulations-longform section {
    background: rgba(15, 23, 42, 0.72);
    border-color: rgba(148, 163, 184, 0.18);
}

html[data-theme="dark"] .regulations-page-panel-title,
html[data-theme="dark"] .contact-page-panel-title,
html[data-theme="dark"] .regulations-page-stats strong,
html[data-theme="dark"] .contact-page-stats strong,
html[data-theme="dark"] .regulations-quality-card strong,
html[data-theme="dark"] .regulations-section-card h4,
html[data-theme="dark"] .regulations-section-card h5,
html[data-theme="dark"] .regulations-longform h4,
html[data-theme="dark"] .regulations-info-strip strong,
html[data-theme="dark"] .regulations-probationary-period strong,
html[data-theme="dark"] .contact-form label,
html[data-theme="dark"] .contact-side h3,
html[data-theme="dark"] .contact-panel h2 {
    color: #f8fafc;
}

html[data-theme="dark"] .regulations-page-stats span,
html[data-theme="dark"] .contact-page-stats span,
html[data-theme="dark"] .regulations-quality-card span,
html[data-theme="dark"] .regulations-info-strip span,
html[data-theme="dark"] .regulations-lead,
html[data-theme="dark"] .regulations-quality-card p,
html[data-theme="dark"] .regulations-section-card p,
html[data-theme="dark"] .regulations-section-card li,
html[data-theme="dark"] .regulations-longform p,
html[data-theme="dark"] .regulations-longform li,
html[data-theme="dark"] .regulations-probationary-period p {
    color: #cbd5e1;
}

html[data-theme="dark"] .regulations-probationary-period,
html[data-theme="dark"] .regulations-callout,
html[data-theme="dark"] .regulations-warning {
    background: rgba(6, 126, 193, 0.16);
    border-color: rgba(125, 211, 252, 0.24);
    color: #e0f2fe;
}

html[data-theme="dark"] .regulations-section-heading i {
    background: rgba(6, 126, 193, 0.25);
    color: #e0f2fe;
}

html[data-theme="dark"] .contact-form .form-control {
    background: rgba(15, 23, 42, 0.86);
    border-color: rgba(148, 163, 184, 0.22);
    color: #f8fafc;
}

html[data-theme="dark"] .contact-honorary-intro {
    color: #cbd5e1;
}

html[data-theme="dark"] .contact-honorary-card {
    background: rgba(15, 23, 42, 0.62);
    border-color: rgba(148, 163, 184, 0.18);
}

html[data-theme="dark"] .contact-honorary-card h3 {
    color: #f8fafc;
}

html[data-theme="dark"] .contact-honorary-card p {
    color: #cbd5e1;
}

.privacy-page {
    color: #172033;
}

.privacy-page-hero {
    align-items: center;
    background: linear-gradient(135deg, #00275c, #067ec1);
    border-radius: 8px;
    color: #fff;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    margin-bottom: 14px;
    min-height: 138px;
    padding: 22px;
}

.privacy-page-hero h3 {
    color: #fff;
    font-size: 34px;
    line-height: 1.1;
    margin: 0 0 8px;
}

.privacy-page-hero p {
    color: rgba(255, 255, 255, 0.84);
    line-height: 1.5;
    margin: 0;
    max-width: 680px;
}

.privacy-page-hero-icon {
    align-items: center;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    display: flex;
    flex: 0 0 76px;
    height: 76px;
    justify-content: center;
}

.privacy-page-hero-icon i {
    color: rgba(255, 255, 255, 0.86);
    font-size: 34px;
}

.privacy-page-stats {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 14px;
}

.privacy-page-stats > div {
    background: rgba(248, 252, 255, 0.82);
    border: 1px solid rgba(0, 39, 92, 0.13);
    border-radius: 8px;
    box-shadow: 0 8px 18px rgba(0, 39, 92, 0.08);
    min-width: 0;
    padding: 14px;
}

.privacy-page-stats span {
    color: #5c6675;
    display: block;
    font-size: 12px;
}

.privacy-page-stats strong,
.privacy-page-panel-title,
.privacy-summary-card strong,
.privacy-section-card h4,
.privacy-modified,
.privacy-contact-card a {
    color: #00275c;
}

.privacy-page-stats strong {
    display: block;
    font-size: 22px;
    line-height: 1.2;
    margin-top: 3px;
    overflow-wrap: anywhere;
}

.privacy-page-panel,
.privacy-section-card {
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(0, 39, 92, 0.12);
    border-bottom: 3px solid rgba(217, 31, 53, 0.6);
    border-radius: 8px;
    box-shadow: 0 12px 28px rgba(0, 39, 92, 0.12);
}

.privacy-page-panel {
    margin-bottom: 14px;
}

.privacy-page-panel-header {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 16px;
}

.privacy-page-panel-title {
    font-size: 21px;
    font-weight: 700;
    line-height: 1.2;
}

.privacy-summary-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.privacy-summary-card {
    align-items: flex-start;
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(0, 39, 92, 0.13);
    border-radius: 8px;
    box-shadow: 0 10px 22px rgba(0, 39, 92, 0.09);
    display: grid;
    gap: 12px;
    grid-template-columns: 42px minmax(0, 1fr);
    padding: 14px;
}

.privacy-summary-card i,
.privacy-section-heading i {
    align-items: center;
    background: rgba(6, 126, 193, 0.12);
    border-radius: 8px;
    color: #067ec1;
    display: flex;
    height: 40px;
    justify-content: center;
    width: 40px;
}

.privacy-summary-card p,
.privacy-section-card p,
.privacy-section-card li {
    color: #5c6675;
    line-height: 1.6;
}

.privacy-summary-card p {
    margin: 6px 0 0;
}

.privacy-section-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.privacy-section-card {
    min-width: 0;
    padding: 18px;
}

.privacy-section-heading {
    align-items: center;
    display: flex;
    gap: 10px;
    margin-bottom: 12px;
}

.privacy-section-heading i {
    flex: 0 0 40px;
}

.privacy-section-heading h4 {
    font-size: 18px;
    font-weight: 800;
    line-height: 1.25;
    margin: 0;
}

.privacy-section-card ul {
    margin-bottom: 0;
    padding-left: 20px;
}

.privacy-section-card li + li,
.privacy-section-card p + p {
    margin-top: 7px;
}

.privacy-callout {
    align-items: flex-start;
    background: rgba(6, 126, 193, 0.08);
    border: 1px solid rgba(6, 126, 193, 0.18);
    border-radius: 8px;
    display: flex;
    gap: 12px;
    margin-top: 14px;
    padding: 14px;
}

.privacy-callout i {
    color: #067ec1;
    flex: 0 0 18px;
    margin-top: 3px;
}

.privacy-callout p {
    margin: 0;
}

.privacy-modified {
    background: rgba(217, 31, 53, 0.08);
    border: 1px solid rgba(217, 31, 53, 0.18);
    border-radius: 8px;
    font-weight: 800;
    padding: 12px;
}

.privacy-contact-card a {
    font-weight: 800;
    overflow-wrap: anywhere;
}

@media (max-width: 991px) {
    .privacy-summary-grid,
    .privacy-section-grid {
        grid-template-columns: 1fr;
    }

    .privacy-page-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575px) {
    .privacy-page-hero {
        align-items: flex-start;
        flex-direction: column;
        min-height: 0;
        padding: 18px;
    }

    .privacy-page-hero h3 {
        font-size: clamp(1.8rem, 10vw, 2.25rem);
        overflow-wrap: anywhere;
    }

    .privacy-page-hero p,
    .privacy-page-panel-title,
    .privacy-page-stats strong,
    .privacy-summary-card strong,
    .privacy-section-card h4,
    .privacy-section-card p,
    .privacy-section-card li {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .privacy-page-hero-icon {
        flex-basis: auto;
        height: 58px;
        width: 58px;
    }

    .privacy-page-stats,
    .privacy-summary-card {
        grid-template-columns: 1fr;
    }
}

html[data-theme="dark"] .privacy-page {
    color: #f8fafc;
}

html[data-theme="dark"] .privacy-page-panel,
html[data-theme="dark"] .privacy-section-card,
html[data-theme="dark"] .privacy-page-stats > div,
html[data-theme="dark"] .privacy-summary-card {
    background: rgba(15, 23, 42, 0.72);
    border-color: rgba(148, 163, 184, 0.18);
}

html[data-theme="dark"] .privacy-page-stats strong,
html[data-theme="dark"] .privacy-page-panel-title,
html[data-theme="dark"] .privacy-summary-card strong,
html[data-theme="dark"] .privacy-section-card h4,
html[data-theme="dark"] .privacy-modified,
html[data-theme="dark"] .privacy-contact-card a {
    color: #f8fafc;
}

html[data-theme="dark"] .privacy-page-stats span,
html[data-theme="dark"] .privacy-summary-card p,
html[data-theme="dark"] .privacy-section-card p,
html[data-theme="dark"] .privacy-section-card li {
    color: #cbd5e1;
}

html[data-theme="dark"] .privacy-summary-card i,
html[data-theme="dark"] .privacy-section-heading i,
html[data-theme="dark"] .privacy-callout {
    background: rgba(6, 126, 193, 0.25);
    border-color: rgba(125, 211, 252, 0.24);
    color: #e0f2fe;
}

html[data-theme="dark"] .privacy-callout i {
    color: #e0f2fe;
}

html[data-theme="dark"] .privacy-modified {
    background: rgba(217, 31, 53, 0.16);
    border-color: rgba(248, 113, 113, 0.32);
}

.tour-detail-page,
.profile-page {
    color: #172033;
}

.tour-detail-hero,
.profile-page-hero {
    align-items: stretch;
    background: linear-gradient(135deg, #00275c, #067ec1);
    border-radius: 8px;
    color: #fff;
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(0, 1fr) minmax(220px, 340px);
    margin-bottom: 14px;
    min-height: 180px;
    padding: 22px;
}

.profile-page-hero {
    grid-template-columns: minmax(0, 1fr) minmax(320px, 460px);
}

.tour-detail-hero h3,
.profile-page-hero h3 {
    color: #fff;
    font-size: 34px;
    line-height: 1.1;
    margin: 0 0 8px;
}

.tour-detail-hero p,
.profile-page-hero p,
.profile-identity-copy > span {
    color: rgba(255, 255, 255, 0.84);
    line-height: 1.5;
    margin: 0;
}

.tour-detail-hero-copy,
.profile-identity {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
}

.tour-detail-hero-media,
.profile-rank-card,
.profile-home-card {
    align-items: center;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    display: flex;
    justify-content: center;
    min-height: 136px;
    overflow: hidden;
}

.tour-detail-hero-media img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.tour-detail-hero-media i {
    color: rgba(255, 255, 255, 0.86);
    font-size: 42px;
}

.tour-detail-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 16px;
}

.tour-detail-actions form {
    margin: 0;
}

.tour-detail-register,
.tour-detail-status {
    align-items: center;
    display: inline-flex;
    gap: 8px;
    justify-content: center;
}

.tour-detail-status {
    background: rgba(40, 167, 69, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.28);
    border-radius: 999px;
    color: #fff;
    font-weight: 800;
    padding: 9px 12px;
}

.tour-detail-stats,
.profile-page-stats {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 14px;
}

.tour-detail-stats > div,
.profile-page-stats > div {
    background: rgba(248, 252, 255, 0.82);
    border: 1px solid rgba(0, 39, 92, 0.13);
    border-radius: 8px;
    box-shadow: 0 8px 18px rgba(0, 39, 92, 0.08);
    min-width: 0;
    padding: 14px;
}

.tour-detail-stats span,
.profile-page-stats span,
.tour-detail-date-grid span,
.tour-detail-leg-meta span,
.profile-detail-grid span {
    color: #5c6675;
    display: block;
    font-size: 12px;
}

.tour-detail-stats strong,
.profile-page-stats strong,
.tour-detail-panel-title,
.tour-detail-date-grid strong,
.tour-detail-leg-header h4,
.tour-detail-leg-meta strong,
.profile-page-panel-title,
.profile-detail-grid strong,
.profile-award-card h4,
.profile-rank-card strong {
    color: #00275c;
}

.tour-detail-stats strong,
.profile-page-stats strong {
    display: block;
    font-size: 22px;
    line-height: 1.2;
    margin-top: 3px;
    overflow-wrap: anywhere;
}

.tour-detail-panel,
.profile-page-panel {
    background: rgba(255, 255, 255, 0.72);
    border: 1px solid rgba(0, 39, 92, 0.12);
    border-bottom: 3px solid rgba(217, 31, 53, 0.6);
    border-radius: 8px;
    box-shadow: 0 12px 28px rgba(0, 39, 92, 0.12);
    margin-bottom: 14px;
}

.tour-detail-panel-header,
.profile-page-panel-header {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 16px;
}

.tour-detail-panel-title,
.profile-page-panel-title {
    font-size: 21px;
    font-weight: 700;
    line-height: 1.2;
}

.tour-detail-overview p {
    color: #5c6675;
    line-height: 1.6;
    margin: 14px 0 0;
}

.tour-detail-date-grid,
.tour-detail-leg-meta,
.profile-detail-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.tour-detail-date-grid > div,
.tour-detail-leg-meta > div,
.profile-detail-grid > div {
    background: rgba(248, 252, 255, 0.76);
    border: 1px solid rgba(0, 39, 92, 0.12);
    border-radius: 8px;
    min-width: 0;
    padding: 10px;
}

.tour-detail-date-grid strong,
.tour-detail-leg-meta strong,
.profile-detail-grid strong {
    display: block;
    line-height: 1.25;
    margin-top: 3px;
    overflow-wrap: anywhere;
}

.tour-detail-leg-grid {
    display: grid;
    gap: 14px;
}

.tour-detail-leg-card {
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(0, 39, 92, 0.13);
    border-left: 4px solid #067ec1;
    border-radius: 8px;
    box-shadow: 0 10px 22px rgba(0, 39, 92, 0.09);
    display: grid;
    gap: 14px;
    grid-template-columns: 58px minmax(0, 1fr);
    padding: 14px;
}

.tour-detail-leg-number {
    align-items: center;
    background: rgba(6, 126, 193, 0.12);
    border-radius: 8px;
    color: #00275c;
    display: flex;
    font-size: 18px;
    font-weight: 900;
    height: 46px;
    justify-content: center;
    width: 46px;
}

.tour-detail-leg-body,
.profile-identity-copy {
    min-width: 0;
}

.tour-detail-leg-header {
    align-items: flex-start;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 12px;
}

.tour-detail-leg-header h4 {
    font-size: 20px;
    line-height: 1.2;
    margin: 0;
    overflow-wrap: anywhere;
}

.tour-detail-leg-required {
    background: rgba(6, 126, 193, 0.12);
    border-radius: 999px;
    color: #00275c;
    flex: 0 0 auto;
    font-size: 12px;
    font-weight: 800;
    padding: 7px 10px;
}

.tour-detail-leg-required.is-required {
    background: rgba(217, 31, 53, 0.1);
    color: #8b0013;
}

.tour-detail-leg-actions {
    align-items: center;
    color: #5c6675;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 12px;
}

.tour-detail-empty {
    justify-content: center;
}

.profile-identity {
    flex-direction: row;
    gap: 16px;
    justify-content: flex-start;
}

.profile-avatar {
    align-items: center;
    background: rgba(255, 255, 255, 0.14);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 8px;
    display: flex;
    flex: 0 0 118px;
    height: 118px;
    justify-content: center;
    overflow: hidden;
    width: 118px;
}

.profile-avatar img {
    height: 100%;
    object-fit: cover;
    width: 100%;
}

.profile-identity-copy p strong,
.profile-identity-copy p span {
    color: rgba(255, 255, 255, 0.9);
}

.profile-rank-card {
    color: #fff;
    flex-direction: column;
    gap: 8px;
    min-height: 100%;
    padding: 12px;
    text-align: center;
}

.profile-hero-side {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.profile-hero-side > .profile-rank-card:only-child {
    grid-column: 1 / -1;
}

.profile-rank-kicker {
    align-self: stretch;
    background: rgba(255, 255, 255, 0.16);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 999px;
    color: rgba(255, 255, 255, 0.9);
    font-size: 11px;
    font-weight: 900;
    line-height: 1;
    padding: 7px 9px;
    text-transform: uppercase;
}

.profile-membership-medal,
.profile-home-icon {
    align-items: center;
    background: linear-gradient(135deg, #00275c, #067ec1);
    border: 2px solid rgba(255, 255, 255, 0.36);
    border-radius: 50%;
    box-shadow: 0 14px 28px rgba(0, 39, 92, 0.28);
    display: flex;
    height: 66px;
    justify-content: center;
    width: 66px;
}

.profile-membership-medal i,
.profile-home-icon i {
    color: #fff;
    font-size: 28px;
}

.profile-rank-card strong,
.profile-home-card strong {
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 15px;
    font-weight: 900;
    justify-content: center;
    line-height: 1.2;
    padding: 8px 12px;
}

.profile-rank-card span,
.profile-home-card span {
    color: rgba(255, 255, 255, 0.82);
}

.profile-rank-card > span:last-child,
.profile-home-card > span:last-child {
    background: rgba(0, 39, 92, 0.24);
    border-radius: 8px;
    font-size: 12px;
    font-weight: 800;
    padding: 7px 9px;
    width: 100%;
}

.profile-home-card {
    color: #fff;
    flex-direction: column;
    gap: 8px;
    min-height: 100%;
    padding: 12px;
    text-align: center;
}

.profile-home-card strong {
    background: linear-gradient(135deg, #00275c, #067ec1);
}

.profile-membership-card-member strong {
    background: linear-gradient(135deg, #00275c, #067ec1);
}

.profile-membership-card-bronze strong,
.profile-membership-card-bronze .profile-membership-medal {
    background: linear-gradient(135deg, #7a4b2a, #d69a62);
}

.profile-membership-card-silver strong,
.profile-membership-card-silver .profile-membership-medal {
    background: linear-gradient(135deg, #7d8790, #f1f5f8);
    color: #172033;
}

.profile-membership-card-gold strong,
.profile-membership-card-gold .profile-membership-medal {
    background: linear-gradient(135deg, #a47112, #ffd66b);
    color: #172033;
}

.profile-membership-card-silver .profile-membership-medal i,
.profile-membership-card-gold .profile-membership-medal i {
    color: #172033;
}

.profile-awards-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.profile-award-card {
    background: rgba(255, 255, 255, 0.76);
    border: 1px solid rgba(0, 39, 92, 0.13);
    border-radius: 8px;
    box-shadow: 0 10px 22px rgba(0, 39, 92, 0.09);
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 10px;
    text-align: center;
}

.profile-award-media {
    align-items: center;
    background: rgba(248, 252, 255, 0.76);
    display: flex;
    justify-content: center;
    overflow: hidden;
    padding: 4px;
    width: 100%;
}

.profile-award-media img {
    max-height: 100%;
    max-width: 100%;
    object-fit: contain;
}

.profile-award-media i {
    color: #c1272d;
    font-size: 44px;
}

.profile-award-copy {
    min-width: 0;
}

.profile-award-card h4 {
    background: linear-gradient(135deg, #00275c, #067ec1);
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 17px;
    font-weight: 800;
    justify-content: center;
    line-height: 1.2;
    margin: 0 auto 7px;
    max-width: 100%;
    padding: 8px 12px;
}

.profile-award-card p {
    color: #5c6675;
    line-height: 1.45;
    margin: 0;
}

.profile-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 14px;
}

.profile-actions .btn {
    align-items: center;
    display: inline-flex;
    gap: 8px;
    justify-content: center;
    margin: 0;
    white-space: normal;
}

.profile-discord-button,
.profile-ivao-button,
.profile-vatsim-button {
    color: #fff;
}

.profile-discord-button {
    background-color: #5865f2;
}

.profile-ivao-button {
    background-color: #0d2c99;
}

.profile-vatsim-button {
    background-color: #29b473;
}

.profile-subscription-panel {
    margin-bottom: 14px;
}

.profile-membership-panel {
    background: rgba(248, 252, 255, 0.76);
    border: 1px solid rgba(0, 39, 92, 0.12);
    border-bottom: 3px solid rgba(217, 31, 53, 0.42);
    border-radius: 8px;
    box-shadow: 0 10px 22px rgba(0, 39, 92, 0.08);
    padding: 16px;
}

.profile-membership-panel-header {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 14px;
}

.profile-membership-panel-header h3 {
    color: #00275c;
    font-size: 21px;
    font-weight: 800;
    line-height: 1.2;
    margin: 0;
}

.profile-membership-tier {
    align-items: center;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: 12px;
    font-weight: 900;
    gap: 8px;
    padding: 9px 12px;
}

.profile-membership-tier-member,
.profile-membership-plan-member .profile-membership-tier-dot {
    background: linear-gradient(135deg, #00275c, #067ec1);
}

.profile-membership-tier-bronze,
.profile-membership-plan-bronze .profile-membership-tier-dot {
    background: linear-gradient(135deg, #7a4b2a, #d69a62);
}

.profile-membership-tier-silver,
.profile-membership-plan-silver .profile-membership-tier-dot {
    background: linear-gradient(135deg, #7d8790, #f1f5f8);
    color: #172033;
}

.profile-membership-tier-gold,
.profile-membership-plan-gold .profile-membership-tier-dot {
    background: linear-gradient(135deg, #a47112, #ffd66b);
    color: #172033;
}

.profile-membership-current {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.profile-membership-current > div,
.profile-membership-plan {
    background: rgba(255, 255, 255, 0.78);
    border: 1px solid rgba(0, 39, 92, 0.12);
    border-radius: 8px;
    min-width: 0;
    padding: 12px;
}

.profile-membership-current span,
.profile-membership-plan p {
    color: #5c6675;
}

.profile-membership-current span {
    display: block;
    font-size: 12px;
}

.profile-membership-current strong {
    color: #00275c;
    display: block;
    line-height: 1.25;
    margin-top: 3px;
    overflow-wrap: anywhere;
}

.profile-membership-reference {
    grid-column: 1 / -1;
}

.profile-membership-alert {
    background: rgba(217, 31, 53, 0.08);
    border: 1px solid rgba(217, 31, 53, 0.18);
    border-radius: 8px;
    color: #7a1020;
    font-weight: 700;
    margin-top: 12px;
    padding: 12px;
}

.profile-membership-actions,
.profile-membership-plan-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 14px;
}

.profile-membership-actions form,
.profile-membership-actions .btn,
.profile-membership-plan form,
.profile-membership-plan .btn {
    width: 100%;
}

.profile-membership-plan-top {
    align-items: center;
    display: flex;
    gap: 10px;
    margin-bottom: 8px;
}

.profile-membership-plan-top h4 {
    color: #00275c;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.2;
    margin: 0;
}

.profile-membership-tier-dot {
    border-radius: 50%;
    flex: 0 0 18px;
    height: 18px;
    width: 18px;
}

.profile-detail-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.profile-detail-empty {
    grid-column: 1 / -1;
}

@media (max-width: 991px) {
    .tour-detail-hero,
    .profile-page-hero {
        grid-template-columns: 1fr;
    }

    .tour-detail-stats,
    .profile-page-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .profile-awards-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .profile-membership-actions,
    .profile-membership-plan-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575px) {
    .tour-detail-hero,
    .profile-page-hero {
        padding: 18px;
    }

    .tour-detail-hero h3,
    .profile-page-hero h3 {
        font-size: clamp(1.8rem, 10vw, 2.25rem);
        overflow-wrap: anywhere;
    }

    .tour-detail-hero p,
    .tour-detail-panel-title,
    .tour-detail-stats strong,
    .tour-detail-leg-header h4,
    .tour-detail-leg-meta strong,
    .profile-page-hero p,
    .profile-page-panel-title,
    .profile-page-stats strong,
    .profile-detail-grid strong,
    .profile-award-card h4,
    .profile-award-card p {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .tour-detail-stats,
    .tour-detail-date-grid,
    .tour-detail-leg-card,
    .tour-detail-leg-meta,
    .profile-page-stats,
    .profile-detail-grid,
    .profile-awards-grid,
    .profile-membership-current {
        grid-template-columns: 1fr;
    }

    .tour-detail-leg-header,
    .profile-actions,
    .profile-membership-panel-header {
        align-items: flex-start;
        flex-direction: column;
    }

    .profile-identity {
        align-items: flex-start;
        flex-direction: column;
    }

    .profile-hero-side {
        grid-template-columns: 1fr;
        width: 100%;
    }

    .profile-actions .btn {
        width: 100%;
    }

    .profile-membership-tier {
        justify-content: center;
        width: 100%;
    }
}

html[data-theme="dark"] .tour-detail-page,
html[data-theme="dark"] .profile-page {
    color: #f8fafc;
}

html[data-theme="dark"] .tour-detail-panel,
html[data-theme="dark"] .profile-page-panel,
html[data-theme="dark"] .tour-detail-stats > div,
html[data-theme="dark"] .profile-page-stats > div,
html[data-theme="dark"] .tour-detail-date-grid > div,
html[data-theme="dark"] .tour-detail-leg-card,
html[data-theme="dark"] .tour-detail-leg-meta > div,
html[data-theme="dark"] .profile-detail-grid > div,
html[data-theme="dark"] .profile-award-card,
html[data-theme="dark"] .profile-award-media,
html[data-theme="dark"] .profile-membership-panel,
html[data-theme="dark"] .profile-membership-current > div,
html[data-theme="dark"] .profile-membership-plan {
    background: rgba(15, 23, 42, 0.72);
    border-color: rgba(148, 163, 184, 0.18);
}

html[data-theme="dark"] .tour-detail-stats strong,
html[data-theme="dark"] .profile-page-stats strong,
html[data-theme="dark"] .tour-detail-panel-title,
html[data-theme="dark"] .tour-detail-date-grid strong,
html[data-theme="dark"] .tour-detail-leg-header h4,
html[data-theme="dark"] .tour-detail-leg-meta strong,
html[data-theme="dark"] .tour-detail-leg-number,
html[data-theme="dark"] .tour-detail-leg-required,
html[data-theme="dark"] .profile-page-panel-title,
html[data-theme="dark"] .profile-detail-grid strong,
html[data-theme="dark"] .profile-membership-panel-header h3,
html[data-theme="dark"] .profile-membership-current strong,
html[data-theme="dark"] .profile-membership-plan-top h4 {
    color: #f8fafc;
}

html[data-theme="dark"] .profile-award-card h4 {
    color: #fff;
}

html[data-theme="dark"] .tour-detail-stats span,
html[data-theme="dark"] .profile-page-stats span,
html[data-theme="dark"] .tour-detail-date-grid span,
html[data-theme="dark"] .tour-detail-leg-meta span,
html[data-theme="dark"] .profile-detail-grid span,
html[data-theme="dark"] .tour-detail-overview p,
html[data-theme="dark"] .tour-detail-leg-actions,
html[data-theme="dark"] .profile-award-card p,
html[data-theme="dark"] .profile-membership-current span,
html[data-theme="dark"] .profile-membership-plan p {
    color: #cbd5e1;
}

html[data-theme="dark"] .profile-membership-alert {
    background: rgba(217, 31, 53, 0.16);
    border-color: rgba(248, 113, 113, 0.32);
    color: #fecaca;
}

html[data-theme="dark"] .tour-detail-leg-number,
html[data-theme="dark"] .tour-detail-leg-required {
    background: rgba(6, 126, 193, 0.25);
}

html[data-theme="dark"] .tour-detail-leg-required.is-required {
    background: rgba(217, 31, 53, 0.2);
    color: #fecaca;
}
