body {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

main {
    flex: 1;
}

.footer {
    margin-top: auto;
}

.navbar-brand {
    font-size: 1.2rem;
    letter-spacing: 0.02em;
}

.card {
    border-radius: 0.75rem;
}

.table th {
    font-weight: 500;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #6c757d;
}

.badge {
    font-weight: 500;
    font-size: 0.75rem;
}

.btn-dark {
    background-color: #1a1a1a;
    border-color: #1a1a1a;
}

.btn-dark:hover {
    background-color: #333;
    border-color: #333;
}

@media (max-width: 576px) {
    .display-3 {
        font-size: 3rem;
    }
    h1.display-4 {
        font-size: 2rem;
    }
}
