/* Additional custom styles beyond Tailwind CSS */

.answer-option {
    position: relative;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    border-left: 0px solid #6366F1;
}

.answer-option:hover {
    background-color: rgba(99, 102, 241, 0.05);
}

.answer-option input[type="radio"] {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}

/* Hide the custom radio completely */
.answer-option .radio-custom {
    display: none;
}

.answer-option input[type="radio"]:checked ~ .option-text {
    font-weight: 500;
    color: #4338CA;
}

.answer-option input[type="radio"]:checked ~ .option-text::before {
    content: '•';
    margin-right: 0.5rem;
    color: #4338CA;
    font-size: 1.5rem;
    vertical-align: middle;
}

.answer-option input[type="radio"]:checked {
    background-color: #EEF2FF;
}

.answer-option input[type="radio"]:checked + label {
    background-color: #EEF2FF;
    border-color: #6366F1;
}

/* Animations */
.fade-enter {
    opacity: 0;
    transform: translateY(10px);
}

.fade-enter-active {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.3s, transform 0.3s;
}

.fade-exit {
    opacity: 1;
    transform: translateY(0);
}

.fade-exit-active {
    opacity: 0;
    transform: translateY(-10px);
    transition: opacity 0.3s, transform 0.3s;
}

/* Custom scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

::-webkit-scrollbar-thumb {
    background: #c7d2fe;
    border-radius: 10px;
}

::-webkit-scrollbar-thumb:hover {
    background: #a5b4fc;
}