/* MCQ Widget Styles - compact to fit within slide bounds */
/* All selectors prefixed with .reveal to beat slide-base.css specificity */

.reveal .mcq-container {
    max-width: 750px;
    margin: 0 auto;
    text-align: left;
}

.reveal .mcq-question {
    font-size: 0.65em;
    line-height: 1.4;
    margin-bottom: 0.4em;
    color: #e6edf3;
}

.reveal .mcq-choices {
    list-style: none;
    padding: 0;
    margin: 0 0 0.3em 0;
}

.reveal li.mcq-choice {
    display: flex;
    align-items: flex-start;
    gap: 0.3em;
    padding: 0.2em 0.5em;
    margin-bottom: 0.1em;
    background: rgba(30, 37, 48, 0.8);
    border: 1px solid rgba(48, 54, 61, 0.8);
    border-radius: 4px;
    cursor: pointer;
    transition: border-color 0.15s, background 0.15s;
    font-size: 0.5em;
    line-height: 1.4;
}
.reveal li.mcq-choice:hover {
    border-color: #61afef;
    background: rgba(97, 175, 239, 0.08);
}
.reveal li.mcq-choice.selected {
    border-color: #61afef;
    background: rgba(97, 175, 239, 0.12);
}
.reveal li.mcq-choice.correct {
    border-color: #98c379;
    background: rgba(152, 195, 121, 0.12);
}
.reveal li.mcq-choice.incorrect {
    border-color: #e06c75;
    background: rgba(224, 108, 117, 0.12);
}
.reveal li.mcq-choice.disabled {
    pointer-events: none;
    opacity: 0.7;
}

.reveal .mcq-choice-label {
    font-weight: 600;
    color: #c678dd;
    min-width: 1.2em;
}

.reveal .mcq-actions {
    display: flex;
    gap: 0.4em;
    align-items: center;
    margin-top: 0.15em;
}

.reveal .mcq-submit {
    padding: 0.2em 0.8em;
    background: #61afef;
    color: #0d1117;
    border: none;
    border-radius: 4px;
    font-weight: 600;
    font-size: 0.45em;
    cursor: pointer;
    transition: background 0.15s;
}
.reveal .mcq-submit:hover { background: #79bff5; }
.reveal .mcq-submit:disabled { opacity: 0.5; cursor: not-allowed; }

.reveal .mcq-retry-btn {
    padding: 0.2em 0.8em;
    background: transparent;
    color: #e5c07b;
    border: 1px solid rgba(229, 192, 123, 0.4);
    border-radius: 4px;
    font-size: 0.45em;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s;
}
.reveal .mcq-retry-btn:hover {
    background: rgba(229, 192, 123, 0.1);
    border-color: #e5c07b;
}

.reveal .mcq-hint-btn {
    padding: 0.18em 0.55em;
    background: transparent;
    color: #8b949e;
    border: 1px solid #30363d;
    border-radius: 4px;
    font-size: 0.45em;
    cursor: pointer;
}
.reveal .mcq-hint-btn:hover { border-color: #8b949e; }

.reveal .mcq-feedback {
    margin-top: 0.25em;
    padding: 0.25em 0.5em;
    border-radius: 4px;
    font-size: 0.45em;
    line-height: 1.4;
    display: none;
}
.reveal .mcq-feedback.show { display: block; }
.reveal .mcq-feedback.correct {
    background: rgba(152, 195, 121, 0.15);
    border-left: 3px solid #98c379;
    color: #c3e6a0;
}
.reveal .mcq-feedback.incorrect {
    background: rgba(224, 108, 117, 0.15);
    border-left: 3px solid #e06c75;
    color: #f0b0b4;
}

.reveal .mcq-hint {
    margin-top: 0.2em;
    padding: 0.25em 0.5em;
    background: rgba(229, 192, 123, 0.1);
    border-left: 3px solid #e5c07b;
    border-radius: 0 4px 4px 0;
    font-size: 0.42em;
    color: #e5c07b;
    display: none;
}
.reveal .mcq-hint.show { display: block; }

.reveal .mcq-attempts {
    font-size: 0.42em;
    color: #8b949e;
    margin-left: auto;
}

/* Progress bar at top of MCQ slide */
.reveal .mcq-progress {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.3em;
    font-size: 0.4em;
    color: #8b949e;
}
.reveal .mcq-progress-bar {
    flex: 1;
    height: 4px;
    background: rgba(48, 54, 61, 0.8);
    border-radius: 2px;
    margin: 0 0.8em;
    overflow: hidden;
}
.reveal .mcq-progress-fill {
    height: 100%;
    background: var(--accent-green, #98c379);
    border-radius: 2px;
    transition: width 0.3s;
}
.reveal .mcq-reset-all {
    background: none;
    border: none;
    color: #8b949e;
    font-size: 1em;
    cursor: pointer;
    padding: 0.1em 0.3em;
    border-radius: 3px;
    transition: color 0.15s;
}
.reveal .mcq-reset-all:hover {
    color: #e5c07b;
}

/* Mobile responsiveness */
@media (max-width: 768px) {
    .reveal .mcq-container { max-width: 100%; padding: 0 0.5em; }
    .reveal .mcq-question { font-size: 0.75em; }
    .reveal li.mcq-choice { font-size: 0.6em; padding: 0.35em 0.5em; }
    .reveal .mcq-submit,
    .reveal .mcq-retry-btn,
    .reveal .mcq-hint-btn { font-size: 0.55em; padding: 0.3em 0.8em; }
    .reveal .mcq-feedback { font-size: 0.55em; }
    .reveal .mcq-hint { font-size: 0.5em; }
    .reveal .mcq-actions { flex-wrap: wrap; }
}
