:root,[data-theme=light]{color-scheme:light;--fond: #f2f2f5;--carte: #ffffff;--carte-2: #f7f7f9;--texte: #17171a;--texte-doux: #62626b;--trait: #e3e3e8;--trait-fort: #d1d1d8;--saisie: #f2f2f5;--accent: #0f5fc4;--accent-texte: #ffffff;--accent-doux: #e7effa;--accent-survol: #0c52aa;--bon: #1d7438;--bon-fond: #e4f2e7;--limite: #9a4d00;--limite-fond: #fceeda;--mauvais: #bb2328;--mauvais-fond: #fbe6e6;--gris: #62626b;--gris-fond: #ececf0;--info-fond: #e9f0fa;--ombre: 0 1px 2px rgb(16 16 24 / .04), 0 2px 10px rgb(16 16 24 / .04);--ombre-haute: 0 12px 40px rgb(16 16 24 / .14), 0 2px 6px rgb(16 16 24 / .06);--rayon: 16px;--verre-fond: color-mix(in srgb, #ffffff 68%, transparent);--verre-opaque: #f9f9fb;--verre-bord: rgb(255 255 255 / .75);--verre-lisere: rgb(16 16 24 / .07);--verre-flou: 22px;--verre-satur: 180%;--verre-reflet: linear-gradient(180deg, rgb(255 255 255 / .85) 0%, rgb(255 255 255 / 0) 42%);--verre-ombre: 0 10px 30px rgb(16 16 24 / .12), 0 1px 3px rgb(16 16 24 / .08);--voile: rgb(16 16 24 / .28)}[data-theme=dark]{color-scheme:dark;--fond: #0a0a0c;--carte: #1a1a1e;--carte-2: #222227;--texte: #f3f3f5;--texte-doux: #a3a3ad;--trait: #2c2c33;--trait-fort: #3a3a42;--saisie: #26262b;--accent: #5ca3ff;--accent-texte: #06182e;--accent-doux: #142640;--accent-survol: #7db6ff;--bon: #57c77f;--bon-fond: #12291a;--limite: #f2a452;--limite-fond: #2f2111;--mauvais: #ff7a75;--mauvais-fond: #351718;--gris: #a3a3ad;--gris-fond: #2a2a30;--info-fond: #13212f;--ombre: 0 1px 2px rgb(0 0 0 / .4);--ombre-haute: 0 16px 48px rgb(0 0 0 / .6);--verre-fond: color-mix(in srgb, #2b2b31 78%, transparent);--verre-opaque: #26262b;--verre-bord: rgb(255 255 255 / .13);--verre-lisere: rgb(0 0 0 / .5);--verre-reflet: linear-gradient(180deg, rgb(255 255 255 / .16) 0%, rgb(255 255 255 / 0) 40%);--verre-ombre: 0 10px 30px rgb(0 0 0 / .55), 0 1px 2px rgb(0 0 0 / .4);--voile: rgb(0 0 0 / .55)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--fond: #0a0a0c;--carte: #1a1a1e;--carte-2: #222227;--texte: #f3f3f5;--texte-doux: #a3a3ad;--trait: #2c2c33;--trait-fort: #3a3a42;--saisie: #26262b;--accent: #5ca3ff;--accent-texte: #06182e;--accent-doux: #142640;--accent-survol: #7db6ff;--bon: #57c77f;--bon-fond: #12291a;--limite: #f2a452;--limite-fond: #2f2111;--mauvais: #ff7a75;--mauvais-fond: #351718;--gris: #a3a3ad;--gris-fond: #2a2a30;--info-fond: #13212f;--ombre: 0 1px 2px rgb(0 0 0 / .4);--ombre-haute: 0 16px 48px rgb(0 0 0 / .6);--verre-fond: color-mix(in srgb, #2b2b31 78%, transparent);--verre-opaque: #26262b;--verre-bord: rgb(255 255 255 / .13);--verre-lisere: rgb(0 0 0 / .5);--verre-reflet: linear-gradient(180deg, rgb(255 255 255 / .16) 0%, rgb(255 255 255 / 0) 40%);--verre-ombre: 0 10px 30px rgb(0 0 0 / .55), 0 1px 2px rgb(0 0 0 / .4);--voile: rgb(0 0 0 / .55)}}:root{--police: -apple-system, BlinkMacSystemFont, system-ui, "Inter", "Segoe UI", Roboto, sans-serif;--t-chiffre: 700 2.75rem/1.05 var(--police);--t-titre-1: 700 1.875rem/1.15 var(--police);--t-titre-2: 650 1.3125rem/1.25 var(--police);--t-titre-3: 600 1.0625rem/1.3 var(--police);--t-corps: 400 1rem/1.45 var(--police);--t-corps-fort: 600 1rem/1.45 var(--police);--t-legende: 500 .8125rem/1.35 var(--police);--t-micro: 600 .6875rem/1.25 var(--police);--r-feuille: 28px;--r-barre: 32px;--r-barre-item: 28px;--r-carte: var(--rayon);--r-interne: 10px;--r-champ: 12px;--r-capsule: 999px;--ressort: cubic-bezier(.32, .72, 0, 1);--d-court: .18s;--d-moyen: .32s;--d-feuille: .42s;--laterale: 232px}*{box-sizing:border-box}body{margin:0;background:var(--fond);color:var(--texte);font:var(--t-corps);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:2px}a{color:var(--accent)}.page{max-width:1120px;margin:0 auto;padding:16px 16px 32px}.entete-app,.barre-onglets,.feuille-entete{-webkit-backdrop-filter:blur(var(--verre-flou)) saturate(var(--verre-satur));backdrop-filter:blur(var(--verre-flou)) saturate(var(--verre-satur))}.barre-onglets{isolation:isolate;background:var(--verre-fond);border:1px solid var(--verre-bord);box-shadow:var(--verre-ombre),0 0 0 .5px var(--verre-lisere)}.barre-onglets:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:var(--verre-reflet);pointer-events:none;z-index:-1;opacity:.9}@media(prefers-reduced-transparency:reduce){.entete-app,.barre-onglets,.feuille-entete{background:var(--verre-opaque)!important;-webkit-backdrop-filter:none;backdrop-filter:none}.barre-onglets:before{display:none}}.app{min-height:100dvh}.entete-app{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--fond) 72%,transparent);border-bottom:.5px solid var(--verre-lisere)}.entete-contenu{display:flex;align-items:center;gap:10px;padding-top:10px;padding-bottom:10px;min-height:52px}.nom-projet{font:var(--t-corps-fort);font-size:.9375rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.contenu{padding-bottom:calc(110px + env(safe-area-inset-bottom))}.barre-onglets{position:fixed;left:12px;right:12px;bottom:calc(14px + env(safe-area-inset-bottom));z-index:30;height:64px;padding:4px;border-radius:var(--r-barre);display:flex;gap:2px;max-width:560px;margin:0 auto}.onglet{flex:1 1 0;min-width:44px;border-radius:var(--r-barre-item);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font:600 .625rem/1 var(--police);color:var(--texte);text-decoration:none;transition:background var(--d-court),color var(--d-court)}.onglet span{overflow:hidden;text-overflow:ellipsis;max-width:100%}.onglet.actif{color:var(--accent);background:color-mix(in srgb,var(--accent-doux) 90%,transparent)}@media(min-width:900px){.barre-onglets{position:static;height:auto;max-width:1120px;margin:0 auto;padding:0 16px 8px;background:transparent;border:0;box-shadow:none;border-radius:0;-webkit-backdrop-filter:none;backdrop-filter:none}.barre-onglets:before{display:none}.onglet{flex:none;flex-direction:row;gap:8px;height:36px;padding:0 14px;border-radius:12px;font:500 .875rem/1 var(--police)}.onglet.actif{background:color-mix(in srgb,var(--accent) 13%,transparent);font-weight:600}.contenu{padding-bottom:40px}}@media(min-width:1180px){.app{padding-left:calc(var(--laterale) + 32px)}.barre-onglets{position:fixed;top:72px;left:16px;bottom:auto;right:auto;width:var(--laterale);flex-direction:column;gap:2px;padding:12px;border-radius:24px;background:var(--verre-fond);border:1px solid var(--verre-bord);box-shadow:var(--verre-ombre),0 0 0 .5px var(--verre-lisere);-webkit-backdrop-filter:blur(var(--verre-flou)) saturate(var(--verre-satur));backdrop-filter:blur(var(--verre-flou)) saturate(var(--verre-satur))}.barre-onglets:before{display:block}.onglet{height:40px;padding:0 12px;justify-content:flex-start;gap:10px}.entete-app{margin-left:calc(-1 * (var(--laterale) + 32px));padding-left:calc(var(--laterale) + 32px)}}.entete{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:8px 0 20px}.surtitre{margin:0;font:var(--t-legende);font-weight:600;color:var(--texte-doux)}h1{margin:2px 0 0;font:var(--t-titre-1);letter-spacing:-.01em}.titre-ecran{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:16px 0}.titre-ecran h1{margin:0}.intro{margin:-6px 0 16px;color:var(--texte-doux);max-width:70ch}.titre-section{margin:32px 0 12px;font:var(--t-titre-2);letter-spacing:-.005em}.grille{display:grid;gap:16px}.colonne-saisie,.colonne-resultats,.resultats{display:grid;gap:16px;align-content:start;min-width:0}@media(min-width:900px){.grille{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}.colonne-resultats{position:sticky;top:112px}}.carte{background:var(--carte);border-radius:var(--r-carte);box-shadow:var(--ombre);padding:16px;min-width:0}.carte>h2{margin:0 0 14px;font:var(--t-titre-3)}.carte h3{margin:0 0 8px;font:var(--t-titre-3);font-size:1rem}.carte.vide p{margin:0;color:var(--texte-doux)}.carte.principale{background:var(--accent);color:var(--accent-texte)}.carte.principale .libelle,.carte.principale .detail{color:color-mix(in srgb,var(--accent-texte) 82%,transparent)}.champ{display:flex;flex-direction:column;gap:6px;margin:0 0 14px;padding:0;border:0;min-width:0}.champ label,.champ legend,.etiquette{font:var(--t-legende);font-weight:600;color:var(--texte-doux);padding:0}.champ legend{margin-bottom:6px}.etiquette{display:block;margin:8px 0 4px}.saisie{min-height:48px;border-radius:var(--r-champ);background:var(--saisie);display:flex;align-items:center;padding:0 14px;gap:8px;border:1px solid transparent;transition:background var(--d-court),box-shadow var(--d-court)}.saisie input,.saisie select,.saisie textarea{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--texte);font:var(--t-corps-fort);font-variant-numeric:tabular-nums;padding:12px 0}.saisie textarea{font:var(--t-corps);resize:vertical}.saisie:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent);background:var(--carte)}.saisie.en-erreur{border-color:var(--mauvais);background:var(--mauvais-fond)}.suffixe{font:var(--t-corps);color:var(--texte-doux);white-space:nowrap}.aide{margin:0;font:var(--t-legende);color:var(--texte-doux)}.aide.erreur{color:var(--mauvais)}.ligne{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));column-gap:12px}.champ.compact{margin-bottom:8px}.segments{display:flex;min-height:40px;padding:3px;border-radius:var(--r-capsule);background:var(--saisie);gap:2px}.segments button{flex:1;min-width:44px;min-height:34px;border:0;border-radius:var(--r-capsule);background:none;color:var(--texte);font:600 .875rem/1.2 var(--police);padding:4px 10px;cursor:pointer;transition:background var(--d-court)}.segments button.actif{background:var(--carte);box-shadow:0 1px 3px #00000024,0 0 0 .5px #0000000d}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .segments button.actif{background:#3a3a42}}[data-theme=dark] .segments button.actif{background:#3a3a42}.segments.petit{margin:4px 0 10px}.interrupteur{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid var(--trait);margin-top:4px}.interrupteur label{font:var(--t-corps-fort)}.bascule{flex:none;width:51px;height:31px;border-radius:16px;border:0;padding:0;background:var(--trait-fort);position:relative;cursor:pointer;transition:background var(--d-court)}.bascule span{position:absolute;top:2px;left:2px;width:27px;height:27px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #0003;transition:transform var(--d-moyen) var(--ressort)}.bascule.actif{background:var(--accent)}.bascule.actif span{transform:translate(20px)}.case{display:flex;align-items:flex-start;gap:12px;padding:8px 0;cursor:pointer}.case label,.case>span{display:grid;gap:2px;cursor:pointer}.case input[type=checkbox],.poste input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:24px;height:24px;border-radius:7px;border:1.75px solid var(--trait-fort);margin:0;flex:none;cursor:pointer;display:grid;place-items:center;background:var(--carte)}.case input[type=checkbox]:checked,.poste input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent)}.case input[type=checkbox]:checked:after,.poste input[type=checkbox]:checked:after{content:"";width:12px;height:7px;border-left:2px solid var(--accent-texte);border-bottom:2px solid var(--accent-texte);transform:translateY(-1px) rotate(-45deg)}.personne{border-bottom:1px solid var(--trait);margin-bottom:14px}.personne-entete{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.nom-personne{border:0;background:transparent;color:var(--accent);font:var(--t-corps-fort);padding:2px 0;min-width:0;flex:1}.nom-personne:focus{outline:none;border-bottom:2px solid var(--accent)}.bloc-option{background:var(--carte-2);border-radius:var(--r-interne);padding:14px 14px 2px;margin-bottom:14px}.bloc-option>.aide{margin-bottom:12px}.bouton{min-height:50px;padding:0 22px;border-radius:var(--r-capsule);border:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;font:600 1rem/1.2 var(--police);cursor:pointer;text-decoration:none;background:var(--accent-doux);color:var(--accent);transition:transform var(--d-court) var(--ressort),background var(--d-court)}.bouton:active{transform:scale(.97)}.bouton.principal{background:var(--accent);color:var(--accent-texte)}.bouton.principal:hover{background:var(--accent-survol)}.bouton.secondaire{background:var(--accent-doux);color:var(--accent)}.bouton.lien{background:none;color:var(--accent);padding:0 8px;min-height:44px}.bouton.danger{background:var(--mauvais-fond);color:var(--mauvais)}.bouton.petit{min-height:36px;padding:0 14px;font-size:.875rem}.bouton.lien.petit{padding:0 6px}.bouton.large{width:100%}.bouton:disabled{opacity:.42;pointer-events:none}.pile-boutons{display:grid;gap:10px;margin:12px 0}.libelle{font:var(--t-legende)!important;font-weight:600!important;color:var(--texte-doux);margin:0 0 4px!important}.titre-ligne{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.titre-ligne .libelle{margin:0!important}.chiffre-cle{margin:0;font:var(--t-chiffre);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.chiffre{margin:6px 0;font:700 1.625rem/1.1 var(--police);letter-spacing:-.01em;font-variant-numeric:tabular-nums}.detail{margin:6px 0 0;font:var(--t-legende);font-size:.875rem;color:var(--texte-doux)}.detail.encadre{margin-top:12px;padding:10px 12px;border-radius:var(--r-interne);background:#ffffff24}.marge{font-weight:600}.marge.bon{color:var(--bon)}.marge.mauvais{color:var(--mauvais)}.texte-bon{color:var(--bon)}.texte-mauvais{color:var(--mauvais);font-weight:600}.texte-doux{color:var(--texte-doux)}.texte-moyen{font-size:1.0625rem!important}.a-verifier{display:inline-flex;align-items:center;gap:6px;font:500 .75rem/1.3 var(--police);color:var(--limite)}.a-verifier:before{content:"";width:6px;height:6px;border-radius:50%;border:1.5px solid currentColor}.jauge{height:8px;border-radius:4px;background:var(--saisie);overflow:hidden}.jauge-remplie{height:100%;border-radius:4px;background:var(--accent);transition:width var(--d-moyen) var(--ressort)}.jauge-remplie.bon{background:var(--bon)}.jauge-remplie.limite{background:var(--limite)}.jauge-remplie.mauvais{background:var(--mauvais)}.progression{height:8px;border-radius:4px;background:var(--saisie);overflow:hidden;margin-bottom:8px}.progression div{height:100%;border-radius:4px;background:var(--bon)}.pastille{display:inline-flex;align-items:center;gap:6px;min-height:24px;padding:0 10px 0 8px;border-radius:var(--r-capsule);font:600 .75rem/1.2 var(--police);white-space:nowrap;color:var(--accent);background:var(--accent-doux)}.pastille:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}.pastille.bon{color:var(--bon);background:var(--bon-fond)}.pastille.limite{color:var(--limite);background:var(--limite-fond)}.pastille.mauvais{color:var(--mauvais);background:var(--mauvais-fond)}.pastille.eteint{color:var(--gris);background:var(--gris-fond)}.puce{display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:var(--r-capsule);border:1px solid var(--trait-fort);font:500 .75rem/1.2 var(--police);color:var(--texte-doux);white-space:nowrap}.puce.bon{color:var(--bon);background:var(--bon-fond);border-color:transparent}.puce.limite{color:var(--limite);background:var(--limite-fond);border-color:transparent}.puce.phase-pret_travaux{color:var(--bon)}.puce.phase-cash{color:var(--limite)}.liste-chiffres{margin:0;display:grid}.liste-chiffres>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid var(--trait)}.liste-chiffres>div:first-child{border-top:0}.liste-chiffres dt{color:var(--texte-doux)}.liste-chiffres dd{margin:0;font-weight:600;font-variant-numeric:tabular-nums;text-align:right}.liste-chiffres .total dt,.liste-chiffres .total dd{color:var(--texte);font-weight:700}.alerte{margin:0;padding:14px 16px;border-radius:var(--r-carte);font:var(--t-legende);font-size:.875rem;line-height:1.45;color:var(--texte);background:var(--info-fond)}.alerte strong{font-weight:650}.alerte.info{background:var(--info-fond)}.alerte.attention{background:var(--limite-fond)}.alerte.bloquant{background:var(--mauvais-fond)}.amortissement summary{cursor:pointer;font:var(--t-corps-fort);min-height:28px}.amortissement summary h2{display:inline;font:inherit;margin:0}.tableau-defilant{overflow-x:auto;margin-top:12px}table{width:100%;border-collapse:collapse;font:400 .875rem/1.3 var(--police);font-variant-numeric:tabular-nums}th,td{padding:10px 12px;text-align:right;white-space:nowrap;border-bottom:1px solid var(--trait)}thead th{font:var(--t-legende);font-weight:600;color:var(--texte-doux)}th[scope=row],thead th:first-child{text-align:left}tbody tr:last-child td,tbody tr:last-child th{border-bottom:0}tfoot th,tfoot td{font-weight:700;border-bottom:0;border-top:1px solid var(--trait-fort)}.ligne-actuelle th,.ligne-actuelle td{background:var(--accent-doux);font-weight:600}.pied{margin-top:28px;padding:0 4px;font:400 .75rem/1.45 var(--police);color:var(--texte-doux)}.tuiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px}@media(min-width:700px){.tuiles{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}}.tuile{display:flex;flex-direction:column;gap:6px;min-height:88px;background:var(--carte);border-radius:var(--r-carte);box-shadow:var(--ombre);padding:14px 16px;min-width:0}.tuile strong{font:700 1.25rem/1.15 var(--police);letter-spacing:-.01em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.tuile .libelle,.tuile .detail{margin:0!important;font:var(--t-legende)!important;color:var(--texte-doux)}.tuile.principale{grid-column:1 / -1;background:var(--accent);color:var(--accent-texte)}.tuile.principale strong{font-size:2rem}.tuile.principale .libelle,.tuile.principale .detail{color:color-mix(in srgb,var(--accent-texte) 82%,transparent)}.indicateur{display:grid;gap:6px;margin:-4px 0 16px;font-size:.875rem}.duo{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.duo>div{display:grid;gap:2px}.duo .chiffre{margin:0;font-size:1.5rem}.encart-montant{display:grid;gap:2px;background:var(--info-fond);border-radius:var(--r-interne);padding:12px 14px;margin-bottom:16px}.encart-montant strong{font:700 1.5rem/1.15 var(--police);font-variant-numeric:tabular-nums}.bloc-aide{margin:-6px 0 14px}.barre-outils{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;margin:20px 0 12px}.barre-outils .recherche{flex:1 1 220px}.barre-outils .champ{margin:0;flex:0 1 200px}.categories{display:grid;gap:12px}.categorie summary{display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:28px;cursor:pointer;list-style:none}.categorie summary::-webkit-details-marker{display:none}.categorie summary:after{content:"";width:8px;height:8px;border-right:2px solid var(--texte-doux);border-bottom:2px solid var(--texte-doux);transform:rotate(-45deg);transition:transform var(--d-moyen) var(--ressort);flex:none;margin-right:4px}.categorie[open] summary:after{transform:rotate(45deg)}.categorie-nom{display:grid;font:var(--t-titre-3)}.categorie-total{margin-left:auto;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}.categorie-description{margin:8px 0 0}.postes{list-style:none;margin:10px -16px -16px;padding:0}.poste{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;min-height:52px;padding:10px 16px;border-top:1px solid var(--trait)}.poste-corps{display:grid;gap:4px;text-align:left;border:0;background:transparent;color:inherit;font:inherit;padding:2px 0;cursor:pointer;min-width:0}.poste-libelle{font:var(--t-corps)}.poste-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.poste-montant{font:var(--t-corps-fort);font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}.poste.exclu .poste-libelle,.poste.exclu .poste-montant{color:var(--texte-doux)}.liste-liens,.liste-simple{list-style:none;margin:0;padding:0;display:grid;gap:6px}.liste-liens li{display:flex;justify-content:space-between;align-items:center;gap:8px}.liste-liens a{color:var(--accent);font-weight:600;overflow-wrap:anywhere}.liste-simple .aide{display:block;margin:2px 0 0}.ajout-lien,.ajout-ligne{display:grid;grid-template-columns:1fr;gap:8px}.ajout-ligne{grid-template-columns:1fr auto;margin:10px 0}@media(min-width:600px){.ajout-lien{grid-template-columns:1fr 1.4fr auto}}.ajout-lien input,.ajout-ligne input{border:1px solid transparent;border-radius:var(--r-champ);background:var(--saisie);color:inherit;font:inherit;min-height:44px;padding:0 14px;min-width:0}.ajout-lien input:focus,.ajout-ligne input:focus{outline:0;border-color:var(--accent);background:var(--carte)}.choix-postes{display:grid;gap:4px;max-height:320px;overflow:auto;background:var(--carte);border-radius:var(--r-carte);padding:4px 14px}.rangee{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px}.liste-simple>li+li{border-top:1px solid var(--trait)}.voile{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:var(--voile);display:flex;align-items:flex-end;justify-content:center;animation:apparaitre var(--d-moyen) ease-out}.feuille{position:relative;width:100%;max-width:640px;max-height:92dvh;display:flex;flex-direction:column;background:var(--fond);border-radius:var(--r-feuille) var(--r-feuille) 0 0;box-shadow:var(--ombre-haute);overflow:hidden;animation:monter var(--d-feuille) var(--ressort)}.feuille:before{content:"";position:absolute;width:38px;height:5px;border-radius:3px;background:var(--trait-fort);left:50%;margin:8px 0 0 -19px;z-index:2}@media(min-width:700px){.voile{align-items:center}.feuille{border-radius:24px;max-height:86dvh}.feuille:before{display:none}}@keyframes monter{0%{transform:translateY(40px);opacity:0}}@keyframes apparaitre{0%{opacity:0}}.feuille-entete{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:20px 12px 12px 20px;background:color-mix(in srgb,var(--carte) 80%,transparent);border-bottom:.5px solid var(--verre-lisere)}.feuille-entete h2{margin:0;font:var(--t-titre-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feuille-corps{padding:16px;overflow-y:auto;display:grid;gap:4px}.feuille-pied{padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--carte);border-top:.5px solid var(--trait)}body.sans-defilement{overflow:hidden}.liste-cartes{list-style:none;margin:0;padding:0;display:grid;gap:10px}.carte-devis{display:grid;gap:6px;width:100%;border:0;text-align:left;font:inherit;color:inherit;cursor:pointer;transition:transform var(--d-court) var(--ressort)}.carte-devis:active{transform:scale(.99)}.devis-titre{font:var(--t-corps-fort)}.devis-postes{font:var(--t-legende);color:var(--texte-doux)}.devis-chiffres{display:flex;flex-wrap:wrap;gap:14px;font-weight:600;font-variant-numeric:tabular-nums}.tableau-saisie input{width:100%;min-width:120px;border:1px solid transparent;border-radius:var(--r-interne);background:var(--saisie);color:inherit;font:inherit;padding:8px 10px;text-align:right}.tableau-saisie input:focus{outline:0;border-color:var(--accent);background:var(--carte)}.tableau-saisie td:first-child input{text-align:left;min-width:200px}.tableau-saisie input.court{min-width:56px;width:64px}.etapes,.pieces,.questions{list-style:none;margin:0;padding:0}.etapes li,.pieces li{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:52px;border-top:1px solid var(--trait)}.etapes li:first-child,.pieces li:first-child{border-top:0}.etapes li.fait .case span{color:var(--texte-doux);text-decoration:line-through}.etapes input[type=date]{border:0;background:transparent;color:var(--texte-doux);font:var(--t-legende)}.groupe-questions h3{margin:18px 0 6px;font:var(--t-legende);font-weight:600;color:var(--texte-doux)}.question{display:flex;gap:10px;align-items:flex-start;width:100%;min-height:52px;text-align:left;font:inherit;color:inherit;background:transparent;border:0;border-top:1px solid var(--trait);padding:12px 0;cursor:pointer}.question .pastille{flex:none}.creation{max-width:720px;margin:24px auto;display:grid;gap:16px}.choix-type{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.carte.type{display:grid;gap:4px;border:0;text-align:left;font:inherit;color:inherit;cursor:pointer;box-shadow:var(--ombre),inset 0 0 0 1.5px transparent;transition:box-shadow var(--d-court),transform var(--d-court) var(--ressort)}.carte.type:active{transform:scale(.98)}.carte.type.actif{box-shadow:var(--ombre),inset 0 0 0 2px var(--accent)}.centre{text-align:center}.pastille.synchro{font-weight:600}.pastille.synchro.enregistre{color:var(--gris);background:transparent}.pastille.synchro.enregistre:before{background:var(--bon)}.pastille.synchro.hors_ligne,.pastille.synchro.conflit{color:var(--limite);background:var(--limite-fond)}.bandeau{display:grid;gap:10px;padding:14px 16px;margin-bottom:16px;border-radius:var(--r-carte);background:var(--carte);box-shadow:var(--ombre)}.bandeau p{margin:0}.bandeau.conflit{background:var(--limite-fond)}.bandeau.nouvelle{grid-template-columns:1fr auto;align-items:center}.code-otp{font-size:1.375rem!important;letter-spacing:.3em;font-variant-numeric:tabular-nums}.section-option{margin-top:8px}.visuellement-cache{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:1ms!important;animation-duration:1ms!important}}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}button,a,input,select,label,summary{touch-action:manipulation}.barre-onglets,.entete-app,.bouton,.onglet,.segments,.pas-groupe,.toast{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.entete-app{padding-top:env(safe-area-inset-top);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.page{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}.titre-entete{position:relative;flex:1;min-width:0;height:22px}.titre-entete>span{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:opacity var(--d-court),transform var(--d-moyen) var(--ressort)}.nom-projet.cache{opacity:0;transform:translateY(-6px)}.titre-reduit{font:var(--t-corps-fort);font-size:1rem;opacity:0;transform:translateY(6px)}.titre-reduit.visible{opacity:1;transform:none}.actions-entete{display:flex;gap:2px;margin-right:-10px}.bouton-icone{width:44px;height:44px;border:0;border-radius:var(--r-capsule);background:none;color:var(--accent);display:grid;place-items:center;cursor:pointer;transition:background var(--d-court),opacity var(--d-court)}.bouton-icone:hover:not(:disabled){background:var(--accent-doux)}.bouton-icone:disabled{opacity:.3;cursor:default}@media(max-width:899px){.barre-onglets{transition:max-width var(--d-moyen) var(--ressort),height var(--d-moyen) var(--ressort),border-radius var(--d-moyen) var(--ressort),transform var(--d-moyen) var(--ressort),opacity var(--d-court)}.onglet span{transition:opacity var(--d-court),max-height var(--d-moyen) var(--ressort);max-height:14px}.barre-onglets.compacte{height:52px;max-width:calc(var(--nb-onglets) * 50px + 10px);border-radius:26px}.barre-onglets.compacte .onglet{border-radius:22px}.barre-onglets.compacte .onglet span{opacity:0;max-height:0}.barre-onglets.masquee{transform:translateY(calc(100% + 24px + env(safe-area-inset-bottom)));opacity:0;pointer-events:none}}::view-transition-old(root),::view-transition-new(root){animation-duration:var(--d-court)}.barre-onglets,.entete-app{view-transition-name:none}.toast{position:fixed;z-index:40;left:50%;bottom:calc(92px + env(safe-area-inset-bottom));transform:translate(-50%);width:min(calc(100vw - 32px),460px);display:flex;align-items:center;gap:8px;padding:6px 6px 6px 18px;min-height:52px;border-radius:var(--r-capsule);color:var(--texte);background:var(--verre-fond);-webkit-backdrop-filter:blur(var(--verre-flou)) saturate(var(--verre-satur));backdrop-filter:blur(var(--verre-flou)) saturate(var(--verre-satur));border:1px solid var(--verre-bord);box-shadow:var(--verre-ombre),0 0 0 .5px var(--verre-lisere);animation:toast-entree var(--d-moyen) var(--ressort)}.toast p{margin:0;flex:1;font:var(--t-legende);font-size:.875rem}.toast-action{border:0;min-height:40px;padding:0 16px;border-radius:var(--r-capsule);background:var(--accent-doux);color:var(--accent);font:600 .9375rem/1 var(--police);cursor:pointer}@keyframes toast-entree{0%{opacity:0;transform:translate(-50%,16px) scale(.96)}}@media(min-width:900px){.toast{bottom:24px}}@media(prefers-reduced-transparency:reduce){.toast{background:var(--verre-opaque);-webkit-backdrop-filter:none;backdrop-filter:none}}.feuille:before{display:none}.feuille-entete{position:relative;touch-action:none;cursor:grab}.poignee{position:absolute;top:6px;left:50%;width:38px;height:5px;margin-left:-19px;border-radius:3px;background:var(--trait-fort)}@media(min-width:700px){.poignee{display:none}.feuille-entete{cursor:default}}.feuille.glisse{animation:none;transition:none}.feuille:not(.glisse){transition:transform var(--d-moyen) var(--ressort)}.feuille:focus{outline:none}.feuille-corps{overscroll-behavior:contain}.bouton-fermer{flex:none;width:30px;height:30px;border:0;border-radius:50%;background:var(--gris-fond);color:var(--texte-doux);display:grid;place-items:center;cursor:pointer;position:relative}.bouton-fermer:after{content:"";position:absolute;top:-7px;right:-7px;bottom:-7px;left:-7px}.voile-dialogue{z-index:60;align-items:flex-end;padding:0 8px calc(8px + env(safe-area-inset-bottom))}.dialogue{width:100%;max-width:420px;display:grid;gap:8px;animation:monter var(--d-moyen) var(--ressort)}.dialogue-texte,.dialogue-actions .action{background:var(--verre-opaque)}.dialogue-texte{padding:16px 20px;border-radius:14px 14px 0 0;text-align:center}.dialogue-texte h2{margin:0;font:600 .9375rem/1.3 var(--police);color:var(--texte)}.dialogue-texte p{margin:6px 0 0;font:var(--t-legende);color:var(--texte-doux)}.dialogue-actions{display:grid;gap:8px}.dialogue-actions .action{min-height:56px;border:0;font:400 1.1875rem/1 var(--police);color:var(--accent);cursor:pointer}.dialogue-actions .action[data-action]{margin-top:-8px;border-top:.5px solid var(--trait-fort);border-radius:0 0 14px 14px}.dialogue-actions .action.destructive{color:var(--mauvais)}.dialogue-actions .action.annuler{border-radius:14px;font-weight:600;background:var(--carte)}.dialogue-actions .action:active{filter:brightness(.94)}@media(min-width:700px){.voile-dialogue{align-items:center;padding:24px}.dialogue{max-width:300px;gap:0;border-radius:16px;overflow:hidden;background:var(--verre-opaque);box-shadow:var(--ombre-haute)}.dialogue-texte{border-radius:0;padding:20px 18px 16px}.dialogue-actions{grid-auto-flow:column;grid-auto-columns:1fr;gap:0;border-top:.5px solid var(--trait-fort)}.dialogue-actions .action{min-height:46px;font-size:1rem;border-radius:0!important;margin:0!important;border-top:0!important;background:none}.dialogue-actions .action.annuler{order:-1;border-right:.5px solid var(--trait-fort);background:none;font-weight:400}.dialogue-actions .action[data-action]{font-weight:600}}input.bascule{-moz-appearance:none;appearance:none;-webkit-appearance:none;flex:none;width:51px;height:31px;margin:0;border-radius:16px;background:var(--trait-fort);position:relative;cursor:pointer;transition:background var(--d-court)}input.bascule:after{content:"";position:absolute;top:2px;left:2px;width:27px;height:27px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #0003;transition:transform var(--d-moyen) var(--ressort)}input.bascule:checked{background:var(--accent)}input.bascule:checked:after{transform:translate(20px)}@supports selector(::thumb){input.bascule[switch]{-moz-appearance:auto;appearance:auto;-webkit-appearance:auto;width:auto;height:auto;background:none;border-radius:0;accent-color:var(--accent);font-size:1.3125rem}input.bascule[switch]:after{display:none}}.saisie.avec-pas{padding-right:4px}.pas-groupe{display:flex;align-items:center;height:36px;border-radius:var(--r-capsule);background:var(--carte);box-shadow:0 0 0 .5px var(--trait-fort);flex:none}.saisie:focus-within .pas-groupe{background:var(--saisie)}.pas{width:44px;height:36px;border:0;background:none;color:var(--texte);font:500 1.375rem/1 var(--police);cursor:pointer;border-radius:var(--r-capsule);display:grid;place-items:center}.pas+.pas{border-left:.5px solid var(--trait-fort);border-radius:0 var(--r-capsule) var(--r-capsule) 0}.pas:first-child{border-radius:var(--r-capsule) 0 0 var(--r-capsule)}.pas:active:not(:disabled){background:var(--gris-fond)}.pas:disabled{color:var(--trait-fort);cursor:default}.curseur{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;height:28px;margin:2px 0 0;background:transparent;cursor:pointer;touch-action:pan-y}.curseur::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:linear-gradient(to right,var(--accent) var(--rempli),var(--trait-fort) var(--rempli))}.curseur::-moz-range-track{height:6px;border-radius:3px;background:linear-gradient(to right,var(--accent) var(--rempli),var(--trait-fort) var(--rempli))}.curseur::-webkit-slider-thumb{-webkit-appearance:none;width:28px;height:28px;margin-top:-11px;border-radius:50%;background:#fff;border:0;box-shadow:0 .5px 4px #0000001f,0 6px 13px #0000001f,0 0 0 .5px #0000000a}.curseur::-moz-range-thumb{width:28px;height:28px;border-radius:50%;background:#fff;border:0;box-shadow:0 .5px 4px #0000001f,0 6px 13px #0000001f}.curseur:focus-visible{outline:none}.curseur:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 35%,transparent)}@supports (font: -apple-system-body) and (-webkit-touch-callout: none){html{font:-apple-system-body}}.voile{padding-bottom:var(--clavier, 0px);transition:padding-bottom var(--d-court)}.feuille{max-height:min(92dvh,calc(var(--hauteur-visible, 100dvh) - 12px))}.balayable{position:relative;overflow:hidden;list-style:none}.balayable-supprimer{position:absolute;top:0;right:0;bottom:0;border:0;background:var(--mauvais);color:#fff;font:600 .9375rem/1 var(--police);cursor:pointer;display:flex;align-items:center;justify-content:flex-end;padding-right:18px}.balayable:not(.en-geste) .balayable-supprimer{visibility:hidden}.balayable.en-geste .balayable-supprimer{visibility:visible}.balayable-contenu{position:relative;background:var(--carte);transition:transform var(--d-moyen) var(--ressort);touch-action:pan-y;-webkit-touch-callout:none}.balayable.en-geste .balayable-contenu{transition:none}.poste.balayable{display:block;padding:0;border-top:1px solid var(--trait)}.poste .balayable-contenu{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:12px;min-height:52px;padding:10px 16px}.ligne-devis.balayable{border-radius:var(--r-carte);box-shadow:var(--ombre)}.ligne-devis .balayable-contenu{display:flex;align-items:stretch;border-radius:var(--r-carte)}.ligne-devis .carte-devis{flex:1;box-shadow:none;min-width:0}.ligne-devis .bouton-plus{align-self:center;margin-right:8px}.bouton-plus{flex:none;width:36px;height:36px;border:0;border-radius:50%;background:none;color:var(--texte-doux);display:grid;place-items:center;cursor:pointer}.bouton-plus:hover{background:var(--gris-fond)}@media(hover:none){.bouton-plus:not(:focus-visible){position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}}.groupe-actions{display:grid;margin-top:-8px;border-radius:0 0 14px 14px;overflow:hidden}.groupe-actions .action{border-top:.5px solid var(--trait-fort)!important;border-radius:0!important}.dialogue.menu .dialogue-texte p{margin-top:2px}@media(min-width:700px){.dialogue.menu .dialogue-actions{grid-auto-flow:row}.dialogue.menu .groupe-actions{margin:0;border-radius:0}.dialogue.menu .action.annuler{order:0;border-right:0;border-top:.5px solid var(--trait-fort)!important;font-weight:600}}.recherche-globale{position:sticky;top:0;z-index:1;margin-bottom:8px;color:var(--texte-doux)}.recherche-globale input{font-weight:400}.recherche-globale input::-webkit-search-cancel-button{-webkit-appearance:none}.resultats-groupe h3{margin:14px 4px 6px;font:var(--t-legende);font-weight:600;color:var(--texte-doux)}.resultats-groupe .liste-simple{background:var(--carte);border-radius:var(--r-carte);overflow:hidden;gap:0}.resultat{display:grid;gap:2px;width:100%;min-height:52px;padding:10px 16px;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.resultat:active,.resultat:hover{background:var(--carte-2)}.bienvenue{max-width:460px;min-height:calc(100dvh - 48px);margin:0 auto;padding-top:max(40px,env(safe-area-inset-top));display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px}.bienvenue-icone{width:76px;height:76px;border-radius:18px;display:grid;place-items:center;color:#fff;background:linear-gradient(180deg,#2a78dc,#0f5fc4);box-shadow:var(--ombre-haute);margin-bottom:12px}.bienvenue h1{font:var(--t-titre-1);font-size:2.125rem}.bienvenue-points{list-style:none;margin:20px 0;padding:0;display:grid;gap:22px;text-align:left}.bienvenue-points li{display:flex;gap:16px;align-items:flex-start}.bienvenue-points svg{flex:none;color:var(--accent);margin-top:2px}.bienvenue-points strong{font:var(--t-corps-fort)}.bienvenue-actions{margin-top:auto;width:100%;display:grid;gap:6px;padding-bottom:max(16px,env(safe-area-inset-bottom))}.recap{max-width:820px;margin:0 auto;padding:max(12px,env(safe-area-inset-top)) 16px 40px}.recap-outils{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.recap-page{background:var(--carte);border-radius:var(--r-carte);box-shadow:var(--ombre);padding:28px 28px 20px;display:grid;gap:22px}.recap-page h1{margin:4px 0 2px}.recap-page h2{margin:0 0 6px;font:var(--t-titre-3)}.recap-page .pied{margin-top:0}@media print{@page{margin:16mm}:root{color-scheme:light;--fond: #fff;--carte: #fff;--texte: #000;--texte-doux: #444;--trait: #ccc}body{background:#fff}.recap-outils,.toast,.barre-onglets,.entete-app{display:none!important}.recap{padding:0;max-width:none}.recap-page{box-shadow:none;padding:0;border-radius:0}.recap-page section{break-inside:avoid}}.signature{display:block;margin-top:8px}.signature a,.pied a{color:var(--texte-doux)}.signature-marque{margin:-6px 0 4px;font:var(--t-legende);font-weight:600;letter-spacing:.02em;color:var(--texte-doux)}.legal .recap-page ul{margin:0;padding-left:1.2em;display:grid;gap:6px}.legal .recap-page p{margin:0}.zone-compte{margin-top:8px;border-top:1px solid var(--trait);padding-top:12px}.zone-compte summary{cursor:pointer;font:var(--t-corps-fort);color:var(--texte-doux)}
