@charset "ISO-8859-1";

body {
  font-family: var(--font-family);
  font-size: var(--base-font-size);
  color: var(--color);
  height: 100dvh;
  margin: 0;
  overscroll-behavior: none;
  overflow: hidden;
  display: flex;
  flex-flow: column;
}

#veil {
  position: fixed;
  height: 100dvh;
  width: var(--width);
  background-color: var(--background-color);
  border: 1vh solid var(--dark-highlight);
  z-index: 3; 
  box-sizing: border-box;
  overflow-y: auto;
  overflow-x: hidden;
  overscroll-behavior: none;
}

#veil-liner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center; 
  gap: 1vh;
  min-height: 100%;
  width: 100%;
  position: relative;
  box-sizing: border-box;
}

#veil .hideable {
  display: none;
}

#veil.init {
  padding-top: 20vh;
}

#veil-outer {
  position: fixed;
  height: 100dvh;
  width: 100dvw;
  background-color: white;
  z-index: 4; 
}

#splash {
  width: min(90%, 400px);
  display: grid;
  gap: 0px;
}

#splash img {
  height: 100%;
  width: 100%;
  object-fit: contain;
  object-position: 50% 0;
}

#progress {
  display: flex;
  flex-direction: column;
  height: calc(8px + max(3vh, var(--large-font-size)));
  width: min(90%, 500px);
  box-sizing: border-box;
  margin-top: var(--splash-slack);
}

#progress span {
  color: black;
  display: flex; 
  justify-content: center;
  align-items: center;
  height: 2vh;
  margin-top: .5vh;
  width: 100%;
}

#progress button { 
  visibility: hidden;
  display: flex; 
  justify-content: center;
  align-items: center;
  height: 100%;
  width: min(33%, 150px);
  border: 3px solid var(--dark-highlight);
  background-color: var(--dark-highlight);
  color: white;  
  font-size: max(3vh, var(--large-font-size));
  box-sizing: border-box;
  padding-bottom: .3vh;
  margin: 0 auto;
}

#progress button:hover {
  font-weight: bold;
  color: var(--background-color);
}

#progress button:active {
  color: var(--dark-highlight);
  background-color: var(--background-color);
}

#ellipse {
  /* border: 2px solid var(--dark-highlight); */
  margin-top: auto;
  margin-bottom: 1vh;
  justify-content: center;
  align-items: center;
  width: 300px;
  /* border-radius: 50%; */
  /* background-color: var(--dark-highlight); */
}

#ellipse img {
  padding-top: .4vmin;
  height: 100%;
  width: 100%;
  object-fit: contain;
}

#all {
  position: relative;
  height: 80%;
  width: var(--width);
  min-width: 300px;
  scrollbar-color: var(--dark-highlight) var(--light-highlight);
  background-color: var(--background-color);
  box-sizing: border-box;
  border-top: 0px solid var(--background-color);  
  border-bottom: 0px solid var(--background-color);
  overflow-y: auto; 
  overflow-x: hidden;  /* important! */
  overscroll-behavior: none;
  margin: 0 auto;
  flex-grow: 1;
}

:fullscreen {
  #all {
    background-color: var(--background-color);
    width: var(--fullscreen-width);
  }
}

#liner {
  width: 100%;
  position: relative;
  box-sizing: border-box;
}

#menu-wrapper {
  display: flex;
  width: 100%;
  justify-content: center;
  align-items: center;
}

#menus {
  display: flex;
  width: var(--width);
  justify-content: center;
  align-items: center;
  padding-bottom: 2px;
  gap: 5px; 
  box-sizing: border-box;
  background-color: var(--background-color);
}

#menus button {
  background-color: var(--dark-highlight);
  border: 2px solid var(--dark-highlight);
  color: white;
  flex: 1;
  font-size: var(--base-font-size);
  font-size: 1em;
  white-space: nowrap;
}

#menus button.design {
  background-color: black;
  border-color: black;
}

@media only screen and (max-width: 400px) {
  #menus button {
    flex: none;
  }
  #menus button.full {
    flex: 1;
  }
}

#menus button:hover {
  font-weight: bold;
  color: var(--background-color);
}

#menus button:active {
  color: var(--dark-highlight);
  background-color: var(--background-color);
}

#veil-header {
  margin-top: 2vh;
  margin-bottom: 2vh;
}

#title {
  margin: 0;
  margin-top: 20px;
  text-align: center;
  font-size: var(--header-font-size);
  font-weight: bold;
}

#veil-title {
  margin: 0;  
  margin-top: 0;
  text-align: center;
  font-size: max(3.5vh, var(--header-font-size));
  font-weight: bold;
  color: var(--dark-highlight);
}

#author {
  margin: 0;
  text-align: center;
  font-size: var(--large-font-size);
  font-weight: bold;
}

#veil-author {
  margin: 0;
  text-align: center;
  font-size: max(3vh, var(--large-font-size));
  font-weight: bold;  
  color: var(--dark-highlight);
}

#description {
  padding: 15px;
}

#image-tray {
  background-color: var(--background-color);
  width: 100%;
  display: grid;
  gap: 0px;
  border-top: 0px solid transparent;
  border-bottom: 0px solid transparent;
}

#image-tray img {
  max-width: 100%;
  height: auto;
  display: block;
  box-sizing: border-box;
  pointer-events: none;
  border-top: var(--image-border);
  border-bottom: var(--image-border);
}

#image-tray .handle:not(.dragging) img.expose {
  pointer-events: auto;
}

#image-tray .handle {
  box-sizing: border-box;
  position: relative;
  width: 100%;
  height: 100%;
  background-color: transparent;
}

#image-tray .cover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  background-color: transparent;
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  height: 99%;
}

#image-tray .cover.expose {
  display: none;
}

#image-tray .ghost img {
  opacity: 0;
}

#image-tray.highlight .handle.chosen:not(.dragging) {
  height: 0px;
  background-color: var(--gap-color-2);
  border-top-width: calc(var(--highlight-width) / 2);
  border-bottom-width: calc(var(--highlight-width) / 2);
  border-style: dashed;
  border-color: var(--gap-color-1);
}

#image-tray .handle.chosen.dragging {
  background-color: transparent;
  border-width: 0px;
  opacity: 1.0 !important;
}


#image-tray.highlight .chosen img { 
  transform: translate(0, -50%);
  position: absolute;
  border-color: transparent;
  border-style: solid;
  border-left-width: var(--image-indent);
  border-right-width: var(--image-indent);
  z-index: 1;
}
