/* Student results carousel – shared by the main page and /confirmed (markup built by assets/proof.js). */
.proof-track {
  display: flex;
  gap: 14px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
}
.proof-track::-webkit-scrollbar { display: none; }
.proof-card {
  flex: 0 0 min(340px, 82%);
  scroll-snap-align: start;
  padding: 14px;
  border-radius: 16px;
  border: 1px solid var(--line-soft);
  background: #101218;
  text-align: left;
}
.proof-card header { font-size: 15px; color: var(--muted); }
.proof-card header b { color: #fff; }
.proof-img { position: relative; margin-top: 12px; aspect-ratio: 4 / 3; border-radius: 10px; overflow: hidden; background: #000; }
.proof-img img { width: 100%; height: 100%; object-fit: contain; }
.proof-img .ov {
  position: absolute;
  left: 12%;
  bottom: 10%;
  width: 72%;
  height: auto;
  border-radius: 8px;
  border: 2px solid #fff;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.6);
  transform: rotate(-2deg);
}
.proof-img .ph { position: absolute; inset: 0; display: grid; place-items: center; color: #6b7184; font-size: 12px; }
.proof-img img + .ph, .proof-img .ov ~ .ph { display: none; }
.proof-zoom {
  position: absolute;
  right: 10px;
  bottom: 10px;
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.35);
  background: rgba(0, 0, 0, 0.55);
  color: #fff;
  cursor: pointer;
}
.proof-bar { position: relative; height: 4px; margin-top: 18px; border-radius: 2px; background: rgba(255, 255, 255, 0.08); }
.proof-bar i { position: absolute; top: 0; height: 100%; border-radius: 2px; background: #5a6075; transition: left 0.2s ease; }
.proof-nav { display: flex; align-items: center; justify-content: flex-end; gap: 12px; margin-top: 14px; }
.proof-count { margin-right: 6px; font-size: 14px; color: var(--muted); }
.proof-arrow { width: 44px; height: 44px; border-radius: 10px; border: 1px solid var(--line); background: transparent; color: #fff; font-size: 22px; line-height: 1; cursor: pointer; }
.proof-arrow:disabled { opacity: 0.35; cursor: default; }
.lightbox { position: fixed; inset: 0; z-index: 50; display: grid; place-items: center; padding: 16px; background: rgba(5, 7, 12, 0.88); cursor: zoom-out; }
.lightbox[hidden] { display: none; }
.lightbox img { max-width: min(1000px, 100%); max-height: 90vh; border-radius: 12px; }
