:root{--ink:#153B50;--paper:#F6F8FA;--yellow:#E9B949;--blue:#DCE8ED;--rust:#A14924}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 'Segoe UI',Arial,sans-serif}main{max-width:1080px;margin:auto;padding:0 28px 80px}.intro{padding:70px 0 45px!important}h1{font-size:clamp(38px,6vw,66px);line-height:1.06;letter-spacing:-1.4px;margin:16px 0 25px}h2{font-size:34px;line-height:1.18;margin:15px 0 22px}h3{font-size:23px;line-height:1.3;margin:6px 0 10px}.eyebrow{font-size:12px;letter-spacing:1.8px;font-weight:750}.lead{font-size:24px;max-width:760px}section{padding:42px 0;border-bottom:1px solid #b8cdd6}main nav,.actions,.downloads{display:flex;gap:14px;flex-wrap:wrap;margin:25px 0}a{color:var(--rust);text-underline-offset:4px}main nav a,.downloads a{padding:11px 16px;background:white;border:1px solid #b8cdd6;border-radius:6px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.grid article,.post{background:white;border:1px solid #b8cdd6;border-radius:10px;padding:22px}.post{margin:17px 0}.post header{padding:0;background:none;color:var(--ink);margin-bottom:15px}.fields{display:grid;grid-template-columns:2fr 1.3fr 1fr 1fr;gap:14px}.fields.secondary{grid-template-columns:2fr 1fr;margin-top:16px}label{display:block;font-size:14px;font-weight:650}input,select{width:100%;font:16px 'Segoe UI',Arial;padding:11px 12px;background:white;color:var(--ink);border:1px solid #809daa;border-radius:5px;margin-top:7px;min-height:44px}input:focus,select:focus,button:focus,a:focus{outline:3px solid var(--yellow);outline-offset:3px}small,.fine{font-size:13px;font-weight:400;line-height:1.5;display:block}.note{background:var(--blue);padding:18px 22px;border-left:4px solid var(--yellow);border-radius:5px}button,.file{font:650 15px 'Segoe UI',Arial;cursor:pointer;border:0;border-radius:6px;background:var(--ink);color:white;padding:13px 19px;min-height:44px}button.secondary{background:var(--paper);color:var(--rust);padding:8px 12px}.file input{font-size:13px;color:white;background:transparent;border:0;padding:0;min-height:0}.reserve{margin-top:28px}.result{border:2px solid var(--ink);padding:25px;border-radius:10px;margin-top:28px}.result h3{font-size:25px}.number{font-size:38px;font-weight:750;line-height:1.2}.warning{color:var(--rust)}.totals{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;margin-top:24px}.totals strong{display:block;font-size:21px}table{border-collapse:collapse;width:100%;margin:24px 0;font-size:15px}th,td{padding:12px;border:1px solid #b8cdd6;text-align:left;vertical-align:top}.table-wrap{overflow:auto}.report h2{margin-top:40px}pre{white-space:pre-wrap}@media(max-width:650px){main{padding:0 18px 60px}.intro{padding-top:45px!important}.grid,.fields,.fields.secondary,.totals{grid-template-columns:1fr}h2{font-size:29px}.lead{font-size:21px}.post{padding:17px}.number{font-size:33px}.actions{display:grid}.downloads a{width:100%}section{padding:32px 0}}

/* Identité commune, sans modifier les champs ni la logique du budget. */
.carnet-page{--paper:#fff;--blue:#e9f0f3;background:white}
.carnet-page .site-header{background:white;color:var(--ink);padding:25px 32px}
.carnet-page .site-header nav{margin:0;padding:0}
.carnet-page .site-header nav a{border:0}
.carnet-page .site-header a{color:var(--ink)}
.carnet-page .marque span{font-size:12px}.carnet-page .marque strong{font-size:23px}
.carnet-page main{max-width:1080px;padding:0 32px 70px}
.carnet-page main .intro{padding:45px 0 35px!important}
.carnet-page main h1{font-size:clamp(36px,4.4vw,52px);margin:18px 0 22px;max-width:800px}
.carnet-page main h2{font-size:31px;margin:15px 0 22px}
.carnet-page main h3{font-size:23px;margin:6px 0 10px}
.carnet-page .lead{font-size:21px}.carnet-trust{font-size:14px;font-weight:650}
.carnet-page main section{padding:35px 0}
.carnet-page .post{border-radius:5px;background:#f7f9fa}
.carnet-page .post header{padding:0;background:none;border:0;color:var(--ink);display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-bottom:15px}
.carnet-page .post header h3{margin:0}
.carnet-page .site-footer{background:white;color:var(--ink);padding:36px 32px 28px}
.carnet-page .site-footer nav{margin:0}.carnet-page .site-footer nav a{border:0;padding:0;background:none;border-radius:0;color:var(--ink)}
.carnet-page .site-footer .marque{font-size:12px}
.carnet-page a:focus-visible,.carnet-page button:focus-visible,.carnet-page input:focus-visible,.carnet-page select:focus-visible{outline:3px solid var(--rust);outline-offset:4px}
@media(max-width:680px){.carnet-page .site-header{padding:17px 20px}.carnet-page .site-header nav{padding-top:5px}.carnet-page main{padding:0 20px 60px}.carnet-page main .intro{padding:33px 0 30px!important}.carnet-page main h1{font-size:35px}.carnet-page main h2{font-size:27px}.carnet-page .site-footer{padding:28px 20px}}
