/* ── Quiz page styles (moved from inline <style> in quiz.html) ─────────────── */
    .quiz-wrap {
      max-width: 680px;
      margin: 0 auto;
      padding: 40px 20px 60px;
    }
    .quiz-hero {
      text-align: center;
      margin-bottom: 36px;
    }
    .quiz-hero h1 {
      font-size: clamp(1.4rem, 3vw, 2rem);
      color: #1a202c;
      margin-bottom: 12px;
    }
    .quiz-hero p {
      font-size: 15px;
      color: #4a5568;
      max-width: 520px;
      margin: 0 auto;
      line-height: 1.7;
    }
    .quiz-question {
      background: #fff;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      padding: 22px 24px;
      margin-bottom: 16px;
    }
    .quiz-question p {
      font-size: 15px;
      font-weight: 600;
      color: #1a202c;
      margin-bottom: 14px;
      line-height: 1.5;
    }
    .quiz-question .q-num {
      font-size: 12px;
      font-weight: 700;
      color: #1565c0;
      text-transform: uppercase;
      letter-spacing: 0.05em;
      margin-bottom: 6px;
    }
    .answer-options {
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
    }
    .answer-option {
      display: flex;
      align-items: center;
      gap: 8px;
    }
    .answer-option label {
      display: flex;
      align-items: center;
      gap: 8px;
      font-size: 14px;
      color: #374151;
      cursor: pointer;
      padding: 7px 16px;
      border: 1px solid #e2e8f0;
      border-radius: 20px;
      transition: background 0.15s, border-color 0.15s;
      user-select: none;
    }
    .answer-option input[type="radio"] {
      position: absolute;
      opacity: 0;
      width: 1px;
      height: 1px;
      margin: -1px;
      overflow: hidden;
      clip: rect(0,0,0,0);
      white-space: nowrap;
      border: 0;
    }
    .answer-option input[type="radio"]:checked + label {
      background: #1565c0;
      color: #fff;
      border-color: #1565c0;
    }
    .quiz-submit-row {
      text-align: center;
      margin-top: 24px;
    }
    #quiz-result {
      display: none;
      background: #f8fafc;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      padding: 28px 28px;
      margin-top: 28px;
      text-align: center;
    }
    #quiz-result h2 {
      font-size: 1.2rem;
      color: #1a202c;
      margin-bottom: 12px;
    }
    #quiz-result-text {
      font-size: 15px;
      color: #374151;
      line-height: 1.7;
      margin-bottom: 20px;
    }
    .result-actions {
      display: flex;
      gap: 12px;
      justify-content: center;
      flex-wrap: wrap;
      margin-bottom: 16px;
    }
    .quiz-restart-btn {
      background: none;
      border: none;
      color: #1565c0;
      font-size: 14px;
      cursor: pointer;
      text-decoration: underline;
      padding: 0;
    }
    .compliance-note {
      margin-top: 32px;
      padding: 14px 18px;
      background: #f8fafc;
      border: 1px solid #e2e8f0;
      border-radius: 8px;
      font-size: 12px;
      color: #6b7280;
      line-height: 1.6;
      text-align: center;
    }
