/* ============================================
   ii-V-I FLASHCARDS - APP SPECIFIC CSS
   App-specific styles only
   Common styles are in flashcard-common.css
   ============================================ */

/* VexTab editor (hidden) */
.editor { height: 0 !important; width: 0 !important; }

/* ============================================
   ABSOLUTE POSITIONING PATTERN
   For apps with large notation that can overflow
   ============================================ */

/* Question text - positioned at top */
.question-label {
    position: absolute;
    top: 2px;
    left: 12px;
    right: 40px; /* Account for 28px dog-ear + margin */
    text-align: center;
    background: linear-gradient(to bottom, var(--card) 60%, transparent);
    padding: 8px 16px 16px;
    z-index: 2;
    border-radius: 10px 0 0 0;
}

/* Flip button - positioned at bottom */
.hint-controls {
    position: absolute;
    bottom: 2px;
    left: 12px;
    right: 12px;
    z-index: 2;
    background: linear-gradient(to top, var(--card) 60%, transparent);
    padding: 16px 16px 8px;
    margin: 0;
    border-radius: 0 0 10px 10px;
}

/* Notation container - full size, centered */
.notation-container {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0;
}

/* VexTab container */
.vex-tabdiv {
    margin: 0;
}

/* Dark mode gradient backgrounds */
body.dark-mode .question-label {
    background: linear-gradient(to bottom, var(--card) 60%, transparent);
}

body.dark-mode .hint-controls {
    background: linear-gradient(to top, var(--card) 60%, transparent);
}

/* Flashcard height - prevents CLS */
.flashcard {
    height: 240px;
}

/* Mobile Responsive */
@media (max-width: 768px) {
    .flashcard {
        height: 220px;
    }
}

@media (max-width: 480px) {
    .flashcard {
        height: 200px;
    }
}
