/* Yaka v2 — habillage des espaces Yaka Pro et Yaka Livreur (refonte du 14/10/2026).
   Chargé après style.css, uniquement pour ces deux applications : mêmes classes, nouveau rendu
   (fond gris clair, cartes blanches à bord fin, Inter, couleur d'accent de l'application, orange réservé à la marque). */

body.app-pro { --accent: var(--app-pro); --accent-pale: #E3F2EC; }
body.app-livreur { --accent: var(--app-livreur); --accent-pale: var(--gray-100); }

body.app-pro, body.app-livreur {
  background: var(--bg-subtle); color: var(--text); font-family: var(--police);
  -webkit-font-smoothing: antialiased;
}
:is(.app-pro, .app-livreur) a { color: var(--text); text-underline-offset: 2px; }
:is(.app-pro, .app-livreur) .discret, :is(.app-pro, .app-livreur) small { color: var(--text-muted); }

/* En-tête */
:is(.app-pro, .app-livreur) .entete { background: var(--white); border-bottom: 1px solid var(--border); padding-bottom: 10px; }
:is(.app-pro, .app-livreur) .logo-pastille { background: var(--accent); transform: none; border-radius: 10px; width: 34px; height: 34px; font-size: 20px; }
:is(.app-pro, .app-livreur) .logo-texte { font-weight: 800; letter-spacing: -.01em; }
:is(.app-pro, .app-livreur) .logo-sous { color: var(--text-muted); font-weight: 600; }
:is(.app-pro, .app-livreur) .pilule { border-color: var(--border); background: var(--white); font-weight: 600; color: var(--text); }
:is(.app-pro, .app-livreur) .pilule.pilule-alerte { background: var(--warning-100); border-color: var(--warning-100); color: var(--warning-600); }
:is(.app-pro, .app-livreur) .interrupteur { display: inline-flex; align-items: center; gap: 8px; background: var(--gray-100); color: var(--text); font-weight: 700; padding: 8px 14px 8px 10px; }
:is(.app-pro, .app-livreur) .interrupteur::before { content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--danger-600); }
:is(.app-pro, .app-livreur) .interrupteur.on { background: var(--success-100); color: var(--success-600); }
:is(.app-pro, .app-livreur) .interrupteur.on::before { background: var(--success-600); box-shadow: 0 0 0 3px rgba(14, 122, 79, .2); }

/* Navigation */
:is(.app-pro, .app-livreur) .nav-bas { background: var(--white); border-top-color: var(--border); }
:is(.app-pro, .app-livreur) .nav-bas a { font-weight: 600; color: var(--text-muted); }
:is(.app-pro, .app-livreur) .nav-bas a.actif { color: var(--accent); }
@media (min-width: 960px) {
  :is(.app-pro, .app-livreur) .nav-bas { background: transparent; }
  :is(.app-pro, .app-livreur) .nav-bas a:hover { background: var(--white); }
  :is(.app-pro, .app-livreur) .nav-bas a.actif { background: var(--white); box-shadow: var(--shadow-1); }
}

/* Titres, blocs, statistiques */
:is(.app-pro, .app-livreur) .titre-page { font-size: 1.5rem; font-weight: 800; letter-spacing: -.01em; }
:is(.app-pro, .app-livreur) .titre-page.petit { font-size: 1.125rem; }
:is(.app-pro, .app-livreur) .bloc, :is(.app-pro, .app-livreur) .stat, :is(.app-pro, .app-livreur) .commande-carte {
  background: var(--white); border: 1px solid var(--border); border-radius: var(--r-md); box-shadow: none; }
:is(.app-pro, .app-livreur) .bloc h2 { font-size: 1rem; font-weight: 700; }
:is(.app-pro, .app-livreur) .bloc h2 .ic { color: var(--text); }
:is(.app-pro, .app-livreur) .stats { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-bottom: 14px; }
:is(.app-pro, .app-livreur) .stats:has(> .stat:nth-child(2):last-child) { grid-template-columns: repeat(2, minmax(0, 1fr)); }
:is(.app-pro, .app-livreur) .stat { padding: 10px 12px; }
:is(.app-pro, .app-livreur) .stat small { font-weight: 500; font-size: .75rem; line-height: 1.2; }
:is(.app-pro, .app-livreur) .stat strong { display: block; margin-top: 2px; font-size: 1.125rem; font-weight: 800; font-variant-numeric: tabular-nums; white-space: nowrap; }
:is(.app-pro, .app-livreur) .stat-fort { background: var(--accent); border-color: var(--accent); color: #fff; }
:is(.app-pro, .app-livreur) .stat-fort small { color: rgba(255, 255, 255, .75); }
@media (min-width: 960px) { :is(.app-pro, .app-livreur) .stat strong { font-size: 1.375rem; } }

/* Boutons */
:is(.app-pro, .app-livreur) .bouton { background: var(--accent); color: #fff; border-radius: var(--r-sm); font-weight: 700; min-height: 48px; padding: 0 18px; }
:is(.app-pro, .app-livreur) .bouton:hover { filter: brightness(1.1); }
:is(.app-pro, .app-livreur) .bouton-secondaire { background: var(--gray-100); color: var(--text); }
:is(.app-pro, .app-livreur) .bouton-danger { background: var(--danger-600); color: #fff; }
:is(.app-pro, .app-livreur) .bouton-petit { min-height: 36px; padding: 0 12px; font-size: .875rem; }
:is(.app-pro, .app-livreur) .lien-discret { color: var(--text-muted); }

/* Messages et bandeaux */
:is(.app-pro, .app-livreur) .info { background: var(--white); border: 1px solid var(--border); color: var(--text); border-radius: var(--r-md); }
:is(.app-pro, .app-livreur) .info.info-attente { background: var(--warning-100); border-color: transparent; color: #5C3D00; }
:is(.app-pro, .app-livreur) .info.info-alerte { background: var(--danger-100); border-color: transparent; color: #7A1A1A; }
:is(.app-pro, .app-livreur) .note { background: var(--gray-50); border: 1px solid var(--border); }
:is(.app-pro, .app-livreur) .vide { background: var(--white); border: 1px dashed var(--gray-300); border-radius: var(--r-md); padding: 28px 16px; }
:is(.app-pro, .app-livreur) .vide-ico { background: var(--gray-100); color: var(--text); }
:is(.app-pro, .app-livreur) .statut-pastille { font-weight: 600; border-radius: var(--r-pill); }

/* ===== Yaka Pro : commandes ===== */
.app-pro .onglets-commandes { display: none; }
@media (max-width: 959px) {
  .app-pro .onglets-commandes { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; margin: 0 -16px 12px; padding: 0 16px; position: sticky; top: 61px; z-index: 5; background: var(--bg-subtle); padding-bottom: 8px; padding-top: 4px; }
  .app-pro .onglets-commandes button { flex: none; display: inline-flex; align-items: center; gap: 6px; border: 1px solid var(--border); background: var(--white); border-radius: var(--r-pill); padding: 8px 14px; font: 600 .875rem/1 var(--police); color: var(--text); cursor: pointer; }
  .app-pro .onglets-commandes button[aria-selected="true"] { background: var(--gray-900); border-color: var(--gray-900); color: #fff; }
  .app-pro .onglets-commandes .compte { min-width: 20px; height: 20px; border-radius: var(--r-pill); background: var(--gray-100); color: var(--text); display: inline-grid; place-items: center; font-size: .75rem; padding: 0 6px; }
  .app-pro .onglets-commandes button[aria-selected="true"] .compte { background: rgba(255, 255, 255, .2); color: #fff; }
  .app-pro .onglets-commandes .compte.alerte { background: var(--yaka-orange-500); color: #fff; }
  .app-pro .kanban.avec-onglets .kanban-colonne { display: none; }
  .app-pro .kanban.avec-onglets .kanban-colonne.est-active { display: block; }
  .app-pro .kanban.avec-onglets .kanban-colonne > h2 { display: none; }
}
.app-pro .kanban-colonne h2 { font-size: .8125rem; font-weight: 700; color: var(--text-muted); }
.app-pro .kanban-colonne .compte { background: var(--gray-100); }

.app-pro .commande-carte { border-left: 1px solid var(--border); padding: 14px; position: relative; overflow: hidden; }
.app-pro .commande-carte::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: var(--gray-300); }
.app-pro .commande-carte.statut-nouvelle::before { background: var(--yaka-orange-500); }
.app-pro .commande-carte.statut-acceptee::before { background: var(--warning-600); }
.app-pro .commande-carte.statut-prete::before { background: var(--success-600); }
.app-pro .commande-carte.statut-en_livraison::before { background: var(--info-600); }
.app-pro .commande-carte.statut-nouvelle { animation: none; box-shadow: 0 0 0 2px var(--yaka-orange-100); }
.app-pro .carte-tete { display: flex; justify-content: space-between; align-items: baseline; gap: 8px; }
.app-pro .carte-tete strong { font-size: 1.0625rem; letter-spacing: .01em; }
.app-pro .carte-tete .heure { color: var(--text-muted); font-size: .875rem; font-variant-numeric: tabular-nums; }
.app-pro .carte-client { margin: 2px 0 10px; color: var(--text-muted); font-size: .875rem; }
.app-pro .commande-lignes { list-style: none; margin: 0 0 10px; padding: 0; display: grid; gap: 4px; }
.app-pro .commande-lignes li { display: flex; gap: 8px; font-size: 1rem; }
.app-pro .commande-lignes .qte { min-width: 28px; height: 24px; border-radius: 6px; background: var(--gray-100); font-weight: 700; display: inline-grid; place-items: center; font-size: .875rem; }
.app-pro .commande-lignes small { display: block; }
.app-pro .carte-montants { display: flex; justify-content: space-between; align-items: center; gap: 8px; flex-wrap: wrap; padding: 8px 0; border-top: 1px solid var(--border); margin: 0; font-size: .875rem; }
.app-pro .carte-montants strong { font-size: 1rem; font-variant-numeric: tabular-nums; }
.app-pro .puce-paye { display: inline-flex; align-items: center; gap: 4px; background: var(--success-100); color: var(--success-600); border-radius: var(--r-pill); padding: 3px 10px; font-size: .75rem; font-weight: 700; }
.app-pro .puce-paye.verification { background: var(--warning-100); color: var(--warning-600); }
.app-pro .puce-priorite { display: inline-flex; align-items: center; gap: 4px; background: var(--yaka-orange-500); color: #fff; border-radius: var(--r-pill); padding: 3px 10px; font-size: .75rem; font-weight: 700; margin-bottom: 8px; }
.app-pro .carte-details { border-top: 1px solid var(--border); padding: 8px 0 0; font-size: .875rem; }
.app-pro .carte-details summary { cursor: pointer; color: var(--text-muted); font-weight: 600; list-style: none; }
.app-pro .carte-details summary::-webkit-details-marker { display: none; }
.app-pro .carte-details summary::after { content: " ›"; }
.app-pro .carte-details[open] summary::after { content: " ⌄"; }
.app-pro .carte-details p { margin: 6px 0 0; }
.app-pro .carte-livreur { display: flex; align-items: center; gap: 8px; font-size: .875rem; margin: 8px 0 0; padding: 8px 10px; border-radius: var(--r-sm); background: var(--gray-50); }
.app-pro .carte-livreur.attente { background: var(--warning-100); color: #5C3D00; }
.app-pro .actions { display: grid; gap: 8px; margin-top: 12px; }
.app-pro .actions .bouton { width: 100%; }
.app-pro .delai-acceptation { margin: 0; padding: 8px 10px; border-radius: var(--r-sm); background: var(--yaka-orange-50); color: #7A3608; font-size: .875rem; }
.app-pro .delai-acceptation small { display: block; color: inherit; opacity: .8; }
.app-pro .choix-preparation, .app-pro .choix-livreur { border: 0; padding: 0; margin: 0 0 8px; }
.app-pro .choix-preparation legend, .app-pro .choix-livreur legend { font-weight: 700; font-size: .875rem; margin-bottom: 6px; padding: 0; }
.app-pro .choix-preparation { display: grid; grid-template-columns: repeat(5, 1fr); gap: 4px; }
.app-pro .choix-preparation legend { grid-column: 1 / -1; }
.app-pro .choix-preparation label { display: block; }
.app-pro .choix-preparation input { position: absolute; opacity: 0; pointer-events: none; }
.app-pro .choix-preparation span { display: grid; place-items: center; min-height: 40px; border-radius: var(--r-sm); background: var(--gray-100); font-weight: 600; font-size: .875rem; cursor: pointer; white-space: nowrap; }
.app-pro .choix-preparation input:checked + span { background: var(--gray-900); color: #fff; }
.app-pro .choix-preparation input:focus-visible + span { outline: 2px solid var(--accent); }
.app-pro .choix-livreur { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.app-pro .choix-livreur legend { grid-column: 1 / -1; }
.app-pro .choix-livreur label { display: flex; align-items: center; gap: 6px; border: 1px solid var(--border); border-radius: var(--r-sm); padding: 10px; font-size: .875rem; font-weight: 600; cursor: pointer; }
.app-pro .choix-livreur label:has(input:checked) { border-color: var(--gray-900); box-shadow: inset 0 0 0 1px var(--gray-900); }
.app-pro .refus summary { color: var(--text-muted); font-weight: 600; font-size: .875rem; cursor: pointer; padding: 6px 0; }
.app-pro .refus form { display: grid; gap: 6px; margin-top: 6px; }
.app-pro .refus select, .app-pro .refus input { width: 100%; font: inherit; padding: 10px; border: 1px solid var(--border); border-radius: var(--r-sm); background: var(--white); }
.app-pro .code-retrait { background: var(--gray-900); border-radius: var(--r-md); }
.app-pro .code-retrait strong { font-variant-numeric: tabular-nums; }
.app-pro .form-code input { font-size: 1.5rem; letter-spacing: .5em; text-align: center; }
.app-pro .terminees .ligne-simple { font-size: .875rem; }
@media (min-width: 960px) {
  .app-pro .kanban { gap: 12px; }
  .app-pro .kanban .commande-carte { padding: 12px; }
  .app-pro .choix-preparation { grid-template-columns: repeat(3, 1fr); }
}

/* ===== Yaka Pro : catalogue ===== */
.app-pro .ligne-catalogue { display: grid; grid-template-columns: 56px minmax(0, 1fr) auto; grid-template-areas: "photo nom fleches" "photo dispo dispo"; gap: 4px 12px; align-items: center; padding: 10px 0; }
.app-pro .ligne-catalogue .vignette-produit { grid-area: photo; width: 56px; height: 56px; border-radius: var(--r-sm); object-fit: cover; align-self: start; }
.app-pro .ligne-catalogue-nom { grid-area: nom; }
.app-pro .ligne-catalogue-nom strong { font-weight: 600; line-height: 1.3; }
.app-pro .ligne-catalogue .fleches { grid-area: fleches; display: flex; gap: 2px; }
.app-pro .ligne-catalogue .choix-rupture { grid-area: dispo; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.app-pro .ligne-catalogue select { font: inherit; font-size: .875rem; padding: 6px 8px; border: 1px solid var(--border); border-radius: var(--r-sm); background: var(--white); max-width: 100%; }
.app-pro .fleches button { width: 32px; height: 32px; border-radius: var(--r-sm); border: 1px solid var(--border); background: var(--white); color: var(--text); cursor: pointer; font-size: 1rem; line-height: 1; }
.app-pro .fleches form { margin: 0; }
@media (min-width: 720px) {
  .app-pro .ligne-catalogue { grid-template-columns: 56px minmax(0, 1fr) auto auto; grid-template-areas: "photo nom dispo fleches"; }
}
.app-pro .jauge span { background: var(--accent); }
.app-pro .lien-options a { color: var(--text); font-weight: 600; text-decoration: none; }

/* ===== Yaka Livreur ===== */
.app-livreur .commande-carte { padding: 16px; }
.app-livreur .course-guidee { border-left: 1px solid var(--border); }
.app-livreur .course-dispo header { align-items: center; }
.app-livreur .course-dispo .gain { font-size: 1.375rem; font-weight: 800; font-variant-numeric: tabular-nums; white-space: nowrap; }
.app-livreur .course-dispo.prioritaire { box-shadow: 0 0 0 2px var(--yaka-orange-100); }
.app-livreur .etiquette-priorite { background: var(--yaka-orange-50); color: #7A3608; border-radius: var(--r-sm); padding: 6px 10px; font-size: .875rem; }
.app-livreur .bouton-large { width: 100%; min-height: 56px; font-size: 1.0625rem; }
.app-livreur .hero-service { display: flex; align-items: center; gap: 12px; padding: 14px 16px; border-radius: var(--r-md); background: var(--gray-900); color: #fff; margin-bottom: 12px; }
.app-livreur .hero-service .point { width: 12px; height: 12px; border-radius: 50%; background: #3DDC97; box-shadow: 0 0 0 0 rgba(61, 220, 151, .6); animation: pulse-service 2s infinite; flex: none; }
.app-livreur .hero-service.hors { background: var(--white); color: var(--text); border: 1px solid var(--border); }
.app-livreur .hero-service.hors .point { background: var(--gray-300); animation: none; }
.app-livreur .hero-service p { margin: 0; flex: 1; }
.app-livreur .hero-service small { display: block; color: inherit; opacity: .7; }
.app-livreur .hero-service form { margin: 0; }
.app-livreur .hero-service .bouton { min-height: 40px; background: #fff; color: var(--gray-900); }
.app-livreur .hero-service.hors .bouton { background: var(--gray-900); color: #fff; }
@keyframes pulse-service { 70% { box-shadow: 0 0 0 10px rgba(61, 220, 151, 0); } 100% { box-shadow: 0 0 0 0 rgba(61, 220, 151, 0); } }
.app-livreur .graphique-barres .barre-valeur { background: var(--gray-900); }
.app-livreur .versements-tous summary { cursor: pointer; font-weight: 600; padding: 8px 0 0; color: var(--text-muted); }

/* Petits écrans : rien ne doit dépasser */
@media (max-width: 480px) {
  :is(.app-pro, .app-livreur) .stat strong { font-size: .9375rem; letter-spacing: -.01em; }
  :is(.app-pro, .app-livreur) .stat small { font-size: .6875rem; }
  .app-pro .choix-preparation span { font-size: .8125rem; }
  .app-pro .entete .pilule { padding: 6px 10px; }
}
:is(.app-pro, .app-livreur) .page { min-width: 0; }
.app-pro .kanban, .app-pro .kanban-colonne, .app-pro .commande-carte { min-width: 0; }

/* Formulaires : jamais plus larges que leur carte */
:is(.app-pro, .app-livreur) fieldset { min-width: 0; }
:is(.app-pro, .app-livreur) .commande-carte input:not([type=radio]):not([type=checkbox]),
:is(.app-pro, .app-livreur) .commande-carte select { width: 100%; box-sizing: border-box; }
@media (min-width: 960px) { .app-pro .kanban .choix-livreur { grid-template-columns: 1fr; } }

/* Champs (réglages, horaires, articles, compte) */
:is(.app-pro, .app-livreur) .champ input, :is(.app-pro, .app-livreur) .champ select, :is(.app-pro, .app-livreur) .champ textarea,
:is(.app-pro, .app-livreur) input[type=time], :is(.app-pro, .app-livreur) input[type=date], :is(.app-pro, .app-livreur) input[type=text],
:is(.app-pro, .app-livreur) input[type=number], :is(.app-pro, .app-livreur) input[type=tel], :is(.app-pro, .app-livreur) textarea {
  border: 1px solid var(--gray-300); border-radius: var(--r-sm); background: var(--white); color: var(--text); }
:is(.app-pro, .app-livreur) .champ input:focus, :is(.app-pro, .app-livreur) .champ select:focus, :is(.app-pro, .app-livreur) .champ textarea:focus,
:is(.app-pro, .app-livreur) input:focus-visible, :is(.app-pro, .app-livreur) textarea:focus-visible {
  outline: none; border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-pale); }
:is(.app-pro, .app-livreur) input[type=checkbox], :is(.app-pro, .app-livreur) input[type=radio] { accent-color: var(--accent); }
:is(.app-pro, .app-livreur) .champ label, :is(.app-pro, .app-livreur) label { color: var(--text); }
.app-pro .actions > *, .app-pro .actions form { min-width: 0; }
.app-pro .choix-preparation { grid-template-columns: repeat(5, minmax(0, 1fr)); }
@media (min-width: 960px) { .app-pro .choix-preparation { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.app-pro .code-retrait small { color: rgba(255, 255, 255, .8); }

.app-pro .ligne-promo { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.app-pro .ligne-promo small { display: block; margin-top: 2px; }
.app-pro .ligne-promo.inactive { opacity: .6; }
.app-pro .form-promo, .form-promo { display: grid; gap: 8px; margin-top: 10px; }

.app-pro .puce-emporter { background: var(--gray-900); }

/* Yaka Pro : bilan, statistiques, avis, ticket */
.app-pro .liens-bilan { display: grid; gap: 8px; margin-bottom: 14px; }
@media (min-width: 720px) { .app-pro .liens-bilan { grid-template-columns: repeat(3, 1fr); } }
.app-pro .lien-bilan { display: flex; align-items: center; gap: 12px; text-decoration: none; margin: 0; }
.app-pro .lien-bilan span { flex: 1; } .app-pro .lien-bilan small { display: block; }
.app-pro .onglets-periode { display: flex; gap: 6px; margin-bottom: 12px; }
.app-pro .onglets-periode a { padding: 8px 14px; border-radius: var(--r-pill); background: var(--white); border: 1px solid var(--border); text-decoration: none; font-weight: 600; font-size: .875rem; }
.app-pro .onglets-periode a.actif { background: var(--gray-900); color: #fff; border-color: var(--gray-900); }
.app-pro .stats.stats-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (min-width: 720px) { .app-pro .stats.stats-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.app-pro .graphique-barres { display: grid; grid-template-columns: repeat(7, 1fr); gap: 6px; align-items: end; height: 140px; }
.app-pro .graphique-heures { grid-template-columns: repeat(18, 1fr); gap: 2px; }
.app-pro .graphique-barres .barre { display: flex; flex-direction: column; align-items: center; justify-content: flex-end; height: 100%; gap: 4px; }
.app-pro .graphique-barres .barre-valeur { width: 100%; min-height: 2px; border-radius: 4px 4px 1px 1px; background: var(--accent); }
.app-pro .graphique-barres small { font-size: .6875rem; }
.app-pro .avis-resume { display: grid; grid-template-columns: auto 1fr; gap: 16px; align-items: center; }
.app-pro .avis-moyenne { font-size: 2.5rem; font-weight: 800; display: block; line-height: 1; }
.app-pro .avis-ligne p { margin: 4px 0; }
.app-pro .form-reponse { display: grid; gap: 6px; margin-top: 6px; }
.app-pro .form-reponse textarea { width: 100%; box-sizing: border-box; font: inherit; padding: 8px; }
.app-pro .lien-ticket { margin-left: 6px; color: var(--text-muted); }

/* Yaka Livreur : profil, documents, zones */
.app-livreur .profil-livreur__tete { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; }
.app-livreur .profil-livreur__tete small { display: block; }
.app-livreur .profil-livreur__initiale { width: 52px; height: 52px; border-radius: 50%; background: var(--gray-900); color: #fff; display: grid; place-items: center; font: 800 1.375rem var(--police); }
.app-livreur .lien-documents { display: flex; align-items: center; gap: 12px; text-decoration: none; margin: 8px 0 0; }
.app-livreur .lien-documents span { flex: 1; } .app-livreur .lien-documents small { display: block; }
.app-livreur .lien-documents.a-revoir { border-color: var(--warning-600); background: var(--warning-100); }
.app-livreur .document-ligne summary { cursor: pointer; font-weight: 600; color: var(--text-muted); margin-top: 6px; }
.app-livreur .form-document { display: grid; gap: 8px; margin-top: 8px; }
.app-livreur .zones-demande summary { cursor: pointer; list-style: none; display: flex; gap: 8px; align-items: baseline; flex-wrap: wrap; }
.app-livreur #carte-zones { height: 260px; border-radius: var(--r-md); overflow: hidden; margin-top: 10px; background: var(--gray-100); }

.app-livreur img.profil-livreur__initiale { object-fit: cover; }
.app-livreur .form-photo { margin: 0 0 8px; font-size: .875rem; }
.app-livreur .form-photo input { display: block; margin-top: 4px; }
.app-livreur .form-photo.manquante { background: var(--warning-100); border-radius: var(--r-sm); padding: 8px 10px; }
