:root{--fond: #ffffff;--surface: #ffffff;--surface-2: #f8f9fa;--bande: #e9ebf0;--onyx: #090c1d;--encre: #202020;--texte: #2a2a2a;--gris: #646464;--gris-2: #838383;--trait: #e8e8e8;--trait-fin: #d4d4d4;--action: #202020;--action-survol: #000000;--action-texte: #ffffff;--accent: #0091ff;--accent-doux: #eaf5ff;--marque: #6647f0;--marque-doux: #f0edfe;--danger: #e5484d;--ok: #00c07a;--survol: rgba(0, 0, 0, .035);--doux: #f8f9fa;--pointille: #d4d4d4;--champ-bord: #d4d4d4;--champ-bord-survol: #b3b3b3;--placeholder: #a3a3a3;--err-fond: #fdecec;--err-texte: #b42318;--warn-fond: #fff3e0;--warn-texte: #a15c00;--ok-fond: #e3f8ef;--ok-texte: #067a50;--sortie-fond: #fdeaf5;--sortie-texte: #c4127e;--ajust-fond: #f0edfe;--ajust-texte: #5135d6;--info-fond: #eaf5ff;--info-texte: #0063b0;--cadre: #e9ebf0;--rose: #c8007a;--bleu: #1f4e79;--r: 12px;--r-grand: 20px;--r-champ: 9px;--conic: conic-gradient(from var(--angle, 90deg), #7d5be7 19%, #bc3fda 28%, #fa24ce 37%, #fb49a5 45%, #fc6d7b 52%, #fd8461 55%, #fd9a46 58%, #f687c6 65%, #a3a0e0 80%, #4fb9fa 95%, #0091ff 100%);--degrade: linear-gradient(83deg, #40ddff -5%, #7612fa 51%, #fa18e3 125%);--titre: "Plus Jakarta Sans", "Inter", ui-sans-serif, system-ui, sans-serif;--police: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono: "Sometype Mono", "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--ease: cubic-bezier(.33, 1, .68, 1);color-scheme:light;font-family:var(--police);font-feature-settings:"calt" 0;color:var(--texte);background:var(--fond)}@property --angle{syntax: "<angle>"; initial-value: 90deg; inherits: false;}*{box-sizing:border-box}body{margin:0;background:var(--fond);-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;font-size:15px}::selection{background:var(--accent);color:#fff}h1,h2,h3{font-family:var(--titre);color:var(--onyx)}h1{font-size:34px;line-height:1.15;font-weight:800;margin:0;display:flex;align-items:center;gap:12px;flex-wrap:wrap;letter-spacing:-.023em}h2{font-size:20px;line-height:1.3;font-weight:700;margin:32px 0 12px;letter-spacing:-.02em}h3{font-size:16px;font-weight:700;margin:24px 0 8px;letter-spacing:-.01em}p{line-height:1.55;max-width:72ch}a{color:var(--accent);font-weight:600;text-decoration:none}a:hover{text-decoration:underline}code{background:var(--surface-2);color:var(--encre);padding:2px 8px;border-radius:6px;font-family:var(--mono);font-size:.88em}.muted{color:var(--gris)}.small{font-size:13px}.nowrap{white-space:nowrap}.danger{color:var(--danger)}.strong{font-weight:700;color:var(--encre)}.row{display:flex;align-items:center}.row.gap{gap:12px}.row.wrap{flex-wrap:wrap}.row.between{justify-content:space-between;gap:12px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.shell{min-height:100vh}.topnav-wrap{background:var(--fond);border-bottom:1px solid var(--trait);position:sticky;top:0;z-index:20}.topbar-util{background:#202020;color:#b3b3b3;font-size:12px}.topbar-util>div{max-width:1280px;margin:0 auto;padding:7px 32px;display:flex;justify-content:space-between;gap:12px}.topbar-util b{color:#fff;font-weight:600}.topnav{display:flex;align-items:center;gap:28px;padding:12px 32px;max-width:1280px;margin:0 auto}.brand{display:flex;align-items:center;gap:10px;color:var(--encre)}.wordmark{font-family:var(--titre);font-size:21px;font-weight:800;letter-spacing:-.04em;color:var(--onyx);line-height:1.1}.wordmark small{display:block;font-family:var(--mono);font-size:10px;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--gris-2);margin-top:1px}.toplinks{display:flex;gap:2px;flex:1}.toplinks a{color:var(--texte);font-size:14px;font-weight:600;padding:7px 13px;border-radius:9999px;text-decoration:none;transition:background .15s,color .15s}.toplinks a:hover{background:var(--survol)}.toplinks a.active{background:var(--accent-doux);color:var(--accent)}.me{display:flex;align-items:center;gap:12px}.me-nom{text-align:right;font-size:13px;font-weight:600;color:var(--encre)}.me-nom small{display:block;color:var(--gris-2);font-size:12px;font-weight:500}.selecteur-societe{padding:7px 34px 7px 14px;border-radius:9999px;font-size:13px;font-weight:600;max-width:220px;background-color:var(--surface-2);border-color:var(--trait)}.content{padding:32px 32px 96px;max-width:1280px;margin:0 auto}.bottomnav,.mobile-only{display:none}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:24px}.page-head h2{margin:0}.page-head>div>a.small{display:inline-block;margin-bottom:8px;color:var(--gris)}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.actions.end{justify-content:flex-end;margin-top:16px}.card{background:var(--surface);border:1px solid var(--trait);border-radius:var(--r);padding:24px 28px;margin-bottom:20px}.card>h2:first-child{margin-top:0}.cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,460px);gap:20px;align-items:start}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.center-page{min-height:100vh;display:grid;place-items:center;padding:20px}.narrow{width:100%;max-width:440px}.arc-en-ciel{position:relative;border:0!important;background:var(--surface);isolation:isolate}.arc-en-ciel:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:inherit;z-index:-1;background:var(--conic);animation:tourne-angle 4s linear infinite}.arc-en-ciel:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:var(--surface);z-index:-1}@keyframes tourne-angle{to{--angle: 450deg}}.login{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;max-width:1200px;margin:0 auto;padding:40px 32px;gap:56px}.login-visuel{display:flex;flex-direction:column;gap:28px}.login .display{font-family:var(--titre);font-size:60px;line-height:1.05;font-weight:800;letter-spacing:-.04em;margin:0;color:var(--onyx);max-width:12ch}.login .lead{font-size:17px;color:var(--gris);max-width:460px;margin:0}.coches{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.coches li{display:flex;gap:10px;align-items:baseline;color:var(--gris);font-size:15px}.coches li:before{content:"✓";color:var(--accent);font-weight:800;font-size:17px}.coches b{color:var(--encre);font-weight:700}.login-texte{position:relative;display:grid;place-items:center}.login-form{width:100%;max-width:400px;display:flex;flex-direction:column;gap:2px;padding:32px;border-radius:var(--r-grand)}.login-form h2{margin:0 0 18px;font-size:26px;letter-spacing:-.023em}.login-form .btn{margin-top:10px}.login-reglages{position:fixed;top:16px;right:16px;z-index:5}input,select,textarea{font:inherit;font-size:14px;padding:10px 13px;border:1px solid var(--champ-bord);border-radius:var(--r-champ);background:var(--surface);color:var(--encre);min-width:0;transition:border-color .15s,box-shadow .15s}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:36px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23838383' fill='none' stroke-width='1.8'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center}input::placeholder,textarea::placeholder{color:var(--placeholder)}input:hover,select:hover,textarea:hover{border-color:var(--champ-bord-survol)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #0091ff26}input[type=checkbox],input[type=radio]{width:17px;height:17px;accent-color:var(--encre);padding:0}input[type=color]{padding:2px;width:40px;height:32px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field>span{font-size:13px;font-weight:600;color:var(--encre)}.field em{color:var(--danger);font-style:normal}.field input,.field select,.field textarea{width:100%}.radio{display:flex;align-items:center;gap:8px;padding:8px 16px;border:1px solid var(--trait);border-radius:9999px;cursor:pointer;font-weight:600;font-size:14px}.radio:has(input:checked){border-color:var(--encre);background:var(--surface-2);color:var(--encre)}.inline{border-color:transparent;background-color:transparent;padding:6px 8px;width:100%;border-radius:8px}.inline:hover{border-color:var(--trait)}.inline.num{text-align:right}select.inline{background-position:right 8px center;padding-right:28px}.check{display:flex;align-items:center;gap:10px;font-weight:500;margin:8px 0;cursor:pointer;color:var(--encre)}.btn{font:inherit;font-family:var(--titre);font-size:14px;font-weight:700;letter-spacing:-.005em;border:1px solid transparent;border-radius:9999px;padding:11px 22px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;transition:background .15s,color .15s,border-color .15s}.btn:hover{text-decoration:none}.btn.primary{background:var(--action);color:var(--action-texte)}.btn.primary:hover{background:var(--action-survol)}.btn.ghost{background:transparent;color:var(--encre);border-color:var(--trait)}.btn.ghost:hover{border-color:var(--encre)}.btn.ghost.danger{color:var(--danger)}.btn.ghost.danger:hover{border-color:var(--danger)}.btn.sm{padding:6px 13px;font-size:13px}.btn.block{width:100%;margin-top:10px;padding:13px}.btn:disabled{opacity:.45;cursor:default}.alert{padding:12px 16px;border-radius:10px;margin-bottom:16px;background:var(--surface-2);color:var(--encre);font-size:14px;border:1px solid var(--trait)}.alert.info{background:var(--info-fond);color:var(--info-texte);border-color:transparent}.alert.error{background:var(--err-fond);color:var(--err-texte);border-color:transparent}.alert.ok{background:var(--ok-fond);color:var(--ok-texte);border-color:transparent}.badge{display:inline-block;padding:4px 11px;border-radius:9999px;font-size:12px;font-weight:600;white-space:nowrap;background:var(--pastille, #9a9aa6);color:var(--pastille-texte, #fff)}.badge.sm{padding:3px 9px;font-size:11px;min-width:80px;text-align:center}.tag{display:inline-block;padding:3px 10px;border-radius:9999px;font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.02em;white-space:nowrap;color:var(--marque);background:var(--marque-doux)}.pill{padding:3px 10px;border-radius:9999px;font-size:11px;font-weight:600;white-space:nowrap}.pill.entree{background:var(--ok-fond);color:var(--ok-texte)}.pill.sortie{background:var(--sortie-fond);color:var(--sortie-texte)}.pill.ajustement{background:var(--ajust-fond);color:var(--ajust-texte)}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:14px;font-variant-numeric:tabular-nums}.table th{text-align:left;font-family:var(--mono);font-size:10px;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--gris-2);padding:10px;white-space:nowrap;border-bottom:1px solid var(--trait)}.table td{padding:12px 10px;border-bottom:1px solid var(--trait);vertical-align:middle;color:var(--texte)}.table tbody tr:last-child td{border-bottom:0}.table td b{color:var(--encre)}.table.clickable tbody tr{cursor:pointer}.table.clickable tbody tr:hover td{background:var(--survol)}.table .num{text-align:right}.table .chk{width:36px}.table .comment{max-width:260px;color:var(--gris)}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.search{flex:1;min-width:240px;padding-left:38px!important;background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23838383' stroke-width='1.8'%3E%3Ccircle cx='7' cy='7' r='5.5'/%3E%3Cpath d='M11 11l4 4'/%3E%3C/svg%3E") no-repeat 13px center}.bulkbar{display:flex;gap:12px;align-items:center;background:var(--action);color:var(--action-texte);padding:6px 6px 6px 18px;border-radius:9999px;margin-bottom:14px;flex-wrap:wrap;font-weight:600;font-size:14px}.bulkbar select{border:0;border-radius:9999px}.bulkbar .btn.ghost{background:transparent;color:var(--action-texte);border-color:#ffffff59}.tabs{display:flex;gap:4px;margin-bottom:20px;overflow-x:auto;background:var(--surface-2);padding:4px;border-radius:9999px;border:1px solid var(--trait);width:max-content;max-width:100%}.tabs button{font:inherit;font-size:14px;font-weight:600;background:none;border:0;padding:7px 15px;border-radius:9999px;cursor:pointer;color:var(--gris);white-space:nowrap;transition:background .15s,color .15s}.tabs button:hover{color:var(--encre)}.tabs button.on{background:var(--surface);color:var(--encre);box-shadow:0 1px 3px #0000001a,0 1px 2px -1px #0000001a}.add-row{margin-top:18px;padding-top:18px;border-top:1px solid var(--trait)}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:8px}.kpi{background:var(--surface);border:1px solid var(--trait);border-radius:var(--r);padding:20px 24px}.kpi small{color:var(--gris-2);display:block;font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.kpi b{display:block;margin-top:6px;font-family:var(--titre);font-size:48px;line-height:1;font-weight:700;letter-spacing:-.04em;color:var(--onyx);font-variant-numeric:tabular-nums}.statut-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.statut-card{background:var(--surface);border:1px solid var(--trait);border-radius:9999px;padding:10px 12px 10px 16px;display:flex;justify-content:space-between;align-items:center;gap:10px;color:var(--encre);text-decoration:none;transition:border-color .15s}.statut-card:before{content:"";width:10px;height:10px;border-radius:50%;background:var(--pastille);flex:none}.statut-card span{font-weight:600;flex:1;font-size:14px}.statut-card b{font-family:var(--titre);font-size:18px;font-weight:700;letter-spacing:-.02em;background:var(--surface-2);border-radius:9999px;padding:2px 11px}.statut-card:hover{text-decoration:none;border-color:var(--encre)}dl.info{display:grid;grid-template-columns:max-content 1fr;gap:10px 24px;margin:0 0 16px}.info dt{color:var(--gris-2);font-size:13px}.info dd{margin:0;color:var(--encre)}.timeline{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.statut-picker{display:flex;flex-wrap:wrap;gap:6px}.statut-opt{font:inherit;font-size:13px;font-weight:600;border:1px solid var(--trait);background:var(--surface);color:var(--encre);padding:7px 14px 7px 11px;border-radius:9999px;cursor:pointer;display:inline-flex;align-items:center;gap:7px}.statut-opt:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--c)}.statut-opt:hover{border-color:var(--encre)}.statut-opt.on{background:var(--c);color:var(--t);border-color:var(--c)}.statut-opt.on:before{background:var(--t)}.photos{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.photo-slot{position:relative;aspect-ratio:1;border:1px dashed var(--pointille);border-radius:var(--r);display:grid;place-items:center;cursor:pointer;overflow:hidden;background:var(--doux)}.photo-slot:hover{border-color:var(--encre)}.photo-slot.done{border-style:solid;border-color:var(--ok)}.photo-slot img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.photo-slot .plus{font-size:22px;opacity:.5}.photo-label{position:absolute;bottom:6px;left:6px;right:6px;background:#202020d9;color:#fff;font-size:11px;font-weight:600;text-align:center;padding:4px 6px;border-radius:9999px}.articles-list{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.article-line{display:grid;grid-template-columns:1fr 96px 28px;gap:10px;align-items:center}.article-line input{text-align:right;padding:8px 12px}.profils{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.profil{background:var(--surface-2);border-radius:var(--r);padding:14px 16px}.profil b{color:var(--encre);font-family:var(--titre)}.profil small{display:block;color:var(--gris);margin-top:4px;line-height:1.45}.dropzone{display:block;border:1px dashed var(--pointille);border-radius:var(--r);padding:30px;text-align:center;cursor:pointer;margin:14px 0;background:var(--doux)}.dropzone:hover{border-color:var(--encre)}.dropzone input{display:block;margin:0 auto 10px;border:0;padding:0;background:transparent}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#090c1d73;display:grid;place-items:center;padding:16px;z-index:50}.modal-body{width:100%;max-width:660px;max-height:92vh;overflow:auto;border-radius:var(--r-grand);box-shadow:0 24px 60px #090c1d40}.modal-body.wide{max-width:1040px;background:var(--fond);padding:24px}.kpis.mini{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin:16px 0 6px}.kpis.mini .kpi{background:var(--surface-2);border-color:transparent;padding:12px 14px}.kpis.mini .kpi b{font-size:28px}.kpis.mini .unite{font-size:13px;font-weight:600;letter-spacing:0;color:var(--gris)}.spinner{width:30px;height:30px;border:3px solid var(--trait);border-top-color:var(--encre);border-radius:50%;animation:tourne .8s linear infinite;margin:50px auto}@keyframes tourne{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.spinner{animation-duration:3s}.arc-en-ciel:before{animation:none}*{transition:none!important}}html.compact .toplinks,html.compact .me-nom,html.compact .desktop-only,html.compact .topbar-util{display:none}html.compact .mobile-only{display:block}html.compact .topnav{padding:10px 16px;padding-top:max(10px,env(safe-area-inset-top));gap:10px;justify-content:space-between}html.compact .content{padding:18px 14px calc(88px + env(safe-area-inset-bottom))}html.compact h1{font-size:26px}html.compact .bottomnav{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--fond);border-top:1px solid var(--trait);z-index:20;padding-bottom:env(safe-area-inset-bottom)}html.compact .bottomnav a{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:9px 2px;font-size:11px;font-weight:600;color:var(--gris-2);text-decoration:none}html.compact .bottomnav a.active{color:var(--encre)}html.compact .cols,html.compact .grid2{grid-template-columns:1fr}html.compact .cards{display:flex;flex-direction:column;gap:8px}html.compact .client-card{display:flex;flex-direction:column;gap:6px;background:var(--surface);border:1px solid var(--trait);border-radius:var(--r);padding:14px 16px;color:var(--texte);text-decoration:none;font-weight:500}html.compact .client-card:hover{text-decoration:none;border-color:var(--encre)}html.compact .client-card b{color:var(--encre)}html.compact input,html.compact select,html.compact textarea{font-size:16px}html.compact .filters select{flex:1}html.compact .card{padding:16px}html.compact .kpis{grid-template-columns:repeat(2,1fr);gap:8px}html.compact .kpi{padding:14px}html.compact .kpi b{font-size:34px}html.compact .kpis.mini{grid-template-columns:repeat(2,1fr)}html.compact .login{grid-template-columns:1fr;padding:72px 18px 32px;gap:32px}html.compact .login .display{font-size:40px}html.compact .login-form{padding:24px 20px}html.compact .tabs{width:100%}html.compact .statut-grid{grid-template-columns:repeat(2,1fr)}html.compact .selecteur-societe{max-width:130px;padding:7px 28px 7px 10px;font-size:12px;background-position:right 9px center}html.compact .deconnexion{padding:0;width:36px;height:36px;display:grid;place-items:center}html.compact .deconnexion .txt{display:none}html.compact .deconnexion .ico{display:grid}html.compact .wordmark small{display:none}html.compact .me,html.compact .reglages{gap:6px}html.compact .segment button{width:30px}.deconnexion .ico{display:none}.rapport-page{color-scheme:light;background:#e5e7eb;min-height:100vh;padding:16px 0 40px}.rapport-actions{display:flex;justify-content:center;gap:10px;margin-bottom:16px}.r-feuille{width:210mm;min-height:297mm;margin:0 auto 16px;background:#fff;padding:12mm;box-shadow:0 2px 12px #00000026;font-family:Calibri,Carlito,Arial,sans-serif;color:#000}.r-entete{display:flex;justify-content:space-between;align-items:center;margin-bottom:8mm}.r-logo-gr{font-weight:800;font-size:22px;color:var(--bleu);letter-spacing:.02em}.r-logo-gr span{background:var(--bleu);color:#fff;padding:2px 8px;border-radius:6px;margin-right:4px}.r-logo-op{font-weight:900;font-size:30px;color:#8c1d7a;letter-spacing:.12em;font-family:Arial,sans-serif}.r-titre{justify-content:center;font-weight:700;letter-spacing:0;line-height:1.2;font-size:28px;color:#0b2a5b;text-decoration:underline;margin:0 0 6mm}.r-client{font-weight:700;letter-spacing:0;font-size:20px;color:#0b2a5b;margin:0 0 4mm 12mm;text-decoration:underline}.r-client span{font-size:14px;font-weight:400}.r-table{width:100%;border-collapse:collapse;margin-bottom:6mm;font-size:12px}.r-table th{background:var(--rose);color:#fff;font-weight:400;padding:3px 4px;border:1px solid #000}.r-table td{text-align:center;padding:3px 4px;border:1px solid #000;height:22px}.r-grille{display:grid;grid-template-columns:1fr 1fr;border:1px solid #000;margin-bottom:8mm}.r-grille.sans-titre{border:0;margin:0}.r-bloc{border:1px solid #000;margin-bottom:8mm}.r-bloc>.r-cell-titre{border-bottom:1px solid #000}.r-cell{border:1px solid #000;margin:-.5px;display:flex;flex-direction:column}.r-grille.sans-titre .r-cell{border:0}.r-cell-titre{text-align:center;font-weight:700;font-size:20px;color:#0b2a5b;padding:4px;border-bottom:1px solid #000}.r-cell-img{height:85mm;display:grid;place-items:center;padding:3mm}.r-cell-img img{max-width:100%;max-height:100%;object-fit:contain}.r-obs{place-items:start;font-size:13px;white-space:pre-wrap}@media print{@page{size:A4;margin:0}.no-print{display:none!important}body{background:#fff}.rapport-page{background:#fff;padding:0}.r-feuille{box-shadow:none;margin:0;page-break-after:always;break-after:page}.r-feuille:last-child{page-break-after:auto;break-after:auto}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}}html[data-format=tablette] body,html[data-format=telephone] body{background:var(--cadre)}html[data-format=tablette] #root,html[data-format=telephone] #root{max-width:var(--largeur-app);margin:0 auto;min-height:100vh;background:var(--fond);border-left:1px solid var(--trait);border-right:1px solid var(--trait)}html[data-format=tablette] .bottomnav,html[data-format=telephone] .bottomnav{left:50%;right:auto;width:min(var(--largeur-app),100%);transform:translate(-50%)}html[data-format] #root:has(>.rapport-page){max-width:none;border:0}.reglages{display:flex;align-items:center;gap:6px}.segment{display:flex;background:var(--surface-2);border:1px solid var(--trait);border-radius:9999px;padding:2px}.segment button,.segment-btn{display:grid;place-items:center;width:32px;height:28px;border:0;border-radius:9999px;background:none;color:var(--gris-2);cursor:pointer}.segment button:hover,.segment-btn:hover{color:var(--encre)}.segment button.on{background:var(--surface);color:var(--encre);box-shadow:0 1px 3px #0000001a}.segment-btn{background:var(--surface-2);border:1px solid var(--trait);width:34px;height:34px}@media (max-width: 600px){.formats{display:none}}:root[data-theme=dark]{color-scheme:dark;--fond: #111111;--surface: #191919;--surface-2: #202020;--bande: #1a1a1a;--onyx: #ffffff;--encre: #f5f5f5;--texte: #e2e2e2;--gris: #b3b3b3;--gris-2: #8f8f8f;--trait: #2a2a2a;--trait-fin: #3a3a3a;--action: #f8f9fa;--action-survol: #ffffff;--action-texte: #202020;--accent: #4fb9fa;--accent-doux: rgba(79, 185, 250, .14);--marque: #a596ff;--marque-doux: rgba(102, 71, 240, .2);--danger: #ff6b6b;--survol: rgba(255, 255, 255, .04);--doux: #1d1d1d;--pointille: #3a3a3a;--champ-bord: #333333;--champ-bord-survol: #4a4a4a;--placeholder: #6e6e6e;--err-fond: #3a1517;--err-texte: #ff9b9b;--warn-fond: #3a2a10;--warn-texte: #ffc46b;--ok-fond: #0d2e22;--ok-texte: #6ee7b7;--sortie-fond: #3a1230;--sortie-texte: #ff7cc4;--ajust-fond: #241d4a;--ajust-texte: #b7aaff;--info-fond: #0d2a40;--info-texte: #8fd0ff;--cadre: #000000}:root[data-theme=dark] .topbar-util{background:#000}:root[data-theme=dark] .rapport-page{color-scheme:light}.table td.danger,.table .danger{color:var(--danger)}html.compact .wordmark{display:none}html.compact .selecteur-societe{max-width:120px}html.compact .filters .search{min-width:100%}html.compact .filters select{flex:1 1 30%;min-width:0}html.compact .login .wordmark{display:inline}label.article-line.modele{cursor:pointer}.article-line.modele span{display:flex;align-items:center;gap:8px}.article-line.modele span input{width:auto;padding:0;margin:0;accent-color:var(--accent)}.article-line.modele input[readonly]{background:var(--surface-2);color:var(--gris);pointer-events:none}.article-line.modele:not(.on) input[readonly]{opacity:.45}.pill.transfert{background:var(--info-fond);color:var(--info-texte)}.table th.lien{cursor:pointer}.table th.lien:hover{color:var(--accent)}.lignes-mvt{display:grid;gap:8px;margin:4px 0 16px}.lignes-tete,.ligne-mvt{display:grid;grid-template-columns:1fr 110px 36px;gap:8px;align-items:center}.lignes-tete span{font-family:var(--mono, "Sometype Mono", monospace);font-size:11px;text-transform:uppercase;color:var(--gris-2)}.ligne-mvt input{text-align:right}.ligne-mvt .dispo{grid-column:1 / -1;margin-top:-4px}.lignes-mvt>.btn{justify-self:start}textarea.series{font-family:Sometype Mono,ui-monospace,monospace;font-size:13px;line-height:1.6;width:100%}.serie-pied{margin:8px 0 4px;align-items:center}.ok-texte{color:var(--ok-texte)}.btn.serie-a-faire{background:var(--err-fond);color:var(--err-texte);border:1px solid transparent}.series-liste{max-height:260px;overflow:auto}.filtre-serie{max-width:220px;padding:6px 12px}td.mono{font-family:Sometype Mono,ui-monospace,monospace;font-size:13px}.choix-serie{display:grid;gap:6px;margin:6px 0 4px;padding:12px;border:1px dashed var(--trait-fin);border-radius:12px}.choix-serie label{font-weight:600;font-size:13px}.choix-serie input{font-family:Sometype Mono,ui-monospace,monospace}.choix-serie .obligatoire{color:var(--danger);font-style:normal}.num-mvt{display:inline-block;padding:3px 10px;border-radius:9999px;font-size:12px;font-weight:700;white-space:nowrap;background:hsl(var(--h) 75% 92%);color:hsl(var(--h) 60% 28%)}.ligne-mvt-num td:first-child{box-shadow:inset 4px 0 hsl(var(--h) 65% 55%)}:root[data-theme=dark] .num-mvt{background:hsl(var(--h) 40% 20%);color:hsl(var(--h) 85% 78%)}:root{--serie-1: #2a78d6;--serie-2: #eb6834;--serie-3: #1baf7a;--serie-4: #eda100;--serie-5: #e87ba4;--serie-6: #008300;--serie-7: #6250d6;--serie-8: #e34948;--serie-autre: #a3a3a3}:root[data-theme=dark]{--serie-1: #3987e5;--serie-2: #d95926;--serie-3: #199e70;--serie-4: #c98500;--serie-5: #d55181;--serie-6: #008300;--serie-7: #9085e9;--serie-8: #e66767;--serie-autre: #5c5c5c}.tdb-tete{align-items:flex-end}.tdb-tete p{margin:6px 0 0}.tdb-periode{display:flex;flex-direction:column;align-items:flex-end;gap:8px;font-size:13px;font-weight:600;color:var(--gris)}.tdb-periode label{display:flex;align-items:center;gap:10px}.tdb-dates{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.tdb-dates input{padding:6px 10px;font-size:13px;border-radius:9999px}.tdb-plage{font-weight:500;color:var(--gris-2);font-size:12px}@media (max-width: 720px){.tdb-periode{align-items:flex-start}.tdb-dates{justify-content:flex-start}}.tdb-periode select,.tdb-choix{padding:7px 34px 7px 14px;border-radius:9999px;font-size:13px;font-weight:600;background-color:var(--surface-2);border-color:var(--trait)}.tdb-ligne{display:grid;gap:16px;margin-bottom:16px}.tdb-haut{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.tdb-milieu{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr)}.tdb-bas{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)}.tdb-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;align-content:stretch}.tdb-kpis .kpi-carte{grid-column:span 2}.tdb-kpis .kpi-carte.grande,.tdb-kpis.n4 .kpi-carte{grid-column:span 3}.kpi-carte{background:var(--surface);border:1px solid var(--trait);border-radius:var(--r);padding:16px 18px 12px;display:flex;flex-direction:column;min-width:0}.kpi-titre{font-size:13px;font-weight:600;color:var(--gris)}.kpi-valeur{font-family:var(--titre);font-size:30px;line-height:1.1;font-weight:800;letter-spacing:-.03em;color:var(--onyx);margin-top:6px;font-variant-numeric:tabular-nums}.kpi-carte.grande .kpi-valeur{font-size:38px}.kpi-var{font-size:12px;color:var(--gris-2);margin-top:4px;font-variant-numeric:tabular-nums}.kpi-var.hausse{color:var(--ok-texte)}.kpi-var.baisse{color:var(--err-texte)}.mini-courbe{width:100%;height:40px;margin-top:auto;padding-top:10px;display:block;overflow:visible}.panneau{background:var(--surface);border:1px solid var(--trait);border-radius:var(--r);padding:18px 20px 14px;min-width:0;margin-bottom:16px}.tdb-ligne>.panneau{margin-bottom:0}.panneau>header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:12px}.panneau h2{font-size:16px;margin:0;letter-spacing:-.01em}.panneau header small{display:block;color:var(--gris-2);font-size:12px;margin-top:2px}.panneau .vide{margin:24px 0}.panneau .table{margin:0}.viz{position:relative;width:100%}.viz svg{display:block;width:100%;height:auto;overflow:visible}.viz-grille{stroke:var(--trait);stroke-width:1}.viz-axe{fill:var(--gris-2);font-size:11px;font-family:var(--police);font-variant-numeric:tabular-nums}.viz-valeur{fill:var(--encre);font-size:12px;font-weight:700;font-family:var(--police);font-variant-numeric:tabular-nums}.viz-reticule{stroke:var(--gris-2);stroke-width:1;stroke-dasharray:3 3}.viz-point{stroke:var(--surface);stroke-width:2}.viz-vide{stroke:var(--surface-2)}.viz-part{stroke:var(--surface);stroke-width:2;transition:opacity .15s}.viz-bulle{position:absolute;transform:translate(-50%,calc(-100% - 12px));pointer-events:none;z-index:2;white-space:nowrap;background:var(--surface);border:1px solid var(--trait-fin);border-radius:8px;padding:7px 10px;font-size:12px;color:var(--texte);box-shadow:0 6px 18px #0000001f}.viz-bulle b{display:block;color:var(--encre);margin-bottom:3px;text-transform:capitalize}.viz-bulle div{display:flex;align-items:center;gap:6px}.viz-bulle strong{margin-left:auto;padding-left:10px;color:var(--encre);font-variant-numeric:tabular-nums}.viz-bulle i,.legende i,.legende-ligne i{width:9px;height:9px;border-radius:50%;display:inline-block;flex:none}.legende-ligne{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12px;color:var(--gris)}.legende-ligne span{display:inline-flex;align-items:center;gap:6px}.anneau{display:flex;flex-direction:column;align-items:center;gap:14px}.anneau svg{width:100%;max-width:190px;display:block}.anneau-total{fill:var(--onyx);font-family:var(--titre);font-size:24px;font-weight:800;font-variant-numeric:tabular-nums}.legende{list-style:none;margin:0;padding:0;width:100%;display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:4px 12px;font-size:12px}.legende li{display:flex;align-items:center;gap:6px;color:var(--gris);padding:3px 4px;border-radius:6px;min-width:0}.legende li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.legende li b{margin-left:auto;color:var(--encre);font-variant-numeric:tabular-nums}.legende li.cliquable{cursor:pointer}.legende li.cliquable:hover{background:var(--survol)}.tdb-stock{list-style:none;margin:0;padding:0}.tdb-stock li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--trait);font-size:14px}.tdb-stock li:last-child{border-bottom:0}.tdb-stock b{font-variant-numeric:tabular-nums}.tdb-stock b.danger{color:var(--danger)}@media (max-width: 1100px){.tdb-haut{grid-template-columns:minmax(0,1fr)}.tdb-milieu{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.tdb-milieu .panneau.large{grid-column:1 / -1}}@media (max-width: 720px){.tdb-milieu,.tdb-bas{grid-template-columns:minmax(0,1fr)}.tdb-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tdb-kpis .kpi-carte,.tdb-kpis .kpi-carte.grande,.tdb-kpis.n4 .kpi-carte{grid-column:span 1}.tdb-kpis.n5 .kpi-carte:first-child{grid-column:1 / -1}.kpi-carte{padding:14px 14px 10px}.kpi-valeur,.kpi-carte.grande .kpi-valeur{font-size:28px}.panneau{padding:16px 14px 12px}}.actions-ligne{white-space:nowrap;text-align:right}.actions-ligne .btn+.btn{margin-left:6px}.liste-suppr{list-style:none;margin:0 0 12px;padding:0}.liste-suppr li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--trait)}.btn.primary.danger-plein{background:var(--danger);border-color:var(--danger);color:#fff}.detail-mvt{width:min(640px,100%)}.detail-mvt h2{display:flex;align-items:center;gap:10px}.infos-mvt{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px 20px;margin:18px 0}.infos-mvt dt{font-size:12px;color:var(--gris-2);margin-bottom:4px}.infos-mvt dd{margin:0;color:var(--encre);font-weight:500}.series-mvt{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:4px 14px;font-size:13px}.series-mvt .mono{font-family:var(--mono);font-size:12px}.barre-mvt{display:flex;align-items:center;gap:12px 16px;flex-wrap:wrap;margin-bottom:12px}.barre-mvt .btn.primary{margin-left:auto}.filtre-type{display:flex;align-items:center;gap:10px;font-size:13px;font-weight:600;color:var(--gris)}.champ-filtre{position:relative;display:inline-flex}.champ-filtre input{width:270px;max-width:70vw;padding:8px 56px 8px 14px;border-radius:9999px;font-size:14px}.champ-filtre .effacer{position:absolute;right:30px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:var(--gris-2);cursor:pointer;font-size:13px;padding:4px 6px;border-radius:9999px}.champ-filtre .effacer:hover{background:var(--survol);color:var(--encre)}.vide-mvt{text-align:center;margin:24px 0 8px}.liste-choix-series{max-height:300px;overflow:auto;border:1px solid var(--trait);border-radius:12px;padding:6px 10px;margin:10px 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:0 12px}.liste-choix-series .check{margin:4px 0;font-weight:500}.liste-choix-series .check.coche{color:var(--encre)}.liste-choix-series .mono{font-family:var(--mono);font-size:13px}.ligne-mvt .dispo{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.suivi-kpis{margin-top:0}.suivi-kpis .kpi{text-align:left;font:inherit;cursor:pointer;border:1px solid transparent}.suivi-kpis .kpi.actif{border-color:var(--encre);background:var(--surface)}.barre-mvt .champ-filtre input[type=search]{width:380px;padding-right:14px}.pill.lieu-depot{background:var(--info-fond);color:var(--info-texte)}.pill.lieu-technicien{background:var(--ajust-fond);color:var(--ajust-texte)}.pill.lieu-client{background:var(--ok-fond);color:var(--ok-texte)}.historique-serie{list-style:none;margin:0;padding:0 0 0 14px;border-left:2px solid var(--trait)}.historique-serie li{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 0;position:relative;font-size:14px}.historique-serie li:before{content:"";position:absolute;left:-20px;top:50%;width:10px;height:10px;border-radius:50%;background:var(--surface);border:2px solid var(--gris-2);transform:translateY(-50%)}.barre-tech{gap:12px;flex-wrap:wrap;margin-bottom:8px}.barre-tech p{margin:0}.annul-conso p{margin:0 0 6px}.annul-conso ul{margin:0;padding-left:20px}.table tfoot .ligne-total td{font-weight:700;padding:12px 10px;border-top:2px solid var(--encre);background:var(--surface-2)}.sections-stock{display:grid;gap:0}.tete-section h2{margin:0 0 4px;font-size:18px}.tete-section p{margin:0 0 10px}.niveau-stock{display:inline-block;min-width:56px;padding:3px 10px;border-radius:9999px;font-weight:700;text-align:center;white-space:nowrap}.niveau-stock.bas{background:var(--err-fond);color:var(--err-texte)}.niveau-stock.moyen{background:var(--warn-fond);color:var(--warn-texte)}.niveau-stock.ok{background:var(--ok-fond);color:var(--ok-texte)}.tete-section .niveau-stock{min-width:0;padding:1px 8px;font-weight:600;font-size:12px}.barre-stock{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}.barre-stock p{margin:0}.barre-stock .niveau-stock{min-width:0;padding:1px 8px;font-weight:600;font-size:12px}.titre-section{margin:0 0 8px;font-size:18px}.matrice-stock{table-layout:fixed;min-width:760px}.matrice-stock .col-lieu{width:170px}.matrice-stock th{white-space:normal;line-height:1.4;vertical-align:bottom}.matrice-stock td:first-child{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.matrice-stock .niveau-stock{min-width:48px}.pagination{display:flex;align-items:center;justify-content:space-between;gap:10px 16px;flex-wrap:wrap;margin-top:14px;font-size:13px}.pagination label{display:inline-flex;align-items:center;gap:8px;font-weight:600;color:var(--gris)}.pagination select{width:auto;padding:5px 28px 5px 12px;border-radius:9999px}.pagination .pages{display:inline-flex;align-items:center;gap:6px}.pagination .pages span{padding:0 6px;white-space:nowrap}@media (max-width: 600px){.pagination .txt-page{display:none}.pagination{justify-content:center}}html.compact .pagination .txt-page{display:none}
