/* ============================================================
   Hannover 96 – Busanfragen Admin-Log
   ============================================================ */

.h96-bus-log {
    margin-top: 3rem;
    padding: 2rem;
    background: #f9f9f9;
    border-top: 4px solid #c0272d; /* Hannover 96 Rot */
    border-radius: 4px;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.h96-log-title {
    font-size: 1.4rem;
    margin: 0 0 1.5rem;
    color: #222;
}

/* ─── Erfolgsmeldung ─────────────────────────────────── */
.h96-notice {
    padding: .8rem 1.2rem;
    border-radius: 4px;
    margin-bottom: 1.2rem;
    font-size: .95rem;
}
.h96-notice--genehmigt { background: #d4edda; color: #155724; border-left: 4px solid #28a745; }
.h96-notice--abgelehnt { background: #f8d7da; color: #721c24; border-left: 4px solid #dc3545; }

/* ─── Filter-Bar ─────────────────────────────────────── */
.h96-filter-bar {
    display: flex;
    gap: .5rem;
    flex-wrap: wrap;
    margin-bottom: 1.2rem;
}

.h96-filter {
    padding: .4rem .9rem;
    border: 2px solid #ddd;
    border-radius: 20px;
    background: #fff;
    cursor: pointer;
    font-size: .85rem;
    transition: all .15s;
}
.h96-filter:hover  { border-color: #c0272d; color: #c0272d; }
.h96-filter.active { background: #c0272d; border-color: #c0272d; color: #fff; font-weight: 600; }

/* ─── Tabelle ────────────────────────────────────────── */
.h96-table-wrap { overflow-x: auto; }

.h96-table {
    width: 100%;
    border-collapse: collapse;
    font-size: .88rem;
    background: #fff;
    box-shadow: 0 1px 4px rgba(0,0,0,.08);
    border-radius: 4px;
    overflow: hidden;
}

.h96-table thead {
    background: #222;
    color: #fff;
}

.h96-table th {
    padding: .75rem .9rem;
    text-align: left;
    white-space: nowrap;
    font-weight: 600;
}

.h96-table td {
    padding: .65rem .9rem;
    border-bottom: 1px solid #eee;
    vertical-align: middle;
}

.h96-table tbody tr:last-child td { border-bottom: none; }

.h96-table tbody tr:hover { background: #fafafa; }

.h96-table tbody tr[data-status="genehmigt"] { background: #f0fff4; }
.h96-table tbody tr[data-status="abgelehnt"] { background: #fff5f5; }

.h96-id { color: #888; font-size: .8rem; }

.h96-name { font-weight: 600; }

.h96-zweck {
    max-width: 200px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ─── Badges ─────────────────────────────────────────── */
.h96-badge {
    display: inline-block;
    padding: .25rem .65rem;
    border-radius: 12px;
    font-size: .78rem;
    font-weight: 600;
    white-space: nowrap;
}
.h96-badge--offen     { background: #fff3cd; color: #856404; }
.h96-badge--genehmigt { background: #d4edda; color: #155724; }
.h96-badge--abgelehnt { background: #f8d7da; color: #721c24; }

/* ─── Aktions-Buttons ────────────────────────────────── */
.h96-actions {
    display: flex;
    gap: .4rem;
    flex-wrap: wrap;
}

.h96-btn {
    padding: .3rem .7rem;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: .8rem;
    font-weight: 600;
    transition: opacity .15s;
}
.h96-btn:hover    { opacity: .85; }
.h96-btn:disabled { opacity: .5; cursor: wait; }

.h96-btn--approve { background: #28a745; color: #fff; }
.h96-btn--reject  { background: #dc3545; color: #fff; }
.h96-btn--reset   { background: #6c757d; color: #fff; }

/* ─── Kontakt-Icons ──────────────────────────────────── */
.h96-table td a {
    font-size: 1.1rem;
    text-decoration: none;
    margin-right: .3rem;
}

/* ─── Tooltip ────────────────────────────────────────── */
.h96-tooltip { cursor: help; }

.h96-tt {
    position: absolute;
    background: #333;
    color: #fff;
    padding: .4rem .7rem;
    border-radius: 4px;
    font-size: .82rem;
    max-width: 280px;
    z-index: 9999;
    pointer-events: none;
    white-space: pre-wrap;
    word-break: break-word;
}

/* ─── Leer-Zustand ───────────────────────────────────── */
.h96-empty {
    color: #888;
    font-style: italic;
    padding: 1rem 0;
}
