body {
    background-color: #f7f2e8;
    padding-top: 5rem;
}

.site-header {
    background-color: #233d4d;
}

.site-footer {
    background-color: #233d4d;
    color: #fff4e6;
}

.site-footer a {
    color: #fff4e6;
}

.site-footer a:hover,
.site-footer a:focus {
    color: #ffd6a5;
}

.site-logo-lg {
    height: 56px;
}

.site-logo-sm {
    height: 44px;
}

.site-user-label {
    color: #fff4e6;
}

.exam-question-image {
    max-height: 24rem;
    object-fit: contain;
}

.exam-answer-option {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    min-height: 4.5rem;
    padding: 1rem 1.125rem;
    border: 1px solid var(--bs-border-color);
    border-radius: 0.75rem;
    background-color: rgba(255, 255, 255, 0.85);
    cursor: pointer;
    transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}

.exam-answer-option:hover {
    border-color: #233d4d;
    background-color: rgba(255, 255, 255, 0.98);
}

.exam-answer-option:has(input:checked) {
    border-color: #233d4d;
    background-color: #fff;
}

.exam-answer-option:has(input:focus-visible) {
    border-color: #233d4d;
}

.exam-answer-option .form-check-input {
    accent-color: #233d4d;
}

.exam-answer-option .form-check-input:focus {
    box-shadow: none;
}

.exam-answer-text {
    line-height: 1.5;
    margin: 0;
}

.flashcard-answer-toggle {
    cursor: pointer;
}

.flashcard-hidden-answer {
    display: none;
}

.flashcard-answer-visible .flashcard-hidden-answer {
    display: block;
}
