:root {
  --pico-font-size: 110%;
}

body>header {
  padding-block-start: 0;
}

a {
  cursor: pointer;
}

.imgs {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1em;
}

.thumb {
  display: inline-block;
  border-radius: 5px;
  background: var(--pico-icon-loading) no-repeat center center, var(--pico-card-background-color);
  overflow: hidden;
  transition: transform .2s;
  cursor: pointer;

  &:hover {
    transform: scale(1.05);
  }

  >img {
    height: 150px;
    width: 150px;
    object-fit: cover;
    transition: opacity .2s;
    opacity: 0;
  }
}

dialog {
  outline: none;

  >article {
    background: var(--pico-icon-loading) no-repeat center center, var(--pico-card-background-color);
    display: flex;
    flex-direction: column;
    width: 90vw;
    max-height: 90dvh;
    max-width: fit-content;
    position: relative;
  }

  >article>img {
    min-width: 100%;
    min-height: 300px;
    border-radius: 5px;
    overflow: hidden;
    object-fit: contain;
    background: var(--pico-card-background-color);
    transition: opacity .2s;
    opacity: 0;
  }
}

.prev-nav {
  position: absolute;
  top: 35%;
  left: 1.5em;
  right: 1.5em;
  display: flex;
  align-items: center;
  justify-content: space-between;

  >div {
    padding: 1em .5em;
    cursor: pointer;
    background: rgba(0, 0, 0, .5);
    border-radius: var(--pico-border-radius);
    font-size: 2em;
  }
}

article[role=alert] {
  background: darkred;

  &:empty {
    display: none;
  }
}

.flex {
  display: flex;
  gap: 1em;

  @media(min-width: 720px) {
    justify-content: space-between;
  }

  @media(max-width: 720px) {
    flex-direction: column;
    align-items: center;
    text-align: center;

    .img-links {
      margin-bottom: .5em;

      >a {
        padding: .75em 1em;
        font-size: 1.5em;
      }
    }
  }
}