/* ==================================================
   ZONES HORIZONTALES — Documents / Feuilles / Catégories
================================================== */

#zones-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  gap: 20px;
  width: 96%;
  margin: 20px auto 60px;
}

/* chaque bloc occupe 1/3 de la largeur */
.zone-block {
  flex: 1;
  min-width: 0;

  height: 470px;
  padding: 18px;

  background: linear-gradient(180deg, #1a1a1a, #000);
  border: 2px solid #ff69b4;
  border-radius: 20px;
  box-shadow: 0 0 25px rgba(255,105,180,.3);

  display: flex;
  flex-direction: column;
  color: #fff;

  overflow: hidden; /* important: le scroll sera dans .zone-content */
}

/* ====== header ====== */
.zone-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 8px;
}

.zone-header h2 {
  color: #ff69b4;
  font-size: 20px;
  font-weight: 700;
  text-shadow: 0 0 8px rgba(255,105,180,.6);
  margin: 0;
}

.zone-search {
  background: #222;
  border: 1px solid #ff69b4;
  border-radius: 10px;
  color: #fff;
  padding: 6px 12px;
  font-size: 14px;
  width: 160px;
  transition: box-shadow .2s, border-color .2s;
}

.zone-search:focus {
  outline: none;
  border-color: #ff85c1;
  box-shadow: 0 0 10px #ff69b4;
}

/* ====== contenu ======
   ✅ scroll ici, PAS de flex-wrap ici
*/
.zone-content {
  flex: 1;
  min-height: 0;          /* 🔥 indispensable pour scroll en flex */
  overflow-y: auto;

  width: 100%;
  padding-right: 8px;

  /* pas de display:flex ici => la grille est dans .zoom-wrapper */
}

/* scrollbar rose */
.zone-content::-webkit-scrollbar { width: 8px; }
.zone-content::-webkit-scrollbar-thumb { background: #ff69b4; border-radius: 10px; }
.zone-content::-webkit-scrollbar-track { background: #111; }

/* ====== wrapper pour zoom + grille ======
   ✅ la grille flex-wrap est ICI
*/
.zoom-wrapper {
  width: 100%;
  transform-origin: top left;
  transition: transform 0.3s ease;

  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-content: flex-start;
  gap: 10px;
}

/* garder les dossiers inchangés */
.zoom-wrapper .dossier-wrapper {
  position: relative;
  display: inline-flex;
}
