/* Shared table and badge styling. */

.badge-soft {
    display: inline-flex;
    align-items: center;
    padding: 0.45rem 0.75rem;
    border-radius: 999px;
    background: var(--app-primary-soft);
    color: var(--app-primary);
    font-size: 0.8rem;
    font-weight: 700;
}

body[data-app-theme="dark"] .badge-soft {
    background: rgba(138, 182, 255, 0.2);
    color: #e8f1ff;
    box-shadow: inset 0 0 0 1px rgba(138, 182, 255, 0.18);
}

body[data-app-theme="dark"] .badge.text-bg-success {
    background-color: #2d557d !important;
    color: #eff6ff !important;
}

body[data-app-theme="dark"] .badge.text-bg-secondary {
    background-color: #334760 !important;
    color: #edf3ff !important;
}

body[data-app-theme="dark"] .badge.text-dark.bg-white.border {
    background-color: #1f2b3d !important;
    color: #edf3ff !important;
    border-color: rgba(138, 182, 255, 0.22) !important;
}

.recent-flights-view-badge {
    white-space: nowrap;
}

.recent-flights-table tbody td {
    font-size: 0.78rem;
}

.table thead th {
    color: var(--app-muted);
    text-transform: uppercase;
    font-size: 0.78rem;
    letter-spacing: 0.04em;
    border: 1px solid var(--app-border);
    border-bottom-width: 1px;
    background: #f8fbff;
}

.table tbody td {
    vertical-align: middle;
    border-color: var(--app-border);
}

.table-compact-body tbody td {
    font-size: 0.78rem;
}

body[data-app-theme="dark"] .table {
    --bs-table-color: var(--app-text);
    --bs-table-bg: transparent;
    --bs-table-border-color: var(--app-border);
    --bs-table-hover-color: var(--app-text);
    --bs-table-hover-bg: rgba(138, 182, 255, 0.08);
}

body[data-app-theme="dark"] .table thead th {
    background: #1b2536;
}

.table-shell {
    border: 1px solid var(--app-border);
    border-radius: 1rem;
    background: var(--app-surface);
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
}

.table-shell > .table {
    margin-bottom: 0;
}

.table-shell .table thead tr:first-child > * {
    border-top: 0;
}

.table-shell .table tr > :first-child {
    border-left: 0;
}

.table-shell .table tr > :last-child {
    border-right: 0;
}

.table-shell .table tbody tr:last-child > * {
    border-bottom: 0;
}

.flight-icon-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    padding: 0;
    border-radius: 999px;
}

.flight-icon-btn svg {
    width: 0.95rem;
    height: 0.95rem;
    fill: currentColor;
}

.flight-icon-btn i {
    font-size: 0.95rem;
    line-height: 1;
}
