[data-card-image] {
  display: block;
  border-radius: 10px;
}
[data-card-image][href] {
  cursor: zoom-in;
}
[data-card-image]:focus-visible {
  outline: 3px solid var(--accent);
  outline-offset: 5px;
}
html.card-lightbox-open {
  overflow: hidden;
}
.card-lightbox {
  padding: 0;
  border: 0;
  max-width: calc(100vw - 32px);
  max-height: none;
  background: transparent;
  overflow: visible;
}
.card-lightbox::backdrop {
  background: rgb(10 15 12 / 88%);
}
.card-lightbox img {
  display: block;
  width: auto;
  height: auto;
  max-width: calc(100vw - 32px);
  max-height: calc(100vh - 128px);
  max-height: calc(100dvh - 128px);
  border-radius: 10px;
  box-shadow: 0 16px 64px rgb(0 0 0 / 45%);
}
.card-lightbox-close {
  position: absolute;
  right: 0;
  top: -56px;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid rgb(255 255 255 / 35%);
  border-radius: 50%;
  background: #232728;
  color: #fff;
  font-size: 2rem;
  line-height: 1;
}
.card-lightbox-close:hover {
  background: #414745;
}
.card-lightbox-close:focus-visible {
  outline: 2px solid #fff;
  outline-offset: 4px;
}
