.video-carousel-wrap {
  position: relative;
  display: grid;
  align-items: center;
}

.video-carousel {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  padding: 1.2rem 0;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
  perspective: 1000px;
}

.video-carousel::-webkit-scrollbar {
  display: none;
}

.video-carousel .video-card {
  flex: 0 0 calc((100% - 32px) / 3);
  min-width: 0;
  scroll-snap-align: center;
  transition: transform .28s ease, opacity .28s ease, filter .28s ease;
}

.video-carousel .video-card.is-active {
  transform: scale(1.04);
  z-index: 2;
}

.video-carousel .video-card.is-prev {
  transform: rotateY(7deg) scale(.96);
  transform-origin: right center;
  opacity: .82;
}

.video-carousel .video-card.is-next {
  transform: rotateY(-7deg) scale(.96);
  transform-origin: left center;
  opacity: .82;
}

.video-carousel-button {
  position: absolute;
  z-index: 4;
  top: 50%;
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 50%;
  background: var(--green);
  color: #fff;
  font-size: 1.35rem;
  cursor: pointer;
  transform: translateY(-50%);
  box-shadow: 0 8px 18px rgba(24,70,50,.22);
}

.video-carousel-button:hover,
.video-carousel-button:focus-visible {
  background: var(--green-dark);
}

.video-carousel-prev { left: -.7rem; }
.video-carousel-next { right: -.7rem; }

.video-empty-preview {
  display: grid;
  place-items: center;
  align-content: center;
  gap: .5rem;
  aspect-ratio: 16 / 9;
  background: linear-gradient(135deg, #e9e6dd, #567266);
  color: #fff;
  text-align: center;
}

.video-empty-preview span {
  width: 58px;
  height: 58px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: #fff;
  color: var(--green);
}

.video-empty-preview small {
  max-width: 180px;
  font-size: .72rem;
}

.admin-video-form {
  max-width: 720px;
}

.admin-video-form input[type="file"] {
  padding: .7rem;
}

.admin-field-hint {
  color: var(--muted);
  font-size: .75rem;
  font-weight: 500;
  text-transform: none;
  letter-spacing: 0;
}

.admin-video-list {
  display: grid;
  gap: .65rem;
  margin-top: 1rem;
}

.admin-video-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: .85rem 1rem;
  border: 1px solid #e3dccf;
  border-radius: 14px;
  background: #f8f6ef;
}

.admin-video-item div {
  display: grid;
  gap: .2rem;
}

.admin-video-item small {
  color: var(--muted);
  font-size: .75rem;
}

.admin-video-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: .4rem;
}

.admin-video-actions .button {
  min-height: 36px;
  padding: 0 .65rem;
  font-size: .7rem;
}

.video-edit-dialog {
  max-width: 620px;
}

@media (max-width: 620px) {
  .video-carousel {
    margin: 0 -.7rem;
    padding: 1.2rem 11vw;
    gap: 12px;
  }

  .video-carousel .video-card {
    flex: 0 0 78vw;
  }

  .video-carousel-button {
    width: 38px;
    height: 38px;
  }

  .video-carousel-prev { left: -.25rem; }
  .video-carousel-next { right: -.25rem; }

  .admin-video-item {
    align-items: flex-start;
    flex-direction: column;
  }

  .admin-video-actions {
    justify-content: flex-start;
  }
}
.video-archive-empty{width:100%;margin:0;padding:3rem 1.5rem;border:1px dashed #d8d1c2;border-radius:18px;background:#f8f6ef;color:var(--muted);text-align:center;font-weight:800}
.video-description{margin-top:.65rem;color:var(--muted);font-size:.82rem}.video-description summary{width:max-content;color:var(--green);font-weight:800;cursor:pointer}.video-description p{margin:.45rem 0 0;white-space:pre-wrap}
