@import "fonts.css";
body {
  font-family: "unbounded", sans-serif;
  width: 100%;
  margin: 0;
  height: 100%;
}
body *::-webkit-scrollbar {
  width: 5px;
  height: 8px;
  background-color: #cbeae4;
}
body *::-webkit-scrollbar-thumb {
  background: #7e98bb;
}
#viewport {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: #000000;
  /* overflow: hidden; */
}
.place {
  color: #e38698;
  font-size: 2rem;
  font-weight: 500;
  display: flex;
  justify-content: center;
}
#canvas-box {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 164px;
  width: 100%;
  height: 85%;
}
#canvas-box canvas {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#highlight-term {
  position: absolute;
  top: 12px;
  left: 12px;
  width: 80%;
  z-index: 100;
  color: #5df0e6;
}
#highlight-term .term-h {
  padding: 0.5em 1em;
}
#tools {
  position: absolute;
  bottom: 12px;
  margin: auto;
  width: 100%;
}
#tools .tools-inner {
  display: flex;
  align-items: flex-end;
  height: 10em;
  justify-content: center;
}
#tools .around {
  width: 3em;
  margin: 2px;
}
#tools .base {
  width: 3em;
  height: 1.5em;
  background: linear-gradient(to bottom right, #ffffff00 50%, #7fea9a 50%);
}
#tools .count-0 .base {
  background: linear-gradient(to bottom right, #e38698 50%, #ffffff00 50%);
}
#tools .count-1 .base {
  background: linear-gradient(to bottom left, #ffffff00 50%, #7fea9a 50%);
}
#tools .count-2 .base {
  background: linear-gradient(to bottom right, #ffffff00 50%, #7fea9a 50%);
}
#tools .count-3 .base {
  background: linear-gradient(to bottom left, #ffffff00 50%, #7fea9a 50%);
}
#tools .current .base {
  background: linear-gradient(to bottom right, #ffaee6 50%, #ffffff00 50%);
}
#tools .picto {
  width: 3em;
}
#paragraphs {
  display: none;
}
#paragraphs.active {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  overflow-y: auto;
  padding: 3em;
  font-family: "unbounded";
  backdrop-filter: blur(23px) hue-rotate(286deg) saturate(6);
  background: #000000b0;
  z-index: 1000000;
}
#paragraphs.active h1.title {
  display: flex;
  justify-content: center;
  font-size: 3rem;
  padding-right: 1em;
  font-weight: 900;
}
#paragraphs.active .term-link {
  color: white;
}
#paragraphs.active .par-box {
  display: flex;
  overflow: hidden;
  height: 80vh;
  width: 80vw;
  margin: auto;
  border: ridge;
}
#paragraphs.active .image-box {
  width: 440px;
  flex-shrink: 0;
  overflow-y: scroll;
  padding-left: 2em;
}
#paragraphs.active .image-box::-webkit-scrollbar {
  width: 5px;
  height: 8px;
  background-color: #cbeae4;
}
#paragraphs.active .image-box::-webkit-scrollbar-thumb {
  background: #7e98bb;
}
#paragraphs.active .annot-box::-webkit-scrollbar {
  width: 5px;
  height: 8px;
  background-color: #cbeae4;
}
#paragraphs.active .annot-box::-webkit-scrollbar-thumb {
  background: #7e98bb;
}
#paragraphs.active .annot-box {
  padding-inline: 1em;
  overflow-y: scroll;
  color: #ffffc7;
}
#paragraphs.active .annot-box .annot .content {
  font-size: 200%;
  line-height: 2rem;
  padding: 0.5em;
}
#paragraphs.active .annot-box .annot .proximity {
  line-height: 120%;
  font-weight: 200;
  text-decoration-line: underline;
  padding-left: 3em;
}
#paragraphs.active .annot-box .annot .proximity .term {
  display: inline-block;
  margin-right: 1em;
  cursor: pointer;
}
#paragraphs.active .annot-box .annot .proximity .term:hover {
  text-decoration: none;
  border-bottom: 1px solid #7fea9ae7;
}
#paragraphs.active .term:hover {
  text-decoration: none;
  border-bottom: 1px solid #7fea9a;
}
#log-box {
  position: absolute;
  top: 12px;
  right: 12px;
}
#log-box .event {
  width: 12px;
  height: 12px;
  background-color: white;
  margin: 6px 0;
  border-radius: 12px;
}
#log-box .event.event-term {
  background-color: #7fea9a;
}
#log-box .event.event-image {
  background-color: #e38698;
}
#path-box {
  position: absolute;
  z-index: 123456;
  display: block;
  top: 0;
  overflow-y: auto;
}
#path-box .xxx {
  padding: 12px;
  padding-left: 24px;
  display: flex;
  flex-direction: column;
}
#path-box .xxx .to-index {
  color: #e38698;
  cursor: pointer;
  font-weight: 600;
  padding-bottom: 1em;
  margin-left: -17px;
}
#path-box .path {
  color: #7fea9a;
  width: fit-content;
  border: solid 1px #7e98bb;
  margin-bottom: -1px;
}
#path-box .path .path-name {
  text-transform: lowercase;
  cursor: pointer;
}
#path-box .path .path-node.par-annot {
  font-size: 50%;
}
#path-box .path .path {
  color: #7fea9a;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
}
#path-box .path .path .path-name {
  text-transform: lowercase;
}
#path-box .path .path .path-node.par-annot {
  font-size: 50%;
}
#path-box .path .path .path-node {
  display: block;
  color: #ffaee6;
}
#path-box .path .path:hover .path-node {
  display: block;
}
#path-box .path .path-cursor {
  display: flex;
  color: #ffaee6;
}
#path-box .path .path-cursor .cursor {
  font-size: 200%;
  font-weight: bold;
  cursor: pointer;
}
.path-x::-webkit-scrollbar {
  width: 5px;
  height: 8px;
  background-color: #cbeae4;
}
.path-x::-webkit-scrollbar-thumb {
  background: #7e98bb;
}
.path-x {
  padding-inline: 20vw;
  padding-block: 2em;
  background-color: #ffffff;
  color: #552d7f;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  overflow-y: auto;
}
.path-x .path-title {
  font-weight: 600;
  font-size: 6rem;
  padding-bottom: 1rem;
  line-height: 97%;
  text-transform: lowercase;
}
.path-x .path-node {
  display: flex;
}
.path-x .path-node .window {
  padding: 0em 2em 0em 2em;
  z-index: 123678;
}
.path-x .path-node canvas.image-annotation {
  z-index: 123567;
}
.path-x .path-node:before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  left: 0;
}
.path-x .path-node:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  right: 0;
}
.path-x .to-index {
  color: #e38698;
  cursor: pointer;
  font-weight: 600;
  padding-bottom: 1em;
}
.path-x .cursor {
  color: white;
  background: linear-gradient(to bottom left, #7fea9a 50%, #ffffff00 50%);
  width: 3em;
  height: 1.5em;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  overflow-y: auto;
}
.path-x .path-node {
  display: flex;
}
.path-x .path-node .window {
  padding: 0em 2em 0em 2em;
  z-index: 123678;
}
.path-x .path-node canvas.image-annotation {
  z-index: 123567;
}
.path-x .path-node:before {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  left: 0;
}
.path-x .path-node:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  right: 0;
}
.path-x .cursor {
  color: white;
  background: linear-gradient(to bottom left, #7fea9a 50%, #ffffff00 50%);
  width: 3em;
  height: 1.5em;
  position: fixed;
  left: 1em;
  top: 1em;
  cursor: pointer;
}
.path-x .path-node.par-annot {
  font-size: 1rem;
  padding-left: 12em;
  /* border: solid 2px pink; */
}
.path-x .path-node.par-text {
  width: 15em;
  font-size: 0.7rem;
  border-left: 1px solid #130157;
  margin-left: 24em;
  padding-left: 0.7em;
  padding-bottom: 1em;
  padding-top: 1.4em;
}
.path-x .path-node.term {
  padding-block: 0.5em;
  width: 50vw;
}
.path-x .path-node.term .term-head {
  padding-left: 1em;
  font-weight: 100;
  font-size: 1.3rem;
  display: flex;
}
.path-x .path-node.term .term-head .term-name {
  padding-left: 1em;
}
.path-x .path-node.term .description {
  font-size: 0.7rem;
  font-weight: 100;
  max-width: 38em;
}
.path-x .path-node.term .term-picto {
  height: 20px;
  /* background-color: white; */
}
.landing.hidden {
  display: none;
}
.landing .landing-inner {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: black;
}
.landing .path-node {
  position: absolute;
  border: 1px solid red;
  background-color: white;
}
.landing .path-node.par-annot,
.landing .path-node.term {
  width: 12em;
  font-size: 10pt;
}
.landing .path-node.selected {
  border: 4px solid blue;
  z-index: 10000;
}
.landing .path-node.intersection {
  background-color: #7e98bb;
}
.landing .path-node .link {
  cursor: pointer;
  color: blue;
  font-size: large;
}
.landing .interaction {
  border: 3px solid white;
  border-radius: 6px;
}
.landing .landing-link {
  position: absolute;
  color: white;
  font-size: 32px;
  font-weight: bold;
  cursor: pointer;
  -webkit-text-stroke: 1px black;
  width: 100%;
  height: 100%;
}
.landing .landing-link.te {
  right: 0px;
  bottom: 0px;
  text-align: right;
}
.landing .landing-link.ia {
  top: 0px;
  left: 0px;
}
.info {
  position: absolute;
  right: 1em;
  bottom: 1em;
}
.info.expand {
  color: #552d7f;
  top: 1em;
  left: 1em;
  padding: 1em;
  background-color: #ffaee6;
  border: 2px solid red;
  display: grid;
  grid-template-columns: 1.5fr 1fr 1fr 1.5fr;
  overflow-y: overlay;
  grid-auto-rows: minmax(min-content, max-content);
}
.info.expand .tools {
  position: absolute;
  cursor: pointer;
  padding: 1em;
}
.info.expand .left,
.info.expand .right {
  grid-row: 2;
  max-width: 30em;
}
.info.expand .left {
  grid-column: 1;
  padding-left: 3em;
  margin-right: 0;
  margin-left: auto;
}
.info.expand .right {
  grid-column: 4;
  padding-right: 3em;
}
.info.expand .middle {
  grid-row: 2;
  grid-column: 2/4;
  padding-inline: 1.5em;
}
.info.expand .top {
  padding: 2rem;
  font-size: 1.5rem;
  grid-column: 2 / 5;
  grid-row: 1;
  max-width: 40em;
}
.info.expand .info-content {
  padding-top: 1.5em;
}
.info.expand .info-content .image-info {
  width: 100%;
  margin-bottom: 1.5em;
  background-color: white;
  border: 1px solid #552d7f;
}
.info .info-button {
  padding: 1rem;
  border: 1px solid white;
  border-radius: 6px;
  background-color: #ffaee6;
  cursor: pointer;
  font-weight: 600;
  font-size: 1.5rem;
}
