/* ============================
   VIRTUAL ALBUM – MOUNTS & ROWS
   (ROW RULES + CENTERED SHORT ROWS)
   ============================ */

/* Container is now a vertical stack of rows */
.plate-grid{
  display: flex;
  flex-direction: column;
  gap: 14px;              /* vertical gap between rows */
  margin-top: 14px;
}

/* Each row is centred; spacing between mounts is constant */
.plate-row{
  display: flex;
  justify-content: center; /* centres rows shorter than 6 */
  gap: 8px;                /* SAME horizontal spacing as your 6-wide layout */
  flex-wrap: nowrap;
}

/* Slot */
.plate-slot{
  width: 205px;            /* stable slot width */
  text-align: center;
}

/* Mount link */
.mount-link{
  text-decoration: none;
  color: inherit;
  display: block;
}

/* Mount (your current “good” settings) */
.mount{
  width: 185px;
  height: 205px;

  background: #121212;
  border: 2px solid #0a0a0a;
  border-radius: 6px;

  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,0.10),
    0 1px 2px rgba(0,0,0,0.12);

  display: flex;
  align-items: center;
  justify-content: center;

  margin: 0 auto 6px auto;
  overflow: hidden;
}

.mount img{
  max-width: 98%;
  max-height: 99%;
  display: block;
  pointer-events: auto;
}

.mount-empty{
  font-size: 0.9rem;
  color: rgba(255,255,255,0.70);
}

.plate-slot.empty .mount{
  background: #1a1a1a;
  opacity: 0.35;
}

/* Labels */
/* ============================
   Album captions: Plate / Lettering label
   (More readable, album-like)
   ============================ */
.plate-label{
  margin-top: 8px;
  text-align: center;
  line-height: 1.25;

  font-size: 0.95rem;
  font-weight: 650;
  color: #2f2a24;           /* darker ink-like tone */
  letter-spacing: 0.02em;  /* subtle print feel */
  text-rendering: optimizeLegibility;
}

/* Album view: spacing below label when no price is shown */
.plate-slot .plate-label{
  margin-bottom: 10px;
}

.price{
  font-weight: bold;
  margin-top: 5px;
  color: #111;
  font-size: 0.95rem;
}

/* Responsive: allow wrapping on narrow screens (or horizontal scroll via .grid-wrap) */
@media (max-width: 1100px){
  .plate-row{ flex-wrap: wrap; justify-content: center; }
}

/* ============================
   HOVER POP-OUT PREVIEW
   ============================ */

.stamp-preview{
  position: fixed;
  left: 0;
  top: 0;
  z-index: 99999;
  display: none;
  pointer-events: none;
}

.stamp-preview.show{
  display: block;
}

.stamp-preview-inner{
  background: rgba(0,0,0,0.85);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 10px;
  padding: 8px;
  box-shadow: 0 8px 24px rgba(0,0,0,0.35);
}

.stamp-preview-img{
  display: block;
  width: 700px;
  height: auto;
  border-radius: 6px;
  background: #111;
}
