/* ═══════════════════════════════════════════════════════════════════════════════════════
   Recadrage visuel du 21/10 (JB : « trop zoomé, polices trop grosses, trop de cartes, on défile
   trop pour lire peu, ça fait site pour enfants »). Règles : docs/maquettes/RECADRAGE-VISUEL-21-10.md.
   Chargée EN DERNIER (front/index.html) : 1) les jetons communs à tout le site (:root, préfixe
   « ap- ») ; 2) les jetons propres à chaque écran rebranchés sur ces jetons communs ; 3) les
   retouches des trois écrans d'essai : Aujourd'hui (.aj-/.ck-), fiche voiture (.pv), Stock (.st).
   On affine, on ne change pas la direction : mêmes couleurs, même ordre, mêmes gestes.
   Retour arrière : retirer la ligne <link … recadrage.css> de front/index.html.
   ═══════════════════════════════════════════════════════════════════════════════════════ */

/* ── 1. Jetons communs ─────────────────────────────────────────────────────────────────── */
:root{
  /* Typographie : une base de 13 px (tableaux, listes, boutons), lecture à 14 px. */
  --ap-police:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  --ap-t-xs:11px;      /* étiquettes en capitales, mentions */
  --ap-t-s:12px;       /* texte secondaire, sous-lignes */
  --ap-t-m:13px;       /* BASE : cellules, listes, boutons, champs */
  --ap-t-l:14px;       /* texte à lire, titre de bloc */
  --ap-t-xl:16px;      /* nom d'un dossier dans une liste importante */
  --ap-t-titre:20px;   /* titre de page, nom de la voiture */
  --ap-t-chiffre:24px; /* chiffre clé (bandeau) */
  --ap-t-prix:30px;    /* le prix sur la fiche */
  --ap-li:1.4;         /* interlignage du texte */
  --ap-li-serre:1.2;   /* interlignage des titres et chiffres */
  --ap-g-texte:400;--ap-g-moyen:500;--ap-g-titre:600;--ap-g-chiffre:700;
  /* Espacements : grille de 4 px. */
  --ap-e1:4px;--ap-e2:8px;--ap-e3:12px;--ap-e4:16px;--ap-e5:24px;
  /* Blocs : rayon sobre, ombre à peine visible, un filet suffit. */
  --ap-r-s:6px;--ap-r-m:8px;--ap-r-l:10px;
  --ap-ombre-1:0 1px 2px hsl(220 40% 20%/.05);
  --ap-ombre-2:0 2px 6px hsl(220 40% 20%/.07),0 1px 2px hsl(220 40% 20%/.05);
  --ap-ombre-3:0 8px 24px hsl(220 45% 15%/.16),0 2px 6px hsl(220 40% 20%/.08);
  /* Hauteurs utiles. */
  --ap-h-ctrl:30px;    /* bouton, filtre, onglet */
  --ap-h-ctrl-l:38px;  /* LE geste principal d'un écran */
  --ap-h-ligne:44px;   /* ligne de tableau d'une seule ligne de texte */
  --ap-vignette-l:76px;--ap-vignette-h:50px;
  /* Palette calmée (canaux HSL, comme les jetons existants) : encre, gris, un seul bleu d'action,
     trois couleurs d'état. Les fonds pâles ne servent qu'aux états, jamais à la décoration. */
  --ap-encre:220 30% 14%;--ap-doux:220 10% 42%;--ap-trait:220 16% 90%;--ap-trait-fort:220 14% 82%;
  --ap-fond:220 25% 97%;--ap-carte:0 0% 100%;--ap-gris-doux:220 18% 95%;
  --ap-action:213 85% 45%;--ap-action-fort:214 80% 36%;--ap-action-doux:213 90% 96%;
  --ap-rouge:0 68% 46%;--ap-rouge-doux:0 80% 96%;
  --ap-ambre:32 85% 38%;--ap-ambre-vif:35 90% 50%;--ap-ambre-doux:40 85% 95%;
  --ap-vert:152 55% 30%;--ap-vert-doux:152 45% 95%;
  --ap-marine-haut:214 50% 19%;--ap-marine-bas:216 50% 12%;
}
/* Au doigt (téléphone, tablette de l'atelier) : les commandes restent faciles à toucher. Les feuilles
   écrivent var(--ap-h-ctrl) au lieu d'une hauteur en dur ; seul ce jeton grandit au doigt. */
@media (max-width:700px),(pointer:coarse){
  :root{--ap-h-ctrl:38px;--ap-h-ctrl-l:48px}
}

/* ── 2. Les jetons de chaque écran rebranchés sur les jetons communs ───────────────────── */
.ck-page,.ck-bx-barre,.ck-bx-p,.ck-bx-toast,.st[data-stock]{
  --marine-haut:var(--ap-marine-haut);--marine-bas:var(--ap-marine-bas);
  --azur:var(--ap-action);--azur-doux:var(--ap-action-doux);--azur-fort:var(--ap-action-fort);
  --fond:var(--ap-fond);--carte:var(--ap-carte);--encre:var(--ap-encre);--doux:var(--ap-doux);
  --trait:var(--ap-trait);--trait-fort:var(--ap-trait-fort);--gris-doux:var(--ap-gris-doux);
  --vert:var(--ap-vert);--vert-doux:var(--ap-vert-doux);
  --orange:var(--ap-ambre);--orange-vif:var(--ap-ambre-vif);--orange-doux:var(--ap-ambre-doux);
  --rouge:var(--ap-rouge);--rouge-doux:var(--ap-rouge-doux);
  --ombre-1:var(--ap-ombre-1);--ombre-2:var(--ap-ombre-2);--ombre-3:var(--ap-ombre-3);
}
.pv{
  --pv-marine-haut:var(--ap-marine-haut);--pv-marine-bas:var(--ap-marine-bas);
  --pv-azur:var(--ap-action);--pv-azur-doux:var(--ap-action-doux);--pv-azur-fort:var(--ap-action-fort);
  --pv-fond:var(--ap-fond);--pv-carte:var(--ap-carte);--pv-encre:var(--ap-encre);--pv-doux:var(--ap-doux);
  --pv-trait:var(--ap-trait);--pv-trait-fort:var(--ap-trait-fort);--pv-gris-doux:var(--ap-gris-doux);
  --pv-vert:var(--ap-vert);--pv-vert-doux:var(--ap-vert-doux);
  --pv-orange:var(--ap-ambre);--pv-orange-vif:var(--ap-ambre-vif);--pv-orange-doux:var(--ap-ambre-doux);
  --pv-rouge:var(--ap-rouge);--pv-rouge-doux:var(--ap-rouge-doux);
  --pv-r-m:var(--ap-r-m);--pv-r-l:var(--ap-r-l);--pv-r-xl:var(--ap-r-l);
  --pv-ombre-1:var(--ap-ombre-1);--pv-ombre-2:var(--ap-ombre-2);--pv-ombre-3:var(--ap-ombre-3);
  font-size:var(--ap-t-m);line-height:var(--ap-li);
}

/* ── 3a. Aujourd'hui ───────────────────────────────────────────────────────────────────── */
.aj-page{gap:var(--ap-e3);padding-bottom:var(--ap-e5)}
.aj-haut{min-height:0}
.aj-haut h1{font-size:var(--ap-t-titre);font-weight:var(--ap-g-chiffre);letter-spacing:-.01em}
.aj-qui,.aj-lu{font-size:var(--ap-t-s)}
/* Bandeau du mois : une seule rangée dès 1 280 px, chiffres à 24 px, notes de méthode sur une ligne. */
.aj-bandeau{gap:var(--ap-e4);padding:var(--ap-e3) var(--ap-e4);border-radius:var(--ap-r-l);box-shadow:var(--ap-ombre-2)}
.aj-bandeau::before{display:none}
.aj-k{gap:var(--ap-e1)}
.aj-k+.aj-k{padding-left:var(--ap-e4)}
.aj-k-lib{font-size:var(--ap-t-xs);font-weight:var(--ap-g-titre);letter-spacing:.05em}
.aj-k-n{font-size:var(--ap-t-chiffre);font-weight:var(--ap-g-chiffre)}
.aj-k-v small{font-size:var(--ap-t-s);font-weight:var(--ap-g-moyen)}
.aj-k-s{font-size:var(--ap-t-s);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.aj-k-t{font-size:var(--ap-t-xs);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aj-ecart{font-size:10.5px;padding:2px 7px;font-weight:var(--ap-g-titre)}
.aj-rail{height:5px;margin:2px 0}
.aj-att{top:-3px;height:11px}
@media (min-width:1280px){
  .aj-bandeau[data-compteurs="5"]{grid-template-columns:1.25fr 1.25fr 1fr 1fr 1fr}
  .aj-bandeau[data-compteurs="4"]{grid-template-columns:1.25fr 1.25fr 1fr 1fr}
  .aj-bandeau .aj-k:nth-child(4){border-left:1px solid hsl(0 0% 100%/.14);padding-left:var(--ap-e4)}
}
/* Ce qui compte maintenant : des lignes séparées par un filet, plus de cartes dans la carte. */
.aj-compte{gap:0;padding:var(--ap-e2) var(--ap-e4);border-radius:var(--ap-r-l);box-shadow:var(--ap-ombre-1),0 0 0 1px hsl(var(--trait)) inset}
.aj-compte h2{margin:2px 0 var(--ap-e1);font-size:var(--ap-t-xs);font-weight:var(--ap-g-titre)}
.aj-ligne{gap:var(--ap-e3);padding:6px 0;border-radius:0;background:none;border-top:1px solid hsl(var(--trait))}
.aj-compte h2+.aj-ligne{border-top:0}
.aj-sevb{width:4px;height:28px;border-radius:2px}
.aj-q{font-size:var(--ap-t-l);font-weight:var(--ap-g-titre)}
.aj-ligne .aj-tx small{font-size:var(--ap-t-s)}
.aj-geste{height:28px;padding:0 var(--ap-e3);border-radius:var(--ap-r-s);font-size:var(--ap-t-s);font-weight:var(--ap-g-titre)}
/* Les blocs. */
.aj-carte{padding:var(--ap-e3) var(--ap-e4);border-radius:var(--ap-r-l);box-shadow:var(--ap-ombre-1),0 0 0 1px hsl(var(--trait)) inset}
.aj-ct{gap:var(--ap-e2);margin-bottom:var(--ap-e2)}
.aj-ct h2{font-size:var(--ap-t-l);font-weight:var(--ap-g-titre);letter-spacing:0}
.aj-ct-n,.aj-lien{font-size:var(--ap-t-s)}
.aj-ct-sous{font-size:var(--ap-t-xs)}
/* À traiter : tuiles resserrées (le chiffre, le nom, la raison, trois vignettes). */
.aj-tuiles{grid-template-columns:repeat(auto-fill,minmax(172px,1fr));gap:var(--ap-e2)}
.aj-tuile{gap:2px;min-height:0;padding:var(--ap-e2) var(--ap-e2) var(--ap-e2) var(--ap-e3);border-radius:var(--ap-r-m)}
.aj-tuile::before{top:8px;bottom:8px;width:3px}
.aj-tuile:hover,.aj-tuile:focus-visible{transform:none;box-shadow:var(--ap-ombre-2)}
.aj-t-chiffre{font-size:20px;font-weight:var(--ap-g-chiffre)}
.aj-sev{font-size:9.5px;padding:2px 6px;font-weight:var(--ap-g-titre)}
.aj-t-lib{font-size:var(--ap-t-m);font-weight:var(--ap-g-titre)}
.aj-t-pq{font-size:var(--ap-t-s);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.aj-bande{gap:4px;padding-top:4px}
.aj-bande .aj-v{width:38px;height:26px}
.aj-bande .aj-v.aj-plusn{min-width:22px;font-size:var(--ap-t-xs)}
.aj-v{border-radius:4px}
.aj-calmes{margin-top:var(--ap-e2);padding:6px var(--ap-e2);border-radius:var(--ap-r-m)}
.aj-ok{font-size:var(--ap-t-s)}
.aj-silences{margin-top:var(--ap-e2);font-size:var(--ap-t-s)}
/* Listes (affaires, atelier, planning) : une ligne = 48 px, plus de lignes visibles. */
.aj-lg{gap:var(--ap-e2);padding:6px 2px}
.aj-lg-corps{gap:var(--ap-e2)}
.aj-lg .aj-v{width:44px;height:30px}
.aj-tx b{font-size:var(--ap-t-m);font-weight:var(--ap-g-titre)}
.aj-tx small{font-size:var(--ap-t-s)}
.aj-tags{gap:4px;margin-top:2px}
.aj-tag{padding:2px 6px;border-radius:4px;font-size:var(--ap-t-xs);font-weight:var(--ap-g-moyen)}
.aj-mini{height:26px;padding:0 10px;border-radius:var(--ap-r-s);font-size:var(--ap-t-s);font-weight:var(--ap-g-titre)}
.aj-affaires .aj-lignes>.aj-lg:nth-child(n+7){display:grid}
.aj-affaires .aj-lignes>.aj-lg:nth-child(n+9){display:none}
@media (min-width:1800px){.aj-affaires .aj-lignes>.aj-lg:nth-child(n+9){display:grid}.aj-affaires .aj-lignes>.aj-lg:nth-child(n+12){display:none}}
.aj-jour{font-size:var(--ap-t-xs);font-weight:var(--ap-g-titre);margin:var(--ap-e2) 0 2px}
.aj-ev{gap:var(--ap-e2);padding:4px 6px}
.aj-ev .aj-v{width:38px;height:26px}
.aj-attente{font-size:var(--ap-t-s);margin-top:var(--ap-e2);padding-top:var(--ap-e2)}
.aj-attente b{font-size:var(--ap-t-m)}
.aj-tait-l{font-size:var(--ap-t-xs)}
/* Préparation à l'échelle et le parc (grand écran). */
.aj-pipe{gap:var(--ap-e2);padding:var(--ap-e3) var(--ap-e4);border-radius:var(--ap-r-l)}
.aj-p-tete h2{font-size:var(--ap-t-l);font-weight:var(--ap-g-titre)}
.aj-p-total,.aj-p-alerte,.aj-legende{font-size:var(--ap-t-s)}
.aj-flux{height:44px}
.aj-st{border-radius:var(--ap-r-s)}
.aj-nd{font-size:18px;font-weight:var(--ap-g-chiffre)}
.aj-nm{font-size:10.5px}
.aj-pc h3{font-size:var(--ap-t-xs);font-weight:var(--ap-g-titre)}
.aj-stat-v{font-size:22px;font-weight:var(--ap-g-chiffre)}
.aj-stat small{font-size:var(--ap-t-s)}
.aj-histo{height:110px;padding-top:16px}
/* Trois colonnes dès 1 280 px : À traiter · Affaires · Planning lisibles sans défiler. */
@media (min-width:1280px){
  .aj-grille-jour{gap:var(--ap-e3);grid-template-columns:minmax(0,1.3fr) minmax(0,1.2fr) minmax(0,1fr);grid-template-areas:'mois mois mois' 'compte compte compte' 'traiter milieu planning'}
  .aj-grille-jour.aj-sans-mois{grid-template-areas:'compte compte compte' 'traiter milieu planning'}
}
@media (min-width:1280px) and (max-width:1799px){
  .aj-z-milieu>.aj-carte:not(:first-child){display:none}
}
/* Le salut du cockpit (même famille). */
.ck-salut{margin-bottom:var(--ap-e2)}
.ck-salut h1{font-size:var(--ap-t-titre);font-weight:var(--ap-g-chiffre)}
.ck-salut>span{font-size:var(--ap-t-s)}
.ck-bandeau{border-radius:var(--ap-r-l);padding:var(--ap-e3) var(--ap-e4)}
.ck-bandeau::before{display:none}

/* ── 3b. Fiche voiture ─────────────────────────────────────────────────────────────────── */
.pv{padding-bottom:64px}
.pv-fil{font-size:var(--ap-t-s);margin-bottom:var(--ap-e2)}
.pv-fil a.pv-retour{padding:4px 8px 4px 6px;border-radius:var(--ap-r-s)}
.pv-suivant a{width:28px;height:28px;border-radius:var(--ap-r-s)}
.pv-tete{gap:var(--ap-e4)}
.pv-scene{border-radius:var(--ap-r-l);box-shadow:var(--ap-ombre-2)}
.pv-scene .pv-bas{font-size:var(--ap-t-s)}
.pv-verre{padding:3px 8px;white-space:nowrap}
.pv-vignettes{gap:6px;margin-top:6px}
.pv-vignettes button{border-radius:var(--ap-r-s);box-shadow:none}
.pv-vignettes .pv-plus{font-size:var(--ap-t-m)}
/* Identité : nom à 22 px, prix à 30 px, une seule épaisseur forte. */
.pv-ident{padding:var(--ap-e3) var(--ap-e4);border-radius:var(--ap-r-l);box-shadow:var(--ap-ombre-1),0 0 0 1px hsl(var(--pv-trait)) inset}
.pv-plaque{font-size:12px}
.pv-plaque span{padding:3px 6px}
.pv-etiq{height:22px;padding:0 8px;font-size:var(--ap-t-s);font-weight:var(--ap-g-moyen)}
.pv h1.pv-titre,.pv:not(.pv-large) h1.pv-titre,.pv-large h1.pv-titre{margin:var(--ap-e2) 0 0;font-size:22px;font-weight:var(--ap-g-chiffre);letter-spacing:-.015em;line-height:var(--ap-li-serre)}
.pv-version{font-size:var(--ap-t-m);line-height:1.35}
.pv-faits,.pv:not(.pv-large) .pv-faits,.pv-large .pv-faits{margin-top:6px;font-size:var(--ap-t-m);font-weight:var(--ap-g-moyen);gap:2px 10px}
.pv-faits li+li::before{width:3px;height:3px;margin-right:6px}
.pv-prix,.pv:not(.pv-large) .pv-prix,.pv-large .pv-prix{margin-top:var(--ap-e2);gap:var(--ap-e2)}
.pv-prix .m{font-size:var(--ap-t-prix);font-weight:var(--ap-g-chiffre);letter-spacing:-.02em;line-height:1}
.pv-prix .m small{font-size:18px;font-weight:var(--ap-g-titre)}
.pv-prix .pv-ed{padding:3px 8px;border-radius:var(--ap-r-s);font-size:var(--ap-t-s)}
.pv-prix .h{font-size:var(--ap-t-xs)}
.pv-marge{margin-top:6px;font-size:var(--ap-t-s)}
/* Pastilles d'état : une rangée de petites cellules (libellé au-dessus, valeur en 13 px). */
.pv-etats,.pv:not(.pv-large) .pv-etats,.pv-large .pv-etats{margin-top:var(--ap-e3);gap:6px;grid-template-columns:repeat(auto-fit,minmax(74px,1fr))}
.pv-pa,.pv:not(.pv-large) .pv-pa{padding:5px 8px;gap:0;border-radius:var(--ap-r-s)}
.pv-pa:hover{transform:none}
.pv-pa .k{font-size:var(--ap-t-xs);font-weight:var(--ap-g-moyen)}
.pv-pa .v{font-size:var(--ap-t-m);font-weight:var(--ap-g-titre)}
.pv-pa .pt{display:none}
/* Prochaine action : un encadré simple, sans dégradé. */
.pv .pv-alertes.pv-prochaine,.pv .pv-ident .pv-alertes.pv-prochaine,.pv:not(.pv-large) .pv-ident .pv-alertes.pv-prochaine{margin-top:var(--ap-e3);padding:var(--ap-e2) var(--ap-e3);border-radius:var(--ap-r-m);background:hsl(var(--pv-azur-doux)/.55);box-shadow:0 0 0 1px hsl(var(--pv-azur)/.2) inset}
.pv-pro,.pv:not(.pv-large) .pv-pro{grid-template-columns:30px minmax(0,1fr) auto;gap:var(--ap-e2)}
.pv-pro .ic,.pv:not(.pv-large) .pv-pro .ic{width:30px;height:30px;border-radius:var(--ap-r-s)}
.pv-pro .eti{font-size:var(--ap-t-xs)}
.pv-pro .titre,.pv:not(.pv-large) .pv-pro .titre{font-size:var(--ap-t-l);font-weight:var(--ap-g-titre)}
.pv-pro .raison{font-size:var(--ap-t-s)}
.pv-pro .quand span{padding:1px 8px;font-size:var(--ap-t-xs)}
.pv-pro .go,.pv:not(.pv-large) .pv-pro .go{height:var(--ap-h-ctrl);padding:0 var(--ap-e3);font-size:var(--ap-t-m);border-radius:var(--ap-r-s)}
.pv-autres-b{margin-top:6px;padding-top:6px;font-size:var(--ap-t-s);font-weight:var(--ap-g-moyen)}
.pv-pro~.pv-autres-b,.pv-prochaine>.pv-autres-b:first-child{margin-top:0;padding-top:0;border-top:0}
.pv-al,.pv-large .pv-al{gap:var(--ap-e2);padding:6px var(--ap-e2);border-radius:var(--ap-r-m)}
.pv-al .ic,.pv-large .pv-al .ic{width:26px;height:26px;border-radius:var(--ap-r-s)}
.pv-al .tx b{font-size:var(--ap-t-m);font-weight:var(--ap-g-titre)}
.pv-al .tx span{font-size:var(--ap-t-s)}
.pv-al .go,.pv-large .pv-al .go{height:26px;padding:0 10px;border-radius:var(--ap-r-s);font-size:var(--ap-t-s)}
/* Boutons : 30 px, le geste principal à 38 px, à plat (sans halo). */
.pv-actions,.pv:not(.pv-large) .pv-actions,.pv-large .pv-actions{margin-top:var(--ap-e3);gap:6px}
.pv-btn{height:var(--ap-h-ctrl);padding:0 var(--ap-e3);border-radius:var(--ap-r-s);font-size:var(--ap-t-m);font-weight:var(--ap-g-titre)}
.pv-btn.carre{width:var(--ap-h-ctrl)}
.pv-btn.prim{background:hsl(var(--pv-azur));box-shadow:none}
.pv-btn.prim:hover{background:hsl(var(--pv-azur-fort));filter:none}
.pv-actions .pv-btn.prim,.pv:not(.pv-large) .pv-actions .pv-btn.prim{height:var(--ap-h-ctrl-l);font-size:var(--ap-t-l)}
.pv-btn.sec{box-shadow:0 0 0 1px hsl(var(--pv-trait-fort)) inset}
/* Onglets : une barre fine. */
.pv-onglets{padding:3px;border-radius:var(--ap-r-l);box-shadow:var(--ap-ombre-1),0 0 0 1px hsl(var(--pv-trait)) inset}
.pv-onglets button,.pv-large .pv-onglets button{padding:6px 11px;border-radius:var(--ap-r-m);font-size:var(--ap-t-m);font-weight:var(--ap-g-moyen);gap:5px}
.pv-onglets button.on{font-weight:var(--ap-g-titre)}
.pv-onglets .c{min-width:18px;height:18px;font-size:10.5px}
.pv-ind{top:3px;height:calc(100% - 6px);border-radius:var(--ap-r-m)}
.pv-contenu,.pv:not(.pv-large) .pv-contenu{margin-top:var(--ap-e3)}
/* Blocs de contenu : 12 px de marge intérieure, titres en 12 px, valeurs en 13 px. */
.pv-grille,.pv-ens .pv-grille{gap:var(--ap-e3)}
.pv-carte,.pv-ens .pv-carte{padding:var(--ap-e3) var(--ap-e4);border-radius:var(--ap-r-l);box-shadow:0 0 0 1px hsl(var(--pv-trait)) inset}
.pv-carte h3,.pv-ens .pv-carte h3{margin:0 0 var(--ap-e2);font-size:var(--ap-t-xs);font-weight:var(--ap-g-titre);text-transform:uppercase;letter-spacing:.05em}
.pv dl.pv-kv,.pv-ens .pv-kv{gap:4px var(--ap-e3);font-size:var(--ap-t-m)}
.pv dl.pv-kv dd{font-weight:var(--ap-g-moyen)}
.pv-mini-s{padding:var(--ap-e2) 10px}
.pv-mini-s b{font-size:var(--ap-t-m)}
.pv h2.pv-bt{font-size:var(--ap-t-xs);font-weight:var(--ap-g-titre);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}
.pv-bloc{border-radius:var(--ap-r-l)}
/* Options : une liste en colonnes (coche + nom) au lieu de grosses pastilles encadrées. */
.pv-puces{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:2px var(--ap-e4);justify-items:start}
.pv-synth{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:6px}
.pv-puce{height:24px;padding:0;gap:6px;border-radius:0;background:none;font-size:var(--ap-t-m);font-weight:var(--ap-g-texte);color:hsl(var(--pv-doux));min-width:0}
.pv-puce.on{background:none;box-shadow:none;color:hsl(var(--pv-encre))}
.pv-puce.on svg{color:hsl(var(--pv-vert));width:14px;height:14px}
.pv-puce>span,.pv-puce{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
button.pv-puce:hover{color:hsl(var(--pv-azur-fort))}
/* Portable : depuis le lot N4 (21/10), la tête du 16/10 (règles dans fiche-poste.css, 1 101–1 799 px). */
/* Grand écran (≥ 1 800 px, poste de travail) : colonne voiture moins large, blocs serrés. */
.pv-large .pv-poste{grid-template-columns:minmax(520px,.62fr) minmax(0,1.6fr);column-gap:var(--ap-e4)}
.pv-large .pv-gauche{gap:var(--ap-e2)}
.pv-large .pv-tete{gap:var(--ap-e2)}
.pv-large .pv-scene{aspect-ratio:16/9}
.pv-large .pv-ident{padding:var(--ap-e3) var(--ap-e4)}
.pv-large .pv-contenu.pv-ens{gap:var(--ap-e3);margin-top:var(--ap-e3)}

/* ── 3c. Stock ─────────────────────────────────────────────────────────────────────────── */
.st[data-stock]{padding-bottom:64px}
.st-ligne{gap:6px;margin-bottom:var(--ap-e2);min-height:0}
.st-ligne .st-cherche input{height:34px;font-size:var(--ap-t-m);border-radius:var(--ap-r-m);padding-left:34px}
.st-ligne .st-cherche>svg.st-i{left:11px;width:15px;height:15px}
.st-ligne .st-res{font-size:var(--ap-t-s)}.st-ligne .st-res b{font-size:var(--ap-t-m)}
.st-ligne .st-cp,.st-ligne .st-f,.st-ligne .st-sel-b{height:var(--ap-h-ctrl);font-size:var(--ap-t-s);padding:0 10px}
.st-cp{font-weight:var(--ap-g-titre)}.st-cp b{font-weight:var(--ap-g-chiffre)}
.st-ligne .st-seg{padding:2px;border-radius:var(--ap-r-m)}
.st-ligne .st-seg button{height:26px;padding:0 9px;border-radius:var(--ap-r-s);font-size:var(--ap-t-s);font-weight:var(--ap-g-titre)}
.st-f{font-weight:var(--ap-g-moyen)}
.st-plus>summary{width:var(--ap-h-ctrl);height:var(--ap-h-ctrl);border-radius:var(--ap-r-m);font-size:16px}
.st-moy{font-size:var(--ap-t-xs)}.st-moy b{font-size:var(--ap-t-m);font-weight:var(--ap-g-chiffre)}
.st-btn{height:var(--ap-h-ctrl);border-radius:var(--ap-r-m);font-size:var(--ap-t-m);font-weight:var(--ap-g-titre)}
/* Le tableau : lignes de 60 px (vignette 76×50), 12 voitures visibles au lieu de 6. */
.st-liste{margin-top:var(--ap-e2);border-radius:var(--ap-r-l);box-shadow:0 0 0 1px hsl(var(--trait)) inset}
.st-th,.st-ln{gap:var(--ap-e3);padding:0 var(--ap-e3)}
.st-th{height:32px;font-size:10.5px;font-weight:var(--ap-g-titre);letter-spacing:.05em}
.st-ln{padding-top:5px;padding-bottom:5px}
.st[data-stock][data-mode=client] .st-th,.st[data-stock][data-mode=client] .st-ln{grid-template-columns:var(--ap-vignette-l) minmax(240px,2.4fr) 92px 112px 120px 74px 96px 82px 110px}
.st[data-stock][data-mode=gestion] .st-th,.st[data-stock][data-mode=gestion] .st-ln{grid-template-columns:var(--ap-vignette-l) minmax(240px,2.4fr) 92px 130px 120px 74px 150px 86px 110px}
.st[data-stock][data-mode=diffusion] .st-th,.st[data-stock][data-mode=diffusion] .st-ln{grid-template-columns:var(--ap-vignette-l) minmax(240px,2.4fr) 92px 130px 120px 74px 96px 82px 110px}
.st-ph,.st-ln .st-ph{width:var(--ap-vignette-l);height:var(--ap-vignette-h);border-radius:var(--ap-r-s)}
.st-ln:hover .st-ph img{transform:none}
.st-st,.st-nph{font-size:10px;padding:1px 4px;border-radius:3px}
.st-nph{left:3px;bottom:3px}.st-st{left:3px;top:3px}
.st-nph svg.st-i{width:10px;height:10px}
.st-etoile{width:22px;height:22px;right:3px;top:3px}.st-etoile svg.st-i{width:12px;height:12px}
.st-ve b,.st-ln .st-ve b{font-size:var(--ap-t-m);font-weight:var(--ap-g-titre);letter-spacing:0}
.st-ve>span{font-size:var(--ap-t-s);margin-top:0;line-height:1.35}
.st-ve>span:nth-of-type(2){display:none}
.st-ve>.st-id{margin-top:2px;gap:6px}
.st-ve .st-pl{font-size:10px}
.st-pl em{padding:2px 5px}.st-pl i{padding:2px 2px;font-size:7px}
.st-vin{font-size:var(--ap-t-xs);font-weight:var(--ap-g-moyen)}
.st-lo,.st-cle{height:18px;font-size:10.5px;font-weight:var(--ap-g-titre)}
.st-dd,.st-ln .st-dd{font-size:var(--ap-t-m);font-weight:var(--ap-g-moyen)}
.st-dd small{font-size:var(--ap-t-xs);margin-top:0}
.st-dd small+small{display:none}
.st-px,.st-ln .st-px{font-size:15px;font-weight:var(--ap-g-chiffre);letter-spacing:-.01em}
.st-px .st-tva{font-size:var(--ap-t-xs);font-weight:var(--ap-g-moyen);margin-top:1px}
.st-jg{font-size:var(--ap-t-xs);font-weight:var(--ap-g-moyen);margin-top:1px}
.st-jr,.st-et,.st-dos{height:22px;padding:0 7px;border-radius:var(--ap-r-s);font-size:var(--ap-t-s);font-weight:var(--ap-g-titre)}
.st-ol{font-size:var(--ap-t-s);font-weight:var(--ap-g-moyen)}
.st-ct{font-size:var(--ap-t-m);font-weight:var(--ap-g-chiffre)}
.st-ct .st-dl{font-size:var(--ap-t-xs);font-weight:var(--ap-g-texte)}
.st-ct .pt{width:6px;height:6px;box-shadow:0 0 0 2px hsl(var(--azur)/.2)}
.st-mjn{font-size:var(--ap-t-s);font-weight:var(--ap-g-moyen)}
.st-mj{height:4px}
.st-pager{padding:var(--ap-e3);font-size:var(--ap-t-s)}
.st-pager button{height:var(--ap-h-ctrl);border-radius:var(--ap-r-m)}
.st-garage{border-radius:var(--ap-r-l)}
@media (min-width:1800px){
  .st-th,.st-ln{gap:var(--ap-e3);padding:0 var(--ap-e4)}
  .st-ln{padding-top:5px;padding-bottom:5px}
  .st[data-stock][data-mode=client] .st-th,.st[data-stock][data-mode=client] .st-ln{grid-template-columns:var(--ap-vignette-l) minmax(320px,1.8fr) 96px 120px 124px 74px 104px 96px 64px 84px 110px minmax(150px,.7fr) 118px}
  .st[data-stock][data-mode=gestion] .st-th,.st[data-stock][data-mode=gestion] .st-ln{grid-template-columns:var(--ap-vignette-l) minmax(340px,3fr) 110px 160px 150px 90px 220px 130px 140px}
  .st[data-stock][data-mode=diffusion] .st-th,.st[data-stock][data-mode=diffusion] .st-ln{grid-template-columns:var(--ap-vignette-l) minmax(340px,3fr) 110px 170px 150px 90px 130px 104px 150px}
  .st-ph{width:var(--ap-vignette-l);height:var(--ap-vignette-h)}
  .st-ve b{font-size:var(--ap-t-m)}
  .st-px{font-size:15px}
  .st-dd{font-size:var(--ap-t-m)}
  .st-cherche input,.st-ligne .st-cherche input{height:34px;font-size:var(--ap-t-m)}
  .st-ligne .st-cherche{flex:0 1 220px;min-width:160px}
  .st-ligne .st-cp,.st-ligne .st-f{padding:0 7px}
  .st-ligne .st-seg button{padding:0 7px}
}
