/* ORBIVIA — disposition commune des questionnaires publics.
 * Ordre : CSS de l'outil, questionnaire-ui.css, puis ce fichier.
 * Cible uniquement la phase question : les synthèses conservent leur mise en page.
 */
body[data-questionnaire-ui].quiz-active {
 --quiz-question-gap:8px;
 --quiz-field-radius:12px;
}
body[data-questionnaire-ui].quiz-active:not(.quiz-scroll) {
 height:100dvh;
 min-height:100dvh;
 overflow:hidden;
}
body[data-questionnaire-ui].quiz-active .site-footer { display:none; }
body[data-questionnaire-ui].quiz-active .tool-shell {
 display:flex;
 flex:1 1 auto;
 flex-direction:column;
 min-height:0;
 margin-top:clamp(6px,1.4dvh,18px);
 margin-bottom:6px;
}
body[data-questionnaire-ui].quiz-active :is(#tool-app,#connect-app,#label-app) {
 display:flex;
 flex:1 1 auto;
 flex-direction:column;
 min-height:0;
}
body[data-questionnaire-ui].quiz-active .tool-breadcrumb {
 flex:0 0 auto;
 margin-bottom:clamp(5px,.8dvh,10px);
 font-size:12px;
}
body[data-questionnaire-ui].quiz-active .question-progress {
 flex:0 0 auto;
 margin-bottom:clamp(7px,1.2dvh,14px);
}
body[data-questionnaire-ui].quiz-active .question-progress progress{
 height:4px;
 margin:7px 0 0;
}
body[data-questionnaire-ui].quiz-active .question-card:not(.result-card):not(.assistance-card) {
 flex:1 1 auto;
 min-height:0;
 box-sizing:border-box;
 padding:clamp(12px,2.4dvh,26px);
 border:1px solid #e0e5df;
 border-radius:18px;
 background:#fff;
 box-shadow:0 8px 30px #202a3205;
}
body[data-questionnaire-ui].quiz-active .question-card :is(.question-prompt,.cx-question-prompt){
 min-width:0;
 min-height:0;
}
body[data-questionnaire-ui].quiz-active .question-card .question-heading {
 display:flex;
 align-items:flex-start;
 gap:12px;
 margin:0 0 10px;
}
body[data-questionnaire-ui].quiz-active .question-card .question-heading h1 {
 flex:1 1 auto;
 min-width:0;
 max-width:none;
 margin:0;
 font-size:clamp(22px,2.25vw,29px);
 line-height:1.22;
 letter-spacing:-.6px;
 font-weight:650;
}
body[data-questionnaire-ui].quiz-active .question-card .question-intro {
 margin:0 0 12px;
 font-size:13px;
 line-height:1.4;
}
body[data-questionnaire-ui].quiz-active .question-card :is(.answer-list,.cx-options,.label-options) {
 min-width:0;
 gap:var(--quiz-question-gap);
}
body[data-questionnaire-ui].quiz-active .question-card .answer {
 display:flex;
 align-items:center;
 justify-content:flex-start;
 gap:14px;
 box-sizing:border-box;
 min-width:0;
 min-height:54px;
 padding:10px 14px;
 border:1px solid var(--quiz-border,#dce2dc);
 border-radius:var(--quiz-field-radius);
 background:#fafbf9;
 color:#26323c;
 box-shadow:none;
 font-family:inherit;
 text-align:left;
}
body[data-questionnaire-ui].quiz-active .question-card .answer:hover {
 border-color:#c28c20;
 background:#fff8e9;
}
body[data-questionnaire-ui].quiz-active .question-card .answer[aria-pressed="true"],
body[data-questionnaire-ui].quiz-active .question-card .answer.selected {
 border-color:#c88c0d;
 background:#fff6df;
 box-shadow:inset 0 0 0 1px #c88c0d;
}
body[data-questionnaire-ui].quiz-active .question-card .answer .answer-copy {
 display:block;
 flex:1 1 auto;
 min-width:0;
 width:auto;
 height:auto;
 font-size:14px;
 line-height:1.35;
 font-weight:600;
 text-align:left;
}
body[data-questionnaire-ui].quiz-active .question-card .answer .answer-copy small {
 display:block;
 margin-top:4px;
 font-size:12px;
 line-height:1.35;
 font-weight:400;
 color:#68766d;
}
body[data-questionnaire-ui].quiz-active :is(.help-choice,.cx-help-trigger) {
 align-self:flex-start;
 justify-self:flex-start;
 display:inline-flex;
 align-items:center;
 gap:8px;
 min-height:38px;
 margin:0;
 padding:5px 0;
 color:#806119;
 font:500 13px/1.4 "Segoe UI",Arial,sans-serif;
 text-decoration:underline;
 text-underline-offset:3px;
 background:transparent;
 border:0;
 cursor:pointer;
}
body[data-questionnaire-ui].quiz-active .question-controls {
 display:flex;
 align-items:center;
 justify-content:space-between;
 flex:0 0 auto;
 gap:10px;
 margin:8px 0 0;
 padding:0;
 position:static;
 background:transparent;
}
body[data-questionnaire-ui].quiz-active .question-controls :is(.cx-control-right,.label-controls-right) {
 display:flex;
 align-items:center;
 justify-content:flex-end;
 flex-wrap:wrap;
 gap:8px;
}
body[data-questionnaire-ui].quiz-active .question-controls .tool-button {
 min-height:44px;
 border-radius:10px;
 font-size:12px;
}
body[data-questionnaire-ui].quiz-active .save-status:empty { display:none; }
body[data-questionnaire-ui].quiz-active .save-status:not(:empty) {
 flex:0 0 auto;
 min-height:0;
 margin:4px 0 0;
}
/* Sur ordinateur, question à gauche, réponses à droite, aide en bas à gauche. */
@media(min-width:900px){
 body[data-questionnaire-ui].quiz-active .tool-shell{
  width:min(1120px,calc(100% - 80px));
 }
 body[data-questionnaire-ui].quiz-active .question-card:not(.result-card):not(.assistance-card){
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  grid-template-rows:minmax(0,1fr) auto;
  column-gap:clamp(20px,3vw,40px);
  row-gap:8px;
  align-items:stretch;
 }
 body[data-questionnaire-ui].quiz-active .question-card > :is(.question-prompt,.cx-question-prompt){
  grid-column:1;
  grid-row:1;
  align-self:start;
 }
 body[data-questionnaire-ui].quiz-active .question-card > :is(.answer-list,.cx-options-wrapper,.label-options){
  grid-column:2;
  grid-row:1 / span 2;
  min-height:0;
  align-self:start;
  display:grid;
  align-content:start;
  grid-template-columns:1fr;
 }
 body[data-questionnaire-ui].quiz-active .question-card > .cx-options-wrapper > .cx-options {
  grid-template-columns:1fr;
 }
 body[data-questionnaire-ui].quiz-active .question-card > :is(.help-choice,.cx-help-trigger){
  grid-column:1;
  grid-row:2;
  align-self:end;
  margin:0;
  width:auto;
 }
 body[data-questionnaire-ui].quiz-active .question-card > :is(.answer-list,.label-options,.cx-options-wrapper) .answer{
  min-height:clamp(46px,6dvh,60px);
  padding:clamp(8px,1.1dvh,12px) 14px;
 }
}
/* Téléphones et tablettes : titre et réponses empilés. */
@media(max-width:899px){
 body[data-questionnaire-ui].quiz-active .tool-shell{
  width:calc(100% - 28px);
 }
 body[data-questionnaire-ui].quiz-active .question-card:not(.result-card):not(.assistance-card){
  display:flex;
  flex-direction:column;
  gap:0;
  padding:8px 12px 10px;
 }
 body[data-questionnaire-ui].quiz-active .question-card > :is(.question-prompt,.cx-question-prompt){
  flex:0 0 auto;
  min-height:0;
 }
 body[data-questionnaire-ui].quiz-active .question-card > :is(.answer-list,.cx-options-wrapper,.label-options){
  display:grid;
  grid-template-columns:1fr;
  min-height:0;
  align-content:start;
  gap:6px;
 }
 body[data-questionnaire-ui].quiz-active .question-card > .cx-options-wrapper > .cx-options{
  grid-template-columns:1fr;
  gap:6px;
 }
 body[data-questionnaire-ui].quiz-active .question-card > :is(.help-choice,.cx-help-trigger){
  flex:0 0 auto;
  margin:auto 0 0;
  min-height:36px;
 }
 body[data-questionnaire-ui].quiz-active .question-card .answer{
  min-height:46px;
  padding:8px 12px;
 }
 body[data-questionnaire-ui].quiz-active .question-card .question-heading h1 {
  font-size:clamp(18px,2.7dvh,22px);
 }
 body[data-questionnaire-ui].quiz-active .question-card .question-intro{margin-bottom:7px}
 body[data-questionnaire-ui].quiz-active .question-card .question-heading{margin-bottom:8px}
}
/* Tailles de cible tactiles préservées ; compacité automatique sans masquage de texte. */
body[data-questionnaire-ui].quiz-compact .question-progress{margin-bottom:6px}
body[data-questionnaire-ui].quiz-compact .question-card .question-heading{margin-bottom:5px}
body[data-questionnaire-ui].quiz-compact .question-card .question-intro{margin-bottom:4px;line-height:1.28}
body[data-questionnaire-ui].quiz-compact .question-card :is(.answer-list,.cx-options,.label-options){gap:4px}
body[data-questionnaire-ui].quiz-compact .question-card .answer{min-height:44px;padding:6px 10px}
body[data-questionnaire-ui].quiz-compact .question-controls{margin-top:4px}
body[data-questionnaire-ui].quiz-dense .tool-shell{margin-top:5px;margin-bottom:2px}
body[data-questionnaire-ui].quiz-dense .question-progress{margin-bottom:3px}
body[data-questionnaire-ui].quiz-dense .question-card:not(.result-card):not(.assistance-card){padding:5px 9px}
body[data-questionnaire-ui].quiz-dense .question-card .question-heading{margin-bottom:3px}
body[data-questionnaire-ui].quiz-dense .question-card .question-heading h1{font-size:18px;line-height:1.18}
body[data-questionnaire-ui].quiz-dense .question-card .question-intro{font-size:12px;line-height:1.25;margin-bottom:3px}
body[data-questionnaire-ui].quiz-dense .question-card :is(.answer-list,.cx-options,.label-options){gap:3px}
body[data-questionnaire-ui].quiz-dense .question-card .answer{min-height:44px;padding:5px 8px}
body[data-questionnaire-ui].quiz-tight .question-card .question-heading{margin-bottom:1px}
body[data-questionnaire-ui].quiz-tight .question-card :is(.answer-list,.cx-options,.label-options){gap:2px}
body[data-questionnaire-ui].quiz-tight .question-card .answer{min-height:44px;padding:4px 8px}
body[data-questionnaire-ui].quiz-active.quiz-scroll{
 height:auto;
 min-height:100dvh;
 overflow-y:auto;
}
body[data-questionnaire-ui].quiz-active.quiz-scroll .tool-shell,
body[data-questionnaire-ui].quiz-active.quiz-scroll :is(#tool-app,#connect-app,#label-app),
body[data-questionnaire-ui].quiz-active.quiz-scroll .question-card:not(.result-card):not(.assistance-card){
 flex:initial;
 min-height:max-content;
}
@media print{
 body[data-questionnaire-ui].quiz-active{
  height:auto!important;
  overflow:visible!important;
 }
 body[data-questionnaire-ui].quiz-active .site-footer{display:none}
}
