/* Outils publics : une question, une action ; mêmes composants sur les deux parcours. */
html{scroll-behavior:auto}
body.tool-page{--tool-ink:#17263a;--tool-gold:#e7a116;background:#f5f7fa;color:var(--tool-ink)}
.tool-page .header{width:min(1200px,calc(100% - 48px));padding-block:10px}.tool-page .header::before{content:'';position:absolute;inset:0 calc((min(1200px,100vw - 48px) - 100vw)/2);background:#fff;z-index:-1}
.tool-shell{width:min(780px,calc(100% - 40px));margin:18px auto 24px}.tool-breadcrumb{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;color:#62738a;margin-bottom:12px}.tool-breadcrumb a{text-decoration:underline;text-underline-offset:4px}.tool-breadcrumb span{font-weight:600}
.question-progress{margin-bottom:14px}.question-progress>span{display:flex;gap:15px;align-items:center;justify-content:space-between;font-size:13px;color:#61728a}.question-progress b{font-weight:500;white-space:nowrap}.question-progress progress{display:block;width:100%;height:6px;accent-color:var(--tool-gold);appearance:none;background:#e1e7ef;border:0;border-radius:5px;margin:8px 0}.question-progress progress::-webkit-progress-bar{background:#e1e7ef;border-radius:5px}.question-progress progress::-webkit-progress-value{background:var(--tool-gold);border-radius:5px}.question-progress progress::-moz-progress-bar{background:var(--tool-gold)}.question-progress small{font-size:12px;color:#77869a}
.question-card,.result-card{padding:24px;background:white;border:1px solid #dfe5ed;border-radius:14px;box-shadow:0 8px 26px #17263a03}.question-heading{display:flex;gap:20px;align-items:start;margin-bottom:12px}.question-heading h1{font-size:24px;line-height:1.3;letter-spacing:-.5px;flex:1}.answer-list{display:grid;gap:8px}.answer{display:flex;gap:13px;align-items:center;border:1px solid #ced8e4;border-radius:8px;background:#fff;color:#273e58;padding:11px 14px;text-align:left;min-height:44px;font:500 15px/1.5 'Segoe UI',Arial,sans-serif}.answer>span{width:17px;height:17px;border:1px solid #aab7c7;border-radius:50%;flex:none}.answer:hover{background:#fffcf5;border-color:#cfa147}.answer.selected{border-color:var(--tool-gold);background:#fffbf0}.answer.selected>span{border:5px solid var(--tool-gold)}.answer:disabled{cursor:wait;opacity:.8}
.tool-button{display:inline-flex;justify-content:center;align-items:center;min-height:46px;border:1px solid #d3dce7;border-radius:8px;padding:11px 18px;background:white;color:var(--tool-ink);font-size:13px;font-weight:600;line-height:1.5}.tool-button:hover{border-color:#a6b6cb}.tool-button.primary{background:var(--tool-gold);border-color:var(--tool-gold)}.tool-button.primary:hover{background:#f0b330}.tool-button.quiet{border-color:transparent;background:transparent;color:#52677e}.tool-button:disabled{opacity:.4;cursor:default}.question-controls,.result-bottom{display:flex;justify-content:space-between;gap:15px;margin:12px 0 6px}.save-status{color:#718096;font-size:12px;line-height:1.7;margin:12px 0}.save-status[role=status]{min-height:20px}
.info-bubble{position:relative;z-index:5;flex:none}.info-bubble summary{list-style:none;cursor:pointer;border:1px solid #c6d1de;border-radius:50%;width:28px;height:28px;display:grid;place-items:center;font:600 14px Georgia,serif;color:#5c7088;background:#fff}.info-bubble summary::-webkit-details-marker{display:none}.info-bubble>div{position:absolute;right:0;top:38px;width:350px;max-width:calc(100vw - 72px);max-height:65vh;overflow:auto;border-radius:10px;padding:20px;background:var(--tool-ink);color:white;box-shadow:0 12px 35px #17263a35;font-size:13px;line-height:1.65}.info-bubble>div p{margin:10px 0}.info-bubble a{color:#ffdc95;display:block;text-decoration:underline;margin-top:12px}.info-bubble[open] summary{background:var(--tool-ink);color:white}.comment,.result-detail{border-top:1px solid #e2e8f0;margin-top:14px;padding-top:12px;font-size:13px}.comment summary,.result-detail summary{cursor:pointer;font-weight:600;color:#405973;padding:5px 0}.comment textarea,.reference-search input{display:block;width:100%;padding:13px 14px;border:1px solid #ced8e4;border-radius:7px;font:inherit;background:white;color:var(--tool-ink);margin-top:12px}.comment textarea{resize:vertical}.result-detail p{margin:12px 0}.result-detail a,.norm-detail a{color:#345c85;text-decoration:underline;text-underline-offset:3px}
.result-heading{margin:0 0 16px}.result-heading h1{font-size:32px;letter-spacing:-.7px;line-height:1.2}.result-heading .eyebrow{margin-bottom:10px}.class-value{display:block;font-size:52px;line-height:1.2;letter-spacing:-2px;margin:6px 0 10px}.muted,.result-note{color:#65768a;font-size:14px;line-height:1.7}.result-card>p{font-size:14px}.result-card .result-detail{margin-top:20px}.norm-summary{display:flex;align-items:center;gap:22px;padding:18px 24px}.norm-summary>strong{font-size:48px;line-height:1}.norm-summary h2{font-size:19px;letter-spacing:-.2px}.norm-summary p{font-size:12px;color:#6a7c90;margin-top:7px}.result-note{margin:14px 0}.reference-search{display:block;font-size:12px;color:#526980;margin:25px 0 12px}.reference-search input{margin-top:8px;font-size:14px}.reference-list{display:grid;gap:10px}.norm-row{border:1px solid #dce4ee;border-radius:10px;background:white;min-width:0}.norm-row[hidden]{display:none}.norm-row summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:19px 22px;cursor:pointer}.norm-row summary::-webkit-details-marker{display:none}.norm-row summary>span:first-child{display:grid;gap:5px}.norm-row summary strong{font-size:15px}.norm-row summary>span:first-child>span{font-size:13px;color:#6a7a8d}.row-info{border:1px solid #c8d3e0;border-radius:50%;width:24px;height:24px;display:grid;place-items:center;font:600 12px Georgia,serif;flex:none;color:#58708c}.norm-detail{padding:0 22px 22px;font-size:13px;line-height:1.7}.norm-detail h3{font-size:13px;letter-spacing:0;margin:16px 0 10px}.norm-detail p{margin:10px 0}.norm-detail ul{padding-left:18px}.norm-detail .muted{font-size:11px}.scope-note{border-left:3px solid #d4ad54;padding-left:15px;margin:16px 0;font-size:12px;color:#69798b;line-height:1.8}.pending-box{display:flex;align-items:center;justify-content:space-between;gap:15px;background:#fff8e8;border-radius:9px;padding:14px 18px;font-size:13px}.export-actions{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0 0}.export-actions>*{flex:1}.answer-row{display:flex;align-items:center;gap:20px;justify-content:space-between;border-bottom:1px solid #e3e8ef;padding:18px 0}.answer-row>div{min-width:0;display:grid;gap:6px}.answer-row b{font-size:12px;color:#65768d}.answer-row p{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}.text-button{border:0;background:transparent;text-decoration:underline;color:#496582;padding:8px;font-size:12px}.tool-page button:focus-visible,.tool-page summary:focus-visible,.tool-page input:focus-visible,.tool-page textarea:focus-visible{outline:3px solid #e7a11688;outline-offset:3px}.tool-page h1:focus{outline:none}.tool-privacy{font-size:11px;text-align:center;color:#77879a;line-height:1.7;margin:12px auto 0;max-width:600px}.tool-privacy a{text-decoration:underline}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.restart-dialog{border:1px solid #dce3eb;border-radius:14px;padding:30px;max-width:440px;width:calc(100% - 40px);color:var(--tool-ink)}.restart-dialog::backdrop{background:#17263a66}.restart-dialog h2{font-size:23px}.restart-dialog p{font-size:14px;color:#63768b;margin:18px 0}.restart-dialog>div{display:flex;justify-content:end;gap:12px}#print-document{display:none}.tool-hub{padding:28px 0}.tool-hub h1{font-size:clamp(30px,4vw,46px);letter-spacing:-1.8px}.tool-hub .intro{max-width:640px}.tool-cards{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:24px 0 18px}.tool-card{display:flex;flex-direction:column;align-items:start;border:1px solid #dce3eb;background:#fff;border-radius:12px;padding:24px;min-width:0}.tool-card .tool-number{font-size:12px;color:#8d6819;margin-bottom:10px}.tool-card h2{font-size:25px;letter-spacing:-.7px}.tool-card p{font-size:14px;color:#67788d;line-height:1.6;margin:12px 0 18px;flex:1}.tool-card .tool-button{width:100%}.hub-note{max-width:800px;font-size:13px;color:#718095;line-height:1.8}
@media(max-width:1000px) and (min-width:769px){.header nav{gap:19px}.header nav .nav-cta{padding:10px 13px}}
@media(max-width:700px){.tool-shell{margin-top:12px;margin-bottom:18px;width:calc(100% - 32px)}.tool-breadcrumb{margin-bottom:10px;font-size:11px;gap:10px}.question-card,.result-card{padding:16px}.question-heading{gap:12px;margin-bottom:16px}.question-heading h1{font-size:19px;line-height:1.3}.answer{font-size:14px;padding:10px 12px;min-height:44px}.info-bubble summary{width:30px;height:30px}.question-controls{position:sticky;bottom:0;background:#f5f7faf5;backdrop-filter:blur(10px);padding:6px 0 max(6px,env(safe-area-inset-bottom));z-index:4}.question-controls>*{padding:10px;font-size:12px}.result-heading h1{font-size:25px}.class-value{font-size:44px}.norm-summary{gap:17px}.norm-summary h2{font-size:17px}.norm-summary>strong{font-size:40px}.norm-row summary{padding:17px}.norm-detail{padding-inline:17px}.export-actions .tool-button{font-size:12px;padding:12px 10px}.pending-box{align-items:start;flex-direction:column;gap:5px;padding:13px}.pending-box .tool-button{padding:4px;min-height:35px}.tool-privacy{margin-top:10px}.tool-hub{padding:18px 0}.tool-cards{grid-template-columns:1fr;gap:12px;margin:18px 0 14px}.tool-card{padding:18px}.tool-card h2{font-size:23px}.tool-card .tool-number{display:none}}
/* Les réponses courtes partagent une ligne ; les choix nombreux se répartissent en deux colonnes. */
.answer-list.choices-short{grid-template-columns:repeat(3,minmax(0,1fr))}
.answer-list.choices-many,.answer-list.choices-long{grid-template-columns:repeat(2,minmax(0,1fr))}
.choices-short .answer{justify-content:center;gap:8px}
.choices-many .answer{justify-content:center;text-align:center}
.choices-many .answer>span{display:none}
.tool-privacy summary{cursor:pointer;list-style:none;text-decoration:underline;text-underline-offset:3px}
.tool-privacy summary::-webkit-details-marker{display:none}
.tool-privacy p{margin-top:8px}
.tool-hub>.eyebrow{margin-bottom:12px}
.tool-hub .intro{font-size:15px;line-height:1.6;margin-top:14px}
.reference-browser{background:#fff;border:1px solid #dce4ee;border-radius:9px;padding:10px 16px;margin-top:16px}
.reference-browser>summary{min-height:32px;display:flex;align-items:center}
@media(max-width:700px){
 .tool-page .header{padding-block:8px}
 .tool-page .brand{font-size:1.6rem;padding-bottom:8px}
 .tool-page .brand::after{height:4px;width:26px}
 .question-progress{margin-bottom:12px}
 .question-progress>span{font-size:12px}
 .question-progress small{font-size:11px}
 .answer-list{gap:7px}
 .choices-short .answer{font-size:13px;gap:6px;padding:8px 6px}
 .choices-short .answer>span{width:14px;height:14px}
 .choices-many .answer{font-size:13px;line-height:1.4;padding:9px 10px}
 .answer-list.choices-long{grid-template-columns:1fr}
 .tool-hub{width:calc(100% - 32px)}
 .tool-hub h1{font-size:32px;letter-spacing:-1px}
 .tool-hub .intro{font-size:13px;line-height:1.5;margin-top:12px}
 .tool-card p{font-size:13px;line-height:1.5;margin:10px 0 14px}
 .tool-card .tool-button{min-height:44px}
 .hub-note{font-size:11px;line-height:1.6}
 .is-question .save-status{font-size:11px;line-height:1.5;margin:4px 0}
 .is-question .question-controls{margin:8px 0 2px}
 .is-question .tool-privacy{margin-top:6px}
 .is-result .class-value{font-size:40px;line-height:1.1;margin:4px 0 8px}
 .is-result .result-heading{margin-bottom:12px}
 .is-result .result-card .result-detail{margin-top:12px;padding-top:8px}
 .is-result .result-card .result-detail>summary{padding:2px 0}
 .is-result .result-heading .eyebrow{display:none}
 .is-result .pending-box{flex-direction:row;align-items:center;gap:8px;padding:8px 12px}
 .is-result .pending-box .tool-button{min-height:44px;font-size:12px}
 .is-result .scope-note{font-size:11px;line-height:1.6;margin-block:12px}
 .is-result .result-note{font-size:12px;margin:12px 0}
 .is-result .result-bottom{margin:8px 0}
}
@media(max-height:700px){
 .tool-shell{margin-top:10px;margin-bottom:6px}
 .question-heading{margin-bottom:12px}
 .comment{margin-top:10px;padding-top:8px}
 .tool-hub{padding-block:12px}
 .tool-hub>.eyebrow{margin-bottom:8px}
 .tool-cards{margin-top:14px}
 .tool-card{padding:15px}
}
@media(min-width:701px) and (max-height:820px){
 .tool-page .header{padding-block:8px}
 .tool-shell{margin:12px auto}
 .question-card{padding:20px}
 .question-heading h1{font-size:22px;line-height:1.25}
 .comment{margin-top:10px;padding-top:8px}
 .is-question .save-status{font-size:11px;line-height:1.5;margin:6px 0}
 .tool-privacy{margin-top:8px}
}
@media print{body.tool-page>*{display:none!important}body.tool-page>#print-document{display:block!important;font:11px/1.5 Arial,sans-serif;color:#111}#print-document h1{font-size:24px;margin-bottom:12px}#print-document h2{font-size:18px;margin:12px 0 6px}#print-document h3{font-size:14px;margin:20px 0 10px}#print-document p{margin:12px 0}#print-document table{border-collapse:collapse;width:100%;font-size:9px;table-layout:fixed}#print-document td,#print-document th{border:1px solid #bbb;padding:7px;text-align:left;vertical-align:top;overflow-wrap:anywhere}#print-document thead{display:table-header-group}#print-document tr{break-inside:avoid}#print-document h2,#print-document h3{break-after:avoid}}
body.tool-page{display:flex;flex-direction:column;min-height:100vh;min-height:100svh}
.tool-page .header,.tool-page .site-footer{flex-shrink:0}
.tool-page .site-footer{margin-top:auto}
.save-status:empty{display:none}
.tool-page .header{margin-block:0}
@media(max-width:350px){
 .tool-shell{width:calc(100% - 24px);margin-top:8px;margin-bottom:10px}
 .question-card{padding:12px}
 .question-heading{gap:8px;margin-bottom:12px}
 .question-heading h1{font-size:18px}
 .choices-many .answer{padding:8px;line-height:1.35}
 .question-controls{margin-top:6px}
 .comment{margin-top:10px;padding-top:8px}
}
.question-intro{font-size:12px;color:#61728a;margin:-2px 0 14px}
.answer-list.choices-short{grid-template-columns:repeat(2,minmax(0,1fr))}
.answer-list .answer>.answer-copy{display:block;width:auto;height:auto;border:0;border-radius:0;flex:1}
.answer-copy small{display:block;font-size:11px;font-weight:400;line-height:1.4;color:#64758a;margin-top:5px}
.explained-choices .answer{text-align:left;justify-content:start;align-items:start}
.explained-choices .answer:last-child{grid-column:1/-1}
@media(max-width:700px){.explained-choices .answer{padding:9px 10px;font-size:12px;line-height:1.3}.answer-copy small{font-size:10.5px;line-height:1.3}.question-intro{font-size:11px;margin-bottom:10px}}
.info-bubble .examples-heading{display:block;margin-top:15px}
.info-bubble .product-examples{padding-left:17px;margin:9px 0}
.info-bubble .product-examples li{margin:9px 0}
@media(max-width:700px){
 .tool-shell:has(.explained-choices){width:calc(100% - 24px);margin:8px auto 10px}
 .question-card:has(.explained-choices){padding:12px}
 .question-card:has(.explained-choices) .question-heading{gap:8px;margin-bottom:10px}
 .explained-choices .answer{padding:8px}
 .explained-choices .answer-copy small{line-height:1.25}
}
.help-choice{border:0;background:transparent;color:#48627e;font:500 12px/1.4 'Segoe UI',Arial,sans-serif;text-decoration:underline;text-underline-offset:3px;min-height:44px;padding:8px 0;text-align:left;cursor:pointer}
.question-card:not(.assistance-card)>.help-choice{display:inline-flex;align-items:center;width:69%;margin-top:6px;vertical-align:middle}
.question-card:not(.assistance-card)>.comment{display:inline-block;vertical-align:middle;width:30%;border:0;margin:6px 0 0;padding:0;font-size:11px}
.question-card:not(.assistance-card)>.comment[open]{display:block;width:100%;margin-top:8px}
.assistance-card h1{font-size:23px;line-height:1.35;letter-spacing:-.4px;margin-bottom:18px}
.guide-parent{font-size:12px;line-height:1.5;color:#677a90;margin-bottom:14px}
.guide-answers .answer{font-size:14px;min-height:44px}
.guide-note,.guide-trace{font-size:13px;line-height:1.65;color:#52677f;margin:14px 0}
.guide-trace{padding-left:18px}
.guide-trace li{margin:8px 0}
.guide-context{border-top:1px solid #e2e8f0;padding-top:12px;margin-top:12px;font-size:12px}
.guide-context>summary{cursor:pointer;color:#52677f}
.guide-context .info-bubble{margin-top:10px}
.guide-context .info-bubble>div{position:static;width:100%;max-width:none;max-height:45vh;margin-top:10px}
@media(max-width:700px){.assistance-card h1{font-size:19px;margin-bottom:14px}.guide-parent{font-size:11px;margin-bottom:12px}.guide-note,.guide-trace{font-size:12px}.help-choice{font-size:11px}.guide-answers .answer{font-size:13px}}
.guide-explanation{font-size:12px;line-height:1.65;color:#52677f;margin-top:12px}
.guide-explanation p{margin:10px 0}
.guide-explanation a{display:block;color:#315c85;text-decoration:underline;margin-top:10px}
.guide-short{grid-template-columns:repeat(2,minmax(0,1fr))}
.guide-short .answer{justify-content:center;text-align:center}
.guide-rationale{font-size:12px;color:#52677f;margin:12px 0}
.guide-rationale>summary{cursor:pointer;padding:5px 0}
