:root {
  --grid-size: 64px;
}

@media screen and (min-width: 600px) {
  :root {
    --grid-size: 96px;
  }
}

html {
  background: black url("../../public/background.webp") no-repeat center center fixed;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

body {
  overflow: hidden;
}

.macos {
  width: 100vw;
  height: 100svh;
  overflow: hidden;

  display: flex;
  flex-direction: column-reverse;

  align-items: center;

  position: relative;
}

.macos .application-wrapper {
  width: 100%;
  flex: 1;

  display: flex;
  flex-direction: column;
  align-items: center;

  overflow: hidden;

  position: relative;
}

.macos .application-container {
  z-index: 100;
}

.macos .desktop {
  position: relative;
  flex: 1;
  padding: 12px;
  align-self: stretch;

  display: grid;
  gap: 10px;
  grid-template-columns: repeat(4, 1fr);

  justify-content: center;
  align-content: start;
}

.spacer {
  aspect-ratio: 1 / 1;
}

@media screen and (min-width: 600px) {
  .macos .desktop {
    padding: 16px;

    grid-template-columns: repeat(auto-fill, var(--grid-size));
    grid-template-rows: repeat(auto-fill, var(--grid-size));

    align-content: center;
  }
}
