:root {
    --blau: #0d5c8c;
    --blau-dunkel: #093f61;
    --hell: #f4f8fb;
    --rand: #dbe6ee;
}

* { box-sizing: border-box; }

body {
    margin: 0;
    font-family: Arial, Helvetica, sans-serif;
    color: #1c2b36;
    background: #ffffff;
}

header {
    background: linear-gradient(135deg, var(--blau), var(--blau-dunkel));
    color: #fff;
    padding: 24px 20px;
    text-align: center;
}

header h1 {
    margin: 0 0 8px;
    font-size: 1.6rem;
}

header .subtitle {
    margin: 0;
    font-size: 0.9rem;
    opacity: 0.9;
}

header a { color: #fff; text-decoration: underline; }

main {
    max-width: 1000px;
    margin: 0 auto;
    padding: 20px;
}

.toolbar {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 16px;
}

.button {
    display: inline-block;
    background: var(--blau);
    color: #fff;
    padding: 10px 18px;
    border-radius: 6px;
    text-decoration: none;
    font-weight: bold;
}
.button:hover { background: var(--blau-dunkel); }

.update-info {
    font-size: 0.85rem;
    color: #5a6b78;
}

table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.92rem;
}

thead th {
    background: var(--blau);
    color: #fff;
    padding: 10px 8px;
    text-align: left;
    position: sticky;
    top: 0;
}

tbody tr:nth-child(even) { background: var(--hell); }
tbody tr:hover { background: #e8f1f8; }

td, th { border-bottom: 1px solid var(--rand); padding: 8px; }

td.tg a { color: var(--blau); font-weight: bold; text-decoration: none; }
td.tg a:hover { text-decoration: underline; }

td.empty { text-align: center; padding: 30px; color: #7a8996; }

footer {
    text-align: center;
    padding: 16px;
    font-size: 0.8rem;
    color: #8494a0;
}
