:root{--bg:#fff;--band:#f3f4f2;--surface:#fff;--surface-2:#eef0ed;--border:#d5d9d4;--border-fort:#a9b0a8;--text:#1a1f1c;--text-2:#4f5752;--accent:#1d5a42;--accent-fort:#143f2e;--accent-soft:#e6efe9;--entete:#173f30;--entete-texte:#f3f6f4;--ok:#1b6b3a;--ok-soft:#eaf4ed;--comp:#8a5a00;--comp-soft:#fbf3e2;--warn:#8a5a00;--warn-soft:#fbf3e2;--ko:#a32418;--ko-soft:#fbeceb;--radius:3px;--font-titre:"Source Serif 4", Georgia, "Times New Roman", serif;--font-texte:"Source Sans 3", "Segoe UI", system-ui, -apple-system, Roboto, sans-serif;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#121513;--band:#181c19;--surface:#181c19;--surface-2:#222723;--border:#333a35;--border-fort:#4d564f;--text:#e8ebe8;--text-2:#a9b2ab;--accent:#7cc4a0;--accent-fort:#a3dbbe;--accent-soft:#1f2d26;--entete:#0e2a20;--entete-texte:#e8efe9;--ok:#74cf93;--ok-soft:#17291d;--comp:#e3b25c;--comp-soft:#2c2412;--warn:#e3b25c;--warn-soft:#2c2412;--ko:#f08a80;--ko-soft:#321a18;color-scheme:dark}}:root[data-theme=dark]{--bg:#121513;--band:#181c19;--surface:#181c19;--surface-2:#222723;--border:#333a35;--border-fort:#4d564f;--text:#e8ebe8;--text-2:#a9b2ab;--accent:#7cc4a0;--accent-fort:#a3dbbe;--accent-soft:#1f2d26;--entete:#0e2a20;--entete-texte:#e8efe9;--ok:#74cf93;--ok-soft:#17291d;--comp:#e3b25c;--comp-soft:#2c2412;--warn:#e3b25c;--warn-soft:#2c2412;--ko:#f08a80;--ko-soft:#321a18;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font:17px/1.55 var(--font-texte);margin:0}h1,h2,h3,h4{font-family:var(--font-titre);text-wrap:balance;color:var(--text);font-weight:600}h1{letter-spacing:-.01em;margin:0 0 .6rem;font-size:2rem;line-height:1.15}h2{margin:2.5rem 0 .9rem;font-size:1.4rem;line-height:1.25}h3{margin:0;font-size:1.1rem}h4{margin:0;font-size:1.02rem}p{margin:.5rem 0}a{color:var(--accent);text-underline-offset:2px}a:hover{color:var(--accent-fort)}.wrap{max-width:900px;padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));margin:0 auto}.site-header{background:var(--entete);color:var(--entete-texte)}.site-header .wrap{flex-wrap:wrap;align-items:stretch;gap:0 1.5rem;display:flex}.logo{color:var(--entete-texte);font-family:var(--font-titre);align-items:center;gap:.5rem;margin-right:auto;padding-block:.8rem;font-size:1.25rem;font-weight:600;text-decoration:none;display:flex}.logo:hover{color:var(--entete-texte)}.logo span{font-family:var(--font-texte);letter-spacing:.02em;border:1.5px solid;border-radius:2px;padding:0 .3rem;font-size:.8rem;font-weight:700}.nav{flex-wrap:wrap;display:flex}.nav a{color:var(--entete-texte);opacity:.82;border-bottom:3px solid #0000;align-items:center;padding:.55rem .7rem;font-size:.95rem;text-decoration:none;display:flex}.nav a:hover{opacity:1;color:var(--entete-texte)}.nav a[aria-current=page]{opacity:1;border-bottom-color:var(--entete-texte);font-weight:600}main{padding-block:2rem 3rem}.intro{color:var(--text-2);max-width:62ch;margin-bottom:1.5rem;font-size:1.08rem}.surtitre{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0 0 .4rem;font-size:.78rem;font-weight:700}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1rem;padding:1.1rem}.card-head{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.card-head h3{margin-right:auto}.muted{color:var(--text-2);font-size:.94rem}.small{font-size:.88rem}.tools-list{border-top:2px solid var(--text);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:0;display:grid}.tools-list a{color:inherit;border-bottom:1px solid var(--border);padding:1.1rem 1.1rem 1.2rem 0;text-decoration:none;display:block}.tools-list a+a{border-left:1px solid var(--border);padding-left:1.1rem}.tools-list h3{font-size:1.25rem}.tools-list a:hover h3{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.tools-list .aller{color:var(--accent);font-size:.95rem;font-weight:600}.bande{background:var(--band);border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-top:2.5rem}.bande .wrap{padding-block:1.5rem 2rem}.bande h2{margin-top:.5rem}.points{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.25rem 2rem;margin:0;display:grid}.points dt{font-weight:700}.points dd{color:var(--text-2);margin:.2rem 0 0}.sources{color:var(--text-2);margin:.5rem 0 0;padding-left:1.1rem}.sources li{margin:.3rem 0}.maj{color:var(--text-2);margin-top:1rem;font-size:.88rem}.statut{background:var(--surface);border:1px solid var(--border);border-top:5px solid var(--border-fort);border-radius:var(--radius);margin-bottom:1rem;padding:1rem 1.1rem}.statut-titre{font-family:var(--font-titre);flex-wrap:wrap;align-items:baseline;gap:.2rem .9rem;font-size:1.5rem;font-weight:600;display:flex}.statut-titre .moy{font-family:var(--font-texte);font-variant-numeric:tabular-nums;color:var(--text);font-weight:700}.statut p{margin:.4rem 0 0}.statut.ok{border-top-color:var(--ok)}.statut.ok .statut-titre>span:first-child{color:var(--ok)}.statut.comp{border-top-color:var(--comp)}.statut.comp .statut-titre>span:first-child{color:var(--comp)}.statut.warn{border-top-color:var(--warn)}.statut.warn .statut-titre>span:first-child{color:var(--warn)}.statut.ko{border-top-color:var(--ko)}.statut.ko .statut-titre>span:first-child{color:var(--ko)}.statut.neutre{background:var(--band)}.tag{letter-spacing:.05em;text-transform:uppercase;background:var(--surface-2);color:var(--text-2);border-radius:2px;padding:.12rem .4rem;font-size:.72rem;font-weight:700;display:inline-block}.tag.ok{background:var(--ok-soft);color:var(--ok)}.tag.comp{background:var(--comp-soft);color:var(--comp)}.tag.ko{background:var(--ko-soft);color:var(--ko)}.marge{font-size:.98rem}.ok-txt strong{color:var(--ok)}.ko-txt strong{color:var(--ko)}label,.lbl{color:var(--text-2);font-size:.85rem}input[type=text],input[type=number],select{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border-fort);border-radius:2px;width:100%;min-width:0;padding:.42rem .5rem;font-size:1rem}input:focus-visible,select:focus-visible,button:focus-visible,summary:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input.invalide{border-color:var(--ko);box-shadow:inset 0 -2px 0 var(--ko)}.note-input{text-align:right;font-variant-numeric:tabular-nums}.champ{flex-direction:column;gap:.2rem;display:flex}.grille{gap:.6rem;display:grid}button{font:inherit;cursor:pointer;border:1px solid var(--border-fort);background:var(--surface);color:var(--text);border-radius:2px;padding:.42rem .8rem;font-size:.95rem}button:hover{border-color:var(--accent);color:var(--accent)}button.primaire{background:var(--accent);border-color:var(--accent);color:var(--bg);font-weight:600}button.lien{color:var(--accent);text-underline-offset:2px;background:0 0;border:none;padding:.2rem .3rem;text-decoration:underline}button.suppr{color:var(--text-2);background:0 0;border:none;padding:.2rem .45rem;font-size:1.15rem;line-height:1}button.suppr:hover{color:var(--ko)}button.danger{background:var(--ko);border-color:var(--ko);color:var(--bg);padding:.25rem .7rem}.actions{flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.75rem;display:flex}.toggle{color:var(--text);align-items:flex-start;gap:.55rem;padding:.4rem 0;font-size:.98rem;display:flex}.toggle input{width:1.05rem;height:1.05rem;accent-color:var(--accent);flex:none;margin-top:.3rem}.segmente{border:1px solid var(--border-fort);border-radius:2px;display:inline-flex;overflow:hidden}.segmente button{border:none;border-radius:0;padding:.45rem .9rem}.segmente button+button{border-left:1px solid var(--border-fort)}.segmente button[aria-pressed=true]{background:var(--accent);color:var(--bg);font-weight:600}.confirmer{flex-wrap:wrap;align-items:center;gap:.35rem;display:inline-flex}.ligne{border-top:1px solid var(--surface-2);grid-template-columns:minmax(0,1.4fr) 4.2rem 5rem 5rem 1.8rem;align-items:center;gap:.4rem;padding:.35rem 0;display:grid}.ligne.entete{letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);border-top:none;padding-bottom:0;font-size:.74rem;font-weight:700}.ligne.bulletin{grid-template-columns:5rem 4.6rem 4.2rem minmax(0,1fr) 1.8rem}.besoin{color:var(--accent);grid-column:1/-1;margin-top:-.1rem;font-size:.9rem}.besoin.impossible{color:var(--ko)}.besoin.deja{color:var(--ok)}.ue{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin-bottom:.5rem}.ue>summary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.65rem .8rem;list-style:none;display:flex}.ue>summary::-webkit-details-marker{display:none}.ue>summary:before{content:"+";width:1rem;color:var(--text-2);font-weight:700}.ue[open]>summary:before{content:"−"}.ue[open]>summary{border-bottom:1px solid var(--surface-2)}.ue .ue-nom{margin-right:auto;font-weight:600}.ue .ue-moy{font-variant-numeric:tabular-nums;font-weight:700}.ue-corps{padding:.6rem .8rem .8rem}.ue-params{grid-template-columns:minmax(0,2fr) 1fr 1fr;gap:.5rem;margin-bottom:.5rem;display:grid}.ue-params.avec-bloc{grid-template-columns:minmax(0,2fr) 1fr 1fr 1fr}table.detail{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:.92rem}table.detail th{text-transform:uppercase;letter-spacing:.04em;color:var(--text-2);border-bottom:2px solid var(--text);font-size:.78rem}table.detail th,table.detail td{text-align:left;border-bottom:1px solid var(--border);padding:.4rem .3rem}table.detail td.num,table.detail th.num{text-align:right}.avertissement{border-left:3px solid var(--warn);background:var(--band);margin:1rem 0;padding:.7rem 1rem;font-size:.96rem}.lien-interne{border:1px solid var(--border);border-radius:var(--radius);margin:1rem 0;padding:.75rem 1rem;font-weight:600;text-decoration:none;display:block}.lien-interne:hover{border-color:var(--accent)}.notice{background:var(--accent-soft);border-left:3px solid var(--accent);margin-bottom:1rem;padding:.5rem .75rem;font-size:.92rem}.bandeau-exemple{background:var(--band);border:1px solid var(--border);border-radius:var(--radius);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem 1rem;margin-bottom:1rem;padding:.55rem .8rem;font-size:.94rem;display:flex}.bandeau-exemple button{background:var(--accent);border-color:var(--accent);color:var(--bg);font-weight:600}.leviers{border:1px solid var(--border);border-radius:var(--radius);margin-bottom:1rem;padding:.9rem 1.1rem}.leviers ol{gap:.5rem;margin:.6rem 0 0;padding:0;list-style:none;display:grid}.leviers li{grid-template-columns:minmax(0,1fr) minmax(3rem,30%) 3.4rem;align-items:center;gap:.7rem;font-size:.95rem;display:grid}.lev-nom{overflow-wrap:anywhere;min-width:0}.lev-barre{background:var(--surface-2);height:.45rem}.lev-barre span{background:var(--accent);height:100%;display:block}.lev-gain{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.faq details{border-bottom:1px solid var(--border)}.faq details:first-of-type{border-top:2px solid var(--text)}.faq summary{cursor:pointer;justify-content:space-between;gap:1rem;padding:.85rem 0;font-weight:600;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--accent);font-weight:700}.faq details[open] summary:after{content:"−"}.faq details>div{color:var(--text-2);max-width:70ch;padding:0 0 .9rem}.site-footer{background:var(--band);border-top:1px solid var(--border);color:var(--text-2);font-size:.9rem}.site-footer .wrap{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem 2rem;padding-block:1.75rem 2.25rem;display:grid}.site-footer h4{font-family:var(--font-texte);letter-spacing:.08em;text-transform:uppercase;color:var(--text);margin-bottom:.4rem;font-size:.78rem;font-weight:700}.site-footer p{margin:.3rem 0}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin:.3rem 0}.sr-only{clip:rect(0 0 0 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=560px){body{font-size:16px}h1{font-size:1.6rem}.logo{padding-block:.65rem .2rem}.site-header .wrap{flex-direction:column}.nav{margin-left:-.7rem}.ligne{grid-template-columns:minmax(0,1fr) 3.4rem 4.4rem 4.4rem 1.6rem;gap:.3rem}.ligne.bulletin{grid-template-columns:4.4rem 4.2rem 3.6rem minmax(0,1fr) 1.6rem}.ue-params,.ue-params.avec-bloc{grid-template-columns:1fr 1fr}.ue-params .champ:first-child{grid-column:1/-1}.card{padding:.9rem}.tools-list a,.tools-list a+a{border-left:none;padding:1rem 0}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}
