/* ── AYS MCQ Quiz – Public Styles ──────────────────────────────── */
.amcq-quiz-container {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    max-width: 740px;
    margin: 30px auto;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 8px 40px rgba(0,0,0,.18);
    position: relative;
}
.amcq-quiz-inner {
    background: rgba(255,255,255,.95);
    backdrop-filter: blur(6px);
    padding: 36px 40px;
    min-height: 400px;
    position: relative;
}
@media(max-width:600px){ .amcq-quiz-inner{ padding:24px 18px; } }

/* ── Start screen ─────────────────────────────── */
.amcq-screen-start { text-align:center; }
.amcq-title { font-size:2rem; font-weight:700; margin:0 0 10px; color:#1a1a2e; }
.amcq-desc  { color:#555; margin-bottom:20px; font-size:1.05rem; }
.amcq-meta  { list-style:none; padding:0; display:flex; justify-content:center; gap:24px; flex-wrap:wrap; margin-bottom:28px; }
.amcq-meta li { color:#444; font-size:.97rem; }

/* ── Buttons ──────────────────────────────────── */
.amcq-btn {
    display:inline-block; padding:12px 28px; border-radius:50px; border:none;
    font-size:1rem; font-weight:600; cursor:pointer; transition:.2s;
}
.amcq-btn-start, .amcq-btn-submit, .amcq-btn-retake {
    background:linear-gradient(135deg,#6c63ff,#3f3d99);
    color:#fff;
}
.amcq-btn-start:hover, .amcq-btn-submit:hover, .amcq-btn-retake:hover {
    transform:translateY(-2px); box-shadow:0 6px 20px rgba(108,99,255,.4);
}
.amcq-btn-prev, .amcq-btn-next {
    background:#f0f0f8; color:#3f3d99; border:2px solid #d0cef5;
}
.amcq-btn-prev:hover, .amcq-btn-next:hover { background:#e0defc; }
.amcq-btn:disabled { opacity:.45; cursor:not-allowed; transform:none !important; }

/* ── Header / progress ────────────────────────── */
.amcq-quiz-header { display:flex; justify-content:space-between; align-items:center; margin-bottom:10px; }
.amcq-progress-text { font-size:.9rem; color:#666; }
.amcq-timer-wrap { display:flex; align-items:center; gap:6px; font-size:1.1rem; font-weight:700; color:#e74c3c; }
.amcq-progress-bar { height:6px; background:#e8e8f8; border-radius:99px; margin-bottom:28px; overflow:hidden; }
.amcq-progress-fill { height:100%; background:linear-gradient(90deg,#6c63ff,#a78bfa); border-radius:99px; transition:width .4s ease; }

/* ── Question ─────────────────────────────────── */
.amcq-question-text { font-size:1.15rem; font-weight:600; color:#1a1a2e; margin-bottom:20px; line-height:1.6; }
.amcq-options { list-style:none; padding:0; margin:0 0 24px; display:flex; flex-direction:column; gap:12px; }
.amcq-options li {
    padding:13px 18px; border-radius:10px; border:2px solid #e0defc;
    cursor:pointer; transition:.18s; display:flex; align-items:center; gap:14px;
    font-size:1rem; color:#333;
}
.amcq-options li:hover { background:#f4f2ff; border-color:#a78bfa; }
.amcq-options li.selected { background:#ede9fe; border-color:#6c63ff; color:#3f3d99; font-weight:600; }
.amcq-option-letter {
    width:30px; height:30px; border-radius:50%; border:2px solid currentColor;
    display:flex; align-items:center; justify-content:center;
    font-weight:700; font-size:.85rem; flex-shrink:0;
}

/* ── Nav ──────────────────────────────────────── */
.amcq-nav { display:flex; gap:12px; flex-wrap:wrap; align-items:center; }

/* ── Scorecard ────────────────────────────────── */
.amcq-screen-result { text-align:center; }
.amcq-result-title { font-size:1.8rem; color:#1a1a2e; margin-bottom:20px; }
.amcq-scorecard { margin-bottom:30px; }
.amcq-score-circle {
    width:130px; height:130px; border-radius:50%; margin:0 auto 16px;
    background:conic-gradient(#6c63ff var(--pct,0%), #e0defc 0%);
    display:flex; flex-direction:column; align-items:center; justify-content:center;
    box-shadow:0 4px 20px rgba(108,99,255,.3);
    position:relative;
}
.amcq-score-circle::before {
    content:''; position:absolute; inset:14px; border-radius:50%; background:#fff;
}
.amcq-pct { font-size:1.7rem; font-weight:800; color:#6c63ff; position:relative; z-index:1; }
.amcq-score-label { font-size:.72rem; color:#888; position:relative; z-index:1; }
.amcq-score-detail { font-size:1rem; color:#444; margin:8px 0 4px; }
.amcq-grade-msg { font-size:1.1rem; font-weight:600; }

/* ── Review ───────────────────────────────────── */
.amcq-review { text-align:left; margin-top:20px; }
.amcq-review h3 { font-size:1.1rem; border-bottom:2px solid #e0defc; padding-bottom:8px; margin-bottom:16px; }
.amcq-review-item {
    padding:14px 16px; border-radius:10px; margin-bottom:12px;
    border-left:4px solid #ccc;
}
.amcq-review-item.correct-item { background:#f0fdf4; border-color:#22c55e; }
.amcq-review-item.wrong-item   { background:#fff5f5; border-color:#ef4444; }
.amcq-review-q    { font-weight:600; margin-bottom:8px; }
.amcq-review-tags { display:flex; gap:10px; flex-wrap:wrap; font-size:.85rem; margin-bottom:6px; }
.amcq-tag { padding:3px 10px; border-radius:99px; font-weight:600; }
.amcq-tag-correct { background:#dcfce7; color:#15803d; }
.amcq-tag-wrong   { background:#fee2e2; color:#b91c1c; }
.amcq-tag-your    { background:#ede9fe; color:#6c63ff; }
.amcq-explanation { font-size:.88rem; color:#666; margin-top:4px; font-style:italic; }

/* ── Result actions ───────────────────────────── */
.amcq-result-actions { margin-top:24px; display:flex; gap:12px; justify-content:center; }

/* ── Loading ──────────────────────────────────── */
.amcq-loading { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; background:rgba(255,255,255,.85); }
.amcq-spinner {
    width:44px; height:44px; border-radius:50%;
    border:4px solid #e0defc; border-top-color:#6c63ff;
    animation:amcq-spin .8s linear infinite;
}
@keyframes amcq-spin { to{ transform:rotate(360deg); } }
.amcq-error { color:#ef4444; font-weight:600; padding:20px; text-align:center; }

/* ── Timer warning ────────────────────────────── */
.amcq-timer.warning { color:#e74c3c; animation:amcq-pulse 1s ease infinite; }
@keyframes amcq-pulse { 0%,100%{opacity:1} 50%{opacity:.4} }
