:root{color-scheme:only light!important;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Arial,sans-serif;--navy:#132e61;--navy-dark:#0b204a;--red:#aa1736;--ink:#192c4b;--muted:#65758b;--line:#e4e8f0;--surface:#f6f8fc}
*{box-sizing:border-box}html{background:var(--surface);scroll-behavior:smooth}body{margin:0;color:var(--ink);font-size:15px;line-height:1.45}input,textarea,button{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}[hidden]{display:none!important}
.header{min-height:84px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:10px max(24px,calc((100vw - 1150px)/2));gap:20px}.brand{display:flex;align-items:center;gap:14px}.logo{width:55px;height:64px;object-fit:contain}.brand-text{display:flex;flex-direction:column;gap:2px}.brand-text strong{font-size:20px;color:var(--navy);letter-spacing:-.45px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.7px;color:#8290a6;margin:0}.brand-pill{background:#f4eaf0;color:#9b2644;padding:9px 16px;border-radius:50px;font-size:12px;font-weight:800}.shell{max-width:1190px;margin:0 auto;padding:35px 20px 20px}.page-intro{display:flex;justify-content:space-between;gap:24px;align-items:end;padding:0 0 27px}.page-intro h1{font-size:clamp(27px,3vw,39px);margin:7px 0 5px;letter-spacing:-1.3px;color:var(--navy-dark)}.page-intro p:not(.eyebrow){margin:0;color:var(--muted);font-size:14px}.accent{color:var(--red)}.mode-badge{font-size:12px;font-weight:700;color:#80651b;background:#fff6d9;padding:9px 15px;border:1px solid #f7e6a6;border-radius:99px;white-space:nowrap}
.form-layout{display:grid;grid-template-columns:250px minmax(0,1fr);align-items:start;gap:25px}.sidebar{padding:18px 0 0}.side-label{font-size:11px;font-weight:850;letter-spacing:1.5px;color:#8592a7;margin:0 0 18px 12px}.side-step{display:flex;gap:12px;align-items:center;padding:13px 10px;border-radius:12px;color:#718097;margin:5px 0}.side-step b{display:block;color:inherit;font-size:14px}.side-step small{display:block;font-size:12px;margin-top:2px}.side-step.active{background:#fff;color:var(--navy);box-shadow:0 3px 12px rgba(16,37,79,.04)}.side-step.done{color:#1b806d}.step-circle{width:34px;height:34px;border:1px solid #d7deeb;background:#fff;color:#7c8ba2;display:grid;place-items:center;border-radius:50%;font-weight:750;flex-shrink:0}.side-step.active .step-circle{background:var(--navy);color:#fff;border-color:var(--navy)}.side-step.done .step-circle{background:#dcf6ee;border-color:#b1e5d4;color:#18745e}.side-tip,.advisor-card{background:#eaf0f9;border-radius:12px;padding:15px;margin-top:27px;font-size:12px;color:#556a87}.side-tip p{margin:4px 0 0}.tip-icon{font-size:20px;color:var(--navy)}.advisor-card{background:#fff;border:1px solid var(--line);margin-top:14px;display:flex;flex-direction:column;gap:4px}.advisor-card span{font-size:10px;letter-spacing:1px;font-weight:800;color:var(--muted)}.advisor-card strong{color:var(--navy)}
.form-card{background:#fff;border:1px solid #e8ecf2;box-shadow:0 7px 30px rgba(25,44,75,.048);border-radius:17px;overflow:hidden;min-width:0}.progress-track{height:4px;background:#edf0f7}.progress-bar{width:33.333%;height:100%;background:linear-gradient(90deg,var(--navy),#ba2849);transition:width .25s}.form-step{padding:34px 38px 26px}.step-tag{font-size:11px;font-weight:850;letter-spacing:1.4px;color:var(--red)}.form-heading{margin:0 0 29px}.form-heading h2{color:var(--navy-dark);font-size:25px;letter-spacing:-.65px;margin:6px 0 7px}.form-heading p{color:var(--muted);margin:0;font-size:14px}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 21px;margin-bottom:17px}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field.full{grid-column:1/-1}.field>span{font-weight:700;font-size:13px;color:#263957}.field em{color:var(--red);font-style:normal}.field input,.field textarea{border:1px solid #d9dfea;border-radius:9px;padding:11px 12px;color:var(--ink);background:white;min-width:0;width:100%;outline:none;transition:border-color .2s,box-shadow .2s}.field input:focus,.field textarea:focus{border-color:#5978b1;box-shadow:0 0 0 3px #e5ecfa}.field input.invalid,.field textarea.invalid{border-color:#bd2d48;box-shadow:0 0 0 2px #fae7eb}.field textarea{resize:vertical}.field input::placeholder,.field textarea::placeholder{color:#a4aeba}.field small{color:#7b8698;font-size:11px}.input-suffix{display:flex;align-items:center;position:relative}.input-suffix input{padding-right:40px}.input-suffix>span{position:absolute;right:13px;color:#758399;font-size:12px;font-weight:700}.footnote{border-top:1px solid var(--line);padding:18px 0 0;color:var(--muted);font-size:12px}
.rating-list{display:grid;gap:13px}.rating-card{background:#fff;border:1px solid #e0e6ef;border-radius:12px;padding:17px 18px}.rating-card.selected{border-color:#b0bfdb;background:#fbfcff}.rating-head{display:flex;gap:12px;align-items:baseline;justify-content:space-between;margin-bottom:12px}.rating-head h3{margin:0;color:var(--navy);font-size:15px}.criterion-num{color:var(--red);margin-right:7px}.rating-head small{font-size:11px;color:#7a879c;white-space:nowrap}.rating-inputs{display:flex;gap:8px}.rating-choice{width:49px;min-height:42px;border:1px solid #d9e0ec;background:#f7f9fc;color:#456087;border-radius:8px;font-size:16px;font-weight:850;transition:all .15s}.rating-choice:hover,.rating-choice:focus-visible{border-color:var(--navy);outline:2px solid #dae3f4}.rating-choice.active{background:var(--navy);border-color:var(--navy);color:white;box-shadow:0 4px 9px rgba(19,46,97,.16)}.rating-desc{margin:11px 0 0;color:#79879c;font-size:12px;line-height:1.4}.rating-desc.chosen{color:#28416c;font-weight:700}.rating-card.invalid{border-color:#bd2d48;background:#fff6f8}
.live-total{margin-top:19px;border:1px solid #dce5f2;background:#f5f8fc;border-radius:12px;padding:18px}.live-total-top{display:flex;align-items:baseline;justify-content:space-between;color:#4c6484;font-size:13px;font-weight:750;margin-bottom:10px}.live-total strong{color:var(--navy);font-size:27px}.live-total strong small{font-size:13px;color:#8896a9}.live-track{height:9px;border-radius:30px;background:#e0e8f4;overflow:hidden}.live-track>div{height:100%;width:0%;background:var(--navy);transition:width .22s}.live-total>small{display:block;color:#718198;margin-top:7px;font-size:11px}
.result-card{border:1px solid #dfe5ef;background:#fafbfd;padding:22px;border-radius:13px;margin-bottom:23px}.result-heading{display:flex;justify-content:space-between;align-items:center}.small-label{font-size:11px;color:#7a88a1;letter-spacing:1.2px;font-weight:850}.big-score{color:var(--navy);font-size:48px;font-weight:850;line-height:1.2}.big-score small{font-size:18px;color:#8c99aa;font-weight:650}.result-percentage{background:#fff;border:1px solid #dce4ef;color:var(--navy);border-radius:99px;padding:9px 15px;font-size:18px;font-weight:850}.temperature-wrap{padding-top:22px}.temperature-bar{height:22px;border-radius:100px;background:linear-gradient(90deg,#1253e8 0%,#1394f4 20%,#08bd77 40%,#f5e127 60%,#f99524 80%,#eb243a 100%);position:relative;box-shadow:inset 0 0 0 1px rgba(255,255,255,.4)}.temperature-pointer{position:absolute;left:0%;top:-9px;transform:translateX(-50%);width:19px;height:41px;display:grid;justify-content:center;pointer-events:none;z-index:2}.temperature-pointer::before{content:"";position:absolute;top:0;left:3px;border:7px solid transparent;border-top:0;border-bottom-color:#142b51}.pointer-dot{width:3px;height:23px;background:#142b51;display:block;margin-top:11px;border-radius:2px;box-shadow:0 0 2px white}.scale-ticks{display:flex;justify-content:space-between;color:#7889a3;font-size:11px;font-weight:700;margin:8px 0 0}.temp-captions{display:flex;justify-content:space-between;color:#6c7f96;font-size:12px;margin-top:12px}.advice{border-top:1px solid #e2e8f0;margin-top:16px;padding-top:13px;font-size:13px;color:#465c7f}.comment-field{margin:0 0 24px}.summary{background:#f7f9fd;border:1px solid var(--line);border-radius:12px;padding:18px 20px;margin-bottom:18px}.summary h3{font-size:14px;margin:0 0 11px;color:var(--navy)}.summary dl{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin:0}.summary dt{font-size:11px;color:#7b8aa1}.summary dd{margin:2px 0 0;font-size:13px;font-weight:750;overflow-wrap:anywhere}.summary .full{grid-column:1/-1}.confirm{display:flex;gap:11px;align-items:flex-start;color:#425571;background:#f3f6fa;border:1px solid #e0e7f0;border-radius:10px;padding:14px;font-size:13px;cursor:pointer;margin-bottom:17px}.confirm input{flex:none;margin-top:2px;accent-color:var(--navy);width:16px;height:16px}.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.action-grid button{min-height:52px;border-radius:10px;font-weight:800;border:1px solid var(--navy);padding:11px 10px;font-size:14px}.primary-btn{background:var(--navy);color:#fff}.primary-btn:hover{background:#21447d}.secondary-btn{background:#fff;color:var(--navy)}.secondary-btn:hover{background:#f4f7fd}.action-note{font-size:11px;color:#7d8aa0;margin-top:11px}.form-footer{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:17px 38px;gap:10px;color:#8190a5;font-size:12px}.back-btn,.next-btn{border:0;font-size:13px;font-weight:800;padding:12px 18px;border-radius:9px}.back-btn{color:#506483;background:#f1f4f9}.next-btn{margin-left:auto;background:var(--navy);color:white}.notice{padding:14px 18px;border-bottom:1px solid #d8e6fb;background:#edf4ff;color:#254c85;font-size:13px}.notice.error{color:#9c263f;background:#fff0f2;border-color:#f1cad2}.notice.success{color:#17684c;background:#e8f9f0;border-color:#c3e7d3}.legal-foot{text-align:center;font-size:11px;color:#8997aa;margin:22px 0 10px}
.print-area{display:none}
@media(max-width:900px){.form-layout{grid-template-columns:1fr;gap:15px}.sidebar{display:flex;gap:7px;align-items:center;padding:0;overflow-x:auto}.side-label,.side-tip,.advisor-card{display:none!important}.side-step{flex:1;min-width:140px;margin:0;padding:9px}.side-step small{display:none}.side-step b{font-size:12px}.page-intro{padding:0 0 20px}.form-step{padding:26px 24px}.form-footer{padding:14px 24px}}
@media(max-width:600px){.header{padding:9px 15px;min-height:70px}.logo{height:45px;width:40px}.brand-text strong{font-size:17px}.brand-pill{font-size:10px;padding:7px 10px;max-width:130px;text-align:center}.shell{padding:21px 12px}.page-intro{align-items:start;flex-direction:column;gap:11px}.page-intro h1{font-size:29px}.form-step{padding:23px 17px}.form-heading h2{font-size:23px}.fields,.action-grid,.summary dl{grid-template-columns:1fr}.rating-card{padding:13px}.rating-head{align-items:flex-start}.rating-head small{display:none}.rating-choice{flex:1;width:auto;min-width:0}.form-footer{padding:12px 15px}.next-btn,.back-btn{padding:11px 12px}.brand-text .eyebrow{font-size:9px}.side-step{min-width:0;justify-content:center;gap:5px;padding:9px 5px}.side-step b{font-size:11px}.step-circle{width:27px;height:27px;font-size:12px}.result-card{padding:17px}}
@media print{
@page{size:A4;margin:10mm 12mm}html,body{background:#fff!important;color:#162a49!important;font-size:9pt;line-height:1.27;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.no-print{display:none!important}.print-area{display:block!important;width:100%;margin:0;padding:0}.report-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1.5px solid #143568;padding:0 0 3.5mm;margin-bottom:4mm;break-inside:avoid}.report-header img{width:20mm;height:21mm;object-fit:contain}.report-brand{text-align:right;color:#1c396b}.report-brand h1{font-size:15.5pt;margin:0 0 2mm;line-height:1.16;color:#133469}.report-brand small{font-size:7.5pt;color:#6e788a}.report-meta{display:grid;grid-template-columns:1fr 1fr;gap:2mm 6mm;border:1px solid #d0d9e6;border-radius:2mm;padding:3mm 3.5mm;margin:0 0 4mm;break-inside:avoid}.report-row{min-width:0;overflow-wrap:anywhere}.report-row.full{grid-column:span 2}.report-row small{display:block;color:#67758a;font-size:7.3pt;margin-bottom:.6mm}.report-row strong{font-size:9pt}.report-section-title{display:flex;align-items:center;justify-content:space-between;border-bottom:1.4px solid #1a3a68;padding:0 0 2mm;margin-bottom:1mm}.report-section-title h2{color:#143365;font-size:10pt;margin:0}.report-section-title span{font-size:8pt;color:#7b8495}.report-rating-row{display:grid;grid-template-columns:1fr 36mm;align-items:center;gap:3mm;border-bottom:1px solid #e5eaf1;padding:2.3mm 1mm;min-height:13mm;break-inside:avoid}.report-rating-row:last-child{border:0}.report-rating-row b{display:block;color:#1a3765;font-size:9.3pt}.report-rating-row small{display:block;color:#6a7588;font-size:7.9pt;margin-top:.7mm}.report-rating-value{text-align:right;display:flex;justify-content:end;align-items:baseline;gap:2mm}.report-rating-value strong{color:#173b71;font-size:16pt}.report-rating-value small{color:#748398;font-size:8pt}.report-result{border:1px solid #d4deeb;border-radius:2mm;padding:3mm 4mm;margin-top:4mm;display:grid;grid-template-columns:37mm 1fr;gap:5mm;align-items:center;break-inside:avoid}.report-score{display:flex;flex-direction:column;gap:1mm}.report-score>span{font-size:8.5pt;font-weight:800;color:#536685}.report-score strong{font-size:21pt;color:#173765;line-height:1.1}.report-score small{font-size:9pt;color:#738097}.report-temperature>span{font-size:7.5pt;color:#6b7e98;font-weight:800}.report-temperature .temperature-bar{height:8mm;margin-top:2mm}.report-temperature .temperature-pointer{top:-6px;height:30px}.report-temperature .temperature-pointer::before{border-width:6px;border-top:0;left:4px}.report-temperature .pointer-dot{height:31px;margin-top:8px}.report-temperature .scale-ticks{margin-top:1mm;font-size:7.7pt}.print-labels{display:flex;justify-content:space-between;color:#667a95;font-size:8pt}.report-advice{margin:2.5mm 0 2mm;color:#536783;font-size:8pt}.report-comments{border:1px solid #d6deeb;border-radius:2mm;padding:3mm 4mm;margin-top:3mm;break-inside:avoid}.report-comments h3{font-size:9pt;color:#1c3a69;margin:0 0 1.2mm}.report-comments p{font-size:8.6pt;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;line-height:1.28}.report-legend{font-size:7.1pt;line-height:1.3;color:#6b7587;margin-top:3mm;break-inside:avoid}.report-footer{border-top:1px solid #d7dfec;padding-top:2mm;font-size:7pt;color:#8994a7;margin-top:3mm;break-inside:avoid}
}
.scale-detail{font-size:11px;color:#77869c;margin-top:8px}.scale-detail summary{cursor:pointer;text-decoration:underline;text-underline-offset:2px}.scale-detail>div{display:grid;grid-template-columns:1fr 1fr;gap:0 12px;margin-top:8px}.scale-detail p{margin:2px 0}

/* Document’ERA V1.1 — identité et autocomplétion géographique */
.field-title{font-weight:700;font-size:13px;color:#263957}.field-title em{color:var(--red);font-style:normal}
.field>small{display:block}.address-entry{position:relative}.address-entry>input{border:1px solid #d9dfea;border-radius:9px;padding:11px 12px;color:var(--ink);background:#fff;min-width:0;width:100%;outline:none}.address-entry>input:focus{border-color:#5978b1;box-shadow:0 0 0 3px #e5ecfa}.address-entry>input.invalid{border-color:#bd2d48;box-shadow:0 0 0 2px #fae7eb}.address-entry>input::placeholder{color:#a4aeba}
.address-suggestions{z-index:20;position:relative;margin-top:5px;top:auto;left:0;right:0;max-height:250px;overflow-y:auto;background:white;border:1px solid #d4deec;border-radius:10px;box-shadow:0 12px 24px rgba(16,37,79,.16);padding:5px}.address-option{display:block;width:100%;text-align:left;border:0;background:#fff;padding:11px 12px;color:#1a3765;font-size:13px;line-height:1.35;border-radius:6px}.address-option:hover,.address-option.active,.address-option:focus{background:#edf3fb;outline:none}
@media print{.address-suggestions{display:none!important}}

.advice-context{display:block;margin-top:8px;color:#65758b;font-size:11px;line-height:1.4}


/* Document’ERA : mode clair impose sur tous les appareils, y compris les champs natifs. */
:root, html, body, input, select, textarea, button { color-scheme: only light !important; }
@media screen { html, body { background-color: #f6f8fc; } }

/* Impression sans en-tetes/pieds de page automatiques du navigateur. */
@page { size:A4; margin:0; }
@media print {
  html, body { margin:0!important; padding:0!important; }
  .print-area { padding:10mm 12mm!important; margin:0!important; box-sizing:border-box!important; }
}

/* Document’ERA V1.0 : retour universel et mode clair, masqué à l’impression */
:root{color-scheme:light!important}html,body{color-scheme:light!important}.documentera-return{position:fixed;bottom:18px;left:18px;z-index:50;font-family:system-ui,sans-serif}.documentera-return a{display:inline-block;padding:9px 15px;background:#fff;border:1px solid #cdd7e6;color:#173963;box-shadow:0 4px 16px #172e5420;text-decoration:none;border-radius:100px;font-size:13px;font-weight:700}.documentera-return a:focus-visible{outline:3px solid #b2133d}@media print{.documentera-return{display:none!important}}

/* Document’ERA V1.0.5 — Safari iOS : empêcher le zoom AUTOMATIQUE des champs.
   Un champ éditable de moins de 16px déclenche un agrandissement au focus.
   Le zoom volontaire du client reste pleinement accessible. */
@media screen and (max-width: 900px) {
  input:not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]):not([type="button"]):not([type="submit"]),
  textarea, select, [contenteditable="true"], .item-text, .number-input {
    font-size: 16px !important;
  }
}
