/* V29.6 - mobile-first corrective layer */
html,body{max-width:100%;overflow-x:hidden}.flag{filter:none!important;opacity:1!important;mix-blend-mode:normal!important}.flag.fr,.flag.gb{background-color:#fff!important}
#testOverlay,#resultOverlay{box-sizing:border-box}.test-shell,.result-card{box-sizing:border-box;max-width:min(960px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto}.test-top{position:sticky;top:0;z-index:5;background:#fff}.test-top img,header img{object-fit:contain!important;background:transparent!important}.vp-question-nav{display:flex;gap:12px;padding:14px 18px 18px}.vp-question-nav button{border:0;border-radius:12px;padding:12px 18px;font-weight:800}.vp-question-nav button:disabled{opacity:.38}.vp-question-nav #vpNext{margin-left:auto;background:#d7192d;color:#fff}.vp-review{padding:14px;border-radius:14px;background:#f3f4f6;line-height:1.7}
@media(max-width:700px){
 body{background:linear-gradient(rgba(255,255,255,.94),rgba(255,255,255,.94)),url('assets/quiz-environment.png') center top/cover fixed!important;color:#171b24!important}
 header{min-height:60px!important;padding:7px 12px!important;display:grid!important;grid-template-columns:72px 1fr!important;align-items:center!important;gap:8px!important;background:rgba(255,255,255,.96)!important}header img{width:70px!important;height:44px!important}header nav{display:flex!important;justify-content:flex-end!important;gap:12px!important}header nav a{font-size:12px!important;line-height:1.1!important}header>b{display:none!important}
 main#test{display:flex!important;flex-direction:column!important;width:100%!important;max-width:100%!important;padding:16px 14px 18px!important;gap:14px!important;background:rgba(255,255,255,.72)!important}.left,aside{width:100%!important;max-width:100%!important}.left small{font-size:12px!important}.left h1{font-size:34px!important;line-height:1.03!important;margin:8px 0 10px!important}.left>p{font-size:15px!important;line-height:1.4!important;margin-bottom:14px!important}.left h2{font-size:19px!important;margin:14px 0 9px!important}
 .choices{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important}.choices label{min-height:64px!important;padding:7px 4px!important;display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;gap:4px!important;text-align:center!important}.choices label b{font-size:12px!important;width:100%}.choices .flag{transform:scale(.82)}
 .fields{display:grid!important;grid-template-columns:1fr 1fr!important;gap:9px!important}.fields label{font-size:12px!important}.fields label:nth-child(3),.fields label:nth-child(4),.fields label:nth-child(5),.fields label:nth-child(6){grid-column:1/-1}.fields input,.fields select{min-height:44px!important;padding:8px 10px!important;font-size:16px!important}.levels{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important}.levels label{min-height:66px!important;padding:9px!important}.levels b{font-size:13px!important}.levels em{font-size:10px!important}
 .mobile-hide-photo{display:none!important}.benefits{grid-template-columns:1fr 1fr!important;gap:8px!important}.benefits article{min-height:auto!important;padding:10px!important;font-size:12px!important}.benefits article span{font-size:10px!important}.help-mini{margin:4px 0!important;padding:12px!important}.help-copy strong{font-size:14px!important}.help-copy span,.help-copy small{font-size:11px!important}.help-actions a{min-height:40px!important;font-size:12px!important}
 #mobileStartSlot{order:99;width:100%}#mobileStartSlot .start-block{display:block!important;width:100%;padding:2px 0 0!important}#mobileStartSlot button{width:100%;min-height:54px;border:0;border-radius:14px;background:#df1e32;color:#fff;font-size:19px;font-weight:900}#mobileStartSlot .time{text-align:center;font-size:12px;margin:8px 0 0;color:#667085}.start-block{display:none}
 footer.footer-v8{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;padding:18px 14px!important;text-align:center!important;font-size:12px!important}.footer-brand{grid-column:1/-1;order:-1}.footer-brand b{font-size:19px!important}.footer-brand em{font-size:12px!important}.social{font-size:13px!important}
 .test-overlay{padding:0!important;align-items:stretch!important;justify-content:stretch!important;background:rgba(10,15,24,.72)!important;overflow:hidden!important}.test-shell{width:100vw!important;max-width:100vw!important;height:100dvh!important;max-height:100dvh!important;border-radius:0!important;margin:0!important;display:flex!important;flex-direction:column!important;background:#fff!important;overflow:hidden!important}.test-top{display:grid!important;grid-template-columns:58px minmax(0,1fr) auto 40px!important;gap:7px!important;padding:9px 10px!important;align-items:center!important;min-height:70px!important}.test-top img{width:56px!important;height:42px!important}.test-top b{font-size:15px!important;line-height:1.12!important}.test-top span{font-size:12px!important}.vp-test-timer{font-size:13px!important;min-width:68px!important;margin:0!important;padding:7px 6px!important}.test-top #quitTest{width:38px!important;height:38px!important}.progress{flex:0 0 auto!important}#questionArea{flex:1 1 auto!important;overflow-y:auto!important;overflow-x:hidden!important;padding:14px!important;width:100%!important;box-sizing:border-box!important;background:#fff!important}#questionArea>*{max-width:100%!important;box-sizing:border-box!important}.answers{grid-template-columns:1fr 1fr!important;gap:9px!important}.answers button{min-width:0!important;width:100%!important;overflow-wrap:anywhere!important}.kids-q.kid-oral .answers button{min-height:90px!important}.kid-word{font-size:19px!important}.kid-icon{font-size:44px!important}.vp-question-nav{flex:0 0 auto;background:#fff;border-top:1px solid #e5e7eb;padding:9px 10px max(9px,env(safe-area-inset-bottom))!important}.vp-question-nav button{min-height:44px;flex:1;font-size:14px}
 .result-card{width:100vw!important;max-width:100vw!important;min-height:100dvh!important;max-height:100dvh!important;border-radius:0!important;margin:0!important;padding:16px 14px 24px!important;overflow-y:auto!important;overflow-x:hidden!important;background:#fff!important}.result-card>img{max-width:125px!important;height:auto!important}.vp-result-head{display:flex!important;flex-direction:column!important;align-items:center!important;text-align:center!important}.vp-result-actions{position:static!important;display:flex!important;flex-direction:column!important;align-items:stretch!important}.vp-result-actions button,.vp-result-actions a{width:100%!important;min-height:48px!important;margin:0!important}.vp-next-buttons{display:flex!important;flex-direction:column!important;gap:8px!important}.vp-next-buttons a{width:100%!important;box-sizing:border-box!important;text-align:center!important}
}
@media(prefers-color-scheme:dark){.flag{filter:none!important}.test-top,.test-shell,.vp-question-nav,#questionArea,.result-card{color:#171b24!important}.test-top img,header img{content:url('assets/logo-negative.png');filter:none!important}}

/* V29.7 — lecture 7–10 ans */
.vp-reading-support{max-width:760px;margin:18px auto 14px;padding:16px 18px;border:1px solid #e4e7ec;border-radius:16px;background:#f8f9fb;color:#20242c;text-align:left;line-height:1.55}
.vp-reading-support strong{display:block;margin-bottom:6px;color:#c91f2c}
.vp-reading-support p{margin:0;white-space:pre-line}
@media(max-width:600px){.vp-reading-support{margin:12px 18px 10px;padding:13px 14px;font-size:16px}.vp-reading-support+h2{margin:12px 18px;font-size:20px;line-height:1.3}}
/* Le fond de l'entete est clair: toujours utiliser le logo officiel transparent, meme si le telephone est en mode sombre. */
@media(prefers-color-scheme:dark){.test-top img,header img{content:url('assets/logo-transparent.png')!important;filter:none!important}}

.vp-reading-support{max-width:760px;margin:18px auto 14px;padding:16px 18px;border:1px solid #e4e7ec;border-radius:16px;background:#f8f9fb;color:#20242c;text-align:left;line-height:1.55}.vp-reading-support p{margin:0;white-space:pre-line}@media(max-width:600px){.vp-reading-support{margin:12px 18px 10px;padding:13px 14px;font-size:16px}.vp-reading-support+h2{margin:12px 18px;font-size:20px;line-height:1.3}}@media(prefers-color-scheme:dark){.test-top img,header img{content:url('assets/logo-transparent.png')!important;filter:none!important}}

/* V29.8 — correctif critique affichage des questions Junior 7–10 */
#questionArea .q-level,
#questionArea h2,
#questionArea .speaker-btn,
#questionArea .adaptive-note,
#questionArea .vp-reading-support{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  position:static!important;
  transform:none!important;
}
#questionArea .q-level{color:#b51f2e!important;font-weight:800!important;margin:0 0 10px!important}
#questionArea h2{color:#171b24!important;background:transparent!important;height:auto!important;min-height:0!important;max-height:none!important;overflow:visible!important;margin:10px 0 18px!important;padding:0!important;font-size:clamp(19px,4.8vw,26px)!important;line-height:1.35!important;text-align:left!important}
#questionArea .speaker-btn{width:auto!important;height:auto!important;min-height:44px!important;margin:8px 0 14px!important;padding:10px 14px!important}
#questionArea .answers{position:static!important;transform:none!important;margin:0!important;padding:0!important;height:auto!important;min-height:0!important;align-content:start!important}
#questionArea .adaptive-note{color:#667085!important;margin:14px 0 0!important;font-size:13px!important;line-height:1.35!important}
#questionArea .vp-reading-support{color:#20242c!important;height:auto!important;max-height:none!important;overflow:visible!important;margin:8px 0 12px!important}
@media(max-width:700px){
 #questionArea{display:block!important;padding:16px 18px!important}
 #questionArea .answers{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important}
 #questionArea .answers button{position:static!important;min-height:58px!important}
}

/* V29.9 - final mobile space optimization only */
@media(max-width:700px){
  header{min-height:50px!important;padding:4px 10px!important} header img{height:38px!important}
  main#test{padding:8px 12px 10px!important;gap:7px!important}
  .left h1{font-size:30px!important;line-height:1!important;margin:4px 0 6px!important}
  .left>p{font-size:13px!important;line-height:1.25!important;margin:0 0 7px!important}
  .left h2{font-size:17px!important;margin:8px 0 5px!important}
  .choices label{min-height:54px!important;padding:4px 2px!important}
  .fields{gap:6px!important}.fields input,.fields select{min-height:38px!important;padding:6px 8px!important}
  .levels{gap:5px!important}.levels label{min-height:54px!important;padding:6px!important}
  aside{margin:0!important;padding:0!important}.benefits{gap:5px!important}.benefits article{padding:6px!important;font-size:11px!important}.benefits article span{font-size:9px!important}
  .help-mini{padding:8px!important;margin:0!important}.help-copy strong{font-size:12px!important}.help-copy span,.help-copy small{font-size:9.5px!important;line-height:1.25!important}.help-actions{gap:5px!important}.help-actions a{min-height:34px!important;padding:5px!important;font-size:10px!important}
  #mobileStartSlot button{min-height:48px!important;font-size:17px!important}#mobileStartSlot .time{margin:4px 0 0!important;font-size:11px!important}
  footer.footer-v8{display:none!important}
  .vp-result-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;padding:10px 0!important}
  .vp-result-actions button,.vp-result-actions a{width:100%!important;min-height:46px!important;padding:8px 6px!important;font-size:13px!important;line-height:1.15!important}
  .vp-next-actions{margin:10px auto 2px!important;padding:11px!important}.vp-next-actions p{font-size:13px!important;margin-bottom:8px!important}
}

/* V29.10 — final compact mobile polish */
@media(max-width:700px){
 header{grid-template-columns:96px 1fr!important;min-height:64px!important;padding:6px 12px!important}
 header img{width:94px!important;height:52px!important}
 main#test{padding-top:6px!important;gap:8px!important}
 .left>small{display:block!important;margin:0 0 3px!important;font-size:11px!important;line-height:1!important}
 .left h1{font-size:0!important;margin:0 0 5px!important;line-height:1!important;white-space:nowrap!important}
 .left h1 span{font-size:25px!important;line-height:1.05!important;display:inline!important}
 .left h1 span:before{content:'Test de ';color:#171b24}
 .left>p{font-size:13px!important;line-height:1.25!important;margin:0 0 7px!important}
 .left h2{margin:8px 0 6px!important}
 .result-card{padding:8px 12px 18px!important}
 .result-card>img{max-width:145px!important;margin:0 auto 2px!important;display:block!important}
 .result-card>small{display:block!important;margin:2px 0 5px!important}
 .result-card>h2{margin:4px 0 7px!important}
 .vp-result-head{gap:2px!important;margin:0!important}
 .result-emoji{margin:2px 0!important}
 .big-level{margin:2px 0!important;line-height:1!important}
 .vp-competencies{gap:6px!important;margin:8px auto!important}
 .vp-comp-row{padding:8px 10px!important;border-radius:11px!important;gap:5px!important}
 .vp-result-section{margin:8px auto!important;padding:10px!important}
 .vp-next-actions{margin:8px auto 2px!important;padding:9px!important}
}
@media(max-width:700px){
 #resultOverlay .photo,#resultOverlay .brandpic,#resultOverlay .result-hero-photo{display:none!important}
 #resultOverlay,.result-card{background-image:none!important}
}

/* V29.11 — corrections finales MOBILE demandées (13/09/2026) */
@media(max-width:700px){
  /* En-tête compact : logo plus grand + Victory Partners Berrechid juste à côté */
  header{grid-template-columns:104px minmax(0,1fr)!important;grid-template-rows:auto auto!important;column-gap:8px!important;row-gap:1px!important;min-height:58px!important;padding:4px 10px!important}
  header img{grid-column:1!important;grid-row:1/3!important;width:102px!important;height:54px!important;align-self:center!important}
  header>b{display:block!important;grid-column:2!important;grid-row:1!important;align-self:end!important;font-size:13px!important;line-height:1.05!important;color:#c91f2c!important;white-space:nowrap!important}
  header nav{grid-column:2!important;grid-row:2!important;justify-content:flex-start!important;align-self:start!important;gap:12px!important;margin:0!important;padding:0!important}
  header nav a{font-size:10.5px!important;line-height:1!important}

  /* Le nom du centre est désormais dans l'en-tête : aucun espace/doublon avant le titre */
  main#test{padding-top:4px!important}
  .left>small{display:none!important}
  .left h1{margin:0 0 3px!important;white-space:nowrap!important}
  .left h1 span{font-size:22px!important}
  .left>p{font-size:12px!important;line-height:1.18!important;margin:0 0 5px!important}

  /* Drapeaux : utiliser les emoji natifs sur mobile pour conserver toutes les couleurs */
  .choices .flag{background:none!important;background-image:none!important;border:0!important;width:28px!important;height:28px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;transform:none!important;overflow:visible!important;font-size:0!important}
  .choices .flag.fr:after{content:'🇫🇷';font-size:25px!important;line-height:1!important}
  .choices .flag.gb:after{content:'🇬🇧';font-size:25px!important;line-height:1!important}

  /* Téléphone + WhatsApp sur la même ligne, plus lisibles */
  .help-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:7px!important}
  .help-actions .phone,.help-actions .whatsapp{min-height:43px!important;padding:7px 5px!important;font-size:14px!important;line-height:1!important;white-space:nowrap!important}
  .help-actions .location{grid-column:1/-1!important;min-height:38px!important;font-size:11px!important}

  /* CTA légèrement agrandi */
  #mobileStartSlot button{min-height:55px!important;font-size:19px!important;border-radius:14px!important}

  /* Résultat : aucune photo/bannière d'élèves au-dessus du logo sur mobile */
  #resultOverlay:before,#resultOverlay:after,.result-card:before,.result-card:after,#resultArea:before,#resultArea:after{content:none!important;display:none!important;background:none!important;background-image:none!important}
  #resultOverlay,#resultOverlay .result-card,#resultArea{background:#fff!important;background-image:none!important}
  #resultOverlay .photo,#resultOverlay .brandpic,#resultOverlay .result-hero-photo,#resultOverlay [class*='hero-photo'],#resultOverlay [class*='classroom']{display:none!important}
  .result-card>img{max-width:150px!important;margin:0 auto 2px!important}
}

/* V29.12 — correctif MOBILE UNIQUEMENT : bande rouge + contacts */
@media(max-width:700px){
  /* Supprimer definitivement le bloc/bande Victory Partners Berrechid en haut. */
  header>b{display:none!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0!important;width:0!important;height:0!important;min-width:0!important;min-height:0!important;overflow:hidden!important}
  header{grid-template-columns:112px minmax(0,1fr)!important;grid-template-rows:1fr!important;min-height:62px!important;padding:4px 10px!important;column-gap:8px!important}
  header img{grid-column:1!important;grid-row:1!important;width:108px!important;height:56px!important}
  header nav{grid-column:2!important;grid-row:1!important;align-self:center!important;justify-content:flex-start!important;gap:14px!important}
  header nav a{font-size:11px!important}

  /* Contacts : 2 gros boutons sur UNE ligne, numeros nettement agrandis. */
  .help-actions{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px!important;width:100%!important}
  .help-actions .phone,.help-actions .whatsapp{display:flex!important;align-items:center!important;justify-content:center!important;min-width:0!important;min-height:50px!important;padding:8px 4px!important;font-size:17px!important;font-weight:900!important;line-height:1!important;letter-spacing:-.2px!important;white-space:nowrap!important}
  .help-actions .phone strong,.help-actions .whatsapp strong{font-size:17px!important;font-weight:900!important;white-space:nowrap!important}
  .help-actions .location{grid-column:1/-1!important}
}

/* V29.13 - MOBILE ONLY: contacts simples + localisation fiable */
@media(max-width:700px){
  .help-actions{display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;gap:6px 18px!important;margin-top:7px!important;width:100%!important}
  .help-actions .phone,.help-actions .whatsapp{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:auto!important;min-width:0!important;min-height:0!important;height:auto!important;padding:2px 0!important;margin:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:#172033!important;font-size:15px!important;font-weight:800!important;line-height:1.2!important;text-decoration:none!important;white-space:nowrap!important}
  .help-actions .phone strong,.help-actions .whatsapp strong{font-size:15px!important;font-weight:800!important;color:#172033!important}
  .help-actions .phone{color:#c91f2c!important}.help-actions .whatsapp{color:#0a9f4b!important}
  .help-actions .location{flex:0 0 100%!important;width:auto!important;min-height:0!important;height:auto!important;padding:5px 0 1px!important;margin:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:#1265ad!important;font-size:12px!important;font-weight:800!important;text-decoration:underline!important;text-underline-offset:2px!important}
}

/* V29.14 - contacts same line on mobile + desktop */
.help-actions.help-actions-v8{display:grid!important;grid-template-columns:1fr 1fr!important;gap:12px!important;align-items:center!important}
.help-actions.help-actions-v8 .phone,.help-actions.help-actions-v8 .whatsapp{display:flex!important;align-items:center!important;justify-content:center!important;white-space:nowrap!important}
.help-actions.help-actions-v8 .location{display:none!important}
@media(max-width:520px){.help-actions.help-actions-v8{gap:8px!important}.help-actions.help-actions-v8 .phone,.help-actions.help-actions-v8 .whatsapp{font-size:16px!important}}

/* V29.15 - contacts definitivement sur une seule ligne + vraie icone WhatsApp */
.help-actions.help-actions-v8{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;justify-content:center!important;align-items:center!important;gap:22px!important;width:100%!important}
.help-actions.help-actions-v8 .phone,.help-actions.help-actions-v8 .whatsapp{display:inline-flex!important;flex:0 1 auto!important;width:auto!important;min-width:0!important;height:auto!important;min-height:0!important;padding:3px 0!important;margin:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:#172033!important;font-size:17px!important;font-weight:900!important;text-decoration:none!important;white-space:nowrap!important;gap:6px!important}
.help-actions.help-actions-v8 strong{font-size:17px!important;font-weight:900!important;color:#172033!important;white-space:nowrap!important}
.help-actions .phone-icon{font-size:19px!important;color:#c91f2c!important;line-height:1!important}
.help-actions .wa-icon{width:22px!important;height:22px!important;display:block!important;flex:0 0 22px!important}
@media(max-width:430px){.help-actions.help-actions-v8{gap:12px!important}.help-actions.help-actions-v8 .phone,.help-actions.help-actions-v8 .whatsapp,.help-actions.help-actions-v8 strong{font-size:14.5px!important}.help-actions .phone-icon{font-size:17px!important}.help-actions .wa-icon{width:20px!important;height:20px!important;flex-basis:20px!important}}
/* V29.17 - bilan bilingue compact */
.vp-dual-summary{display:grid;gap:12px}.vp-dual-candidate{text-align:center;font-size:18px}.vp-dual-compact{gap:10px}.vp-dual-compact>div{padding:14px!important;min-height:0!important}.vp-dual-compact .result-emoji{display:none!important}.vp-dual-compact strong{font-size:38px!important}.vp-dual-compact span{font-size:17px!important}.vp-dual-summary .vp-result-section,.vp-dual-summary .vp-next-actions{margin:0!important;padding:14px!important}

/* V29.38 - lisibilite des reponses + modal Refaire le test */
#questionArea .answers button{
  background:#fff!important;color:#172033!important;border:2px solid #d9dee7!important;
  box-shadow:0 2px 8px rgba(15,23,42,.06)!important;font-weight:800!important;
}
#questionArea .answers button.good{background:#eaf8ef!important;color:#146c3a!important;border-color:#34a866!important}
#questionArea .answers button.bad{background:#fff0f1!important;color:#9f1d2c!important;border-color:#d94a59!important}
#questionArea .answers button:disabled{opacity:1!important;-webkit-text-fill-color:currentColor!important}
.vp-retake-btn{background:#172033!important;color:#fff!important}
.vp-retake-modal{position:fixed;inset:0;z-index:100500!important;background:rgba(15,23,42,.72);display:flex;align-items:center;justify-content:center;padding:18px}
.vp-retake-box{position:relative;width:min(420px,100%);background:#fff;border-radius:20px;padding:24px;box-shadow:0 24px 70px rgba(0,0,0,.3);text-align:center;color:#172033}
.vp-retake-box h3{margin:5px 0 6px;font-size:24px}.vp-retake-box p{margin:0 0 14px;color:#667085}.vp-retake-icon{font-size:34px}
.vp-retake-box button[data-plan]{display:block;width:100%;margin:8px 0;padding:13px 15px;border:1px solid #d9dee7;border-radius:12px;background:#fff;color:#172033;font-weight:900;font-size:16px}
.vp-retake-box button[data-plan]:active{background:#fff1f2}.vp-retake-close{position:absolute;right:10px;top:8px;width:38px;height:38px;margin:0;border:0;background:transparent;color:#667085;font-size:28px;padding:0}
/* V29.43 - blocs de comprehension adolescents */
.vp-reading-support strong{display:none!important}
.vp-block-question{margin:18px 0 24px}.vp-block-question h2{font-size:20px;line-height:1.3;margin:0 0 12px}.vp-block-answers button.selected{border-color:#d91f2d!important;box-shadow:0 0 0 2px rgba(217,31,45,.12);background:#fff7f8!important}.vp-block-validate{width:100%;margin:8px 0 12px;min-height:52px;font-size:18px}.vp-block-validate:disabled{opacity:.45}.vp-reading-block .answers{margin-bottom:0}

/* V29.44 - Adolescents mobile : blocs compacts type radio */
@media(max-width:700px){
  .vp-reading-support{padding:12px 14px!important;margin:8px 0 12px!important;border-radius:14px!important}
  .vp-reading-support p{font-size:16px!important;line-height:1.42!important;margin:0!important}
  .vp-block-question{margin:12px 0 16px!important;padding-bottom:12px!important;border-bottom:1px solid #e5e7eb!important}
  .vp-block-question h2{font-size:16px!important;line-height:1.3!important;margin:0 0 7px!important}
  #questionArea .vp-block-answers{display:block!important}
  #questionArea .vp-block-answers button{position:relative!important;display:block!important;width:100%!important;min-height:0!important;margin:0!important;padding:7px 8px 7px 31px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;text-align:left!important;font-size:14px!important;line-height:1.25!important;font-weight:600!important;color:#172033!important}
  #questionArea .vp-block-answers button:before{content:'';position:absolute;left:5px;top:50%;transform:translateY(-50%);width:16px;height:16px;border:2px solid #98a2b3;border-radius:50%;background:#fff}
  #questionArea .vp-block-answers button.selected:before{border-color:#c7192d!important;box-shadow:inset 0 0 0 4px #fff;background:#c7192d!important}
  #questionArea .vp-block-answers button.good:before{border-color:#16864b!important;background:#16864b!important;box-shadow:inset 0 0 0 4px #fff}
  #questionArea .vp-block-answers button.bad:before{border-color:#c7192d!important;background:#c7192d!important;box-shadow:inset 0 0 0 4px #fff}
  .vp-block-validate{min-height:46px!important;font-size:16px!important;margin-top:5px!important}
  .vp-review-block .vp-review-q{margin:12px 0;padding-bottom:10px;border-bottom:1px solid #e5e7eb}.vp-review-block .vp-review-q b{font-size:15px}.vp-review-choice{font-size:13px;margin:4px 0 0 4px;color:#475467}
}
/* V29.45 adolescent grouped listening: compact radio answers */
@media(max-width:700px){
  .vp-radio-list{display:grid;gap:4px;margin:6px 0 10px}.vp-radio-answer{display:flex;align-items:flex-start;gap:8px;padding:4px 2px;font-size:14px;line-height:1.25;color:#172033}.vp-radio-answer input{width:18px;height:18px;margin:0;flex:0 0 18px;accent-color:#d92332}.vp-block-question{padding:8px 0;border-bottom:1px solid #eceff3}.vp-block-question h2{font-size:16px!important;line-height:1.3!important;margin:4px 0 6px!important}.vp-block-validate{margin-top:10px}
}

/* V29.46 - bonus temps niveau avance */
.vp-time-bonus{position:fixed;z-index:100000;left:14px;right:14px;top:max(82px,calc(env(safe-area-inset-top) + 70px));padding:12px 14px;border-radius:14px;background:#172033;color:#fff;font-weight:800;font-size:14px;text-align:center;box-shadow:0 8px 28px rgba(0,0,0,.22)}

/* V29.86 - Desktop test reading UI only. Mobile rules remain unchanged. */
@media (min-width: 769px){
  #questionArea .vp-reading-support{font-size:14px!important;line-height:1.55!important;padding:12px 14px!important;margin:8px 0 14px!important}
  #questionArea .vp-block-question{margin:12px 0 16px!important;padding:0 0 12px!important;border-bottom:1px solid #e8ebef!important}
  #questionArea .vp-block-question h2{font-size:17px!important;line-height:1.35!important;margin:0 0 8px!important;font-weight:700!important;color:#171b24!important}
  #questionArea .vp-block-answers{display:block!important;margin:0!important}
  #questionArea .vp-block-answers button{position:relative!important;display:block!important;width:100%!important;min-height:0!important;margin:0!important;padding:7px 10px 7px 34px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;text-align:left!important;font-size:14px!important;line-height:1.3!important;font-weight:500!important;color:#273142!important;cursor:pointer!important;pointer-events:auto!important}
  #questionArea .vp-block-answers button:before{content:'';position:absolute;left:6px;top:50%;transform:translateY(-50%);width:17px;height:17px;border:2px solid #98a2b3;border-radius:50%;background:#fff;box-sizing:border-box}
  #questionArea .vp-block-answers button:hover{background:#fafbfc!important}
  #questionArea .vp-block-answers button.selected:before{border-color:#d7192d!important;background:#d7192d!important;box-shadow:inset 0 0 0 4px #fff!important}
  #questionArea .vp-block-answers button.good:before{border-color:#16864b!important;background:#16864b!important;box-shadow:inset 0 0 0 4px #fff!important}
  #questionArea .vp-block-answers button.bad:before{border-color:#d7192d!important;background:#d7192d!important;box-shadow:inset 0 0 0 4px #fff!important}
  #questionArea .vp-block-validate{font-size:15px!important;min-height:44px!important;margin-top:10px!important}
}

/* V29.92 - Restore validated mobile result flag sizing only. */
@media(max-width:850px){
  #resultArea .vp-real-flag{
    width:22px!important;
    height:15px!important;
    max-width:22px!important;
    max-height:15px!important;
    object-fit:cover!important;
    display:inline-block!important;
    vertical-align:-2px!important;
    margin-right:6px!important;
    border-radius:2px!important;
    box-shadow:0 0 0 1px rgba(0,0,0,.08)!important;
  }
}
