/* Quiz di autoverifica */
.md-typeset .quiz {
  --q-line: var(--md-default-fg-color--lightest);
  --q-ok: #17784a;
  --q-ok-soft: rgba(23, 120, 74, 0.1);
  --q-no: #b3261e;
  --q-no-soft: rgba(179, 38, 30, 0.08);
  margin: 1.2em 0;
  border: 1px solid var(--q-line);
  border-radius: 10px;
  overflow: hidden;
}
[data-md-color-scheme="slate"] .md-typeset .quiz {
  --q-ok: #6fd39c;
  --q-ok-soft: rgba(111, 211, 156, 0.12);
  --q-no: #ff8b7d;
  --q-no-soft: rgba(255, 139, 125, 0.1);
}
.md-typeset .quiz-head {
  display: flex; justify-content: space-between; align-items: center; gap: 0.6rem;
  padding: 0.5rem 0.8rem; background: var(--md-code-bg-color); border-bottom: 1px solid var(--q-line);
}
.md-typeset .quiz-title { font-weight: 700; }
.md-typeset .quiz-score { font-weight: 700; font-variant-numeric: tabular-nums; color: var(--md-default-fg-color--light); }
.md-typeset .quiz-q { margin: 0; padding: 0.8rem 0.9rem; border: 0; border-bottom: 1px solid var(--q-line); min-width: 0; }
.md-typeset .quiz-text { padding: 0; font-weight: 600; line-height: 1.5; }
.md-typeset .quiz-num { color: var(--md-typeset-a-color); }
.md-typeset .quiz-code { margin: 0.6rem 0 0; }
.md-typeset .quiz-code code { display: block; padding: 0.6rem 0.8rem; font-size: 0.72rem; overflow-x: auto; }
.md-typeset .quiz-opts { display: grid; gap: 0.4rem; margin-top: 0.6rem; }
.md-typeset .quiz-opt {
  display: flex; align-items: flex-start; gap: 0.6rem; width: 100%; text-align: left;
  font: inherit; color: var(--md-default-fg-color); background: var(--md-default-bg-color);
  border: 1px solid var(--q-line); border-radius: 8px; padding: 0.45rem 0.6rem; cursor: pointer;
}
.md-typeset .quiz-opt:hover:not(:disabled) { border-color: var(--md-primary-fg-color); }
.md-typeset .quiz-opt:focus-visible { outline: 2px solid var(--md-accent-fg-color); outline-offset: 2px; }
.md-typeset .quiz-opt:disabled { cursor: default; }
.md-typeset .quiz-letter {
  flex: none; display: inline-grid; place-items: center; width: 1.3rem; height: 1.3rem; border-radius: 50%;
  font-size: 0.62rem; font-weight: 700; background: var(--md-code-bg-color); color: var(--md-default-fg-color--light);
}
.md-typeset .quiz-label { white-space: pre-wrap; overflow-wrap: anywhere; }
.md-typeset .quiz-opt.is-right { border-color: var(--q-ok); background: var(--q-ok-soft); }
.md-typeset .quiz-opt.is-right .quiz-letter { background: var(--q-ok); color: #fff; }
.md-typeset .quiz-opt.is-wrong { border-color: var(--q-no); background: var(--q-no-soft); }
.md-typeset .quiz-opt.is-wrong .quiz-letter { background: var(--q-no); color: #fff; }
.md-typeset .quiz-fb { margin-top: 0.6rem; padding: 0.5rem 0.7rem; border-radius: 8px; line-height: 1.5; }
.md-typeset .quiz-fb[hidden] { display: none; }
.md-typeset .quiz-fb--ok { background: var(--q-ok-soft); }
.md-typeset .quiz-fb--ok strong { color: var(--q-ok); }
.md-typeset .quiz-fb--no { background: var(--q-no-soft); }
.md-typeset .quiz-fb--no strong { color: var(--q-no); }
.md-typeset .quiz-end { padding: 0.8rem 0.9rem; background: var(--md-code-bg-color); }
.md-typeset .quiz-end[hidden] { display: none; }
.md-typeset .quiz-again {
  margin-left: 0.3rem; font: inherit; font-weight: 700; cursor: pointer; border-radius: 6px; padding: 0.25rem 0.7rem;
  border: 1px solid var(--md-primary-fg-color); background: var(--md-primary-fg-color); color: var(--md-primary-bg-color);
}
