/* Outer page wrapper - constrains width and centers the table */
.hhh-flight-wrapper {
    max-width: 1280px;
    margin: 0 auto;
    padding: 20px;
}

/* Tab bar at the top - teal background with Arrivals/Departures buttons */
.hhh-flight-tabs {
    display: flex;
    background: #006472;
    padding: 10px;
    border-top-right-radius: 6px;
    border-top-left-radius: 6px;
    overflow: hidden;
    margin-bottom: 0px;
}

/* Individual tab buttons */
.hhh-flight-tab-btn {
    flex: 1;
    padding: 14px;
    background: transparent;
    border: none;
    color: rgba(255, 255, 255, 0.7);
    font-size: 16px;
    cursor: pointer;
    font-weight: 500;
    transition: all 0.2s;
}

/* Active tab gets a lighter background and full white text */
.hhh-flight-tab-btn.active {
    background: rgba(255, 255, 255, 0.15);
    color: #fff;
}

/* Hover state for inactive tabs */
.hhh-flight-tab-btn:hover:not(.active) {
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
}

/* White card container for the table with rounded corners */
.hhh-flight-table-container {
    margin-left: -20px;
    margin-right: -20px;
    padding-left: 10px;
    padding-right: 10px;
    border: 1px solid #e5e5e5;
    border-radius: 20px 20px 20px 20px;
    overflow: hidden;
}

/* "Arrivals" / "Departures" title above the table */
.hhh-flight-section-title {
    padding: 14px 16px;
    font-size: 16px;
    font-weight: 600;
    color: #006472;
    background: #ffffff;
    border-bottom: none !important;
    border-left: none !important;
    border-right: none !important;
    border-top: none !important;
}

/* Horizontal scroll wrapper for narrow viewports */
.hhh-flight-table-scroll {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* Table resets - collapse borders, minimum width for readability */
.hhh-flight-table-scroll table {
    width: 100%;
    min-width: 600px;
    border-collapse: collapse;
    font-size: 14px;
}

.hhh-flight-table-scroll thead {
    background: #ffffff;
}

/* Column headers - teal text, bottom border only */
.hhh-flight-table-scroll th {
    padding: 10px 10px;
    text-align: left;
    font-weight: 600;
    color: #006472;
    font-size: 14px;
    border-bottom: 3px solid #e5e5e5 !important;
    border-left: none !important;
    border-right: none !important;
    border-top: none !important;
}

/* Data cells - no borders, grey text, vertically centered */
.hhh-flight-table-scroll td {
    padding: 2px 10px;
    border-bottom: none;
    border-left: none;
    border-right: none;
    border-top: none;
    color: #666666;
    vertical-align: middle;
}

.hhh-flight-table-scroll tr:last-child td {
    border-bottom: none;
}

/* Subtle zebra striping on even rows */
.hhh-flight-table-scroll tr:nth-child(even) td {
    background: #ffffffcc;
}

/* Airline cell - flex row with logo and name side by side */
.hhh-flight-airline-cell {
    display: flex;
    align-items: center;
    gap: 8px;
}

.hhh-flight-airline-cell img {
    height: unset !important;
    max-width: 100px;
}

;

/* Airline logo sizing */
.hhh-flight-airline-logo {
    width: 60px;
    height: 30px;
    object-fit: contain;
}

/* Airline name text next to logo */
.hhh-flight-airline-text {
    font-size: 14px;
    color: #666666;
    padding-left: 10px;
    margin-top: 8px;
    display: inline-block;
    vertical-align: top;
}

/* Removes border from header cells (reset for theme overrides) */
.hhh-flight-header-cell {
    border: none !important;
}

/* Status badge base style - colored text, no background in full table */
.hhh-flight-status {
    display: inline-block;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
}

/* Status color variants for full table */
.hhh-flight-status-arrived,
.hhh-flight-status-departed {
    color: #2e7d32;
}

/* Green */
.hhh-flight-status-ontime {
    color: #006472;
}

/* Teal */
.hhh-flight-status-early {
    color: #C9A961;
}

/* Tan */
.hhh-flight-status-late,
.hhh-flight-status-delayed {
    color: #e65100;
}

/* Orange */
.hhh-flight-status-cancelled {
    color: #E8194F;
}

/* Red */

/* Loading and error states for the full table */
.hhh-flight-loading {
    padding: 40px;
    text-align: center;
    color: #666666;
}

.hhh-flight-error {
    padding: 20px;
    color: #c62828;
    text-align: center;
}

/* Force no borders on thead th (theme compatibility) */
.hhh-flight-table table thead tr th {
    border: none !important;
}

/* Center-align the Gate column (5th column) */
.hhh-flight-table-scroll td:nth-child(5) {
    text-align: center !important;
}

.hhh-flight-table-scroll th:nth-child(5) {
    text-align: center !important;
}