/* Quiz d'aide au choix (OAD) — composant #iwq, styles scopés (aucune collision hôte).
   Mutualisé entre /choisir-mon-offre et /tarifs. Piloté par /js/offer-quiz.js. */
#iwq-section{scroll-margin-top:80px;}
#iwq{max-width:760px;margin:0 auto;}
#iwq *{box-sizing:border-box;}
#iwq .iwq-panel,#iwq .iwq-result{background:var(--iw-white);border:2px solid var(--iw-red);border-radius:var(--radius-lg);padding:24px;margin:0;}
@media(min-width:640px){#iwq .iwq-panel,#iwq .iwq-result{padding:34px;}}

#iwq .iwq-progress{margin-bottom:22px;}
#iwq .iwq-progress-label{display:block;font-weight:700;font-size:.85rem;color:var(--text-muted);margin-bottom:8px;letter-spacing:.02em;}
#iwq .iwq-progress-track{height:8px;background:var(--iw-gray-100);border:1px solid var(--iw-gray-200);border-radius:999px;overflow:hidden;}
#iwq .iwq-progress-bar{height:100%;width:25%;background:var(--iw-red);border-radius:999px;transition:width var(--dur-base) var(--ease-out);}

#iwq .iwq-step{border:0;padding:0;margin:0;min-inline-size:0;}
#iwq .iwq-legend{display:block;width:100%;font-weight:800;font-size:1.25rem;line-height:1.25;color:var(--text-heading);margin:0 0 18px;padding:0;}

#iwq .iwq-options{display:grid;gap:12px;}
#iwq .iwq-option{position:relative;display:flex;gap:12px;align-items:flex-start;padding:16px;border:2px solid var(--iw-gray-300);border-radius:var(--radius-md);cursor:pointer;background:var(--iw-white);transition:border-color var(--dur-base) var(--ease-out),background var(--dur-base) var(--ease-out);}
#iwq .iwq-option:hover{border-color:var(--iw-red);}
#iwq .iwq-option:focus-within{outline:3px solid var(--iw-red-soft);outline-offset:2px;border-color:var(--iw-red);}
#iwq .iwq-option.is-selected{border-color:var(--iw-red);background:var(--iw-red-soft);}
#iwq .iwq-option input{margin:2px 0 0;width:20px;height:20px;flex:0 0 auto;accent-color:var(--iw-red);cursor:pointer;}
#iwq .iwq-opt-body{display:flex;flex-direction:column;gap:3px;}
#iwq .iwq-opt-title{font-weight:700;color:var(--text-heading);}
#iwq .iwq-opt-sub{font-size:.9rem;color:var(--text-muted);}

#iwq .iwq-nav{display:flex;gap:12px;justify-content:space-between;align-items:center;margin-top:22px;}
#iwq .iwq-btn{font-family:inherit;font-weight:800;font-size:.95rem;border-radius:var(--radius-sm);padding:13px 22px;cursor:pointer;border:2px solid transparent;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;text-align:center;transition:filter var(--dur-base) var(--ease-out),background var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out);}
#iwq .iwq-btn:disabled{opacity:.45;cursor:not-allowed;}
#iwq .iwq-btn-primary{background:var(--iw-red-deep);color:var(--iw-white);border-color:var(--iw-red-deep);}
#iwq .iwq-btn-primary:not(:disabled):hover{filter:brightness(.92);}
#iwq .iwq-btn-outline{background:transparent;color:var(--iw-red-deep);border-color:var(--iw-red-deep);}
#iwq .iwq-btn-outline:hover{background:var(--iw-red-deep);color:var(--iw-white);}
#iwq .iwq-btn-ghost{background:transparent;color:var(--text-muted);border-color:transparent;padding:10px 14px;}
#iwq .iwq-btn-ghost:hover{color:var(--iw-red-deep);}
#iwq .iwq-btn:focus-visible{outline:3px solid var(--iw-red-soft);outline-offset:2px;}

#iwq .iwq-reco-eyebrow{margin:0 0 4px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;color:var(--iw-red-deep);}
#iwq .iwq-reco-name{margin:0 0 6px;font-size:1.6rem;font-weight:800;color:var(--text-heading);line-height:1.15;}
#iwq .iwq-reco-price{margin:0 0 12px;font-weight:800;color:var(--iw-red-deep);font-size:1.15rem;}
#iwq .iwq-reco-desc{margin:0 0 20px;color:var(--text-body);}
#iwq .iwq-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:22px;}
#iwq .iwq-actions .iwq-btn{flex:1 1 200px;}
#iwq .iwq-hyp{border-top:1px solid var(--iw-gray-200);padding-top:18px;}
#iwq .iwq-hyp-title{margin:0 0 10px;font-weight:800;color:var(--text-heading);font-size:.95rem;}
#iwq .iwq-hyp ul{margin:0;padding:0;list-style:none;display:grid;gap:8px;}
#iwq .iwq-hyp li{position:relative;padding-left:22px;color:var(--text-body);font-size:.92rem;}
#iwq .iwq-hyp li::before{content:"";position:absolute;left:0;top:7px;width:10px;height:10px;border-radius:999px;background:var(--iw-red);}
#iwq .iwq-note{margin:18px 0 0;font-size:.85rem;color:var(--text-muted);}
#iwq .iwq-note a{color:var(--iw-red-deep);font-weight:700;}
#iwq .iwq-restart-wrap{margin-top:14px;text-align:center;}
