/* PTL Quiz & Notoriété · habillage (variables CSS surchargeables par le thème : --noir, --or, --creme, --texte…) */
@font-face{font-family:'CDV Cormorant';src:url('../fonts/cormorant-300.woff2') format('woff2');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:'CDV Cormorant';src:url('../fonts/cormorant-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'CDV Raleway';src:url('../fonts/raleway-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'CDV Raleway';src:url('../fonts/raleway-600.woff2') format('woff2');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:'CDV Raleway';src:url('../fonts/raleway-800.woff2') format('woff2');font-weight:800;font-style:normal;font-display:swap}
@font-face{font-family:'CDV Raleway';src:url('../fonts/raleway-900.woff2') format('woff2');font-weight:900;font-style:normal;font-display:swap}

.ptl-quiz{--noir:#0E0F11;--panneau:#17181B;--ligne:rgba(212,170,102,.28);--ligne2:rgba(243,235,221,.12);--or:#D4AA66;--or-clair:#E9CB8E;--or-prof:#B8863B;--creme:#FDF9EF;--texte:#F3EBDD;--doux:#B1A895;--rouge:#F08F80;--vert:#8FD1A6;
	--serif:'CDV Cormorant','Cormorant Garamond',Georgia,serif;--sans:'CDV Raleway','Raleway','Segoe UI',system-ui,sans-serif;
	box-sizing:border-box;max-width:820px;margin:0 auto;background:var(--noir);color:var(--texte);font-family:var(--sans);font-size:16px;line-height:1.55;border-radius:18px;overflow:hidden;border:1px solid var(--ligne2)}
.ptl-quiz *,.ptl-quiz *::before,.ptl-quiz *::after{box-sizing:border-box}
.ptl-quiz h2{font-family:var(--serif);font-weight:300;font-size:clamp(2rem,5.5vw,2.8rem);line-height:1.02;color:var(--or-clair);margin:.2em 0 .35em;letter-spacing:-.01em;text-wrap:balance}
.ptl-quiz p{margin:0 0 .8em}
.ptl-quiz a{color:var(--or-clair)}
.ptl-quiz .cdv-entete img{display:block;width:100%;height:auto}
.ptl-quiz .cdv-coeur{display:block;width:46px;height:42px;color:var(--or);margin:0 0 6px}
.ptl-quiz .cdv-kicker{font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--or);margin:0}
.ptl-quiz .cdv-lede{font-size:18px;color:var(--texte)}
.ptl-quiz .cdv-aide{color:var(--doux)}
.ptl-quiz .cdv-panneau{padding:28px clamp(18px,5vw,40px) 30px}
.ptl-quiz .cdv-etape{padding:28px clamp(18px,5vw,40px) 34px}
.ptl-quiz .cdv-etape[hidden],.ptl-quiz [hidden]{display:none!important}
.ptl-quiz .cdv-progress{height:4px;background:var(--ligne2)}
.ptl-quiz .cdv-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,#A87A33,#D4AA66,#F4E3B8,#B8863B);transition:width .35s ease}
.ptl-quiz .cdv-bandeau-admin{margin:0;padding:10px clamp(18px,5vw,40px);background:#3b2f17;color:#F6E3B8;font-size:14px}
.ptl-quiz .cdv-regles{margin:0 0 1.4em;padding:0;list-style:none}
.ptl-quiz .cdv-regles li{position:relative;padding-left:20px;margin-bottom:6px;color:var(--doux);font-size:15px}
.ptl-quiz .cdv-regles li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:8px;border-radius:50%;background:var(--or-prof)}

.ptl-quiz fieldset{border:0;margin:0 0 22px;padding:0;min-width:0}
.ptl-quiz legend{font-weight:600;font-size:16.5px;margin-bottom:10px;padding:0;color:var(--texte)}
.ptl-quiz legend small{display:block;font-weight:400;color:var(--doux);font-size:13.5px}
.ptl-quiz .cdv-choix{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px}
.ptl-quiz .cdv-carte{position:relative;display:flex;align-items:center;gap:10px;min-height:52px;padding:12px 14px;border:1px solid var(--ligne2);border-radius:12px;background:var(--panneau);cursor:pointer;transition:border-color .15s,background .15s}
.ptl-quiz .cdv-carte input{position:absolute;opacity:0;pointer-events:none}
.ptl-quiz .cdv-carte span{display:flex;align-items:center;gap:10px;font-size:15px;line-height:1.3}
.ptl-quiz .cdv-carte span::before{content:"";flex:0 0 18px;height:18px;border-radius:50%;border:2px solid var(--doux)}
.ptl-quiz .cdv-carte input[type=checkbox]+span::before{border-radius:5px}
.ptl-quiz .cdv-carte:hover{border-color:var(--ligne)}
.ptl-quiz .cdv-carte:has(input:checked){border-color:var(--or);background:#241e13}
.ptl-quiz .cdv-carte input:checked+span::before{border-color:var(--or);background:radial-gradient(circle,var(--or) 45%,transparent 50%)}
.ptl-quiz .cdv-carte input[type=checkbox]:checked+span::before{background:var(--or);box-shadow:inset 0 0 0 3px #241e13}
.ptl-quiz .cdv-carte:focus-within{outline:2px solid var(--or);outline-offset:2px}
.ptl-quiz .cdv-invalide .cdv-carte,.ptl-quiz .cdv-champ.cdv-invalide input{border-color:var(--rouge)}
.ptl-quiz .cdv-err{color:var(--rouge);font-size:14px;margin:6px 0 0;min-height:0;font-style:normal;display:block}
.ptl-quiz .cdv-err:empty{display:none}

.ptl-quiz .cdv-grille{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;margin-bottom:22px}
.ptl-quiz .cdv-champ{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
.ptl-quiz .cdv-grille .cdv-champ{margin:0}
.ptl-quiz .cdv-champ span{font-weight:600;font-size:14.5px}
.ptl-quiz input[type=text],.ptl-quiz input[type=email],.ptl-quiz input[type=tel],.ptl-quiz input[type=password],.ptl-quiz select,.ptl-quiz textarea{width:100%;font:inherit;font-size:16px;color:var(--texte);background:var(--panneau);border:1px solid var(--ligne2);border-radius:10px;padding:12px 14px;min-height:48px}
.ptl-quiz input:focus,.ptl-quiz select:focus,.ptl-quiz textarea:focus{outline:2px solid var(--or);outline-offset:1px;border-color:var(--or)}
.ptl-quiz .cdv-autre{margin-top:10px}
.ptl-quiz .cdv-consent{margin:0 0 14px;padding:14px 16px;border:1px solid var(--ligne2);border-radius:12px;background:var(--panneau)}
.ptl-quiz .cdv-consent label{display:flex;gap:10px;align-items:flex-start;margin:6px 16px 0 0;cursor:pointer}
.ptl-quiz .cdv-consent-opt label{display:inline-flex}
.ptl-quiz .cdv-consent input{width:20px;height:20px;margin-top:2px;accent-color:var(--or);flex:0 0 20px}
.ptl-quiz .cdv-consent p{margin:0;font-size:15px}
.ptl-quiz .cdv-consent small{color:var(--doux)}
.ptl-quiz .cdv-consent.cdv-invalide{border-color:var(--rouge)}
.ptl-quiz .cdv-rgpd{font-size:12.5px;line-height:1.5;color:var(--doux);margin:16px 0 10px}
.ptl-quiz .cdv-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}

.ptl-quiz .cdv-nav{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap;margin-top:22px}
.ptl-quiz .cdv-btn{font:inherit;font-weight:800;font-size:15px;letter-spacing:.02em;border:0;border-radius:999px;padding:14px 26px;min-height:48px;cursor:pointer;background:linear-gradient(100deg,#A87A33,#D4AA66 30%,#F4E3B8 55%,#D4AA66 75%,#B8863B);color:#1a140a}
.ptl-quiz .cdv-btn:hover{filter:brightness(1.06)}
.ptl-quiz .cdv-btn:disabled{opacity:.6;cursor:wait}
.ptl-quiz .cdv-btn-sec{background:transparent;color:var(--texte);border:1px solid var(--ligne2)}
.ptl-quiz .cdv-btn:focus-visible{outline:2px solid var(--creme);outline-offset:3px}

.ptl-quiz .cdv-score{display:inline-block;background:var(--creme);color:#3d2f14;border-radius:12px;padding:12px 18px;margin:6px 0 20px;transform:rotate(-2deg)}
.ptl-quiz .cdv-score strong{font-weight:900;font-size:26px;color:var(--or-prof);margin-right:6px}
.ptl-quiz .cdv-corrections{margin:0 0 18px;padding:0;list-style:none;counter-reset:c}
.ptl-quiz .cdv-corrections li{counter-increment:c;padding:14px 0 12px 44px;border-top:1px solid var(--ligne2);position:relative}
.ptl-quiz .cdv-corrections li::before{content:counter(c);position:absolute;left:0;top:14px;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:14px;background:#2a2418;color:var(--or)}
.ptl-quiz .cdv-corrections li.cdv-juste::before{background:#1c3325;color:var(--vert)}
.ptl-quiz .cdv-ct{font-weight:600;margin:0 0 4px}
.ptl-quiz .cdv-cr{margin:0 0 4px;font-size:15px}
.ptl-quiz .cdv-juste .cdv-cr{color:var(--vert)}
.ptl-quiz .cdv-faux .cdv-cr{color:var(--rouge)}
.ptl-quiz .cdv-faux .cdv-cr strong{color:var(--texte)}
.ptl-quiz .cdv-ce{margin:0;color:var(--doux);font-size:14.5px}
.ptl-quiz .cdv-fin{color:var(--or-clair);font-family:var(--serif);font-size:21px;line-height:1.25}

/* Relevé de notoriété (sondage terrain) */
.ptl-quiz-releve{max-width:560px}
.ptl-quiz .cdv-releve-tete{display:flex;gap:14px;align-items:center;padding:22px clamp(16px,5vw,28px) 6px}
.ptl-quiz .cdv-releve-tete h2{font-size:2rem;margin:.1em 0 0}
.ptl-quiz .cdv-releve-tete .cdv-coeur{margin:0;flex:0 0 46px}
.ptl-quiz-releve .cdv-panneau,.ptl-quiz-releve .cdv-releve-form{padding:14px clamp(16px,5vw,28px) 26px}
.ptl-quiz .cdv-consigne{background:#241e13;border:1px solid var(--ligne);border-radius:12px;padding:12px 14px;font-size:14.5px}
.ptl-quiz .cdv-script{display:block;font-family:var(--serif);font-style:normal;font-weight:500;font-size:20px;line-height:1.25;color:var(--or-clair);margin-bottom:6px}
.ptl-quiz .cdv-aide-q{font-size:13.5px;color:var(--doux);margin:-4px 0 8px}
.ptl-quiz .cdv-oui-non{grid-template-columns:1fr 1fr}
.ptl-quiz .cdv-oui-non .cdv-carte{justify-content:center;min-height:58px}
.ptl-quiz .cdv-oui-non .cdv-carte span{font-weight:800;font-size:17px}
.ptl-quiz-releve .cdv-choix{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}
.ptl-quiz .cdv-compteur{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--or-clair);text-align:center;min-height:1.4em}
.ptl-quiz h2:focus,.ptl-quiz .cdv-resultat:focus{outline:none}

@media (max-width:560px){
	.ptl-quiz{border-radius:0;border-left:0;border-right:0}
	.ptl-quiz .cdv-grille{grid-template-columns:1fr}
	.ptl-quiz .cdv-choix{grid-template-columns:1fr}
	.ptl-quiz .cdv-oui-non{grid-template-columns:1fr 1fr}
	.ptl-quiz-releve .cdv-choix{grid-template-columns:1fr 1fr}
	.ptl-quiz .cdv-nav .cdv-btn{flex:1 1 auto}
}
@media (prefers-reduced-motion:reduce){.ptl-quiz *{transition:none!important;scroll-behavior:auto!important}}

/* Encart à faire scanner au répondant après chaque relevé : fond clair, QR lisibles depuis l'autre téléphone */
.ptl-quiz .cdv-encart{background:#FDF9EF;color:#1a140a;border-radius:16px;margin:0 clamp(12px,4vw,24px) 22px;padding:22px clamp(14px,4vw,28px) 24px;text-align:center}
.ptl-quiz .cdv-encart:focus{outline:none}
.ptl-quiz .cdv-encart-titre{font-family:var(--serif);font-size:30px;line-height:1.1;margin:0 0 4px;color:#1a140a}
.ptl-quiz .cdv-encart-sous{margin:0 0 16px;font-size:15px;color:#5b5140}
.ptl-quiz .cdv-encart-grille{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ptl-quiz .cdv-encart-qr{margin:0;background:#fff;border:1px solid #e6dcc6;border-radius:14px;padding:10px 8px 14px}
.ptl-quiz .cdv-encart-qr img{display:block;width:100%;max-width:220px;height:auto;margin:0 auto 10px}
.ptl-quiz .cdv-encart-qr strong{display:block;font-size:15px;line-height:1.25;color:#1a140a}
.ptl-quiz .cdv-encart-qr span{display:block;font-size:13px;line-height:1.3;color:#5b5140;margin-top:4px}
.ptl-quiz .cdv-encart .cdv-nav{margin-top:18px;justify-content:center}
@media (max-width:560px){
	.ptl-quiz .cdv-encart{margin:0 0 18px;border-radius:0}
	.ptl-quiz .cdv-encart-grille{gap:10px}
	.ptl-quiz .cdv-encart-qr{padding:8px 6px 12px}
}

/* État fermé : compte à rebours jusqu'à l'ouverture, accès test discret */
.ptl-quiz .cdv-compte{margin:22px 0 4px}
.ptl-quiz .cdv-compte-titre{display:block;font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--or);margin-bottom:10px}
.ptl-quiz .cdv-compte-cases{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-width:440px}
.ptl-quiz .cdv-compte-case{background:#241e13;border:1px solid var(--ligne);border-radius:12px;padding:12px 4px 9px;text-align:center}
.ptl-quiz .cdv-compte-case b{display:block;font-family:var(--serif);font-weight:500;font-size:36px;line-height:1;color:var(--or-clair);font-variant-numeric:tabular-nums}
.ptl-quiz .cdv-compte-case span{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--doux);margin-top:7px}
.ptl-quiz .cdv-test{margin-top:24px;font-size:13px;color:var(--doux)}
.ptl-quiz .cdv-test summary{cursor:pointer;display:inline-block;opacity:.7;list-style:none}
.ptl-quiz .cdv-test summary::-webkit-details-marker{display:none}
.ptl-quiz .cdv-test summary::before{content:"·";margin-right:6px}
.ptl-quiz .cdv-test summary:hover,.ptl-quiz .cdv-test[open] summary{opacity:1;color:var(--texte)}
.ptl-quiz .cdv-test-form{margin-top:12px;max-width:380px}
.ptl-quiz .cdv-test-form .cdv-nav{justify-content:flex-start;margin-top:8px}
.ptl-quiz .cdv-bandeau-test a{color:inherit;text-decoration:underline;margin-left:8px}
@media (max-width:560px){
	.ptl-quiz .cdv-compte-case b{font-size:28px}
}
