.mzip-side{
  --radius:8px;
  background:#000;
  color:#fff;
  padding:12px;
  border-radius:10px;
}
.mzip-side__list{ display:flex; flex-direction:column; gap:14px; }
.mzip-side__item{ display:block; }
.mzip-side__thumb{ display:block; position:relative; aspect-ratio:4/3; overflow:hidden; border-radius:var(--radius); background:#0a0a0a; }
.mzip-side__img{ width:100%; height:100%; object-fit:cover; display:block; border-radius:var(--radius); }
.mzip-side__placeholder{ display:block; width:100%; height:100%; background: linear-gradient(135deg,#111,#1b1b1b); border-radius:var(--radius); }

.mzip-side__title{
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Noto Sans", "Liberation Sans", sans-serif;
  font-weight:600;
  font-size: 0.95rem;
  line-height:1.25;
  margin:8px 4px 0;
}
.mzip-side__title a{ color:#fff; text-decoration:none; }
.mzip-side__title a:hover{ text-decoration:underline; }

.mzip-side__excerpt{ color:#cfcfcf; margin:6px 4px 0; font-size:0.9rem; }

.mzip-side__empty{ color:#aaa; margin:6px 2px; }

/* Skeleton shimmer */
.mzip-side__item.is-skeleton .mzip-side__thumb,
.mzip-side__item.is-skeleton .mzip-side__title{ position:relative; overflow:hidden; background:#101010; }
.mzip-side__item.is-skeleton .mzip-side__title{ height:1em; border-radius:6px; margin:8px 4px 0; }
.mzip-side__item.is-skeleton .mzip-side__thumb::after,
.mzip-side__item.is-skeleton .mzip-side__title::after{
  content:""; position:absolute; inset:0; transform:translateX(-100%);
  background:linear-gradient(90deg, rgba(0,0,0,0) 0%, rgba(255,255,255,.15) 50%, rgba(0,0,0,0) 100%);
  animation:mzip-side-shimmer 1.1s infinite;
}
@keyframes mzip-side-shimmer{ 100%{ transform:translateX(100%); } }
