
.pcm-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
.pcm-item{position:relative;cursor:pointer}
.pcm-badge{position:absolute;top:8px;left:50%;transform:translateX(-50%);background:#2ecc71;color:#fff;
border-radius:50%;width:22px;height:22px;display:flex;
align-items:center;justify-content:center;font-size:14px;display:none}
.pcm-item.selected .pcm-badge{display:flex}

.pcm-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.9);
display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999}
.pcm-lightbox-media{position:relative;display:flex;align-items:center;justify-content:center}
.pcm-full{max-width:95vw;max-height:85vh}

.pcm-close{
  position:absolute;
  top:40px; /* moved down */
  right:30px;
  color:#fff;
  font-size:32px;
  cursor:pointer
}

.pcm-prev,.pcm-next{position:absolute;top:50%;color:#fff;font-size:40px;cursor:pointer}
.pcm-prev{left:20px}.pcm-next{right:20px}

.pcm-lightbox-badge{
  position:absolute;
  top:0;
  left:50%;
  transform:translate(-50%,-60%);
  background:#2ecc71;
  color:#fff;
  width:28px;
  height:28px;
  border-radius:50%;
  display:none;
  align-items:center;
  justify-content:center;
  font-size:16px;
}

.pcm-lightbox.selected .pcm-lightbox-badge{display:flex}

.pcm-toggle{
  margin-top:15px;
  padding:12px 18px;
  border-radius:8px;
  border:none;
  font-size:15px;
  cursor:pointer
}

.pcm-add{background:#f39c12;color:#fff}
.pcm-remove{background:#e74c3c;color:#fff}

.pcm-msg{margin-top:10px;color:#fff;font-size:14px}


/* === Bouton flottant "Voir ma sélection" (v2.5.3) === */
.pcm-floating-selection{
  position:fixed;
  right:20px;
  bottom:20px;
  z-index:10001; /* au-dessus de la lightbox */
  background:#111;
  color:#fff;
  text-decoration:none;
  padding:12px 16px;
  border-radius:999px;
  font-size:14px;
  box-shadow:0 6px 18px rgba(0,0,0,.25);
}
.pcm-floating-selection:hover{opacity:.92}

/* === Floating selection counter (v2.5.7) === */
.pcm-floating-selection .pcm-selection-count{
  font-weight: 700;
  margin-left: 6px;
}

/* === Boutons flottants (Sélection + Crédits) (v2.7.5 UI) === */
.pcm-floating-actions{
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 10001;
  display: flex;
  gap: 10px;
  align-items: center;
}

/* Le bouton sélection garde sa classe/structure (JS inchangé),
   mais sa position est gérée par le wrapper. */
.pcm-floating-actions .pcm-floating-selection{
  position: static;
  right: auto;
  bottom: auto;
}

/* Style commun (vert) */
.pcm-floating-actions .pcm-floating-selection,
.pcm-floating-credits{
  background: #2ecc71;
  color: #fff;
  text-decoration: none;
  padding: 12px 16px;
  border-radius: 999px;
  font-size: 14px;
  box-shadow: 0 6px 18px rgba(0,0,0,.25);
}

.pcm-floating-credits{
  cursor: default;
  user-select: none;
}

.pcm-floating-actions .pcm-floating-selection:hover{opacity:.92}
.pcm-floating-credits .pcm-credits-count{font-weight:700;margin-left:6px;}

/* === PCM Selection Page (v2.5.8) === */
.pcm-selection-page{
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 16px;
}
.pcm-selection-item img{
  width: 100%;
  height: auto;
  display: block;
}

.pcm-floating-actions a, .pcm-floating-actions div{color:#000 !important;}


/* === PCM Selection Bar UX v2.8.6 (SAFE) === */
.pcm-selection-header {
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 20px 0;
}

.pcm-info-btn {
  background: #4CAF50;
  color: #000;
  border: none;
  padding: 10px 16px;
  border-radius: 6px;
  font-weight: 600;
  cursor: default;
}

.pcm-info-credits {
  margin: 0 auto;
}



/* Step 1: visitor mode = gallery view only (no selection UI, no floating bar) */
body:not(.logged-in) .pcm-toggle,
body:not(.logged-in) .pcm-info-bar,
body:not(.logged-in) #pcm-download-zip,
body:not(.logged-in) #pcm-download-btn,
body:not(.logged-in) .pcm-select-btn,
body:not(.logged-in) .pcm-credits-count {
  display: none !important;
}


/* Step 1 UX refinement: hide floating action buttons for non-logged visitors */
body:not(.logged-in) .pcm-floating-actions,
body:not(.logged-in) .pcm-floating-selection,
body:not(.logged-in) .pcm-floating-credits {
  display: none !important;
}
