:root { --eduol-primary:#7a01fe; --eduol-accent:#e224c3; --eduol-bg:#f8f6ff; --eduol-border:#eee; }
.eduol-quiz { background: var(--eduol-bg); padding: 24px; border-radius: 16px; border:1px solid var(--eduol-border); }
.eduol-quiz h2 { margin: 0 0 8px; font-size: 28px; }
.eduol-quiz h3 { margin-top: 24px; font-size: 20px; }
.eduol-quiz .field { margin-bottom: 12px; }
.eduol-quiz .field.half { width: 100%; }
@media(min-width:720px){ .eduol-quiz__who{ display:grid; grid-template-columns:1fr 1fr; gap:12px;} .eduol-quiz .field.half{ width:auto;} }
.eduol-quiz input, .eduol-quiz select { width:100%; padding:10px 12px; border:1px solid #ddd; border-radius:10px; background:#fff; }
.likert{ margin: 12px 0; padding:12px; background:#fff; border-radius:12px; border:1px solid var(--eduol-border); }
.likert > label { display:block; font-weight:600; margin-bottom:8px; }
.likert__opts{ display:flex; flex-wrap:wrap; gap:12px; margin-top:8px; }
.likert__opts label{ background:#faf8ff; padding:8px 10px; border-radius:10px; border:1px solid #eee; cursor:pointer; }
.btn-primary{ background:linear-gradient(90deg, var(--eduol-primary), var(--eduol-accent)); color:#fff; border:0; padding:1.25rem 1.5rem; border-radius:3px; font-weight:500; cursor:pointer; text-transform: uppercase; }
.eduol-quiz__result{ margin-top:20px; padding:16px; background:#fff; border-radius:12px; border:1px solid var(--eduol-border); }
.eduol-quiz__score strong{ font-size:22px; }
.eduol-quiz__reco .bucket{ border-top:1px dashed var(--eduol-border); padding-top:12px; margin-top:12px; }
.eduol-quiz__reco .bucket a{ display:inline-block; margin-top:8px; padding:10px 14px; border-radius:10px; text-decoration:none; background:var(--eduol-primary); color:#fff; }
.eduol-quiz__cta a{ display:inline-block; margin-right:8px; margin-top:8px; padding:10px 14px; border-radius:10px; text-decoration:none; background:var(--eduol-primary); color:#fff; }
.eduol-quiz__consent{ margin-top:12px; font-size:14px; }

/* EDUOL buttons — force override theme styles where needed */
.eduol-quiz .btn-primary,
.eduol-quiz .eduol-quiz__reco .bucket a,
.eduol-quiz .eduol-quiz__cta a {
  background-color: var(--accent, var(--eduol-accent)) !important;
  border: 1px solid var(--accent, var(--eduol-accent)) !important;
  border-radius: 3px !important;
  box-shadow: 0 4px 4px rgba(8, 8, 8, .08), 0 1px 2px rgba(8, 8, 8, .2),
              inset 0 6px 12px rgba(255, 255, 255, .12), inset 0 1px 1px rgba(255, 255, 255, .2) !important;
  color: #ffffff !important;
  display: inline-flex;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1;
  padding: 1.25rem 1.5rem !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
.eduol-quiz .btn-primary:hover,
.eduol-quiz .eduol-quiz__reco .bucket a:hover,
.eduol-quiz .eduol-quiz__cta a:hover {
  filter: brightness(0.97);
  box-shadow: 0 6px 10px rgba(8,8,8,.12), 0 2px 4px rgba(8,8,8,.2),
              inset 0 6px 12px rgba(255,255,255,.08) !important;
}