/* 小テスト */
.lesson-quiz {
    padding: var(--space-10) var(--space-10);
}

.lesson-quiz__title {
    font-size: var(--font-size-lg);
    font-weight: var(--font-weight-bold);
    margin-bottom: var(--space-6);
}

.quiz-question {
    margin-bottom: var(--space-6);
}

.quiz-question__text {
    font-weight: var(--font-weight-medium);
    margin-bottom: var(--space-3);
    line-height: var(--line-height-relaxed);
}

.quiz-choices {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
}

.quiz-choice {
    display: block;
    width: 100%;
    padding: var(--space-3) var(--space-4);
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    text-align: left;
    cursor: pointer;
    font-size: var(--font-size-base);
    font-family: inherit;
    transition: background var(--transition-fast), border-color var(--transition-fast);
}

.quiz-choice__label {
    font-weight: var(--font-weight-bold);
    margin-right: var(--space-2);
}

.quiz-choice:hover:not(:disabled) {
    background: var(--color-background);
    border-color: var(--color-primary-light);
}

.quiz-choice:disabled {
    cursor: default;
}

.quiz-choice--correct {
    background: var(--color-success);
    color: #fff;
    border-color: var(--color-success);
}

.quiz-choice--wrong {
    background: var(--color-error);
    color: #fff;
    border-color: var(--color-error);
}

.quiz-feedback {
    margin-top: var(--space-3);
    padding: var(--space-3) var(--space-4);
    border-radius: var(--radius-sm);
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
}
.quiz-feedback[hidden] { display: none; }

.quiz-feedback__result {
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-sm);
}

.quiz-feedback__result--correct { color: var(--color-success); }
.quiz-feedback__result--wrong   { color: var(--color-error, #dc2626); }

.quiz-feedback__explanation {
    font-size: var(--font-size-sm);
    color: var(--color-text-muted);
    line-height: 1.7;
    padding-top: var(--space-2);
    border-top: 1px solid var(--color-border);
}

/* スコアサマリー */
.quiz-summary {
    margin-top: var(--space-4);
    padding: var(--space-3) var(--space-4);
    border-radius: var(--radius-md);
    font-weight: var(--font-weight-medium);
    text-align: center;
}

.quiz-summary--passed {
    background: color-mix(in srgb, var(--color-success) 15%, white);
    color: var(--color-success);
    border: 1px solid var(--color-success);
}

.quiz-summary--failed {
    background: var(--color-surface);
    color: var(--color-text-muted);
    border: 1px solid var(--color-border);
}

/* 章サイドバー合格バッジ */
.chapter-nav__badge {
    margin-left: var(--space-2);
    color: var(--color-success);
    font-weight: var(--font-weight-bold);
    font-size: var(--font-size-sm);
}
