#flashcard-form input[type="text"] {
    margin: 5px;
    padding: 8px;
    width: 45%;
}

.card-input-row {
    display: flex;
    align-items: center;
    margin-bottom: 5px;
}

.card-input-row .delete-btn {
    margin-left: 10px;
}

#card-controls { margin-top: 5px; }

#card-controls button {
    margin: 5px;
    padding: 8px 12px;
}

.flash-card {
    width: 100%;
    padding: 40px;
    font-size: 20px;
    text-align: center;
    border-radius: 10px;
    transition: all 0.4s ease;
    box-shadow: 0 0 15px rgba(0,0,0,0.2);
}

#add-flashcard, #generate-cards {
	width: 100%;
	margin: 10px 0;
}

.flashcard-outer {
  width: 100%;
  height: 250px;
  perspective: 1000px;
  margin: 0 auto;
  position: relative;
}

.flashcard-inner {
  width: 100%;
  height: 100%;
  position: relative;
  transform-style: preserve-3d;
  transition: transform 0.6s;
}

.flashcard-outer.flipped .flashcard-inner {
  transform: rotateY(180deg);
}

.flashcard-front,
.flashcard-back {
  position: absolute;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
  padding: 20px;
  box-sizing: border-box;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  font-size: 1.2rem;
  text-align: center;
  overflow-y: auto;         /* ✅ allows vertical scroll */
  overflow-x: hidden;       /* ✅ prevents side scrolling */
  word-wrap: break-word;    /* ✅ wraps long words */
}

.flashcard-front {
  z-index: 2;
  transform: rotateY(0deg); /* Optional but helps enforce intent */
}

.flashcard-back {
  transform: rotateY(180deg);
}