/* Portraits IA : vignettes de styles, rangée défilante, fenêtre du catalogue, barre de sélection.
   Partagé par /photobooth-ia/ et le formulaire de réservation (préfixe pia-). */

/* Vignette (polaroïd à cocher) */
.pia-st{position:relative;border:0;padding:6px 6px 0;background:#FCFDF9;border-radius:6px;cursor:pointer;text-align:center;font:inherit;box-shadow:0 1px 3px rgba(0,0,0,.12),0 10px 18px -12px rgba(0,0,0,.35);transition:transform .18s,box-shadow .18s}
.pia-st:hover{transform:translateY(-3px) rotate(-1deg)}
.pia-st:focus-visible{outline:3px solid #2D4A1A;outline-offset:2px}
.pia-st-img{display:block;aspect-ratio:2/3;overflow:hidden;background:#d9e2cc}
.pia-st img{width:100%;height:100%;object-fit:cover;display:block}
.pia-st-nom{display:flex;align-items:center;justify-content:center;min-height:42px;padding:4px 2px 6px;font:italic 500 14px/1.15 'Fraunces',Georgia,serif;color:#16210F}
.pia-st-coche{position:absolute;top:11px;right:11px;width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.85);border:2px solid #fff;box-shadow:0 2px 6px rgba(0,0,0,.25)}
.pia-st.sel{box-shadow:0 0 0 3px #B0D91C,0 10px 18px -12px rgba(0,0,0,.35)}
.pia-st.sel .pia-st-coche{background:#B0D91C url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5' fill='none' stroke='%230D1A00' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat;border-color:#B0D91C}

/* Pastilles de catégories */
.pia-chips{display:flex;gap:8px;overflow-x:auto;padding:2px 0 12px;scrollbar-width:none}
.pia-chips::-webkit-scrollbar{display:none}
.pia-chips[hidden]{display:none}
.pia-chip{flex:none;border:1.5px solid #DCE2CF;background:#fff;border-radius:999px;padding:7px 14px;font:600 14px 'Plus Jakarta Sans',sans-serif;color:#16210F;cursor:pointer}
.pia-chip.on{background:#1A2E00;border-color:#1A2E00;color:#B0D91C}

/* Rangée défilante (page) */
.pia-bande-zone{position:relative}
.pia-bande{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 2px 14px;scrollbar-width:none}
.pia-bande::-webkit-scrollbar{display:none}
.pia-bande .pia-st{flex:0 0 152px;scroll-snap-align:start}
.pia-fl{position:absolute;top:calc(50% - 30px);width:44px;height:44px;border-radius:50%;border:0;background:#fff;color:#1A2E00;display:grid;place-items:center;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.18);z-index:2}
.pia-fl-g{left:-18px}.pia-fl-d{right:-18px}
.pia-fl[disabled]{opacity:0;pointer-events:none}

/* Fenêtre du catalogue complet */
.pia-modale{position:fixed;inset:0;z-index:10000;background:rgba(13,26,0,.6);display:grid;place-items:center;padding:24px}
.pia-modale[hidden]{display:none}
.pia-boite{width:min(1080px,100%);height:min(88vh,900px);background:#F4F5F0;border-radius:22px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.4);font-family:'Plus Jakarta Sans',sans-serif;color:#16210F}
.pia-entete{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 10px}
.pia-entete h2{margin:0;font:700 26px/1.1 'Fraunces',Georgia,serif}
.pia-entete small{font:600 14px 'Plus Jakarta Sans',sans-serif;color:#5A6950;margin-left:6px}
.pia-fermer{width:42px;height:42px;border-radius:50%;border:0;background:#E6EBDC;color:#1A2E00;display:grid;place-items:center;cursor:pointer}
.pia-outils{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:0 22px 10px}
.pia-modale .pia-chips{padding:0 22px 10px}
.pia-fam{display:inline-flex;background:#E6EBDC;border-radius:14px;padding:4px}
.pia-fam-b{border:0;background:none;font:700 14px 'Plus Jakarta Sans',sans-serif;color:#5A6950;padding:9px 14px;border-radius:11px;cursor:pointer}
.pia-fam-b small{font-weight:600;opacity:.7;margin-left:4px}
.pia-fam-b.on{background:#fff;color:#16210F;box-shadow:0 1px 3px rgba(0,0,0,.12)}
.pia-cherche{flex:1;display:flex;align-items:center;gap:8px;background:#fff;border:1.5px solid #DCE2CF;border-radius:12px;padding:0 12px;height:44px;min-width:220px;color:#5A6950;margin:0}
.pia-cherche input{border:0;outline:0;font:500 15px 'Plus Jakarta Sans',sans-serif;flex:1;min-width:0;background:none;color:#16210F;padding:0;box-shadow:none}
.pia-cherche:focus-within{border-color:#2D4A1A}
.pia-defile{flex:1;overflow-y:auto;padding:4px 22px 24px;border-top:1px solid #DCE2CF}
.pia-grille{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.pia-grille [hidden]{display:none}
.pia-cat{grid-column:1/-1;margin:16px 0 0;font:700 19px/1.2 'Fraunces',Georgia,serif}
.pia-cat small{font:600 13px 'Plus Jakarta Sans',sans-serif;color:#5A6950;margin-left:6px}
.pia-vide{text-align:center;color:#5A6950;margin:30px 0}
.pia-pied{display:flex;align-items:center;gap:16px;padding:12px 22px;background:#0D1A00;color:#F8F9FA}
.pia-pied-txt{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.3}
.pia-pied-txt strong{color:#B0D91C}
.pia-pied-txt span{font-size:13px;color:rgba(248,249,250,.8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pia-pied-txt span.alerte{color:#fff;white-space:normal}
.pia-valider{flex:none;height:44px;padding:0 20px;border:0;border-radius:12px;background:linear-gradient(135deg,#b0d91c,#c4e635);color:#0D1A00;font:800 15px 'Plus Jakarta Sans',sans-serif;cursor:pointer}

/* Barre de sélection fixe (page) */
.pia-barre{position:fixed;left:0;right:0;bottom:0;z-index:900;background:#0D1A00;color:#F8F9FA;box-shadow:0 -10px 30px rgba(0,0,0,.25)}
.pia-barre[hidden]{display:none}
.pia-barre-in{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:16px;padding:10px 2rem}
.pia-barre-in strong{color:#B0D91C;white-space:nowrap}
.pia-barre-in span{flex:1;min-width:0;font-size:14px;color:rgba(248,249,250,.8);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pia-barre-in span.alerte{color:#fff;white-space:normal}
.pia-barre-in a{flex:none;display:inline-flex;align-items:center;height:44px;padding:0 20px;border-radius:12px;background:linear-gradient(135deg,#b0d91c,#c4e635);color:#0D1A00;font-weight:800;white-space:nowrap}

/* Bulle du chat remontée au-dessus de la barre */
html.pia-barre-on #fcw-btn,html.pia-barre-on #fcw-tip{translate:0 -64px}

@media (max-width:1000px){.pia-grille{grid-template-columns:repeat(4,1fr)}}
@media (max-width:767px){
  .pia-bande .pia-st{flex-basis:128px}.pia-fl{display:none}
  .pia-modale{padding:0}.pia-boite{height:100%;border-radius:0}
  .pia-entete,.pia-outils,.pia-modale .pia-chips{padding-left:16px;padding-right:16px}.pia-defile{padding:4px 16px 20px}.pia-pied{padding:10px 16px}
  .pia-entete h2{font-size:22px}
  .pia-fam{width:100%}.pia-fam-b{flex:1}.pia-cherche{min-width:0;width:100%;flex-basis:100%}
  .pia-grille{grid-template-columns:repeat(3,1fr);gap:8px}.pia-grille .pia-st-nom{font-size:12px;min-height:36px}.pia-grille .pia-st-coche{width:20px;height:20px;top:9px;right:9px}
  .pia-barre-in{padding:10px 16px;justify-content:space-between}.pia-barre-in span:not(.alerte){display:none}.pia-barre-in span.alerte{font-size:12.5px}.pia-barre-in a{padding:0 16px;font-size:14px}
}
