/*
 * Il contenitore esterno e il titolo sono quelli forniti dal tema (Jannah).
 * Qui vengono stilizzati soltanto gli elementi interni specifici del quiz.
 */
.lfqsw { color: inherit; font: inherit; }
.lfqsw [hidden], .lfqsw .hidden { display: none !important; }
.lfqsw__questions { position: relative; }
.lfqsw__question { animation: lfqswFadeIn .18s ease-in; }
@keyframes lfqswFadeIn { from { opacity: .35; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } }
.lfqsw__meta { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; margin-bottom: 10px; }
.lfqsw__badges { display: flex; flex-wrap: wrap; gap: 6px; min-width: 0; }
.lfqsw__badge { display: inline-flex; align-items: center; gap: 6px; max-width: 100%; padding: 6px 10px; border-radius: 999px; border: 1px solid transparent; font-size: .72em; font-weight: 800; line-height: 1.1; letter-spacing: .01em; white-space: nowrap; box-shadow: 0 1px 2px rgba(0,0,0,.04); }
.lfqsw__badge::before { content: ''; flex: 0 0 7px; width: 7px; height: 7px; border-radius: 50%; background: currentColor; opacity: .92; }
.lfqsw__subject--1 { background: #eef6ff; border-color: #d7e8ff; color: #2b6cb0; }
.lfqsw__subject--2 { background: #edfdf4; border-color: #d7f8e5; color: #217a53; }
.lfqsw__subject--3 { background: #fff6e9; border-color: #ffe7c0; color: #b7791f; }
.lfqsw__subject--4 { background: #f7f0ff; border-color: #ead8ff; color: #7a4fb1; }
.lfqsw__subject--5 { background: #fff0f3; border-color: #ffd8e1; color: #b83b5e; }
.lfqsw__subject--6 { background: #eefbfb; border-color: #d3f2f2; color: #0f766e; }
.lfqsw__subject--7 { background: #f4f6f8; border-color: #e1e6eb; color: #425466; }
.lfqsw__subject--8 { background: #fdf7ed; border-color: #f8e3bf; color: #9a5d00; }
.lfqsw__difficulty.is-easy { background: #ecfdf3; border-color: #ccefd9; color: #1f8f4d; }
.lfqsw__difficulty.is-medium { background: #fff7e8; border-color: #fde5b4; color: #b4690e; }
.lfqsw__difficulty.is-hard { background: #fff0ee; border-color: #ffd5cf; color: #c2412d; }
.lfqsw__progress { flex: 0 0 auto; padding-top: 5px; font-size: .76em; line-height: 1.2; font-weight: 700; opacity: .68; white-space: nowrap; }
.lfqsw__question-text { margin-bottom: 14px; font-size: 1em; line-height: 1.55; font-weight: 700; }
.lfqsw__question-text > :first-child,
.lfqsw__option-text > :first-child,
.lfqsw__explanation > :first-child { margin-top: 0; }
.lfqsw__question-text > :last-child,
.lfqsw__option-text > :last-child,
.lfqsw__explanation > :last-child { margin-bottom: 0; }
.lfqsw__options { display: grid; gap: 9px; }
.lfqsw__option { appearance: none; -webkit-appearance: none; display: flex; align-items: flex-start; gap: 10px; width: 100%; min-height: 44px; padding: 12px 13px; border: 1px solid rgba(127,127,127,.22); border-radius: 12px; background: #fff; color: inherit; font: inherit; font-size: .93em; line-height: 1.45; text-align: left; cursor: pointer; box-shadow: 0 1px 2px rgba(0,0,0,.03); transition: border-color .16s ease, background-color .16s ease, opacity .16s ease, transform .16s ease, box-shadow .16s ease; }
.lfqsw__option:hover { border-color: rgba(0,0,0,.28); transform: translateY(-1px); box-shadow: 0 6px 14px rgba(0,0,0,.05); }
.lfqsw__option:focus-visible,
.lfqsw__next:focus-visible,
.lfqsw__cta:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.lfqsw__option:disabled { cursor: default; opacity: .76; }
.lfqsw__option.is-selected { opacity: 1; border-color: rgba(0,0,0,.35); }
.lfqsw__option.is-correct { border-color: #24a159; background: rgba(36,161,89,.08); opacity: 1; }
.lfqsw__option.is-wrong { border-color: #cc4b37; background: rgba(204,75,55,.08); opacity: 1; }
.lfqsw__radio { flex: 0 0 16px; width: 16px; height: 16px; margin-top: 2px; border: 1.6px solid currentColor; border-radius: 50%; opacity: .6; }
.lfqsw__option.is-selected .lfqsw__radio { box-shadow: inset 0 0 0 3px transparent; background: currentColor; opacity: 1; }
.lfqsw__feedback { margin-top: 13px; padding: 12px 13px; border: 1px solid rgba(127,127,127,.16); border-radius: 12px; background: rgba(0,0,0,.02); font-size: .88em; line-height: 1.55; }
.lfqsw__feedback-title { display: block; margin-bottom: 6px; }
.lfqsw__correct-answer { margin-top: 3px; }
.lfqsw__explanation { margin-top: 8px; opacity: .94; }
.lfqsw__next { appearance: none; -webkit-appearance: none; display: inline-flex; align-items: center; gap: 6px; margin-top: 13px; padding: 0; border: 0; background: transparent; color: inherit; font: inherit; font-size: .9em; font-weight: 800; cursor: pointer; }
.lfqsw__next:hover { opacity: .78; }
.lfqsw__cta.button { display: block; width: 100%; margin-top: 15px; box-sizing: border-box; text-align: center; text-decoration: none; border-radius: 999px; font-weight: 800; letter-spacing: .01em; }
@media (max-width: 479px) {
    .lfqsw__meta { flex-direction: column; gap: 6px; }
    .lfqsw__progress { padding-top: 0; }
}
