/* Styles communs de l'application, chargés après Pico CSS */

/* Logo : à côté du nom dans la barre du haut */
.marque { display: flex; align-items: center; gap: .6rem; }
.marque img { width: 200px; height: auto; }
@media (max-width: 576px) { .marque img { width: 110px; } } /* sur téléphone, plus petit pour laisser la place au menu */

/* Écrans de saisie (comptage, achat) : une ligne par article, nom à gauche, champs à droite */
.ligne { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; padding: .4rem 0; border-bottom: 1px solid var(--pico-muted-border-color); }
.ligne label { flex: 1; min-width: 9rem; margin: 0; }
.ligne label small { display: block; color: var(--pico-muted-color); }
.ligne small.erreur { color: var(--pico-del-color); }
.ligne small.erreur:empty { display: none; }
.saisie { display: flex; gap: .25rem; align-items: center; }
.saisie input { width: 5.5rem; margin: 0; text-align: center; }
.saisie button { width: 2.8rem; margin: 0; padding: .5rem 0; }

/* Bouton d'enregistrement toujours visible en bas de l'écran */
.barre-envoi { position: sticky; bottom: 0; padding: .75rem 0; background: var(--pico-background-color); }
.barre-envoi button { width: 100%; margin: 0; }

/* Zone de messages de saisie : masquée tant qu'elle est vide */
.etat:empty { display: none; }

/* Tableaux de chiffres */
.nombre { text-align: right; white-space: nowrap; }
tfoot td { font-weight: bold; }
