:root{
  --paper:#F1ECE0;
  --ink:#20211D;
  --muted:#6B6A60;
  --accent:#A85A20;
  --line:#DCD6C7;

  --papier: var(--paper);
  --papier-elevee: color-mix(in srgb, var(--paper) 100%, white 4%);
  --papier-journal: color-mix(in srgb, var(--paper) 92%, var(--ink) 6%);
  --encre: var(--ink);
  --encre-vive: color-mix(in srgb, var(--ink) 88%, black 12%);
  --encre-douce: var(--muted);
  --ligne: var(--line);
  --marque: var(--accent);
  --sur-marque: color-mix(in srgb, var(--accent) 12%, var(--paper) 88%);
  --ombre-marque: color-mix(in srgb, var(--accent) 75%, black 25%);
  --sur-accent: color-mix(in srgb, var(--accent) 14%, var(--paper) 86%);
  --ombre-accent: color-mix(in srgb, var(--accent) 75%, black 25%);
  --surlignage: color-mix(in srgb, var(--accent) 24%, var(--paper) 76%);
  --rayon:8px;
  --rayon-bouton:6px;
  --grain:none;
  --hausse:#a13d2e;
  --sur-hausse:#fbeae5;
  --baisse:#2f6a45;
  --sur-baisse:#e7f2ea;
  --nouvelle:#8a6d1e;
  --sur-nouvelle:#fbf2d9;
}
.marque-app .puce{background:var(--marque)}

/* Import */
.zone-depot{border:2.2px dashed var(--ligne);border-radius:var(--rayon);padding:2.2rem 1.2rem;text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:.8rem;background:var(--papier-elevee);transition:border-color .2s ease, background .2s ease}
.zone-depot.survol{border-color:var(--marque);background:var(--sur-baisse)}
.zone-depot .icone-depot{width:44px;height:44px;color:var(--marque)}
.zone-depot p{margin:0;color:var(--encre-douce);font-size:.88rem}
.zone-depot input[type=file]{display:none}
.bouton-fichier{display:inline-flex}
.options-import{display:flex;gap:.7rem;flex-wrap:wrap;justify-content:center;margin-top:.3rem}
.nom-fichier{font-family:"Source Sans 3",monospace;font-size:.78rem;color:var(--encre-douce)}

/* Colonnes détectées */
.colonnes-detectees{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.9rem}
.colonne-tag{font-family:"Source Sans 3",monospace;font-size:.76rem;background:var(--papier-journal);
  border:1.4px solid var(--ligne);border-radius:6px;padding:.35rem .6rem;display:flex;align-items:center;gap:.35rem}
.colonne-tag b{color:var(--marque)}

/* Tableau registre */
.registre{width:100%;border-collapse:collapse;font-size:.85rem}
.registre th{text-align:left;font-family:"Source Sans 3",sans-serif;font-size:.7rem;text-transform:uppercase;
  letter-spacing:.05em;color:var(--encre-douce);padding:.5rem .5rem;border-bottom:1.6px solid var(--marque)}
.registre td{padding:.55rem .5rem;border-bottom:1px solid var(--ligne);vertical-align:middle;font-variant-numeric:tabular-nums}
.registre tbody tr.hausse{background:var(--sur-hausse)}
.registre tbody tr.baisse{background:var(--sur-baisse)}
.registre tbody tr.nouvelle{background:var(--sur-nouvelle)}
.registre tbody tr.exclue{opacity:.45}
.ecart{font-weight:700;font-family:"Source Sans 3",monospace;font-size:.82rem}
.ecart.hausse{color:var(--hausse)}
.ecart.baisse{color:var(--baisse)}
.puce-etat{display:inline-flex;align-items:center;gap:.3rem;font-size:.68rem;font-weight:700;text-transform:uppercase;
  letter-spacing:.04em;padding:.15rem .45rem;border-radius:5px}
.puce-etat.hausse{background:var(--sur-hausse);color:var(--hausse)}
.puce-etat.baisse{background:var(--sur-baisse);color:var(--baisse)}
.puce-etat.nouvelle{background:var(--sur-nouvelle);color:var(--nouvelle)}
.puce-etat.stable{background:var(--papier-journal);color:var(--encre-douce)}
.puce-etat.absente{background:var(--papier-journal);color:var(--encre-douce)}
.registre input[type=checkbox]{width:19px;height:19px;accent-color:var(--marque)}
.ref-mono{font-family:"Source Sans 3",monospace;font-size:.78rem;color:var(--encre-douce)}

/* Résumé chiffré */
.resume-ecarts{display:flex;gap:.7rem;flex-wrap:wrap}
.resume-carte{flex:1;min-width:140px;background:var(--papier-elevee);border:1.4px solid var(--ligne);border-radius:var(--rayon);
  padding:.8rem .9rem}
.resume-carte .valeur{font-family:"Newsreader",serif;font-size:1.7rem;font-weight:600;color:var(--encre-vive)}
.resume-carte .label{font-size:.74rem;color:var(--encre-douce);text-transform:uppercase;letter-spacing:.04em}
.resume-carte.hausse .valeur{color:var(--hausse)}
.resume-carte.baisse .valeur{color:var(--baisse)}
.resume-carte.nouvelle .valeur{color:var(--nouvelle)}

/* Historique */
.historique{display:flex;flex-direction:column;gap:.5rem}
.historique-item{display:flex;gap:.7rem;align-items:flex-start;padding:.7rem;background:var(--papier-elevee);
  border:1.4px solid var(--ligne);border-radius:var(--rayon);font-size:.84rem}
.historique-item .tampon-mini{border:1.6px solid var(--marque);color:var(--marque);border-radius:5px;font-size:.66rem;
  font-weight:700;text-transform:uppercase;padding:.15rem .4rem;flex:none}

@media (max-width:640px){
  .registre thead{display:none}
  .registre, .registre tbody, .registre tr, .registre td{display:block;width:100%}
  .registre tr{border-bottom:1.6px solid var(--ligne);padding:.6rem 0}
  .registre td{border-bottom:none;padding:.2rem 0;display:flex;justify-content:space-between;gap:.6rem}
  .registre td::before{content:attr(data-label);font-size:.68rem;text-transform:uppercase;color:var(--encre-douce)}
  .registre td[data-label=""]::before{display:none}
}
