:root {
  --style-group-border: 1px solid CanvasText;
  --style-group-border-highlight: 3px solid CanvasText;
}

main {
  max-width: 60ch;
}

.timestamp-form {
  text-align: center;
  position: sticky;
  top: 0px;
  background-color: var(--background-color);
  border-bottom-right-radius: 5px;
  border-bottom-left-radius: 5px;
}
.timestamp-form fieldset {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1rem;
  border-style: solid;
  border-radius: 5px;
  margin-inline: 0;
}
input[type="date"],
input[type="time"] {
  font-size: 1.1rem;
  font-family: monospace;
  border: 0;
  padding: 0.5rem;
}

.style-group {
  display: grid;
  grid-template-columns: 1fr 3rem;
  border: var(--style-group-border);
  border-radius: 5px;
  padding: 0.5rem;
  margin-block: 1rlh;
  overflow: hidden;
  & > * {
    margin: 0;
  }
  & dt {
    grid-column: 1;
    grid-row: 1;
    font-weight: bold;
    text-transform: uppercase;
  }
  & dd {
    grid-column: 1 / 3;
    grid-row: 1 / 3;
    display: grid;
    grid-template-rows: subgrid;
    grid-template-columns: subgrid;
    & > data {
      grid-column: 1;
      grid-row: 2;
      color: GrayText;
    }
    & > .copy-button {
      grid-column: 2;
      grid-row: 1 / 3;
      margin: -0.5rem;
    }
  }
}

.copy-button {
  appearance: none;
  color: CanvasText;
  background-color: var(--background-color);
  font-size: 1rem;
  border: none;
  border-inline-start: var(--style-group-border);
  &:hover {
    background-color: GrayText;
  }
  &:focus-visible {
    outline-offset: -2px;
  }
}

.copied {
  border: var(--style-group-border-highlight);
  & .copy-button {
    border-inline-start: var(--style-group-border-highlight);
  }
}
