html, body {
    width: 100%;
    height: 100%;
    margin: 0;
}

.full-page {
    width: 100%;
    margin: auto;
}

body {
    display: flex;
    flex-direction: column;
}

.card.login {
    max-width: 330px;
}

.controls *:not(input[type='radio']):not(input[type='checkbox']) {
    width: 100%;
}

.help-block {
    --bs-bg-opacity: 1;
    color: #6c757d !important;
    font-size: 0.75em;
    font-style: italic;
}

.help-inline {
    --bs-bg-opacity: 1;
    color: var(--bs-danger);
    font-size: 0.75em;
    font-style: italic;
}

.bg-secondary {
    background-color: rgb(56, 131, 165) !important;
}

.bg-primary {
    background-color: rgb(44, 102, 126) !important;
}

.btn-primary {
    background-color: rgb(44, 102, 126) !important;
    border-color: rgb(44, 102, 126);
}

.card.competition {
    width: 25rem;
    max-width: 80%;
    text-align: center;
}

.table {
    border-color: rgb(44, 102, 126) !important;
}

.table th {
    color: rgb(44, 102, 126) !important;
}

.table-striped > tbody > tr:nth-of-type(odd) > * {
    --bs-table-accent-bg: rgba(56, 131, 165, 0.1);
}

.card.register, .card.register-complete, .card.register-confirmed, .card.protocol {
    width: 400px;
    max-width: 98%;
}

@media screen and (max-width: 1000px) {
    .card.register, .card.register-complete, .card.register-confirmed, .card.protocol {
        width: 98%;
    }
}

.help-block strong {
    color: red;
    font-size: 1.2rem;
}

.ahtung {
    font-size: 3rem;
}