.headerBackground {
    background-image: url("./banner.jpg");
    background-size: cover;
    height: 20rem;
}

.side-menu-panel {
    min-height: 100vh;
}

.loading-overlay {
    position: fixed;
    inset: 0;
    background: rgba(255, 255, 255, 0.85);
    z-index: 1050;
    display: flex;
    align-items: center;
    justify-content: center;
}

.loading-card {
    background: #fff;
    border-radius: 12px;
    padding: 1.25rem 1.75rem;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-weight: 600;
    color: #1f3449;
}

.modal-loading-overlay {
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.85);
    z-index: 1061;
    display: flex;
    align-items: center;
    justify-content: center;
}

.admin-section-overlay {
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.75);
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
}

.clickable-row {
    cursor: pointer;
}

.clickable-row:hover {
    background: #f5f7fb;
}

.choice-row {
    cursor: pointer;
    border-radius: 8px;
    padding: 0.5rem 0.75rem;
    transition: background 0.2s ease;
}

.choice-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1rem;
}

.choice-row:hover {
    background: #f2f6ff;
}

.form-check-input {
  border-color: #1f3449;
}

/* flip speed for flashcard */
.flipper {
    transition: 1s;
    transform-style: preserve-3d;
    position: relative;
}

/* back, initially hidden pane */
.flip {
    transform: rotatey(180deg);
}

#deckBody {
  opacity: 1;
  transition: opacity 0.3s ease;
}

.questionCard {
    animation: slideIn 1s ease-in-out forwards;
}

@keyframes slideIn {
  0% {
    transform: translateX(500px) scale(.2);
  }
  100% {
    transform: translateX(0px) scale(1);
  }
}
