:root{--forest: #4C7031;--sage: #6B7D5C;--cream: #FFFCEA;--ink: #23281D;--muted: #5b6250;--line: #e2dfc6;--card: #ffffff;--bad: #a4472f;--warn: #B98317;--warn-texte: #8a6210;--bord-champ: #918e70;font-family:Schibsted Grotesk,Avenir Next,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);line-height:1.55}h1,h2,h3{line-height:1.25}.who{color:var(--muted);font-size:14px}.who select,.detail p select{font:inherit;padding:8px 10px;min-height:40px;border:1px solid var(--bord-champ);border-radius:6px;background:var(--card);color:var(--ink)}button{font:inherit;cursor:pointer;border:none;border-radius:6px;padding:9px 16px;min-height:40px;background:var(--forest);color:#fff}button.ghost{background:transparent;color:var(--forest);border:1px solid var(--forest)}button:disabled{opacity:.5;cursor:default}.err{color:var(--bad)}.empty{color:var(--muted)}.login{min-height:100dvh;display:grid;place-items:center;padding:24px}.login form{width:min(360px,100%);display:grid;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:28px}.login h1{margin:0;font-family:Spectral,Georgia,serif}.login .sub{margin:-10px 0 6px;color:var(--muted)}.login label{display:grid;gap:4px;font-size:14px}.login input{font:inherit;padding:10px 12px;min-height:40px;border:1px solid var(--bord-champ);border-radius:6px}.topbar{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;background:var(--forest);color:#fff}.topbar .brand{font-family:Spectral,Georgia,serif;font-weight:700;letter-spacing:.04em}.topbar .user{display:flex;gap:10px;align-items:center;font-size:14px}.topbar .ghost{color:#fff;border-color:#ffffffb3;padding:8px 12px}.dash{max-width:860px;margin:0 auto;padding:18px;display:grid;gap:22px}.dash.large{max-width:1120px;padding:20px 24px;gap:26px}@media(max-width:640px){.dash.large{padding:16px}}.hello h1{margin:0;font-family:Spectral,Georgia,serif}.hello .date{margin:2px 0 0;color:var(--muted)}.tiles{display:flex;gap:12px;flex-wrap:wrap}.tile{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px 18px;display:grid;min-width:130px}.tile b{font-size:26px}.tile span{color:var(--muted);font-size:13px}h2{margin:0 0 10px}h2 small{color:var(--muted);font-weight:400;font-size:13px}.queue{list-style:none;margin:0;padding:0;display:grid;gap:10px}.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px;display:grid;gap:10px}@media(min-width:640px){.card{grid-template-columns:1fr 150px 220px;align-items:center}}.what{display:grid;gap:5px;min-width:0}.what .kind{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.what strong{line-height:1.4;overflow-wrap:anywhere}.what .who{font-size:14px;overflow-wrap:anywhere}.conf{display:grid;gap:4px}.conf .pct{font-variant-numeric:tabular-nums;font-size:13px}.conf .bar{height:4px;background:var(--line);border-radius:2px;overflow:hidden}.conf .bar i{display:block;height:100%;background:var(--forest)}.conf .src{font-size:11px;color:var(--muted)}.act{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.act .classe{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:12px;background:var(--cream);border:1px solid var(--line);border-radius:99px;padding:3px 10px}.act select{font:inherit;padding:6px;border:1px solid var(--line);border-radius:6px}.topbar{flex-wrap:wrap;gap:8px}.tabs{display:flex;gap:2px;overflow-x:auto}.tabs a{color:#ffffffe6;text-decoration:none;padding:10px 14px;border-radius:6px;font-size:14px;white-space:nowrap}.tabs a.on{background:#31491d;color:#fff;font-weight:600}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters input,.filters select{font:inherit;padding:9px 11px;min-height:40px;border:1px solid var(--bord-champ);border-radius:6px;background:var(--card);min-width:0}.filters input{flex:1 1 220px}.filters input[list]{flex:0 1 200px}.filters .fdate{display:flex;align-items:center;gap:6px;font-size:14px}.filters .fdate input{flex:0 0 auto}.filters button.ghost{align-self:center}.avalider{background:#f4f1dc;border:1px solid var(--line);border-radius:12px;padding:4px 16px 14px;margin-top:16px}.avalider h2{margin:12px 0 10px}.modal-reseau{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;flex-direction:column;background:radial-gradient(1200px 700px at 50% 42%,#212b16,#141a0e 70%,#0d1108);animation:mr-in .18s ease-out}@keyframes mr-in{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:none}}.mr-head{display:flex;align-items:center;gap:18px;padding:12px 20px;flex-wrap:wrap;border-bottom:1px solid #ffffff1c}.mr-head h2{margin:0;color:#f2efe2;font-size:18px}.mr-head h2 small{color:#ffffff80;font-weight:400;font-size:13px;margin-left:8px}.mr-legende{display:flex;gap:14px;flex:1;flex-wrap:wrap}.mr-legende span{color:#ffffffb0;font-size:12px;display:inline-flex;align-items:center;gap:5px}.mr-legende i{width:10px;height:10px;border-radius:50%;display:inline-block}.mr-close{background:#ffffff14;color:#f2efe2;border:1px solid #ffffff30}.mr-close:hover{background:#ffffff26}.modal-reseau .reseau{flex:1;display:flex;flex-direction:column;min-height:0;padding:0 8px}.modal-reseau .reseau svg{flex:1;width:100%;min-height:0;background:transparent;border:none;border-radius:0}.rp-panel{display:flex;flex-direction:column;min-height:72vh;margin-top:14px;border-radius:14px;border:1px solid #ffffff1c;overflow:hidden;background:radial-gradient(1200px 700px at 50% 42%,#212b16,#141a0e 70%,#0d1108)}.rp-panel .reseau{flex:1;display:flex;flex-direction:column;min-height:0;padding:0 8px}.rp-panel .reseau svg{flex:1;width:100%;min-height:0;background:transparent;border:none}.rp-orgs{display:flex;gap:6px;flex-wrap:wrap;align-items:center}.rz-aide{text-align:center;color:#fff6;font-size:12px;margin:6px 0 10px}.rz-vide{padding:40px;color:#ffffffa0}.modal-reseau .rz-hub{fill:#f2efe2;font-size:12px;font-weight:700}.modal-reseau .rz-small{fill:#f2efe2;font-size:12.5px;font-weight:600;stroke:#10150c;stroke-width:3px;paint-order:stroke}.modal-reseau .rz-tiny{fill:#cfd4c0;font-size:10.5px;stroke:#10150c;stroke-width:2.5px;paint-order:stroke}.bloc{margin-top:18px}.bloc h3{margin:0 0 8px;font-size:15px}.bloc h3 small{color:var(--muted);font-weight:400}.souslist{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:14px}.souslist li{padding:6px 10px;background:var(--card);border:1px solid var(--line);border-radius:8px;display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.chronique li b{font-variant-numeric:tabular-nums}.portee{display:block;margin-top:8px;font-size:13px;color:var(--muted)}.resume{background:#f4f1dc;border:1px solid var(--line);border-radius:8px;padding:10px 12px;margin:0 0 8px;font-size:14px}.vues{display:flex;gap:6px}.rz-hub{fill:#fff;font-size:11px;font-weight:700}.rz-small{fill:var(--ink);font-size:12px;font-weight:600}.rz-tiny{fill:var(--muted);font-size:10px}.reseau svg{touch-action:none;-webkit-user-select:none;user-select:none}.cle{display:flex;gap:10px;align-items:center;padding:4px 0;font-size:14px}.secret{background:#fff6d8;border:1px solid var(--warn);border-radius:8px;padding:8px 10px;font-size:13px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.secret code{font-weight:700;word-break:break-all}button.danger{background:transparent;color:var(--bad);border:1px solid var(--bad)}button.danger:hover{background:var(--bad);color:#fff}.maillist{list-style:none;margin:0;padding:0;display:grid;gap:12px}.maillist li{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:16px 18px;display:flex;justify-content:space-between;gap:16px;cursor:pointer}.maillist li.norow{cursor:default}.maillist .meta{display:grid;gap:6px;justify-items:end;flex-shrink:0}.maillist .montant{font-variant-numeric:tabular-nums;font-weight:600}.statut{font-size:12.5px;border-radius:99px;padding:3px 10px;background:var(--line)}.statut.confirme{background:#dcebd2;color:var(--forest)}.statut.suggere{background:#f4e9cd;color:var(--warn-texte)}.ok{color:var(--forest)}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:grid;place-items:center;padding:16px}.detail{background:var(--card);border-radius:12px;padding:24px;width:min(680px,100%);max-height:90dvh;overflow:auto;display:grid;gap:14px}.detail.large{width:min(900px,100%)}.detail.large>.act{position:sticky;bottom:-24px;margin:0 -24px -24px;padding:14px 24px;background:var(--card);border-top:1px solid var(--line);border-radius:0 0 12px 12px}@media(max-width:640px){.detail.large>.act{position:static;margin:8px 0 0;padding:14px 0 0}}.detail header{display:flex;justify-content:space-between;align-items:start;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}.detail h2{margin:0;font-size:21px}.detail .body{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--cream);border:1px solid var(--line);border-radius:8px;padding:12px;font:13px/1.5 inherit;max-height:40dvh;overflow:auto}.lignes{width:100%;border-collapse:collapse;font-size:15px}.lignes td{padding:9px 10px;border-top:1px solid var(--line)}.lignes .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.lignes .total td{border-top:2px solid var(--ink)}.dropzone{border:2px dashed var(--sage);border-radius:12px;background:var(--card);padding:26px 18px;display:grid;gap:4px;justify-items:center;text-align:center;cursor:pointer;transition:background .15s,border-color .15s}.dropzone.on,.dropzone:hover{background:#f2f6ec;border-color:var(--forest)}.dropzone span{color:var(--muted);font-size:13px}.uploads{list-style:none;margin:0;padding:0;display:grid;gap:6px;font-size:14px}.uploads li{display:flex;justify-content:space-between;gap:12px;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:10px 14px}.fiche{display:grid;gap:8px;background:var(--cream);border:1px dashed var(--sage);border-radius:8px;padding:12px}.fiche .proposition{display:grid;gap:4px}.fiche .proposition p{margin:0}.fiche .recalibre input{flex:1 1 260px;font:inherit;padding:7px 10px;border:1px solid var(--line);border-radius:6px}.creation{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));background:var(--card);border:1px solid var(--line);border-radius:10px;padding:16px}.creation label.who{display:grid;gap:6px;align-content:start}.creation input,.creation select{font:inherit;padding:9px 11px;min-height:40px;border:1px solid var(--bord-champ);border-radius:6px}.creation button{grid-column:1 / -1;justify-self:start}.sousliste{list-style:none;margin:8px 0 0;padding:8px 0 0;border-top:1px solid var(--line);display:grid;gap:4px;font-size:13px;color:var(--muted)}.badge-role{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:11px;letter-spacing:.08em;background:#fff2;border-radius:99px;padding:2px 8px;margin:0 8px}.pjs{display:grid;gap:6px}.pjs-titre{font-family:IBM Plex Mono,ui-monospace,monospace;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.pjs ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.pjs li{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;background:var(--cream);border:1px solid var(--line);border-radius:8px;padding:8px 12px}.pj-nom{overflow-wrap:anywhere}.pj-nom small{color:var(--muted)}.pj-etat{display:flex;gap:8px;align-items:center}.pj-etat a{color:var(--forest);font-size:13px}.provisioning{display:grid;gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line);cursor:default}.svc{display:flex;gap:8px;align-items:baseline;font-size:14px;cursor:pointer}.svc small{color:var(--muted)}.syncbar{display:flex;gap:12px;align-items:center;background:var(--card);border:1px solid var(--sage);border-left:4px solid var(--forest);border-radius:10px;padding:12px 16px}.syncbar div{display:grid;gap:2px}.syncbar span{color:var(--muted);font-size:13px}.syncbar b{color:var(--ink)}.spinner{width:22px;height:22px;flex-shrink:0;border-radius:50%;border:3px solid var(--line);border-top-color:var(--forest);animation:b4spin .9s linear infinite}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:2.5s}}@keyframes b4spin{to{transform:rotate(1turn)}}.a-valider{margin:0 0 18px}.a-valider>h2{font-size:17px;margin:0 0 6px;color:var(--warn-texte)}.a-valider>.who{margin:0 0 10px}h2.section{font-size:14px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:8px 0 6px;padding-top:16px;font-weight:600;border-top:1px solid var(--line)}.maillist li.doute{border-left:3px solid var(--warn);align-items:start}.raisons{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:5px}.raison{font-size:13.5px;color:var(--muted);line-height:1.5}.raison.haute{color:var(--bad)}.bandeau-doute{background:#fbf3df;border:1px solid #eddcb0;border-radius:10px;padding:10px 12px;margin:12px 0}.bandeau-doute strong{color:var(--warn-texte);display:block;font-size:13.5px}.bandeau-doute p{margin:4px 0 0;font-size:14px}.champs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:4px 0 8px}.champ{display:grid;gap:6px;align-content:start}.champ .etiquette{font-size:13px;color:var(--muted)}.champ input{padding:10px 12px;min-height:40px;border:1px solid var(--bord-champ);border-radius:8px;background:var(--card);color:var(--ink);font:inherit;width:100%}.champ input:focus{outline:2px solid var(--sage);outline-offset:-1px}.champ.douteux input{border-color:var(--warn);background:#fffdf6}.champ.douteux.haute input{border-color:var(--bad)}.champ .raison{font-size:13px}.ghost.petit{font-size:13px;padding:7px 12px;min-height:0;justify-self:start}.soustitre{margin:8px 0 0;font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:600}.soustitre small{text-transform:none;letter-spacing:0;font-weight:400}.lignes tr.doute{background:#fbf3df}.lignes select{width:100%;max-width:210px;padding:4px 6px;font-size:12.5px;border:1px solid var(--line);border-radius:6px;background:var(--card);color:var(--ink)}.lignes select.vide{border-color:var(--bad);background:#fffdf6}.lignes .statut{margin-left:8px;font-size:12px}.act button:disabled{opacity:.45;cursor:not-allowed}.factures{display:grid;gap:10px}.tablewrap{overflow-x:auto;background:var(--card);border:1px solid var(--line);border-radius:10px}.factures table{width:100%;border-collapse:collapse;font-size:14px}.factures th{text-align:left;vertical-align:bottom;padding:0;white-space:nowrap;border-bottom:1px solid var(--line);background:#faf8ec}.factures th.num{text-align:right}.factures th button{width:100%;background:none;color:var(--muted);border:none;font:inherit;font-size:12.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;text-align:inherit;padding:12px 14px;min-height:44px;display:flex;align-items:center;gap:6px}.factures th.num button{justify-content:flex-end}.factures th button:hover{color:var(--forest);background:#f2f6ec}.factures th button:focus-visible{outline:2px solid var(--forest);outline-offset:-2px}.factures th .fleche{font-size:10px;opacity:.45}.factures th.trie button{color:var(--forest)}.factures th.trie .fleche{opacity:1}.factures td{padding:13px 14px;border-top:1px solid var(--line);vertical-align:top}.factures td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.factures tbody tr{cursor:pointer}.factures tbody tr:hover{background:#f7f9f3}.factures tbody tr:focus-visible{outline:2px solid var(--forest);outline-offset:-2px}.ventilation{list-style:none;margin:0;padding:0;display:grid;gap:12px}.ventilation>li{border:1px solid var(--line);border-radius:10px;padding:14px 16px;display:grid;gap:10px;background:var(--card)}.ventilation>li.attente{border-left:3px solid var(--warn);background:#fffdf6}.ventilation>li.tranchee{border-left:3px solid var(--forest)}.ventilation .article{display:flex;justify-content:space-between;gap:14px;align-items:baseline}.ventilation .article strong{line-height:1.4;overflow-wrap:anywhere}.ventilation .article .montant{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}.ventilation .proposition{display:grid;gap:3px;background:var(--cream);border:1px dashed var(--sage);border-radius:8px;padding:10px 12px}.ventilation .proposition.faible{border-color:var(--warn);background:#fbf3df}.ventilation .proposition .etiquette{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.ventilation .proposition b{font-size:15px}.ventilation .proposition .who{font-size:13px;color:var(--muted)}.ventilation .proposition .raison{margin:4px 0 0;font-style:italic}.ventilation .decision{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.ventilation .decision label{display:grid;gap:4px;flex:1 1 240px}.ventilation .decision .etiquette{font-size:12.5px;color:var(--muted)}.ventilation .decision select{font:inherit;padding:9px 11px;min-height:40px;border:1px solid var(--bord-champ);border-radius:8px;background:var(--card);color:var(--ink);width:100%}.ventilation .decision select.vide{border-color:var(--warn);background:#fffdf6}.ventilation .decision button{flex:0 0 auto}.ventilation .article .montant{display:grid;justify-items:end;gap:2px}.taxe-item{font-size:12px;font-weight:400;color:var(--muted);white-space:nowrap}
