.tab-button { padding: 14px 28px; font-size: 17px; background: none; border: none; border-bottom: 4px solid transparent; cursor: pointer; margin: 0 8px; font-weight: 600; }
.tab-button.active { border-bottom: 4px solid; font-weight: bold; }
.sc53-message { padding:14px; border:1px solid #ddd; border-radius:8px; background:#fafafa; }
.sc53-results-table { width:100%; border-collapse:collapse; font-size:15px; }
.sc53-results-table th { background:#1e3a8a; color:#fff; padding:12px; text-align:left; }
.sc53-results-table td { border-bottom:1px solid #e5e7eb; padding:12px; vertical-align:top; }
.sc53-results-table tr:nth-child(even) { background:#f8fafc; }
.sc53-result-title { margin-top:24px; color:#1e3a8a; }
.sc53-result-subtitle { margin:6px 0 18px; color:#374151; }
.sc53-athlete-heading { margin:24px 0 8px; padding:10px 12px; background:#eef2ff; border-left:4px solid #1e3a8a; color:#111827; font-size:19px; }
.sc53-date-heading { margin:22px 0 8px; font-size:20px; color:#111827; }
.sc53-results-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

.sc53-results-table th:nth-child(1),
.sc53-results-table td:nth-child(1) {
    width: 45%;
}

.sc53-results-table th:nth-child(2),
.sc53-results-table td:nth-child(2) {
    width: 20%;
}

.sc53-results-table th:nth-child(3),
.sc53-results-table td:nth-child(3) {
    width: 15%;
    text-align: center;
}

.sc53-results-table th:nth-child(4),
.sc53-results-table td:nth-child(4) {
    width: 20%;
    text-align: center;
}
.sc53-results-table th {
    background: #1e3a8a;
    color: white;
    padding: 12px 8px;
    text-align: center;
}

.sc53-results-table td {
    padding: 10px 8px;
    border-bottom: 1px solid #e5e7eb;
}

.sc53-date-heading, .sc53-wettkampf-heading, .sc53-lauf-heading {
    margin-top: 25px;
    color: #1e3a8a;
}